我正在從tsai algo進行攝像機校準。我得到了無限矩陣和外部矩陣,但是我怎樣才能從該信息中重建3D座標?如果已知外部和內部參數,從2D圖像像素獲取3D座標
1)我可以使用高斯消去用於查找X,Y,Z,W,然後點將X/W,Y/W,Z/W爲均相體系。
2)我可以使用 OpenCV documentation方法:
我所知u
,v
,R
,t
,我可以計算X,Y,Z
。
但是,兩種方法最終都會導致不正確的結果。
我在做什麼錯?
我正在從tsai algo進行攝像機校準。我得到了無限矩陣和外部矩陣,但是我怎樣才能從該信息中重建3D座標?如果已知外部和內部參數,從2D圖像像素獲取3D座標
1)我可以使用高斯消去用於查找X,Y,Z,W,然後點將X/W,Y/W,Z/W爲均相體系。
2)我可以使用 OpenCV documentation方法:
我所知u
,v
,R
,t
,我可以計算X,Y,Z
。
但是,兩種方法最終都會導致不正確的結果。
我在做什麼錯?
如果你有外在參數,那麼你得到了一切。這意味着您可以從extrinsics(也被稱爲CameraPose)進行Homography。姿勢是3×4矩陣,單應是3×3矩陣,ħ定義爲
H = K*[r1, r2, t], //eqn 8.1, Hartley and Zisserman
與ķ作爲相機固有矩陣,R1和R2是旋轉矩陣的前兩列,R; t是翻譯矢量。
然後歸一化除以t3。
列發生什麼變化r3,我們不用它嗎?不是,因爲它是多餘的,因爲它是2個第一列姿勢的交叉積。
現在你有單應性,項目的要點。你的2d點是x,y。添加一個z = 1,所以他們現在是3d。項目他們如下:
p = [x y 1];
projection = H * p; //project
projnorm = projection/p(z); //normalize
希望這可以幫助。
非常好的答案,請,如果這個答案有幫助,請選擇正確的 – vgonisanz