Как я могу проецировать произвольный самолет, идентифицированный на 4 балла на 2D-самолете?

StackOverflow https://stackoverflow.com/questions/4217370

Вопрос

Проблема, которую мы пытаемся решить проблему нахождения точки в двух разных представлениях самолета. Первый самолет, который у нас есть, вращается для создания перспективы; Второе - это 2D вид той же самолета. У нас есть 4 балла на каждом из планов, которые мы знаем, чтобы быть эквивалентными. Вопрос в том, если у нас есть произвольная точка в плоскости 1, как мы находим соответствующую точку в плоскости 2?

Лучше всего, вероятно, чтобы проиллюстрировать корпус использования, чтобы наилучшим образом уточнить вопрос. У нас есть изображение, показанное слева.

Проективный самолет

alt text

2D макета диаграмма пространства

alt text

Таким образом, Givens, которые у нас есть, - это красные квадраты с обеих картин. Обратите внимание, что, если возможно, я бы хотел, чтобы это было возможно, что 2D-пространство не обязательно квадрат. Они доступны нам заранее и известны. У меня также есть зеленые точки, выложенные на самолете в первом изображении. Я хотел бы иметь возможность провести проекцию точек в изображении 1 на пространство в изображении 2.

Примечание также для изображения 1 у меня нет определенного окна или положения глаз. Я просто знаю, что красная площадь из изображения 1 представляет собой преобразование изображения 2 красного квадрата 2 и что изображение 2 находится в 2D пространстве.

Это было полезно?

Решение

Это особый случай обнаружения сопоставлений между четырехугольниками, которые сохраняют прямые линии. Они обычно называют гомографическими преобразованиями. Здесь один из квадроциклов - это квадрат, поэтому это популярный особый случай. Вы можете погладить Google эти условия («Quad to Quad», и т. Д.) Чтобы найти объяснения и код, но вот некоторые для вас.

Перспективная оценка преобразования

Обсуждение игрового форума

Извлечение четырехстороннего изображения в прямоугольник

Проективный деформация и картирование

Проективации для ImageWarparning. Пол Хекберт.

Математика не особо приятна, но это тоже не так сложно. Вы также можете найти какой-код из одной из вышеуказанных ссылок.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top