2017-01-24 3 views
0

Я вычисляю с ICP преобразование между двумя облаками точки. Для последовательности изображений мне понадобится матрица Mi для самой новой матрицы преобразования, так что для облаков точек Pi и Pi-1.Добавить относительное положение камеры в существующее положение камеры

Чтобы не выровнять их все, я должен отбить матрицу Mi-1 до Mi, чтобы у меня было преобразование из положения Mi обратно в M0, где я начал.

я тестировал до сих пор только с переводом, так что я мог бы просто просто добавить их вместе: Ми-1 * Mi

Я просто хотел бы видеть, если алгоритм ПМС на самом деле работает. Теперь я хочу добавить к нему поворот и масштабирование. Теперь мой вопрос: как я правильно это сделаю?

Я думал о том, что, возможно, разбил матрицы на вращение и перевод [R | t], а затем сделал что-то вроде Ti-1 * Ti * Ri-1 * Ri, где T является [тождеством | t], но я не «т думаю, что это способ записи

+0

Является ли ваше облако точек в 2 или 3 измерениях? Когда вы говорите «вращение и масштабирование», вы имеете в виду вращение и перевод? Масштабирование добавляет новый уровень сложности в проблему. –

+0

это 3D. Изображения собираются камерой Kinect, и из этих изображений я создаю облака точек. Обычный, я бы сказал, без масштабирования, но я думаю, что все еще есть некоторые из них. – Dominick

ответ

1

сделать матрицу 4x4 из R и T, таких как

| R t| 
|0 0 0 1| 

где R является 3x3 матрица вращения и т является 3x1 перевод. Тогда комбинация двух преобразований - это просто вопрос матричного умножения.

+0

Как-то он все еще не работает. – Dominick

Смежные вопросы