導航:首頁 > 源碼編譯 > 攝像頭測距的演算法

攝像頭測距的演算法

發布時間:2023-08-31 14:14:18

① 手機怎麼測距

以蘋果手機為例,用手機測量距離的方法是:1、打開iPhone的【測距儀】,此時會出現攝像頭界面,可以看到中間位置有一個小圓點;將這個點對准想要測量距離的物體的一端,點擊底部【+】圖標,這個點將作為測量的起點;2、沿著需要測量的物體移動,屏幕上會有一條黃色虛線顯示移動路線,以及目前為止的長度;3、當將小圓點移動到物體另一端後,再次點擊【+】圖標來設置測量的終點;4、這樣測量的物體的完整長度就會顯示在屏幕中了;測距儀還可以自動檢測矩形物體的尺寸,不過測矩形時要使標點的位置重合(兩點重合時手機會發出震動提示)。5、標點完成後點擊【+】添加矩形,就可以查看矩形面積;點擊右下角【白色圓點】可以拍照,方便記憶;另外,這個功能適用於測量近處的物體,如果某個物體距離比較遠,那就無法通過【測量儀】測量它的長度了。
以蘋果手機為例,用手機測量距離的方法是:
1、打開iPhone的【測距儀】,此時會出現攝像頭界面,可以看到中間位置有一個小圓點;將這個點對准想要測量距離的物體的一端,點擊底部【+】圖標,這個點將作為測量的起點;
2、沿著需要測量的物體移動,屏幕上會有一條黃色虛線顯示移動路線,以及目前為止的長度;
3、當將小圓點移動到物體另一端後,再次點擊【+】圖標來設置測量的終點;
4、這樣測量的物體的完整長度就會顯示在屏幕中了;測距儀還可以自動檢測矩形物體的尺寸,不過測矩形時要使標點的位置重合(兩點重合時手機會發出震動提示)。
5、標點完成後點擊【+】添加矩形,就可以查看矩形面積;點擊右下角【白色圓點】可以拍照,方便記憶;另外,這個功能適用於測量近處的物體,如果某個物體距離比較遠,那就無法通過【測量儀】測量它的長度了。

② 雙目視覺測距原理

單目測距原理:

先通過圖像匹配進行目標識別(各種車型、行人、物體等),再通過目標在圖像中的大小去估算目標距離。這就要求在估算距離之前首先對目標進行准確識別,是汽車還是行人,是貨車、SUV還是小轎車。准確識別是准確估算距離的第一步。要做到這一點,就需要建立並不斷維護一個龐大的樣本特徵資料庫,保證這個資料庫包含待識別目標的全部特徵數據。比如在一些特殊地區,為了專門檢測大型動物,必須先行建立大型動物的資料庫;而對於另外某些區域存在一些非常規車型,也要先將這些車型的特徵數據加入到資料庫中。如果缺乏待識別目標的特徵數據,就會導致系統無法對這些車型、物體、障礙物進行識別,從而也就無法准確估算這些目標的距離。

單/雙目方案的優點與難點

從上面的介紹,單目系統的優勢在於成本較低,對計算資源的要求不高,系統結構相對簡單;缺點是:(1)需要不斷更新和維護一個龐大的樣本資料庫,才能保證系統達到較高的識別率;(2)無法對非標准障礙物進行判斷;(3)距離並非真正意義上的測量,准確度較低。

雙目檢測原理:

通過對兩幅圖像視差的計算,直接對前方景物(圖像所拍攝到的范圍)進行距離測量,而無需判斷前方出現的是什麼類型的障礙物。所以對於任何類型的障礙物,都能根據距離信息的變化,進行必要的預警或制動。雙目攝像頭的原理與人眼相似。人眼能夠感知物體的遠近,是由於兩隻眼睛對同一個物體呈現的圖像存在差異,也稱「視差」。物體距離越遠,視差越小;反之,視差越大。視差的大小對應著物體與眼睛之間距離的遠近,這也是3D電影能夠使人有立體層次感知的原因。

上圖中的人和椰子樹,人在前,椰子樹在後,最下方是雙目相機中的成像。其中,右側相機成像中人在樹的左側,左側相機成像中人在樹的右側,這是因為雙目的角度不一樣。再通過對比兩幅圖像就可以知道人眼觀察樹的時候視差小,而觀察人時視差大。因為樹的距離遠,人的距離近。這就是雙目三角測距的原理。雙目系統對目標物體距離感知是一種絕對的測量,而非估算。

理想雙目相機成像模型

根據三角形相似定律:

根據上述推導,要求得空間點P離相機的距離(深度)z,必須知道:
1、相機焦距f,左右相機基線b(可以通過先驗信息或者相機標定得到)。
2、視差 :,即左相機像素點(xl, yl)和右相機中對應點(xr, yr)的關系,這是雙目視覺的核心問題。

重點來看一下視差(disparity),視差是同一個空間點在兩個相機成像中對應的x坐標的差值,它可以通過編碼成灰度圖來反映出距離的遠近,離鏡頭越近的灰度越亮;

極線約束

對於左圖中的一個像素點,如何確定該點在右圖中的位置?需要在整個圖像中地毯式搜索嗎?當然不用,此時需要用到極線約束。

如上圖所示。O1,O2是兩個相機,P是空間中的一個點,P和兩個相機中心點O1、O2形成了三維空間中的一個平面PO1O2,稱為極平面(Epipolar plane)。極平面和兩幅圖像相交於兩條直線,這兩條直線稱為極線(Epipolar line)。

P在相機O1中的成像點是P1,在相機O2中的成像點是P2,但是P的位置是未知的。我們的目標是:對於左圖的P1點,尋找它在右圖中的對應點P2,這樣就能確定P點的空間位置。

極線約束(Epipolar Constraint)是指當空間點在兩幅圖像上分別成像時,已知左圖投影點p1,那麼對應右圖投影點p2一定在相對於p1的極線上,這樣可以極大的縮小匹配范圍。即P2一定在對應極線上,所以只需要沿著極線搜索便可以找到P1的對應點P2。

③ matlab雙目測距中怎樣把攝像機標定後的內外參數和視差圖結合起來計算深度距離

你用的是雙面立體相機配置嗎?如果是,你需要標定左右兩個相機的內部參數,即焦距,像素物理尺寸,還有兩個相機間的三維平移,旋轉量。如果你不做三維重建的話,就不需要得到外部參數。得到相機內部參數,就可以矯正左右兩幅圖像對,然後使用立體匹配演算法得到目標的視差圖像,然後用你得到的,fc,cc參數,用三角法則計算出目標點到相機平面的距離。三角法則:z=f*b/d。f是焦距,b是兩相機間的橫向距離,d是立體匹配得到的視差值,即目標像素點在左右兩相機平面x方向的坐標差值。

閱讀全文

與攝像頭測距的演算法相關的資料

熱點內容
如何截獲手機app連接的ip 瀏覽:330
冰箱壓縮機是否需要電容 瀏覽:344
python列表每一行數據求和 瀏覽:274
自己有一台伺服器可以玩什麼 瀏覽:656
社會學波普諾pdf 瀏覽:584
解壓做食物的小視頻 瀏覽:758
pdf怎麼單獨設置文件夾 瀏覽:474
業務邏輯程序員 瀏覽:659
addto新建文件夾什麼意思 瀏覽:160
有伺服器地址怎麼安裝軟體 瀏覽:659
安卓如何完全清除數據 瀏覽:690
安卓安卓證書怎麼信任 瀏覽:53
伺服器被攻擊如何解決 瀏覽:221
學霸變成程序員 瀏覽:881
c語言編譯錯誤fatalerror 瀏覽:441
ipv4內部伺服器地址怎麼分配 瀏覽:463
java線程安全的方法 瀏覽:951
重復命令畫梯形 瀏覽:164
在疫情就是命令 瀏覽:328
自己搭建一個什麼伺服器好玩 瀏覽:253