朱素杰,王 萌
(周口科技職業(yè)學(xué)院,河南 周口 466100)
高級駕駛輔助系統(tǒng)(Advanced Driver Assistance Systems, ADAS)旨在提高汽車的安全性和駕駛舒適性,其功能包括目標(biāo)檢測和跟蹤、交通標(biāo)志檢測和識別、行人檢測等。ADAS面臨的最重要的難題是車輛對外部環(huán)境的感知,然而隨著立體視覺技術(shù)的不斷成熟,立體匹配可以非常精確和詳細地對周圍環(huán)境進行直觀的描述。立體匹配的關(guān)鍵問題在于從不同視點拍攝的立體圖像中找到像素之間的對應(yīng)關(guān)系[1]。為此,文獻[2]提供了一種新的高密度立體聲通信算法分類法(STM)和一個用于定量評價立體算法(SM)的試驗臺??梢钥闯?,這兩種算法產(chǎn)生了很好的結(jié)果,然而卻以時間為代價,僅適合于靜態(tài)場景[3]。
本文研究的方法主要致力于立體聲傳感器嵌入在動態(tài)的ADAS,對于應(yīng)用在動態(tài)場景上的立體匹配,需要處理動態(tài)場景。該匹配算法通過立體聲傳感器根據(jù)每秒的幀提供每一對立體圖像對,獲得相應(yīng)的立體圖像,將時間信息合并到立體方法中來提高最后的匹配結(jié)果。然而,僅有少量的研究致力于從立體序列中重建動態(tài)場景。本文通過考慮連續(xù)幀之間的一致性,將立體匹配的結(jié)果大大改進。
本文提出了一種基于時空信息的快速立體匹配方法?;谠缙谔岢龅耐ㄟ^圖像點得到全球視差范圍的方法,本文提出了一種新的計算視差范圍的方法。該方法不再通過所有圖像點來求取全局視差范圍,而是根據(jù)邊緣點的性質(zhì)得到。最后,將該方法和STM[4]、SM[5]方法進行了比較,通過比較結(jié)果可以看出該方法大大提高了匹配率。
圖1 算法流程圖
首先根據(jù)以上方法進行特性的匹配,然后通過關(guān)聯(lián)方法在連續(xù)的圖像之間建立關(guān)系。根據(jù)視差約束原理,本文提出一種獨立于掃描線的視差約束方法。通過成本函數(shù)來度量候選邊緣點之間的相似性。最后利用DP算法計算當(dāng)前幀的視差圖Dk進行特征點的匹配。
首先從立體圖像中提取匹配特征點。通常使用邊緣點作為特征點。為了便于適應(yīng)智能交通系統(tǒng),需要選擇快速而準(zhǔn)確的邊緣檢測算法。本文使用Canny邊緣檢測算法進行了邊緣檢測,此邊緣檢測器提供了連續(xù)的邊緣曲線,并產(chǎn)生了更重要的邊緣點,有助于得到較少的稀疏視差圖。
圖2 連續(xù)幀左圖像對應(yīng)點坐標(biāo)
在所有已知的立體匹配方法中,對于輸出視差圖的質(zhì)量和計算時間來說,精確選擇視差搜索空間是至關(guān)重要的。在本節(jié)中,提出了一種新的查找局部和全局視差范圍(視差搜索空間)方法。將局部視差范圍適用于相關(guān)聯(lián)的圖像點,將全局視差范圍適用于沒有關(guān)聯(lián)的圖像點。通過討論研究,根據(jù)匹配算法在每一對圖像掃描線上獨立執(zhí)行的原理,提出局部或全局視差范圍與圖像掃描線有關(guān)。
1.3.1局部視差范圍計算
圖3 相鄰幀邊緣點坐標(biāo)圖
從式(2)和式(3)可以推斷出:
局部視差范圍根據(jù)前一幀的邊緣點對當(dāng)前幀中的相應(yīng)點進行搜索。
1.3.2全局視差范圍計算
全局視差范圍的計算方法是基于v視差圖的分析,該v視差圖通過初始視差圖或預(yù)估視差圖得到。在本文中,根據(jù)當(dāng)前幀的v視差與前一幀相同的原理,提出了一種既不用計算初始視差圖,也不用計算預(yù)估視差圖的計算方法。如果每秒的幀數(shù)非常精確,那么圖像中物體的視差值不會發(fā)生較大的變化。也可以說,在當(dāng)前幀的v視差圖中道路表示的斜線,將會在前一幀的v視差圖中非常接近它的位置。當(dāng)前幀的v視差圖將分為兩部分:包含對象的頂部和包含道路的底部。在v視差圖中表示道路的斜線可以用下列方程描述:
di=(yi-b)/a
(5)
其中yi為圖像線指數(shù),di為同一圖像線的視差值,a和b為斜線參數(shù)。
每個圖像線上只有一個視差值di??紤]到上面所做的假設(shè)與前一幀的視差圖所固有的不確定性,在圖像線yi處的差異d的值應(yīng)該滿足以下不等式:
di-a≤d≤di+a
(6)
其中a是選擇的一個不確定性值(公差值)。此約束用于圖像底部的整個圖像線。
圖4 通過v視差計算的全局視差范圍圖
其中I(ei)是邊緣點ei的強度,M(ei)是邊緣點ei的梯度大小,θ(ei)是邊緣點ei的方向。
圖5 局部視差范圍圖
局部視差范圍不僅需要提高匹配點的精度,也需要提高整個圖像的精度,因為如果DP算法在某一步失敗,將可能影響到圖像中其他邊緣點匹配。但在本文的匹配過程中,如果DP算法在某一個階段失敗,那么局部視差范圍就會迫使算法遵循最優(yōu)路徑,如圖5所示。當(dāng)在圖像中發(fā)現(xiàn)大量的局部區(qū)域時,局部視差范圍都能夠較好地控制。
為了評估本文所提方法的性能,在立體圖像對的虛擬序列中進行了測試,并與現(xiàn)有的快速時空立體匹配方法相比較。為了說明時間信息在匹配過程中的重要性,在不整合時間信息的情況下,同樣的方法應(yīng)用于立體圖像,既不使用本地約束,也不使用全局約束。
該方法在虛擬立體圖像上進行了測試。數(shù)據(jù)集包含512×512的立體圖像和它們的地面實況。圖6顯示了在第294幀的左立體圖像,圖7顯示了由Canny邊緣檢測算法獲得的邊緣圖像。圖8描述了用本文方法在第294幀計算的視差圖。圖9描述了由STM和SM方法計算該幀的視差圖。
圖6 第294幀的左立體圖像
圖7 由Canny邊緣檢測算法獲得的左圖像
圖8 本文方法在第294幀計算的視差圖
圖9 由STM和SM方法計算該幀的視差圖
表1對三種方法在第294幀中得到的結(jié)果進行比較,為每種方法提供了匹配邊緣點(NME)的數(shù)量、正確匹配點的數(shù)量(NCM)、錯誤匹配點的數(shù)量、正確匹配的百分比(PCM)和第294幀的執(zhí)行時間(ETime)。
通過表1可以清楚地看到本文方法正確匹配了更多的邊緣點,提供了較少的稀疏視差圖,從而大大提高了正確匹配率。
表1 三種方法在第294幀中獲得的結(jié)果
本文利用相鄰幀之間的時間一致性,通過對前一幀的匹配結(jié)果進行計算,完成了當(dāng)前幀的視差圖的計算。在當(dāng)前幀的匹配過程中,通過前一幀的視差圖來確定局部和全局視差范圍,這樣既減少了每個邊緣點可能匹配的數(shù)量,也減少了錯誤匹配的數(shù)量,并加速了匹配過程。該方法已經(jīng)在虛擬的序列上進行了測試,結(jié)果令人滿意。后續(xù)研究中將在真實序列中進行測試。