999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

融合邊緣特征的SAD立體匹配算法

2020-04-20 05:03:06張一飛李新福田學東
計算機工程 2020年4期

張一飛,李新福,田學東

(河北大學 網絡空間安全與計算機學院,河北 保定 071000)

0 概述

立體匹配就是找出同一視點在左右視圖中的坐標位置,從而計算得到視差圖的過程[1-2]。工業測量、無人駕駛、醫療診斷等領域都迫切需要立體匹配生成的3D信息來幫助計算機和機器人完成各項任務[3-5]。SAD算法是實時系統的典型算法,但其匹配精確度不高[6]。邊緣是圖像的重要特征,優秀的邊緣提取結果可以提高匹配的精確度。

文獻[7]對SAD算法進行改進,在其比較窗口上賦予不同的權值,并與Census算法相結合提出SAD-Census算法,該算法可較好地解決左右視圖存在亮度差異的問題,但其對弱紋理區域的匹配效果不好。文獻[8]在實驗中將深度邊緣和紋理邊緣進行匹配,同時采用基于邊緣線段的方法來提高算法的魯棒性,該算法能準確檢測到深度圖的邊緣失真并確定位置,但是對于層次復雜且顏色相近的物體,該算法的深度值準確率下降。文獻[9]提出一種兩階段算法,第1個階段進行特征提取和特征匹配,第2個階段圍繞特征區域的特殊鄰域的差異增長計算視差,該算法能夠較快較好地得到視差圖,但其對特征選取的依賴性太強。文獻[10]僅使用加減和乘法運算,而無占用計算資源較多的矩陣運算,提出遞歸邊緣保持性雙目立體匹配算法,該算法準確率高但遞歸的使用導致計算量增大。

本文為了保留SAD算法實現簡單、實時性好等優點,同時提高匹配精度,提出將邊緣特征與SAD算法相融合的立體匹配算法Edge-Gray。

1 SAD算法與邊緣算子選取

1.1 SAD算法簡介

SAD算法通常在左右圖上分別創建一個W=[(2n+1)×(2n+1)]的窗口,n為正整數,固定左(或右)圖窗口,滑動右(或左)圖窗口,每次滑動后記錄窗口上相同位置的差值和,直至滑動結束,差值和最小的點記為左右視圖的匹配點[6]。其中,n的取值越大,時間消耗越長。以Cones為例,實驗中窗口大小與時間的關系如圖1所示。

圖1 窗口大小與時間的關系

1.2 邊緣算子的選取

Roberts、Prewitt、Sobel、Canny等算子都是計算圖像邊緣的有效方法[11-13],各個算子都有自己的特點。Roberts算子邊緣定位較準,但對噪聲敏感。Prewitt算子能去掉部分偽邊緣并對噪聲具有平滑作用,但是對邊緣的定位不準確。Sobel算子能很好地消除噪聲的影響[14-15],但主題與背景的區分不明確。Canny算子具有很好的信噪比和檢測精度,定位性能良好,其邊緣檢測的標準較為嚴格,是一個具有濾波、增強、檢測的多階段的優化算子[16],但Canny算子相比其他3個算子計算過程更為復雜[17]。綜上所述,Canny算子檢測精度高,邊緣刻畫清晰。為了減少立體匹配中可能出現的錯誤匹配,本文選擇使用Canny算子來計算邊緣信息。

2 Edge-Gray算法

文獻[18]將立體匹配算法分為4步,即匹配代價計算、代價聚合、視差計算與優化和視差后處理。本文在上述流程上做出了調整,如圖2所示。

圖2 本文立體匹配算法流程

2.1 預處理圖像

預處理部分就是將彩色圖像轉化為灰度圖像,灰度化后的圖像一個像素由24位轉化為8位,可減少后續處理中的內存消耗。圖像灰度化過程所用到的公式如下:

IGray(i,j)=0.299R(i,j)+0.587G(i,j)+

0.114B(i,j)

(1)

其中,IGray為彩色圖像計算轉化為灰度圖像后的灰度值。(i,j)為當前像素點在圖片中的橫縱坐標,R、G、B分別為24位真彩圖像的紅、綠、藍的色值[19]。

2.2 邊緣計算

本文采用Canny算子計算圖像邊緣信息,主要包括以下3個步驟:

1)使用高斯濾波器平滑圖像,濾除噪聲。

2)計算圖像中每個像素點的梯度強度和方向。

3)應用非極大值抑制(Non-Maximum Suppression,NMS)消除邊緣檢測帶來的雜散響應。

2.2.1 圖像平滑

高斯濾波的主要作用是去除噪聲。由于噪聲集中于高頻信號,很容易被識別為偽邊緣,因此應用高斯模糊去除噪聲,可降低偽邊緣的識別。由于圖像邊緣信息也是高頻信號,因此高斯模糊的半徑選擇很重要,窗口半徑越大,對噪聲的敏感度越低[19]。高斯核的生成方法如下:

(2)

其中,G(i,j)為輸出結果,它是一個大小為(2k+1)×(2k+1)的方形矩陣,k為正整數。標準差σ取值一般為k的一半,即k/2。生成的高斯核如圖3所示,其歸一化后的結果如圖4所示。

圖3 k=2且σ=1時的高斯濾波核

圖4 歸一化后的高斯濾波核

將得到的高斯核與待處理的圖像進行卷積運算,計算公式如下:

(3)

其中,Q(m,n)為輸出結果,G(i,j)為高斯濾波核,F(m,n)為待處理圖像,(m,n)為當前要處理的像素點的坐標值。5×5的高斯核與待處理圖像卷積后的結果如圖5所示。

圖5 高斯濾波后的圖像

2.2.2 梯度強度和方向計算

本文采用Sobel算子來計算水平和垂直方向的差分。在計算后返回水平和垂直方向的一階導數值,由此便可以確定像素點的梯度Ggrad和角度θ。將水平方向記為X方向,將垂直方向記為Y方向,則X方向和Y方向的Sobel算子分別如圖6、圖7所示。

圖6 X方向的Sobel算子

圖7 Y方向的Sobel算子

分別將X和Y方向的Sobel算子與高斯濾波后的圖像進行卷積運算,得到兩組數據Gx與Gy。計算公式與式(2)類似,在此不再贅述。

在得到Gx和Gy后,就可以利用這兩組數據來計算梯度,計算公式如下:

Ggrad=|Gx|+|Gy|

(4)

同時,每個像素點對應角θ也可以由Gx和Gy求出,計算公式如下:

θ=arctan(Gy/Gx)

(5)

通過以上步驟可以得到兩組數據,即各個像素點的梯度值Ggrad和各個像素點的角度θ。

2.2.3 非極大值抑制

非極大值抑制是一種邊緣稀疏技術,其作用在于“瘦邊”[11]。為保證圖像中給定的邊緣應只被標記一次,并且在可能的情況下,使圖像的噪聲不產生假的邊緣。

如圖8所示,將P點的周圍分為4個區域,分別標有0、1、2和3。將0°到180°分別對應到4個區域內。

圖8 P點的八鄰域圖

應用非極大值抑制將局部最大值之外的所有梯度值抑制為0,計算結果如圖9所示。

圖9 邊緣特征圖

以θ在[0°,45°)范圍內為例,計算過程描述如下:

1)將當前像素的梯度強度與沿正負梯度方向上的2個像素進行比較,梯度方向的點的像素計算方法如式(6),可得F(p1)和F(p2)。

F(p1)=(1-tanθ)E+tanθ×NE

F(p2)=(1-tanθ)W+tanθ×SW

(6)

2)如果當前像素的梯度強度大于另外2個像素的梯度強度,即F(p)>F(p1)且F(p)>F(p2),則當前像素點保留為邊緣點,否則該像素點將被抑制。

2.3 視差計算

SAD算法速度快、效率高、實時性好,可以較好地滿足大部分立體匹配系統的需求[5],但其匹配精度不高。為此,本文引入圖像邊緣特征來提高匹配結果的精確性。改進SAD算法后,Edge-Gray算法的流程如圖10所示。

圖10 Edge-Gray算法流程

將預處理圖像得到的左右視圖的灰度圖和邊緣特征圖分別記為Lgray、Rgray和Ledge、Redge,Edge-Gray算法描述如下:

1)確定參考圖(以左圖為參考圖,則右圖為匹配圖),在參考圖對應的灰度圖中構建參考窗口,窗口大小的取值W=[(2n+1)×(2n+1)],n為正整數。計算不同窗口大小下,窗口中所有值的標準差,對應標準差最大的W即為此次匹配的窗口大小。

2)在參考圖和匹配圖中構建大小為W的窗口,分別計算窗口中心點與各個鄰域點的差值和,記作Sgray和Sedge。

3)若Sgray>Sedge則選Lgray和Rgray為匹配源圖,反之則選Ledge和Redge為匹配源圖。然后采用經典的SAD算法計算出當前點的視差值,計算公式如下:

(7)

其中,L(x,y)和R(x,y)代表左右圖像中(x,y)點的灰度值。用i和j遍歷匹配窗口中的每一個像素點,每次計算d加1直到遍歷完W。當CSAD最小時所得點即為匹配點,d即為所求視差。

4)逐一取出參考圖中的每一個點進行上述步驟,得到左圖的視差圖。

5)將左視圖作為匹配圖,右視圖作為參考圖,重復步驟2~步驟4得到右圖的視差圖。

2.4 視差后處理

視差后處理專為除去視差圖中的錯誤點而設計。該過程包含左右一致性檢測、奇異點填充和平滑濾波3個步驟。

在左右視圖中,存在某些區域在其中一幅圖中可見,而在另一幅圖中被遮擋,視差圖中的錯誤點主要來源于圖片中的遮擋區域,這些區域往往會造成深度圖的不連續。左右一致性檢測所采用的公式如下:

DL(x,y)=DR(x-DL(x,y),y)

(8)

其中,DL和DR分別為左右視圖的視差圖,(x,y)為當前點的坐標,不能滿足式(8)的點為奇異點。以奇異點為中心,向左右搜尋距離最近的非遮擋點中較小的值來填充。

在平滑濾波過程中,本文采用中值濾波[20]的方法對像素點進行檢測與恢復。具體操作為取出中心點周圍8鄰域或24鄰域的灰度值,將這些深度值排序,取排序后中間位置的值為當前像素點的深度值。

3 實驗結果與分析

本文實驗參數如下:操作系統為64位Windows10專業版,CPU為Intel(R)Core(TM)i7-6700,CPU主頻為3.40 GHz(3 408 MHz),內存8 GB,顯卡AMD Radeon(TM) R5 340X(2 048 MB)。

將本文所得的實驗結果圖與理想視差計算所得深度圖進行比較,將同一位置的像素值作差,超出閾值的點記為誤匹配點,遍歷所有點即可得到實驗的誤匹配率。所得的實驗結果如圖11所示。

圖11 3種算法的匹配結果對比

圖11(a)~圖11(c)分別為傳統SAD算法(記為Gray)、單純使用邊緣增強圖(記為Edge)和本文算法(記為Edge-Gray)的匹配結果。可以看出,Edge算法在紋理較多的區域的匹配結果要優于Gray算法,但在紋理較弱、純色區域較多的區域,Gray算法要優于Edge算法。總體而言,本文算法雖然在弱紋理的純色區域提升效果不明顯,但在邊緣較多、紋理較豐富的區域有較好的匹配結果。具體數據如表1和表2所示。

表1 4種算法的誤匹配率對比

表2 4種算法的時間消耗對比

由表1和表2可知,本文提出的融合邊緣特征的SAD立體匹配算法精確度較好,該算法既能提高傳統算法在邊緣豐富區域的匹配精確度,又改善了該算法在純色和邊緣較少的區域匹配精度較低的特點。同時,從時間上看,本文算法與傳統SAD算法的時間消耗相近,具有較好的實時性。

4 結束語

本文對傳統的SAD算法進行改進,提出一種融合邊緣特征的立體匹配算法。通過預處理得到邊緣特征圖,根據匹配窗口中像素點的標準差對自適應窗口大小進行處理。在匹配過程中,不同于傳統的立體匹配算法只利用灰度圖進行匹配,而是融合了邊緣特征圖和灰度圖。實驗結果表明,與傳統SAD算法相比,該算法的耗時與其相近,但誤匹配率普遍降低,對于邊緣較多的Cones效果最為明顯,該算法的誤匹配率可降低10.52%。然而,在弱紋理和純色區域較多的部分,本文算法的匹配準確率不高,針對該問題進行改進將是下一步的研究方向。

主站蜘蛛池模板: 日韩视频免费| 国产黄色视频综合| 97se亚洲综合不卡 | 在线看免费无码av天堂的| 亚洲精品成人片在线观看| 久久久久88色偷偷| 最新亚洲人成无码网站欣赏网| 国产又粗又猛又爽| 久久91精品牛牛| 高h视频在线| 国内精自线i品一区202| 亚洲欧美在线综合一区二区三区| 青青青国产在线播放| 一级爱做片免费观看久久| 久青草免费视频| 国产自在线播放| 99无码熟妇丰满人妻啪啪| 国产精品久久久久久久久| 女同国产精品一区二区| 精品国产www| 国产无码高清视频不卡| 97视频在线观看免费视频| 中文字幕 欧美日韩| 男女男精品视频| 国产免费久久精品99re不卡| 午夜性刺激在线观看免费| 欧美中文一区| 国产乱子伦视频在线播放| 欧美激情第一欧美在线| 蜜桃视频一区二区| 亚洲精品成人片在线观看| 国产欧美专区在线观看| 九九热在线视频| 一级成人a毛片免费播放| 成人免费网站久久久| 青青草原国产av福利网站| av天堂最新版在线| 青青青国产在线播放| 午夜视频免费试看| 日本三级黄在线观看| 亚洲色欲色欲www在线观看| a级毛片免费网站| 国产欧美精品午夜在线播放| 国产在线精品人成导航| 国产成人你懂的在线观看| 亚洲精品无码AV电影在线播放| 欧美激情综合| 性激烈欧美三级在线播放| 午夜视频日本| 伊人成人在线视频| аv天堂最新中文在线| 五月天天天色| 亚洲精品色AV无码看| 成人免费黄色小视频| 亚洲一级毛片| 国产97公开成人免费视频| 欧美啪啪视频免码| 亚洲自偷自拍另类小说| 久久中文字幕不卡一二区| 无码粉嫩虎白一线天在线观看| 日本三区视频| 999精品视频在线| 国产色婷婷| 免费在线成人网| 99视频全部免费| 夜夜爽免费视频| 国产无人区一区二区三区| 强奷白丝美女在线观看| 国产亚洲精品91| 国产久草视频| 国产人成在线观看| 国产午夜小视频| 在线观看国产小视频| 色爽网免费视频| 99久久国产精品无码| 国产老女人精品免费视频| 亚洲综合天堂网| 亚洲天堂网视频| 尤物午夜福利视频| 亚洲视频免费在线看| 欧美成人h精品网站| 久久久亚洲色|