高慶吉,彭傳波,方 榕
(中國民航大學(xué)電子信息與自動化學(xué)院,天津 300300)
在自助行李托運和自動行李分揀系統(tǒng)中,需要檢測行李的規(guī)格,包括外觀、尺寸、件數(shù)、形狀等,以便區(qū)分超規(guī)行李,拒絕托運形狀不合規(guī)行李。
常用的航空行李三維檢測方法有單目圖像序列光流法、光電開關(guān)和光幕探測法、立體視覺法、激光雷達(dá)三維成像法等,其中:單目圖像序列光流法對于光照變化、大位移運動等的光流計算結(jié)果較差[1];光電開關(guān)和光幕探測法的精度不足,工業(yè)級的激光三維成像系統(tǒng)測量復(fù)雜大型物體時,測量機(jī)位點的布置設(shè)計是準(zhǔn)確詳實獲取數(shù)據(jù)的關(guān)鍵技術(shù)[2],但是對于數(shù)據(jù)配準(zhǔn)仍無合適的解決方案;手持式三維掃描設(shè)備生成的模型紋理分辨率不夠且部分區(qū)域存在高光、陰影及明暗變化的問題[3]。
立體視覺法具有大視場、非接觸、信息豐富及高精度等優(yōu)點[4],但基于傳統(tǒng)的立體視覺法在自然光照條件下對于純色或紋理特征不明顯的航空行李很難進(jìn)行可靠的立體匹配和三維建模。為了增加被測物體表面的紋理特征,一般采用投影儀在目標(biāo)表面投影柵格圖案的方法來增加立體匹配的精度和可靠性,而投影模型的研究是近年來的一個熱點。
徐嬋嬋等[5]采用鄰域直方圖匹配的矢量進(jìn)行紋理合成,有較好的應(yīng)用意義;Xu 等[6]和Liu 等[7]采用投影激光點陣增強(qiáng)檢測目標(biāo)表面的紋理質(zhì)量,并得到目標(biāo)的稀疏點云模型;Yu 等[8]利用在被測物體上投影格雷碼的方法進(jìn)行物體表面的三維重建,其重建精度較高,適用于測量靜態(tài)物體[9];劉巍等[10]采用基于彩色編碼的空間域編碼方法,把所有編碼信息集中在一幅圖像上,采用一個投影儀和一個攝像機(jī)進(jìn)行被測物體表面的三維重建,可以實時在線檢測,由于該編碼方法在盡可能少的編碼圖案中融入更豐富的編碼信息,對物體表面的連續(xù)性有很高的要求。
基于上述文獻(xiàn)的啟發(fā),提出了一種隨機(jī)約束編碼的投影圖像生成算法。首先,根據(jù)立體匹配算法的搜索策略及代價聚合的計算方法,設(shè)計了投影圖像像素編碼規(guī)則,形成高強(qiáng)度的紋理分布圖像;然后,使用編碼后的圖像對弱紋理航空行李表面進(jìn)行主動投影,采用半全局立體匹配算法完成行李表面的三維重建。實驗證明,該約束隨機(jī)編碼圖像能夠顯著提高立體匹配的可靠性和三維重建的精度。
立體匹配通過尋找左右兩幅圖像中來自同一個空間點投影而成的特征點,構(gòu)建兩特征點的空間關(guān)系,從而對場景進(jìn)行三維重建。半全局立體匹配(SGM,semi-global matching)算法[11]是應(yīng)用于計算機(jī)雙目視覺的半全局匹配算法,通過代計算、代價聚合兩個關(guān)鍵步驟,在一維方向上搜索左右圖像中相同的特征點,并設(shè)置了一個全局能量函數(shù),尋找使得能量函數(shù)最小化的視差d,以達(dá)到求解每個像素最優(yōu)視差的目的,視差圖的能量函數(shù)定義為
其中,E(D)由3 部分構(gòu)成:第1 部分C(p,Dp)指該像素的視差為Dp時的匹配代價;第2 部分P1是一個懲罰系數(shù),T[ ]用于對p的鄰域與p 像素的視差值為1的像素進(jìn)行懲罰;第3 部分P2是另一個懲罰系數(shù),T[ ]用于對p的領(lǐng)域與p 像素的視差值大于1的像素進(jìn)行懲罰。
這樣立體匹配問題就可以轉(zhuǎn)換成尋找使得能量函數(shù)最小的視差問題,能量函數(shù)在二維圖像中尋找最優(yōu)解是一個NP-complete 問題[12],因此可分解為8
個一維問題,每個一維問題都可以使用動態(tài)規(guī)劃算法求解。
從SGM的能量函數(shù)計算方法可知,其立體匹配算法從8個一維方向搜索,找到使得能量函數(shù)最小的視差值。像素p的能量函數(shù)不僅與自身有關(guān),還與其8個鄰域像素的能量值有關(guān),因此,設(shè)計一種基于8 鄰域編碼投影模型,使得每個像素及其鄰域能量被唯一標(biāo)識。
在許多情況下,由于物體的遮擋及物體的不連續(xù)性使得該像素不可見時,可利用該像素周圍的8個像素的能量值來唯一判斷出該像素[13]。由于每個像素及其8 鄰域內(nèi)的編碼是唯一確定的,所以減小了在立體匹配中找到左右圖像相同或相近的特征點的困難。SGM 算法基于移動窗口來尋找左右圖像中相同的特征點,這樣會使得匹配效率增加。
令P = {p1,p2,…,pn},p∈(0,255),pn表示每個像素的能量值。這些能量值構(gòu)成了一個m×n的矩陣M,這個矩陣M 就是約束隨機(jī)編碼模型矩陣。定義一維矩陣,矩陣的位置由下標(biāo)(i,j)唯一確定,即
wij由該像素及8個鄰域像素組成,8 鄰域共分成4個方向(左右、上下和兩對角線)如圖1所示。
圖1 wij 向量元素位置示意圖Fig.1 wij vector element position diagram
每個像素與其周圍8個像素的能量值都不相同,且根據(jù)能量絕對值之差,可設(shè)定閾值h,閾值h 越大,該像素與周圍像素的能量差值越大,可得約束隨機(jī)編碼矩陣M的構(gòu)造方式為
其中,M的約束條件為
上述約束條件保證了該像素及其8個鄰域像素能量值的唯一性,在8個方向上搜索左右兩幅圖像上同一個像素及其鄰域的能量差值最小。
首先,設(shè)置編碼模型的高度和寬度,這決定生成約束隨機(jī)編碼投影模型的大小。編碼矩陣按照行的順序依次產(chǎn)生,每次利用隨機(jī)算法產(chǎn)生一個像素的能量值,之后每個新的像素能量值都會與前面已經(jīng)存在像素能量值按照編碼規(guī)則進(jìn)行能量差值運算,且差值≥h,如果不滿足閾值的要求,再次調(diào)用隨機(jī)算法產(chǎn)生新的能量值,重新進(jìn)行運算,直到產(chǎn)生滿足閾值要求的能量值為止。
1)第1 行編碼序列
其中:xij表示每個像素能量值的大小,xij∈(0,255);n表示第1 行像素的個數(shù)(與設(shè)定的寬度有關(guān)),1≤n≤width。第1 行的像素只需與前1個像素進(jìn)行運算,如圖2所示(箭頭指向的兩個像素作差值運算)。且滿足:
圖2 第1 行約束隨機(jī)編碼示意圖Fig.2 Constrained random coding in Line One
2)第2 行編碼序列
第2 行第1個編碼單位調(diào)用隨機(jī)算法的生成不需要與任何編碼單位進(jìn)行能量差值運算,第2 行編碼序列的第2個單位編碼需要與4個編碼單位進(jìn)行差值運算,第3個單位編碼需要與5個編碼單位進(jìn)行差值運算,以此類推,最后1個單位編碼需要與4個編碼單位進(jìn)行差值運算,如圖3所示。
3)第3 行編碼序列
圖3 第2 行約束隨機(jī)編碼示意圖Fig.3 Constraint random coding in Line Two
第3 行的第1個單位編碼需要與2個編碼單位進(jìn)行差值運算;第2個編碼單位需要與6個編碼單位進(jìn)行差值運算,如圖4(a)所示;第3 行第3個單位編碼需要與周圍8個編碼單位進(jìn)行差值運算;以此類推第3 行最后1個單位編碼需要與6 編碼單位進(jìn)行差值運算,如圖4(b)所示。
圖4 第3 行約束隨機(jī)編碼示意圖Fig.4 Constrained random coding in Line Three
第4 行到最后1 行的編碼類似第3 行,當(dāng)所有行的編碼完成之后激光投影編碼模型就可以生成了,最終生成約束隨機(jī)編碼模型。
實驗在PC 機(jī)上實現(xiàn),主要配置是:Inter(R)Core(TM)i7-4790 K CPU,4.00 GHz 主頻,8.00 G 內(nèi)存,Window10 操作系統(tǒng)。立體視覺的硬件組成包括筆記本電腦及雙目立體視覺相機(jī)。雙目立體視覺相機(jī)由兩臺Basler dart(daA1280-54uc)工業(yè)相機(jī)組成,圖像分辨率為1 280×960。兩臺立體視覺相機(jī)平行放置,剛性固聯(lián),設(shè)定基線(可調(diào))為100 mm;相機(jī)鏡頭采用Basler 原裝C 口鏡頭,8 mm 固定焦距,分辨率為500萬像素。自助行李托運系統(tǒng)在室內(nèi)環(huán)境下運行,光照比較穩(wěn)定,左右相機(jī)采集的圖像光照差異較小,但是相比室外的環(huán)境,弱紋理特征會更加突出。
立體視覺實驗平臺如圖5所示,雙目相機(jī)與水平方向的夾角為30°,約束隨機(jī)編碼的投影裝置安裝在雙目相機(jī)的下方,與相機(jī)夾角相同,相機(jī)安裝高度距離自助行李托運系統(tǒng)的傳送帶上表面1.2 m。
在實驗中首先進(jìn)行了在自然光照條件下的立體匹配實驗,如表1所示。由自然光照下生成的視差圖可知,對于純色或弱紋理的航空行李對象,SGM 算法存在極大的誤匹配和無法匹配的現(xiàn)象,因此若要得到完整的行李視差圖,必須對這種對象進(jìn)行紋理增強(qiáng)。在表1的對比實驗中,采用了立體視覺中常用的紋理增強(qiáng)方法(激光點陣投影,隨機(jī)數(shù)字散斑投影,靜態(tài)光柵投影)得到行李對象的視差圖,并對不同紋理增強(qiáng)方法得到視差圖進(jìn)行分析。
圖5 雙目立體視覺實驗平臺Fig.5 Binocular stereo vision experiment platform
表1 不同紋理增強(qiáng)方法對比實驗Tab.1 Comparing experiment of different texture enhancement methods
為了驗證約束編碼模型弱紋理對象立體匹配的魯棒性,在室內(nèi)采集了包括自然光照、激光點陣投影、隨機(jī)數(shù)字散斑投影及約束隨機(jī)編碼投影得到的視差圖進(jìn)行匹配的正確率進(jìn)行統(tǒng)計。圖6 是通過立體匹配得到稠密視差圖而統(tǒng)計出的無法匹配、正確匹配及誤匹配的像素個數(shù)分布直方圖(像素的灰度值在0~85認(rèn)為是無法匹配、86~170為正確匹配;171~255為誤匹配)。
圖6 視差圖灰度值分布Fig.6 Gray value distribution of disparity map
從圖6 中明顯可看出,基于約束隨機(jī)編碼模型正確匹配的概率最高、誤匹配率最低,隨機(jī)數(shù)字散斑次之,然后是激光點陣,在自然光照條件下正確匹配的概率最低。
紋理質(zhì)量是立體視覺狀態(tài)檢測研究的核心技術(shù),在工業(yè)生產(chǎn)領(lǐng)域起著重要的作用[14],較高的紋理質(zhì)量可以大幅提高立體匹配的質(zhì)量。
積分灰度方差是能夠反映圖像紋理質(zhì)量的評價依據(jù)[15],一個窗口內(nèi)的灰度值方差可表示為
通過平面測量的方法對比實驗分析約束隨機(jī)編碼模型下航空行李三維重建的精度。在實驗中選擇不同顏色和不同形狀的航空行李進(jìn)行多次測量取平均值作為航空行李的真實測量值,以三維重建之后的點云到擬合平面距離最大值作為三維重建的精度值進(jìn)行誤差計算[16],結(jié)果如表2所示。
圖7 積分灰度方差Fig.7 Integrated gray scale variance
表2 行李箱三維重建測量精度Tab.2 3D reconstruction measurement accuracy of baggage
從表2 中可知,約束隨機(jī)編碼投影誤差比為0.43%,遠(yuǎn)低于隨機(jī)數(shù)字散斑投影方式和激光點陣投影方式,可顯著提高弱紋理行李對象立體匹配的可靠性和三維重建精度。
為了解決弱紋理行李對象的三維建模困難問題,研究了一種隨機(jī)約束編碼的投影圖像生成算法。設(shè)計了投影圖像像素編碼規(guī)則,建立了投影與目標(biāo)混合圖像位置像素局部唯一性約束下的計算方法,形成高強(qiáng)度的紋理分布圖像;使用編碼后的圖像對弱紋理航空行李進(jìn)行了主動投影,采用半全局立體匹配算法完成行李表面的三維重建。由實驗結(jié)果可知,該約束隨機(jī)編碼模型可顯著增強(qiáng)雙目立體視覺系統(tǒng)中立體匹配可靠性和三維重建的精度,可用于行李適運性檢測。