基於FPGA的雙目測距工程

2021-09-18 05:33:59 字數 940 閱讀 5992

先寫點,後面準備把自己做了半年的東西拿出來寫寫,今天先寫個預告,後面詳細寫出來,包括演算法,rtl,**,後面再zedboard上進行了測試,不過由於資源的問題還暫時放不下,後面還沒找到時間進一步優化

後面有時間把這些過程全寫出來

趁著有時間開始寫一寫,自己一直從事傳統fpga影象處理方面,主要是編譯碼,影象分割,縮放之類,不過編譯碼有海思,分割畫中畫也比較easy,縮放又有專門的ip,所以對這些大部分也都是在除錯介面,除錯控制訊號,雙目測距也是源於一次偶然機會,決定應該提公升下自己從演算法到rtl實現的能力,恰巧那段時間雙目很火,看了些**,直接開始搞起。

流程圖呈上

主要分為以上的這些步驟,sad可以認為是畫素點間的運算,會保留影象的細節資訊,而cencus對光線不敏感,會保留影象的整體資訊,結合2者之間的優點,對merge影象的cost資訊後,進行sgm運算,最後選出合適的視差距離,進行種植濾波,會處理掉一些雜訊點。

由於最終的rtl**資源量超過了zynq7020,還沒有辦法放進去,後面還要在進行優化,我只把結果進行**,輸入的影象資料用matlab進行了顯示。顯示結果如下:

目前disparity設定最大值為64,後面為matlab顯示的景深影象,可以看到左面影象部分的值顯示的不正確,自己初步感覺應該是以下兩點原因:

(1)因為在做sgm運算時,我只用於從左至右乙個方向,因此最開始的值誤差會偏大

(2)sgm運算的起始值存在問題

後面我會將流程圖全部解析,分章節像大家介紹,並描述相應模組的rtl**

雙目測距測深度 科普 雙目測距原理

參考資料 1 深度相機原理揭秘 雙目立體視覺 2 雙目測距原理 3 相機標定原理及實現 1 雙目測距基本原理 如圖所示,p點是待測物體,camera r和camera l代表相機的光心位置,兩綠點為點p在兩個相機感光器上的成像點,f為相機焦距,b為兩相機中心距,z為所求深度資訊,兩綠點間距為d。d ...

雙目測距的實現

說到雙攝像頭測距,首先要複習一下測距原理,把learning opencv翻到416和418頁,可以看到下面兩幅圖 圖1.雙攝像頭模型俯檢視 圖2,雙攝像頭模型立體檢視 圖1解釋了雙攝像頭測距的原理,書中z的公式如下 在opencv中,f的量綱是畫素點,tx的量綱由定標棋盤格的實際尺寸和使用者輸入值...

opencv雙目測距實現

開篇之前,首先要感謝maxwellsdemon和wobject,沒有和你們的討論,也就沒有此篇的成文。說到雙攝像頭測距,首先要複習一下測距原理,把learning opencv翻到416和418頁,可以看到下面兩幅圖 圖1.雙攝像頭模型俯檢視 圖2,雙攝像頭模型立體檢視 圖1解釋了雙攝像頭測距的原理...