"multicamera" name=
"stereo_camera"
>
30.0
<
/update_rate>
"left"
>
1.3962634
<
/horizontal_fov>
800<
/width>
800<
/height>
r8g8b8<
/format>
<
/image>
0.02
<
/near>
300<
/far>
<
/clip>
gaussian<
/type>
0.0<
/mean>
0.007
<
/stddev>
<
/noise>
<
/camera>
"right"
>
0-0.0700
00<
/pose>
1.3962634
<
/horizontal_fov>
800<
/width>
800<
/height>
r8g8b8<
/format>
<
/image>
0.02
<
/near>
300<
/far>
<
/clip>
gaussian<
/type>
0.0<
/mean>
0.007
<
/stddev>
<
/noise>
<
/camera>
以上是兩個感測器,我們可以看到是兩個相同的感測器,其定義的屬性從標籤上就能看出來,這裡重點是三個標籤,clip中定義了相機能看到的最遠和最近位置(現實中因為你焦點的原因,相機看物體模糊但也不至於看不到,所以搞不太懂這個標籤的物理意義)。nosie是畫素上的雜訊,結合實際相機,很容易理解。最後重點說一下pose我們發現left相機是沒有pose標籤的,預設為0 0 0 0 -0 0,而right相機有個-0.07,負號說明其在右邊,0.07就是指的基線的距離。(在這裡這個pose還不知道具體是什麼,是相機座標系的原點,還是影象座標系的遠點,在深度上相差乙個焦距的距離。
這個是我們進行立體計算時需要用到的。這時我們發現對於乙個鏡頭來說還需要乙個很重要的引數,那就是焦距。但這裡並沒有給出,實際上我們可以根據水平視場horizontal_fov來計算出來的,參考以下兩個介紹:
即可以通過以下公式得到焦距:
flength = (width/2)/tan(hfov/2)
0.07
<
/hackbaseline>
0.0<
/distortionk1>
0.0<
/distortionk2>
0.0<
/distortionk3>
0.0<
/distortiont1>
0.0<
/distortiont2>
以上是感測器外掛程式,我們發現和單目相機的外掛程式很像,主要說下最後幾個引數,如果做過單目相機矯正就很容易理解(k1 k2 t1 t2 k3)是相機的畸變係數,這裡使其為0,即認為相機沒有畸變,理想化了。
以上全是相機內參,雙目相機還有外參還不太會……
相機內參外參
參考資料 說內參矩陣之前,還得再引入畫素座標系的概念。上述影象點的表示是長度單位,不是畫素,由於我們拿到的影象是以畫素來衡量的,因此還需要將影象座標系轉化為畫素座標系。在此直接給出結論 於是之前的相機矩陣又得新增一項 上述推導中有乙個假設前提,就是相機的感光元件是正方形的,感光元件的安裝也是通過光軸...
相機內參與畸變模型
相機內參包括相機矩陣引數和畸變係數。相機內參矩陣為3 3的矩陣 m fx 0 ppx 0 fy ppy 0 0 1 畸變係數 k1 k2 k3 p1 p2 使用matlab可以很方便地進行相機內參標定 首先看一下無畸變情況下,已知相機座標系內的乙個點 xc,yc,zc 通過內參矩陣求出該點在影象平面...
相機的內參會改變嗎 相機內參和畸變引數進行校正程式
include using namespace std using namespace cv int test int argc,char ar videocapture capture 0 while 1 mat frame capture frame size image size image ...