2011-09-17 97 views
6

我一直在試圖找出如何在兩個平面之間進行單應性並將其轉換爲投影變換。 Matlab自動執行此操作,但我一直試圖弄清楚matlab如何實現轉換。同形映射到投影變換

+0

你在說哪個MATLAB函數? – Jacob

+0

我已經使用直接線性變換計算了單應性。我想知道maketform('投影',homographyMat)是如何工作的。謝謝! –

回答

2

單應性是一種投影變換,它將線條映射爲線條,保持交叉比例,但不保留平行度或其他相似度值(角度,距離等)。 單應性可以表示爲均勻的3x3矩陣,並根據您的問題以許多(真的,很多)不同的方式進行計算。

最典型的是確定兩個平面之間的4點對應關係並使用直接線性變換(DLT)。 DLT也有很多實現。如果您熟悉OpenCV,可以使用cv::findHomographyhttp://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html?highlight=findhomography#findhomography)輕鬆獲得此類單應性矩陣。一般來說,我建議你看一下Hartley & Zisserman的「多視圖幾何」一書,它詳細解釋了計算機視覺環境下的單應性概念。

3

你可以看一下在工具箱\影像\圖像的源代碼\ maketform.m

至少在編輯器中,您可以通過點擊該功能的名稱F4拿到了這一點。