在一個完備的數(shù)字孿生系統(tǒng)中,對運行環(huán)境和數(shù)字孿生組成部件自身狀態(tài)的感知是基礎(chǔ),也是數(shù)字孿生系統(tǒng)中的重要環(huán)節(jié)。感知系統(tǒng)的實現(xiàn)主要依賴不同類型的傳感器及其融合技術(shù)。按照感知位置劃分,數(shù)字孿生系統(tǒng)的傳感器可分為內(nèi)部傳感器和外部傳感器兩大類,其中內(nèi)部傳感器用于檢測設(shè)備或裝備的內(nèi)部參數(shù),如加速度傳感器、速度傳感器、位移傳感器、位置傳感器等;外部傳感器用于檢測設(shè)備或裝備以外的外部參數(shù),分為接觸式和非接觸式兩類,接觸式包括觸覺傳感器、力覺傳感器,非接觸式傳感器包括視覺傳感器、嗅覺傳感器、聽覺傳感器、接近覺傳感器等?;趫D像方法的非接觸式測量是一種重要的環(huán)境感知方法,能夠為后續(xù)的控制與決策提供底層信息。本文結(jié)合自主移動機器人雙目立體視覺障礙物探測感知的實際研發(fā)案例,深度講解圖像感知技術(shù)。
一、應(yīng)用背景
機器人道路環(huán)境的理解,除了檢測和識別道路導(dǎo)航標(biāo)識外,還需準(zhǔn)確探測出道路環(huán)境中的障礙物,以提高道路環(huán)境理解的準(zhǔn)確性和完整性。機器人障礙物檢測常采用兩種途徑:雷達(dá)測距法,CCD視覺法。本文研究的是后者。
典型的自主車障礙物視覺檢測系統(tǒng)如圖1所示。
(a)完全依靠立體視覺感知的自主車Prowler(b)自主車Navlab的障礙物檢測系統(tǒng)
圖1典型自主車立體視覺障礙物檢測系統(tǒng)
在DARPAUrban Challenge中,Princeton車隊的自主車Prowler只用了3個立體視覺攝像機Bumblebee就完成了看路及障礙物檢測。據(jù)報道,其立體視覺系統(tǒng)能探測60米遠(yuǎn),一套障礙物檢測算法即可通用。
雙目視覺在智能機器人中也是一項核心技術(shù)。要實現(xiàn)機器人的深度人工智能,讓機器人能夠看得更準(zhǔn)、更快、更智能是最基本的條件之一。機器人視覺的研究當(dāng)前還面臨著大量難點問題,其中基于立體視覺的快速魯棒環(huán)境感知與理解就是一大技術(shù)難點。
圖2雙目移動機器人
二、一般方法
具有代表性的立體視覺障礙物檢測方法可總結(jié)為以下幾種。
1.按像素點匹配法
對機器人獲取的行進(jìn)道路圖像中需要判定的每一個像素點進(jìn)行立體視覺計算,根據(jù)圖像坐標(biāo)、攝像機坐標(biāo)及世界坐標(biāo)系之間的關(guān)系,計算出像素點的高度值,該值與地面高度值的差值超過設(shè)定的閾值則劃分為障礙點,否則為可通行區(qū)域。典型應(yīng)用是火星探測車“勇氣號”和“機遇號”,做法是:先對圖像中的每一像點進(jìn)行左右視點匹配及高峰、小點過濾,再根據(jù)其像點的高度、斜坡度判斷是否為障礙物,同時建立障礙物的遠(yuǎn)近層次圖,當(dāng)前只考慮較近層次的障礙物。該方法的缺點是對圖像中的每一個像素點都要進(jìn)行立體視覺重建,計算量大,不能滿足機器人的實時性要求。
2.映射變換矩陣法
定義一個實時映射變換矩陣,使地面點與圖像平面中像點一一對應(yīng)。在雙目視覺移動機器人中,分別通過實時匹配算法計算得到映射變換矩陣,結(jié)合后可得到左右圖像上像點的關(guān)系。如果點(X,Y)位于機器人行走的可通行區(qū)域上,則通過映射計算的像點坐標(biāo)與通過匹配算法驗證的對應(yīng)點坐標(biāo)重合,否則,意味著該點高于或低于地面,判定為障礙物。
缺點:道路不平坦時,攝像機成像平面與地面相對幾何位置不斷變化,攝像機的圖像坐標(biāo)系與地面坐標(biāo)系之間映射關(guān)系也隨之變化,這就需要對攝像機能夠?qū)崟r進(jìn)行標(biāo)定,否則檢測精度受到影響。
3.基于圖像分割的方法
一種常見的做法是:采用彩色圖像視覺系統(tǒng),先利用顏色特征將場景中的每個像素歸類到可通行區(qū)域和可疑障礙物區(qū)域兩個集合中,即初步檢測障礙物;然后進(jìn)行立體視覺計算,計算時只在可疑障礙物區(qū)域搜索,消除圖像分割時“偽障礙物”(如陰影、樹葉)的影響,更加精確可靠的檢測出障礙物。為增強對環(huán)境變化的適應(yīng)性,研究者提出了自適應(yīng)圖像分割方法。事先訓(xùn)練在不同光照條件下可行區(qū)域的顏色值,通過計算當(dāng)前光照條件下路面的參考色調(diào)、飽和度值及閾值,對機器人場景圖像達(dá)到自適應(yīng)分割。有的研究利用顏色加紋理特征進(jìn)行道路圖像分割及初步障礙物檢測,這種做法增加了檢測的準(zhǔn)確性,但同時增加了計算量。
盡管人們對基于視覺的障礙物檢測方法已開展了大量研究,但迄今為止該領(lǐng)域的一些關(guān)鍵技術(shù)問題仍未得到很好的解決,總的來看,目前車載視覺平臺障礙物檢測的難點可總結(jié)為以下幾點:
(1)特征相似障礙物的區(qū)分。有些障礙物與可通行區(qū)域的特征提取結(jié)果非常相似,例如顏色、紋理特征一致,此時障礙物的準(zhǔn)確辨識比較困難,可以嘗試采用多特征融合方法加以解決。
(2)偽障礙物的檢測及障礙物界定。有些偽障礙物按照系統(tǒng)障礙物的定義被判斷為障礙物,例如路面上高度、體積不大的石塊、磚塊等,空中突然闖入的飛鳥、紙屑、樹葉等,還有揚塵塵團、污染物團等,如果頻繁的把這些偽障礙物作為障礙物處理,顯然會影響車輛行進(jìn)速度。
(3)運動振動造成的障礙物信息測量失真。典型的情況如無人平臺在野外復(fù)雜凹凸地形環(huán)境下行進(jìn)時,行進(jìn)過程中的振動使得傳感器檢測和傳輸?shù)臄?shù)據(jù)不連續(xù),從而造成所描述的地形信息不準(zhǔn)確,障礙虛報、誤報率增大,影響平臺行駛速度。
在結(jié)構(gòu)化、半結(jié)構(gòu)化道路環(huán)境中,障礙物主要是車輛和行人,非結(jié)構(gòu)化道路環(huán)境中的障礙物主要是石塊、樹干等凸形路障和凹形坑洞。單目圖像分割、特征提取算法一般不能排除與可通行區(qū)域同色調(diào)的小障礙等偽障礙物對檢測結(jié)果的影響,但單目特征提取再結(jié)合模式識別、目標(biāo)跟蹤等算法可快速探測到障礙物,并實現(xiàn)對其跟蹤。立體視覺可以讓機器人進(jìn)一步理解障礙物的距離、高度信息,有效排除偽障礙物,從而提高其對環(huán)境理解的精準(zhǔn)度[77-79]。本章采用彩色雙目立體視覺技術(shù)、結(jié)合局部不變性特征檢測技術(shù)和視覺顯著性理論,提出兩種基于車載機器視覺的障礙物檢測算法,一種是融合深度信息的多特征融合障礙物檢測算法;一種是基于低層視覺顯著性特征匹配的動態(tài)車輛障礙物檢測算法。由于采用的是已標(biāo)定好的雙目攝像機,故沒有對攝像機標(biāo)定展開深入研究,將研究重點放在雙目匹配及深度信息獲取環(huán)節(jié)。
三、雙目立體感知步驟
基于雙目視覺(Binocularvision)的立體感知步驟如圖3所示。
圖3雙目立體視覺感知步驟
立體視覺計算包括兩個主要處理模塊,數(shù)據(jù)處理流程如圖4所示:
圖4立體視覺數(shù)據(jù)處理流程
視差是立體視覺中的關(guān)鍵概念。視差的定義為:空間中同一點在左右目圖像中坐標(biāo)上的差值。其含義解釋如圖5。
圖5視差的含義
圖5中,點A的視差定義為:,點B的視差定義為:,其中,為A在左圖像中的x坐標(biāo),為A在右圖像中的x坐標(biāo)。B可類推。計算后會發(fā)現(xiàn):,這表明場景中點B比點A近。
四、立體匹配
立體匹配是所有步驟中的難點,也是一直以來立體視覺研究的熱點。近年來,基于圖割的、基于圖像局部特征的、基于多尺度空間的,以及基于綜合型算子如Contourlet-SIFT的立體匹配算法得到了廣泛研究。根據(jù)自主車在不同道路環(huán)境下的視覺導(dǎo)航需求,需采取恰當(dāng)?shù)膱D像預(yù)處理方法及立體匹配算法,研究開發(fā)適用于實際應(yīng)用系統(tǒng)特點的實時立體匹配算法才具有實用價值。
現(xiàn)有的匹配算法可以分為兩種類型:一種是基于特征的匹配,另一種是基于像素的匹配。基于特征的匹配需要先在一幅圖像中確定出特征,然后再在待匹配圖像中利用約束條件在一定范圍內(nèi)搜索相似特征?;谙袼氐钠ヅ浼俣ㄒ环鶊D像中的每一像素點都是興趣點,再在另一幅圖像中搜索對應(yīng)像素點。匹配計算實質(zhì)上是一個優(yōu)化問題,優(yōu)化方法又分為局部優(yōu)化和全局優(yōu)化方法兩類。局部優(yōu)化方法通常只能保證視差是某個區(qū)域內(nèi)的最優(yōu)解,不能在整個圖像范圍內(nèi)對視差進(jìn)行優(yōu)化。全局優(yōu)化可得到全局最優(yōu)的視差分布,但如何定義目標(biāo)函數(shù)及開發(fā)行之有效的尋優(yōu)算法有難度。基于局部優(yōu)化的典型匹配方法有:基于區(qū)域的匹配法、基于小波域相位的匹配法、基于三角剖分的匹配法、基于秩變化和Census變換的變換匹配法、基于特征和區(qū)域混合的混合匹配法?;谌謨?yōu)化的典型匹配方法有:基于動態(tài)規(guī)劃的匹配法、最大流-最小割法、協(xié)同迭代法等。常用的優(yōu)化方法有:神經(jīng)網(wǎng)絡(luò)、模擬退火、遺傳算法、粒子濾波、動態(tài)規(guī)劃、最大流-最小割法等,但這些算法在面臨圖像高維數(shù)據(jù)據(jù)時,都或多或少存在著難以控制收斂、效率低問題。
求解匹配關(guān)系最優(yōu)化一般使用如下能量函數(shù)形式:
式中,
為數(shù)據(jù)項,表示對應(yīng)像素匹配的一致性程度;
為懲罰項,記錄誤匹配;
為平滑項,用于約束鄰接像素,使其具有一致性視差。
為減少誤匹配,通常采用增加約束的手段。立體匹配的約束條件有:唯一性約束、相似性約束、外極線約束、平滑性約束、單調(diào)性約束、順序約束、遮擋約束。
在自主車、機器人導(dǎo)航的應(yīng)用環(huán)境下,所采用的立體視覺算法還應(yīng)該滿足如下的要求:
(1)實時性。應(yīng)能滿足實時響應(yīng)控制系統(tǒng)、導(dǎo)航?jīng)Q策系統(tǒng)需求的能力,在規(guī)定時限內(nèi)為其提供必要的數(shù)據(jù)。
(2)可靠性。算法在不同條件下可準(zhǔn)確辨識出障礙物,且一旦出現(xiàn)異常問題,算法具有自動修復(fù)、自動容錯能力。
(3)環(huán)境自適應(yīng)性。根據(jù)車輛運行環(huán)境的變化,算法應(yīng)能自動調(diào)整其采集到的環(huán)境特征,并自主學(xué)習(xí)其特征參數(shù),最終通過機器學(xué)習(xí)算法實現(xiàn)對環(huán)境的自適應(yīng)。
典型的立體匹配算法是基于像素“絕對誤差累計”的塊匹配算法。步驟為:
(1)對圖像A中的某一個像素,以該像素為中心,確定一個像素的正方形模板;
(2)沿水平極線(同一行),將(1)中模板與圖像B中的相同大小模板遍歷比較;
(3)依據(jù)比較結(jié)果,選擇最佳匹配;
(4)重復(fù)步驟(1),直至所有點匹配完成。
模板比較時采用的公式為:
五、深度信息獲取及三維重建
本文采用的雙目視覺系統(tǒng)如圖6所示,左右攝像機的兩幅圖像是行對準(zhǔn)的,光軸嚴(yán)格平行,兩攝像機間的極線距離為T,焦距相同,為左圖像的原點,為右圖像的原點。則利用三角測量原理,可由視差d計算出深度Z。
圖6理想假設(shè)下深度與視差的三角測量關(guān)系
利用相似三角形,可推導(dǎo)出:
(3)通過公式4,可確定可獲得的最小深度范圍的精度。
(4)其中,是允許的最小視差增量。
已知像素的視差d和坐標(biāo),通過公式5就可計算出該像素的三維坐標(biāo)。
攝像機坐標(biāo)系下,其視差分別為d1,d2,d3,顯然,。
圖7遠(yuǎn)近不同點的視差關(guān)系
由公式分析可知,當(dāng)視差很小時,微小的視差變化會引起很大的深度變化;當(dāng)視差較大時,微小的視差變化幾乎不會引起深度太大的變化。結(jié)合圖7進(jìn)一步分析可知,物距越遠(yuǎn),視差變化引起的測距深度變化越不明顯,即越不利于深度的精確測量。于是可得到如下結(jié)論:立體視覺對距離攝像機較近的物體有較高的深度測量精度,超過一定物距范圍將不能保證精度。
對工業(yè)機器人抓取工件、三維建模等需要精確知道三維世界坐標(biāo)的應(yīng)用場合,需要真正的三維重建。但對于機器人立體視覺導(dǎo)航應(yīng)用,由于對實時性的強烈要求,并不需要做完整的三維重建。移動機器人視覺導(dǎo)航實質(zhì)上是對視頻圖像(圖像序列)的處理、分析及理解問題。在利用靜態(tài)圖像基礎(chǔ)理論的基礎(chǔ)上,還應(yīng)更多關(guān)注圖像運動信息的分析問題,例如利用幀到幀的匹配來重建運動軌跡。