Калибровка камеры по нескольким изображениям - PullRequest
3 голосов
/ 19 марта 2011

Взяв одну камеру и переместив ее, чтобы сделать два изображения одного и того же объекта с другой точки зрения, можно вычислить матрицу, которая связывает эти две сцены.Как это достигается в OpenCV?

1 Ответ

1 голос
/ 21 марта 2011

Если указанный объект является шаблоном калибровки, подобным шахматной доске, используемой OpenCV, то процедура калибровки камеры, упомянутая ChrisO, даст вам как внутренние характеристики камеры (фокусное расстояние, главная точка и искажение объектива), так и внешние параметры камеры (где они находятся относительно в пространстве).

Если у вас есть общий объект, вам нужно установить набор 2D-соответствий, которые вы можете передать в cvFindFundamentalMat .Это находит фундаментальную матрицу, которая связывает две перспективы.А именно, для каждой точки x в камере 1 и соответствующей точки x 'в камере 2, x'Fx = 0. Аналогично можно найти эпиполи и т. Д. При этом используется алгоритм из 8 точек, который требует как минимум 8 точечных пар соответствий точек.

Вы можете получить соответствия либо вручную, либо с помощью надежного средства извлечения и сопоставления функций по аналогии с MSER / Affine Harris + SIFT.

...