2014-01-22 4 views
0

У меня есть 2 3d модели и есть массивы всех их точек и их соответствия. Я знаю, что вторая модель является первой, но после жесткой трансформации. Я также знаю тип этого преобразования - перевод или поворот. Мне нужно рассчитать ось/центр преобразования, а это значение - угол или расстояние. Дело с переводом очень простое. Но я не могу найти решение для вращения. Более того, мне нужно найти расположение оси относительно одной из моделей. Таким образом, недостаточно координат вектора, определяющего ось. Как решить эту проблему? P.S .: Я использую Java и C++, но даже теоретическое объяснение мне очень поможет.Как найти центр/ось вращения?

+0

Это тесно связано с http://stackoverflow.com/questions/21270892/generate-affinetransform-from-3-points/ –

ответ

0

Похоже, вам необходимо зарегистрировать две модели. Возможно, вам стоит взглянуть на ICP и Registration.

Вы не указали это, но я предполагаю, что соответствия не являются точными, то есть шумными.

+0

Соответствие является абсолютным, поскольку модель 1 и модель 2 представляют собой 3D-сканирование одного и того же объекта. – Eugene

+0

Да, и поскольку объекты проверяются, соответствия не будут точными. – weeska

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