Найдите местоположение 3D-объекта с известными положениями камеры и матрицами

введите здесь описание изображения

Вот проблема: у меня две камеры смотрят на один и тот же 3D-объект. У меня есть пиксельные координаты центра объекта на двух изображениях камеры. Я знаю расположение камеры и позирую в трехмерном мире. Матрицы обеих камер откалиброваны.

Имея всю эту информацию, как мне найти координаты местоположения объекта в трехмерном мире?

Проблемы: у меня нет информации о датчике (высота датчика в мм), которая помогает получить более точную оценку местоположения. Объекты крошечные и расположены далеко от позиций камеры, что делает оценку локализации ненадежной. Интуитивно понятно, что использование информации с нескольких камер (смотрящей на один и тот же объект) должно помочь, но в этом случае поблизости есть несколько экземпляров объекта. Так что это усугубляет проблему. Использование SfM также не работает, поскольку информация о функциях скудна для небольших областей пикселей.


person mystique    schedule 30.11.2017    source источник


Ответы (1)


Если вы называете P1 и P2 проекцией центра вашего объекта для камер 1 и 2, вам нужно преобразовать ваши 2 точки из пространства изображения в мировое пространство (вы можете сделать это благодаря матрице проекции или сделав немного геометрии Фалеса с параметрами камеры).

Тогда положение вашего объекта в мире - это просто пересечение линий (C1 P1) и (C2 P2), где C1 и C2 - мировые позиции в мировом пространстве ваших двух камер.

В идеальном мире эта точка существует и уникальна.

Надеюсь, это поможет.

person Pierre Baret    schedule 30.11.2017