Гомография в проективное преобразование - PullRequest
6 голосов
/ 17 сентября 2011

Я пытался выяснить, как взять гомографию между двумя плоскостями и преобразовать ее в проективное преобразование. Matlab делает это автоматически, но я пытался выяснить, как matlab реализует преобразование.

Ответы [ 2 ]

3 голосов
/ 18 сентября 2011

Вы можете посмотреть исходный код в наборе инструментов \ images \ images \ maketform.m

По крайней мере, в редакторе вы можете добраться до этого, нажав F4 в имени функции.

2 голосов
/ 28 марта 2013

Гомография - это проективное преобразование, которое отображает линии на линии, сохраняет поперечное соотношение, но не сохраняет параллелизм или другие величины сходства (углы, расстояния и т. Д.). Гомография может быть выражена в виде однородной матрицы 3х3 и рассчитана многими (действительно, многими) различными способами в зависимости от вашей проблемы.

Наиболее типичным является определение 4-точечных соответствий между двумя плоскостями и использование прямого линейного преобразования (DLT). Есть также много реализаций DLT. Если вы знакомы с OpenCV, вы можете легко получить такую ​​матрицу гомографии, используя cv::findHomography (http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html?highlight=findhomography#findhomography).

).

В общем, я рекомендую вам взглянуть на книгу «Геометрия множественного обзора» от Hartley & Zisserman, в которой подробно объясняется концепция гомографий в контексте компьютерного зрения.

...