Компьютерра, 2006 № 06 (626) - страница 21

Шрифт
Интервал

стр.


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

Большинство оптических методов разрабатываются в расчете на центрально проецирующие камеры. Напомню, что при такой проекции прямые остаются прямыми, а если мы посмотрим на снимки, сделанные реальными фотоаппаратами, то увидим, что зачастую прямые линии выгибаются от центра кадра (особенно по краям). Эти недостатки свойственны камерам с небольшим объективом, а именно такие и устанавливаются на большинство роботов. Естественно, если искажения на кадре будут столь заметны, то восстановить по ним 3D с хорошей точностью не удастся. Чтобы можно было бороться с этой проблемой, применяется процедура калибровки камеры.

Если в модели центральной проекции камера имеет всего один параметр (фокусное расстояние), то в реальности к нему добавляется несколько параметров (их число зависит от выбранной модели), описывающих свойства «бочки». Далее фотографируют что-то с заранее известной структурой (это может быть шахматная доска, или решетка, или лист бумаги с нанесенными в определенных местах точками) и по полученному кадру определяют параметры камеры. Теперь любой кадр, сделанный ею, можно с достаточно хорошей точностью привести к виду, соответствующему центральной проекции. И уже преобразованный таким образом кадр использовать для алгоритмов восстановления 3D.

Какие есть пути решения данной проблемы? Можно искать на изображениях соответствия не только точек, но и прямых и эллипсов (проекция окружности). Ведь роботы скорее всего будут находиться в антропогенной среде, а современные офисные интерьеры и городские пейзажи практически полностью состоят из прямых линий, да и окружности встречаются нередко. Вернемся к примеру с кубом. Пусть нам удалось найти соответствия между углами, тогда отыскать отрезки, соединяющие углы, и разбить их на пары соответствия, тоже не составит труда. Далее можно сделать предположение, что четыре отрезка, образующих замкнутую ломаную, ограничивают плоскость[Оглянитесь вокруг, и вы увидите, что чаще всего так и бывает]. Вот наша задача и решена! Теперь мы можем построить тот самый куб, составив его из плоскостей. Если наш робот наткнется на кружку или кастрюлю, он без труда распознает в ее основании окружность, что поможет ему «разобраться» и с формой этого предмета.

Но иногда жестко закреплять глаза робота нецелесообразно или вообще ненужно, поскольку восстановить положение камер по двум снимкам не слишком трудно. К тому же это решение зачастую дает более высокую точность, нежели механическое соединение камер. Да и возможность независимо оперировать двумя глазами довольно заманчива, особенно в тех задачах, где не требуется восприятие трехмерной информации (например, такой робот сможет одновременно читать две страницы книги).

Так как же восстанавливают положение камер по кадрам? Для этого нам опять потребуются пары соответствующих точек на каждом из изображений (обычно не меньше семи пар). При смене камеры мы просто меняем центр и направление проецирования; таким образом, пара камер характеризуется вектором сдвига (он соединяет оптические центры камер) и поворотом в пространстве одной относительно другой. Если мы посмотрим на две фотографии одного предмета, сделанные с разных точек, то сможем достаточно точно указать искомые параметры пары камер. При этом мы будем руководствоваться изменением взаимного положения точек на фотографиях. Рассуждать мы будем примерно так: «вот этот отрезок стал длиннее, следовательно, теперь он стал более перпендикулярным по отношению к камере, а вот этот короче, а этот повернулся…». Руководствуясь подобными же соображениями, можно построить математическую модель и с ее помощью достаточно точно восстановить параметры пары камер.

После того как взаимное положение камер известно, можно для любой точки одного изображения найти прямую на другом, которая будет проходить через точку, соответствующую в пространстве первой. Эта прямая называется эпиполярной и соответствует проекции (e’p’, см. рис. справа внизу) на вторую камеру прямой (OP), соединяющей точку в пространстве (P) с оптическим центром первой камеры (O). Понятно, что конфигурация эпиполярных линий определяется только параметрами пары камер и не зависит от конфигурации 3D-сцены.


стр.

Похожие книги