Недавно я изучал модель камеры-обскуры, но меня смутила модель, предоставленная OpenCV, и учебник "Множественная геометрия в компьютерном зрении".
Я знаю, что следующее фото — это упрощенная модель, которая меняет положение плоскости изображения и кадра камеры. Для лучшей иллюстрации и понимания, а также с учетом главной точки (u0,v0), отношение между двумя кадрами равно x=f(X/Z)+u0
и y=f(Y/Z)+v0
.
Однако я был действительно сбит с толку, потому что обычно координата изображения имеет форму координаты 4-го квадранта, как показано ниже!
Могу ли я напрямую заменить (x, y) в следующем определении на приведенную выше «эквивалентную» модель обскуры, которая не очень убедительна?
Кроме того, если объект находится в области (+X,+Y) квадранта в координате камеры (разумеется, Z>f), в эквивалентной модели он должен появиться в правой половине плоскости координаты изображения. Однако такой объект на снимке, сделанном обычной камерой, предполагается, что он находится на левой половине. Поэтому для меня эта модель не приемлема.
Наконец, я попытался вывести на основе исходной модели следующую.
Результат x1=-f(X/Z)
и y1=-f(Y/Z)
.
Затем я попытался найти связь между координатой (x2,y2) и координатой камеры. Результат x2=-f(X/Z)+u0
и y2=-f(Y/Z)+v0
.
Между координатой (x3,y3) и координатой камеры получается x3=-f(X/Z)+u0
и y3=f(Y/Z)+v0
.
Какую бы систему координат я ни пробовал, ни одна из них не имеет формы x=f(X/Z)+u0
и y=f(Y/Z)+v0
, которые приведены в некоторых учебниках по CV.
Кроме того, результаты проекции на (x2,y2)-координату или (x3,y3)-координату также нецелесообразны по той же причине: объект в области (+X,+Y,+Z) в координате камеры должен «появляться» на левой половине изображения, снятого камерой.
Может ли кто-нибудь указать, что я неправильно понял?