Re: [問題] openCV裡面的 cvFindHomography()

看板C_and_CPP (C/C++)作者時間14年前 (2011/10/05 13:57), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
前文恕刪 : ------------------------------------------------------------- : void cvFindHomography( const CvMat* src_points, : const CvMat* dst_points, : CvMat* homography ); : src_points: : 原始平面的點坐標,大小為2xN,Nx2,3xN或者 Nx3矩陣(後兩個表示齊次坐標),這兒N : 表示點的數目。 : dst_points: : 目標平面的點坐標大小為2xN,Nx2,3xN或者 Nx3矩陣(後兩個表示齊次坐標)。 : homography: : 輸出的3x3的homography矩陣。 : 然後他的原理是 p_dst = H * p_src, p_src = H^ -1 * p_dst : 我想不通的是,H永遠固定為3X3,這樣子在計算的時候,要怎麼算出H, 這裡的p_dst和p_src都是一個座標點而已,不是你餵進去src_points的所有座標點 所以這函式在找H使得所有p_src - H^-1 p_dst加起來的和最小 : 因為當src和dst都是屬於的N不等於3的時候的時候,矩陣邊界大小不一樣, : 這樣子不是不能相乘嗎? : 像我看到的程式碼(p_dst = H * p_src), src和dst的size都是4x2 : 4x2 = 3x3 * 4x2 這函式應該沒有支援座標維度大於3的 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.94.123
文章代碼(AID): #1EY_757U (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1EY_757U (C_and_CPP)