[問題] openCV裡面的 cvFindHomography()

看板C_and_CPP (C/C++)作者 (非)時間14年前 (2011/10/05 03:32), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串1/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) OpenCV 問題(Question): 想請教 openCV裡面的 cvFindHomography() ------------------------------------------------------------- 最少的參數定義為: 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, 因為當src和dst都是屬於的N不等於3的時候的時候,矩陣邊界大小不一樣, 這樣子不是不能相乘嗎? 像我看到的程式碼(p_dst = H * p_src), src和dst的size都是4x2 4x2 = 3x3 * 4x2 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.175.197 ※ 編輯: genki 來自: 140.130.175.197 (10/05 03:38)

10/05 04:09, , 1F
http://ppt.cc/9y1S API說明網頁
10/05 04:09, 1F

10/05 04:10, , 2F
The function finds the perspective transformation
10/05 04:10, 2F
不好意思 剛剛沒有把問題說清楚,我改內文了

10/05 04:11, , 3F
謝謝樓上 我研究一下
10/05 04:11, 3F

10/05 04:14, , 4F
一個2xN, 另一個就會是Nx2.
10/05 04:14, 4F
這段文字我有看到,但還是看不太懂, 所以是只說那個H會自動對應src和dst來自動調整大小, 而怎麼調整他並沒有寫出來嗎? ※ 編輯: genki 來自: 140.130.175.197 (10/05 04:54)
文章代碼(AID): #1EYrzRBq (C_and_CPP)
文章代碼(AID): #1EYrzRBq (C_and_CPP)