Есть ли алгоритм для решения такой проекционной геометрии реконструкции?
У нас есть сетка с красными квадратами. Это означает, что у нас есть массив из трех квадратов (с углами = 90 град), которые, как мы знаем, имеют одинаковый размер, лежащий на одной плоскости и с тем же вращением относительно плоскости, на которой они лежат, и не расположены на одной линии на самолет.
Мы имеем проекцию пространства, содержащего плоскость с квадратами.
![im 1]()
Мы хотим превратить нашу плоскостную проекцию с квадратами, чтобы мы видели ее так, как она стоит перед нами, в общем случае нам нужна формула для поворота каждой точки этой исходной проекции плоскости, чтобы она была обращена к нам, как на изображении ниже.
Какие формулы могут быть использованы для решения такой проблемы, как ее решить, кто-нибудь сталкивался с чем-то вроде этого раньше?
![im 2]()
Ответы
Ответ 1
Это частный случай нахождения отображений между четырехугольниками, которые сохраняют прямые. Они обычно называются гомографическими преобразованиями. Здесь один из квадратиков - квадрат, поэтому это популярный частный случай. Вы можете использовать эти термины ( "quad to quad" и т.д.), Чтобы найти объяснения и код, но вот некоторые из них.
Оценка перспективного преобразования
обсуждение игрового форума
извлечение четырехстороннего изображения в прямоугольник
Проективное деформирование и отображение
ProjectiveMappings для ImageWarping Пол Хекберт.
Математика не особенно приятна, но это тоже не так сложно. Вы также можете найти код из одной из приведенных выше ссылок.