Калибровка камеры OpenCV - значения внутренней матрицы отключены

Я использовал функцию калибровки камеры OpenCV для калибровки моей камеры. Я сделал около 50 изображений с разными углами и узорами по краям изображения.

Значение Cx и Cy во внутренней матрице отличается примерно на 300 пикселей. Все в порядке? Однако моя средняя ошибка перепроецирования составляет около 0,08.


person Illuminati0x5B    schedule 25.09.2019    source источник


Ответы (1)


Cx и Cy — это координаты (в пикселях) главной точки вашего изображения. Обычно хорошим приближением является (image_width/2, image_height/2).

Средняя ошибка перепроецирования в 0,08 пикселя кажется неплохой.

person sowlosc    schedule 25.09.2019
comment
Я повторил процесс калибровки несколько раз. Cx и Cy не близки к половине ширины и высоты изображения. Как эти значения влияют на вычисление внешней матрицы? - person Illuminati0x5B; 26.09.2019
comment
Cx и Cy являются частью внутренних параметров. Какую внешнюю калибровку вы делаете? - person sowlosc; 26.09.2019
comment
Мне нужно преобразовать точки изображения в координаты реального мира. Итак, для этого у меня есть отдельная сетка, и я собираюсь найти матрицу, которая будет преобразовывать точки изображения в точки реального мира. - person Illuminati0x5B; 26.09.2019
comment
Внутренние параметры связывают точки изображения с 3D-лучами (с камерами RGB у вас нет глубины этих точек). Итак, если ваши Cx и Cy неверны, 3D-луч, соответствующий определенной точке изображения, будет неправильным. Как далеко Cx и Cy от W/2 и H/2? и вы используете очень специфическую камеру или только стандартную? - person sowlosc; 26.09.2019