OpenCV Stereo Photogrammetry - почему моя ось Z не совпадает с главной точкой? - PullRequest
0 голосов
/ 30 января 2019

Как я понимаю, система координат OpenCV, как на этой диаграмме.enter image description here
Левая камера откалиброванной стереопары расположена в начале координат в направлении Z.

У меня есть пара камер 2464x2056 пикселей, которые я откалибровал (сстерео среднеквадратичное значение около 0,35), вычислило несоответствие для пары изображений и перепроецировало это, чтобы получить трехмерное облако точек.Тем не менее, я заметил, что ось Z не совпадает с оптическим центром камеры.

Это вносит некоторую путаницу в некоторые манипуляции с точечным облаком, которые я надеюсь сделать - это ожидаемо,или это указывает на то, что на этом пути что-то пошло не так?

Ниже сгенерированной мной точки, плюс ось - красные зеленые и синие линии обозначают оси x, y и z соответственно, приходявне происхождения.enter image description here

Как видите, ось Z пересекает облако точек между головой и стойкой - это соответствует пиксельной координате приблизительно x = 637, y = 1028, когда Iзафиксируйте главную точку во время калибровки как cx = 1232, y = 1028.Когда я удаляю флаг CV_FIX_PRINCIPAL_POINT, он рассчитывается примерно как cx = 1310, cy = 1074, а ось Z перехватывается на отметке x = 310, y = 1050.
По сравнению с выпрямленным изображением, где средняя точка x = 1232, y = 1028 отмечена желтым крестом, центр изображения находится над манекеном, пересечение между осью Z значительно отличается от того, где я быожидать.enter image description here

Кто-нибудь знает, почему это может происходить?Любая помощь будет принята с благодарностью.

...