Создайте 2D-карту диапазона, выровненную с 2D-изображением из 3D-облака точек

Меня интересует получение 2D-представления облака точек, нанесенного на карту с известной точки обзора, с которой было получено зарегистрированное оптическое изображение сцены с помощью цифровой камеры. Я нашел пример этого здесь: http://live.ece.utexas.edu/research/3dnss/live_color_plus_3d.html, который был получен с использованием Opencv (насколько я могу судить, перепроецирован с моделью камеры-обскуры с использованием uscalib3D), хотя я не получил ответа от авторов относительно того, как это было сделано.

Я хочу, чтобы растр карты выходного диапазона имел такое же разрешение по xy/тому же полю зрения, что и зарегистрированное оптическое изображение, чтобы я мог связать координаты пикселей оптического изображения с координатами xyz облака точек (имея растр, который хранит координаты xyz облака точек, поэтому будет более полезным, чем карта дальности, хранящая расстояние до датчика). Учитывая, что облако точек было собрано из одной позиции лазерного сканирования, расположенной примерно на 20 см ниже камеры, мы можем предположить, что в поле зрения камеры нет закрытых точек. Плотность точек облака точек будет ниже, чем расстояние между пикселями зарегистрированного изображения, поэтому необходимо предположить некоторое сглаживание карты дальности.

Входы:

1) Матрица позы камеры 4x4

2) матрица mx3 координат x,y,z облака точек

3) неискаженное изображение, полученное с точки зрения, описанной в (1)

В основном я кодирую с помощью Matlab, поэтому я бы предпочел, чтобы решение было достижимо в этой среде программирования (opencv mex и т. д. должно быть в порядке). Любые советы и / или предложения будут с благодарностью.

Томас


person Thomas Seers    schedule 16.10.2013    source источник
comment
Эй, чувак... пример, на который ты ссылаешься, содержит Comic Sans. Фу :-D   -  person Luis Mendo    schedule 16.10.2013
comment
больше похоже на pcl, чем на opencv   -  person berak    schedule 16.10.2013
comment
@Berak: я изучил PCL, в котором есть функции для создания карт диапазонов, хотя авторы утверждают, что они использовали opencv, чтобы получить изображения, видимые по ссылке. В PCL определенно есть эта функция, хотя я очень не знаком с C++, что меня немного смущает (см.: pointclouds .org/documentation/tutorials/). В этом примере я вижу введение довольно запутанной переменной «поза камеры», но не могу определить, как изображение диапазона будет ограничено FOV оптического изображения.   -  person Thomas Seers    schedule 16.10.2013
comment
Обратите внимание, что, похоже, возникают проблемы с использованием PCL в качестве файлов mex, и я хотел бы, чтобы решение, которое в идеале можно было бы вызвать из Matlab   -  person Thomas Seers    schedule 16.10.2013
comment
Есть новости по этому поводу? Я изо всех сил пытаюсь сделать то же самое.   -  person Schütze    schedule 20.02.2019
comment
Я бы сказал, что у нас слишком мало для начала, у нас нет 1-3 исходных примеров, и они не приведены в ссылке на пример.   -  person Yuval Harpaz    schedule 24.02.2019
comment
@YuvalHarpaz, в конце страницы есть ссылки для скачивания, вам просто нужно заполнить небольшую форму.   -  person Arthur Moraes Do Lago    schedule 27.02.2019