Калибровка камеры - PullRequest
       8

Калибровка камеры

4 голосов
/ 30 августа 2010

Я использую OpenCV, новичок во всем.

У меня есть сценарий, я проецирую на стену, я строю своего рода робота с камерой.Я хотел знать, как я могу обработать изображение, чтобы я мог получить реальные значения координат капель, отслеживаемых моей камерой?

1 Ответ

9 голосов
/ 31 августа 2010

Прежде всего, вам необходимо откалибровать встроенную камеру. Для этого используйте рисунки шахматной доски, напечатанные на картоне, у OpenCV есть методы для этого, хотя для этого есть готовые инструменты. Чтобы получить представление, я написал некоторый код Python для калибровки из потокового видео в реальном времени, перемещая картон вдоль камеры под разными углами и расстояниями. Посмотрите здесь: http://svn.ioctl.eu/pub/opencv/py-camera_intrinsic/

Затем вам нужно откалибровать внешний вид камеры, то есть положение камеры относительно. ваш мир координат. Вы можете разместить некоторые маркеры на стене, определить 3D-положение этих маркеров и позволить OpenCV откалибровать для этого внешнее (cvFindExtrinsicCameraParams2). В моем примере кода я вычисляю внешнюю стоимость. шахматная доска, чтобы я мог визуализировать чайник в правильной перспективе камеры. Вы должны настроить это в соответствии со своими потребностями.

Полагаю, вы проецируете только на плоскую поверхность. Вы должны знать геометрию, чтобы получить трехмерные координаты вашего обнаруженного сгустка. Затем вы можете найти капли в изображении с вашей камеры и, зная внутреннюю, внешнюю и геометрическую форму, вы можете навести лучи для каждого шарика из камеры в соответствии с вашей внутренней / внешней и рассчитать пересечение каждого такого луча с вашей известной геометрией. Пересечение - это ваша трехмерная точка в мировом пространстве, на которую проецируется капля.

...