基于ADCensus的改進雙目立體匹配算法
毛昕蓉,王? 楠 (西安科技大學?通信學院,陜西?西安?710054)
摘? 要:由于ADCensus算法只依賴于圖像的灰度信息,對于弱紋理區(qū)域和重復紋理區(qū)域的匹配效果不好,本 文提出一種依賴于圖像像素梯度和灰度匹配代價計算方法,以圖像像素梯度信息作為圖像灰度信息的補充,提 高了匹配準確率,加入了自適應匹配模板后,誤匹配率降低到19.85%以下。
關鍵詞:ADCensus算法;匹配代價;自適應模板
0 引言
隨著機器視覺的發(fā)展,雙目視覺在無人駕駛、工業(yè) 測量、3D建模以等方面都需要三維空間信息來幫助計 算機或機器人完成工作[1]。立體匹配是雙目視覺中的重 要做成部分,通過立體匹配找出同一視點在左右兩幅圖 像的坐標位置,從而計算得到視差圖,得到圖像的深 度信息[2]。匹配的正確性直接關系到深度圖計算的準確 性,所以,如何優(yōu)化及聚合匹配代價使匹配算法有更高 的匹配率,是匹配算法優(yōu)化的首要目標[3]。本文保留了 ADCensus中匹配代價的聚合方法,在AD算法匹配代價 的部分中加入了圖像像素梯度信息作為灰度信息的補 充,提出了結合圖像像素梯度、灰度的ADCensus匹配 算法。
1 基本原理
1.1 Census變換
Census變換是一種非參數(shù)化變換,主要用來表征圖 像的局部結構特征[4]。其基本原理是以1個矩形窗口遍歷
圖像,把窗口中心像素與其他像素灰度值的大小逐一比 較,中心像素大的記為0,否則記為1,得到一串中心像 素的特征值,并用漢明距離來表示匹配代價。Census變 換為
式(1)中,p為鄰域內像素,q為中心像素,Ω為匹配 模板。
1.2 AD變換
利用下面的公式將彩色圖像變?yōu)榛叶葓D像:
式(2)中,I為像素灰度值,R、G、B分別為像素的 顏色分量。
AD變換利用匹配點及其鄰域像素的灰度值與待匹 配區(qū)域對應點的灰度差[5-6],相對于census變換依賴于中 心點,它可以有效地保留圖像鄰域像素的信息,AD變 換具體如公式(3)所示。
在式(3)中,C AD(x,y,d)是像素(x,y)處的匹 配代價,?為鄰域像素,Il(r,c)左圖中(r,c) 點的灰度 值,I r(r,c+d)是右圖中待匹配點的灰度值,d為視差搜 索范圍。
2 本文改進的adcensus算法
2.1 圖像像素梯度的引入
本文提出了一種引入圖像像素梯度的AD匹配代價 計算方法,使得匹配代價不僅依賴于灰度信息,而且有 圖像像素的梯度信息作為補充,圖像像素梯度信息匹配 代價函數(shù)如式所示
式(4)中,C AD1(x,y,d)是像素(x,y)處匹配代價,Il1(r,c)和Ir(r,c+d')分別為左圖中點(r,c)和(r,c+d')的灰度值,Il(r,c)和(r,c+d')分別為右圖中點(r,c)和(r,c+d')本文中d' 的取值為2。最終,AD部分 的匹配代價如式(5)所示
式(5)中,C'AD 為改進后AD部分的匹配代價,θ 為權重因子,本文中θ 取值為0.5。
2.2 改進后ADCensus的匹配代價
由于ad算法的匹配代價和census變換的匹配代價的 評價標準不同,生成的初始匹配代價需經過如式(6)的 歸一化處理后再求和作為整體的匹配代價[7-8],匹配代 價公式如式(7)。
2.3 自適應匹配模板的選擇
Sobel算子是像素圖像邊緣檢測中最重要的算子之 一,它是一階導數(shù)邊緣檢測算子,是一種很有效的梯度 計算方法,通過 3×3 的模板與圖像中的每個像素做卷積和運算[9]。各向同性sobel算子的位置加權系數(shù)更為準 確,在檢測不同方向的邊緣時梯度的幅一致。
Sobel 算子分別計算水平和豎直梯度,式(8-1)為 水平梯度算子,式(8-2)為豎直梯度算子。以像素點為 中心構建3×3大小的窗口,與Sobel算子做卷積得到水 平、豎直方向的梯度,計算公式如(9-1)、(9-2)所示:
式(9-1)、(9-2)中,Gx ,Gy 分別為水平方向和豎直方向梯度,則有梯度計算公式如下:
式(10)中,G(x,y)為點(x,y)處的梯度值。當某個 點的G<40時,選擇9×9的匹配模板,當40<G<80時, 選擇7×7模板,當G>80時,選擇5×5模板。
3 實驗結果
本次實驗中,實驗環(huán)境為Visual studio 2017下C/ C++編程環(huán)境,OpenCV4.01,Windows 10,X64位 系統(tǒng),Intel Corei3處理器,內存為4 GB,測試圖片為 Teddy,Tsukuba,Cones和Venus這4幅圖片,SAD和 census算法匹配模板均選擇5×5。實驗結果如圖1~5 所示。
4 結論
為了客觀評價本文算法,將SAD、census和本文算 法的匹配結果與標準視差圖作比較,得到4幅圖片在這3 種方法下的誤匹配率,如表1所示。
由表1可看出,本文算法在四幅測試圖片下,與 SAD算法和census算法比較,都有較高的匹配率,其中 Tsukuba和Vensus兩幅圖像的誤匹配率分別降到10.82% 和11.33%,與誤匹配率較高的SAD算法比較,分別提 升了2.33%和1.05%,Teddy和Cones兩幅圖像各種算法 的誤匹配率較于其他兩幅圖像均較高,但可以看出,本 文提出的算法在這兩幅圖像下匹配率均有較高提升,誤 匹配率最大不超過19.85%。
參考文獻:
[1] 張一飛,李新福,田學東.融合邊緣特征的SAD立體匹配算法[J/ OL].計算機工程:1-10[2019-1007].http://kns.cnki.net/kcms/ detail/31.1289.TP.20190817.1225.002.html.
[2] 楊嘉維.基于Census變換的立體匹配算法研究與FPGA實現(xiàn) [D].西安:西安理工大學,2019.
[3] 王軍政,朱華健,李靜.一種基于Census變換的可變權值立體匹 配算法[J].北京理工大學學報,2013,33(7):704-710.
[4] 郭治成,黨建武,王陽萍,等.基于改進Census變換的多特征背景 建模算法[J].光學學報,2019,39(08):216-224.
[5] 鄔春明,鄭宏闊.改進Census變換的鐵路扣件定位方法[J].北京 交通大學學報,2019,43(02):58-63.
[6] 于修成,宋燕,李航.基于改進Census變換與最小生成樹的立體 匹配算法[J].計算機與數(shù)字工程,2019,47(03):643-648.
[7] 吳荻,戰(zhàn)凱,肖小鳳.基于改進光流法和紋理權重的視覺里程計 [J].計算機工程與設計,2019,40(01):230-235.
[8] 張麗君.基于改進Census變換的局部立體匹 配算法研究[D].哈爾濱:東北林業(yè)大學,2018.
[9] 向憧.基于Census的雙目視覺研究與FPGA 實現(xiàn)[D].成都:電子科技大學,2018.
評論