原本想用單應性求解小規模運動的物體的位移,可是後來發現即便是很微小的位移也會帶來超級大的偏差甚至錯誤求解,看起來這個方法各類行不通,仍是要匹配知道深度了之後才能從三維仿射變換來入手了,糾結~
- estimateRigidTransform():計算多個二維點對或者圖像之間的最優仿射變換矩陣 (2行x3列),H能夠是部分自由度,好比各向一致的切變。
- getAffineTransform():計算3個二維點對之間的仿射變換矩陣H(2行x3列),自由度爲6.
- warpAffine():對輸入圖像進行仿射變換
- findHomography: 計算多個二維點對之間的最優單映射變換矩陣 H(3行x3列) ,使用最小均方偏差或者RANSAC方法 。
- getPerspectiveTransform():計算4個二維點對之間的透射變換矩陣 H(3行x3列)
- warpPerspective(): 對輸入圖像進行透射變換
- perspectiveTransform():對二維或者三維矢量進行透射變換,也就是對輸入二維座標點或者三維座標點進行投射變換。
- estimateAffine3D:計算多個三維點對之間的最優三維仿射變換矩陣H (3行x4列)
- transform():對輸入的N維矢量進行變換,可用於進行仿射變換、圖像色彩變換.
- findFundamentalMat:計算多個點對之間的基矩陣H。
快速解決:
答:使用getAffineTransform()。
- 問題2:如何計算多個二維點對之間的仿射變換矩陣(使用偏差最小準則 )?
答:使用estimateRigidTransform()或者findHomography。
答:使用getPerspectiveTransform()。
答:使用estimateAffine3D。
答:使用warpAffine()。
答:使用perspectiveTransform()。
答:使用perspectiveTransform()。