Python OpenCV projectPoints нейтральное положение вне центраPython

Программы на Python
Ответить
Anonymous
 Python OpenCV projectPoints нейтральное положение вне центра

Сообщение Anonymous »

Я хочу нарисовать 3D-позиции на изображении веб-камеры, используя функцию projectPoints OpenCV.
Во время тестирования я заметил, что у меня всегда есть определенное смещение от реального объекта. Это наиболее очевидно при попытке спроецировать начало координат (0,0,0) в центр изображения.
Изображение
Форма изображения (2988, 5312, 3), большая красная точка — это центр изображения (1494, 2656), а маленькая красная точка с прикрепленными линиями. - это проекция начала координат (0,0,0) без трансляции и НЕТ вращения, ведущая к (1476, 2732).
Основной вопрос: почему проецируемая точка не находится в середине изображения?
Точку проекции я определил так:

Код: Выделить всё

origin_2d, jacobian = cv2.projectPoints(
np.array([(0.0, 0.0, 0.0)]),
np.array([(0.0, 0.0, 0.0)]),
np.array([(0.0, 0.0, 0.0)]),
mtx,
dist,
)
Значит, начало координат (0,0,0) должно быть проецировано в 2D без перемещения и вращения и, таким образом, появиться в центре изображения, верно?
Я получил mtx и dist камеры, выполнив процедуру калибровки камеры, как описано здесь Документы OpenCV: Калибровка камеры с использованием шахматной доски, которую вы видите на изображении.
Что-то не так с моей калибровкой? Или я что-то неправильно понимаю в процессе проецирования?
Спасибо и с уважением,
Феликс

Подробнее здесь: https://stackoverflow.com/questions/792 ... off-center
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»