Как оценить 3D позу, используя 2D трекинг и начальную 3D позу
Как я могу рассчитать 3D-позу, когда объект движется в сцене, я использую SURF для отслеживания объекта в сцене, и начальная 3D-поза этого объекта известна. Все, что я знаю, когда я использую SURF, 2D-соответствие между двумя последовательными кадрами известно, поэтому 3D-позу не должно быть сложно вычислить путем умножения исходных 3D-поз на некоторую матрицу преобразования.
2 ответа
Когда вы знаете трехмерное местоположение ваших характерных точек в какой-то системе координат с фиксированной координатой, то при перемещении камеры все, что вам действительно нужно, это оценить позицию камеры и применить обратное преобразование, чтобы узнать текущую позицию объекта в текущей системе отсчета. Такие проблемы известны как проблемы Pn-P. Существует огромный объем работ по этому вопросу, но одна из недавних работ на эту тему, которая обещает эффективный алгоритм для оценки позы, - http://cvlabwww.epfl.ch/~lepetit/papers/lepetit_ijcv08.pdf
Вы также можете использовать cv::solvePnP
То, что вы пытаетесь сделать, называется структурой из движения. Проверьте ссылку на соответствующие документы и программное обеспечение.