OpenCV aruco, ось Z не рисует должным образом

У меня проблема с функцией drawAxis в модуле aruco. Перевернутая ось Z и общая не на 90 градусов (X и Y работает нормально).

Проблема иллюстрируется экраном:
обратная ось

Я попытался сменить камеру, обнаружить другие маркеры и сделать много калибровок (я пробовал разные конфигурации фотографий, между 15 и 100)

Когда я напечатал вектор вращения (rvec), я заметил, что угол 0 и 1 (x, y?) Имеют небольшие колебания, но угол 2 (z?) В целом постоянен:
Rvec Print

Где может быть проблема? Если оси X и Y работают нормально, код должен быть правильным? Это нормально, что rvec_2 является константой? Или, может, я виноват в калибровке?

Пожалуйста, за любые подсказки!
С уважением!

0

Решение

Я нашел решение:
моя ошибка заключалась в использовании стандартной схемы калибровки шахматной доски:
плохая калибровочная доска

Я знаю, что во многих уроках эта калибровка работает нормально, но в моем случае — нет

Моей душой была доска charuco (исходный код генератора charuco):
https://github.com/opencv/opencv_contrib/blob/master/modules/aruco/samples/calibrate_camera_charuco.cpp

Когда я калибрую камеру с помощью этой платы, все работает нормально

Надеюсь, что это может быть полезно для кого-то, привет

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector