單目攝像頭標定與測距

單目攝像頭標定與測距

一、 標定

  首先要對攝像頭做標定,具體的公式推導在learning opencv中有詳細的解釋,這裏順帶提一句,這本書雖然確實老,但有些理論、算法類的東西里面還是講的很不錯的,必要的時候可以去看看。

1.單目攝像頭標定

標定的目的是爲了消除畸變以及得到內外參數矩陣,內參數矩陣可以理解爲焦距相關,它是一個從平面到像素的轉換,焦距不變它就不變,所以確定以後就可以重複使用,而外參數矩陣反映的是攝像機座標系與世界座標系的轉換,至於畸變參數,一般也包含在內參數矩陣中。從作用上來看,內參數矩陣是爲了得到鏡頭的信息,並消除畸變,使得到的圖像更爲準確,外參數矩陣是爲了得到相機相對於世界座標的聯繫,是爲了最終的測距。

關於畸變,大家可以看到自己攝像頭的拍攝的畫面,在看矩形物體的時候,邊角處會有明顯的畸變現象,而矯正的目的就是修復這個。

知道雙目測距的時候兩個相機需要平行放置,但事實上這個是很難做到的,所以就需要立體校正得到兩個相機之間的旋轉平移矩陣,也就是外參數矩陣。

2.如何做攝像頭的在線標定?
在這裏插入圖片描述
在這裏插入圖片描述

二.單目測距原理

將使用相似三角形來計算相機到一個已知的物體或者目標的距離。 相似三角形就是

這麼一回事:假設有一個寬度爲 W 的目標或者物體。然後將這個目標放在距離

的相機爲 D 的位置。用相機對物體進行拍照並且測量物體的像素寬度 P 。這樣就得

出了相機焦距的公式:F = (P x D) / W

舉個例子,假設我在離相機距離 D = 24 英寸的地方放一張標準的 8.5 x 11 英寸 A4 紙

(橫着放;W = 11)並且拍下一張照片。我測量出照片中 A4
紙的像素寬度爲 P = 249 像素。 因此我的焦距 F 是: F = (248px x 24in) / 11in = 543.45

當我繼續將我的相機移動靠近或者離遠物體或者目標時,我可以用相似三角形來計算出物體離相機的距離:D’
= (W x F) / P 從以上的解釋中,可以看到,要想得到距離,就要知道攝像頭的焦距和目標物體的大小,這兩個已知條件根據公式:D’ = (W x F) / P

得出目標到攝像機的距離D,其中P是指像素距離,W是A4紙的寬度,F是攝像機焦距。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章