曹文君 趙祚喜 劉雄 李葉林
摘 要: 基于平行雙目的測距技術(shù)已經(jīng)較為成熟,而在許多實(shí)際應(yīng)用中兩相機(jī)的位置并不平行,導(dǎo)致兩相機(jī)視場重疊區(qū)域大幅減少,從而縮小了測距范圍。針對此問題,提出一種單雙目結(jié)合的全景測距方法。該方法通過在視場重疊區(qū)域使用雙目測距,在非重疊區(qū)域使用單目測距,以實(shí)現(xiàn)在整個(gè)視場都能實(shí)現(xiàn)障礙物測距,并且將此方法推廣到全景相機(jī)上實(shí)現(xiàn)360°方位的測距。通過實(shí)驗(yàn)驗(yàn)證該測距方法的精度,實(shí)驗(yàn)結(jié)果表明,該方法具有較好的測距精度,能滿足避障的精確性要求。
關(guān)鍵詞: 避障; 重疊區(qū)域; 測距; 單雙目結(jié)合; 全景相機(jī)
中圖分類號: TN948.41?34; TH761.2 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)05?0038?04
Abstract: The range finding technology based on parallel binocular vision has become relatively mature, but the unparallel position of the two cameras in the practical applications can reduce the field overlapping area of the two cameras, so as to shorten the scope of range finding. Aiming at the above problems, an omnidirectional range finding method combining binocular vision with monocular vision is proposed, in which the binocular range finding is used in the FOV overlapping area, and the monocular range finding is used in the non?overlapping area to realize the obstacle range finding in the omnidirectional FOV. The method is popularized to the omnidirectional range finding of the panorama camera. The precision of the range finding method was verified with an experiment. The experimental results show that the method has high range finding accuracy, and can meet the accuracy requirement of the obstacle avoidance.
Keywords: obstacle avoidance; overlapping area; range finding; monocular and binocular combination; panorama camera
0 引 言
機(jī)器視覺是人類利用計(jì)算機(jī)實(shí)現(xiàn)人的視覺功能對客觀世界三維場景的感知、識別和理解,是一個(gè)相當(dāng)全新而且發(fā)展迅速的研究領(lǐng)域[1]?;诟黝悅鞲衅鞯臋C(jī)器人避障研究一直是機(jī)器人研究領(lǐng)域的熱點(diǎn),例如利用激光雷達(dá)、超聲波等傳感器[2?6]。激光雷達(dá)和超聲波的原理都是通過主動(dòng)發(fā)射脈沖和接收反射脈沖來測距的,因此當(dāng)多個(gè)機(jī)器人同時(shí)工作時(shí),相互之間可能產(chǎn)生干擾,而視覺是被動(dòng)測量,不存在這種問題。將視覺傳感器與接觸傳感器、激光雷達(dá)和超聲波等其他傳感器相比,機(jī)器視覺測量到的障礙物信息更豐富、完整,而且增加了障礙物的檢測范圍,這使得通過視覺傳感器準(zhǔn)確獲取信息成為智能機(jī)器人避障的主要發(fā)展方向之一。
傳統(tǒng)的局部視覺系統(tǒng)盡管成像形變較小、使用方便,但觀察范圍有限,只能觀測到攝像機(jī)前方幾十度視場內(nèi)的目標(biāo),在場地復(fù)雜環(huán)境下能夠提供的信息較少,不利于優(yōu)化避障決策。因此,國內(nèi)外都開始了對全景視覺系統(tǒng)的研究。楊鵬等針對足球機(jī)器人比賽中要求快速準(zhǔn)確獲取目標(biāo)位置信息的特點(diǎn), 設(shè)計(jì)了由雙曲面折反射全景視覺和前向視覺共同構(gòu)建而成的機(jī)器人視覺系統(tǒng)[6]。周宗思將全方位視覺傳感器采用兩個(gè)相同結(jié)構(gòu)的雙曲面折反射攝像機(jī)同軸同向上下安裝,然后根據(jù)雙目測距原理檢測障礙物[7]。文獻(xiàn)[8]提出一種只使用一個(gè)全景相機(jī)檢測靜態(tài)障礙物的絕對距離,這種方法不需要知道基線長或人工標(biāo)記,但是需要確定相機(jī)中心距地面的距離。文獻(xiàn)[9]將兩個(gè)Ladybug3上下對齊重疊構(gòu)成全方位立體視覺系統(tǒng),獲取3D深度圖,實(shí)現(xiàn)距離的測量,缺點(diǎn)是需要2個(gè)全景相機(jī),體積大、成本高。
本文基于以上背景提出了一種單雙目結(jié)合的測距方法,實(shí)驗(yàn)結(jié)果證明該方法具有較好的測距精度,能滿足避障的精確性要求。
1 單雙目測距策略
本文研究的雙目視覺系統(tǒng)鏡頭分布及測量范圍的平面示意圖,如圖1所示。根據(jù)其視場分為四個(gè)區(qū)域,A區(qū)為視場重疊區(qū),B、C區(qū)為非重疊區(qū)域,即只有一個(gè)攝像機(jī)能觀測到的區(qū)域,以及一個(gè)盲區(qū),即兩個(gè)攝像機(jī)都觀測不到的區(qū)域。O0,O1分別為cam0,cam1的光心,Z0,Z1分別為光軸,[β]是兩攝像機(jī)所成的夾角([90°<β<180°]),[φ]是攝像機(jī)的最大水平視角,兩攝像機(jī)的最大視角相等。當(dāng)攝像機(jī)的邊界線出現(xiàn)在相鄰相機(jī)視場中時(shí),稱邊界線為對應(yīng)攝像機(jī)下的視場分界線[10?11]。A區(qū)的兩視場分界線所成角度為重疊角[θ]。
則相鄰攝像機(jī)重疊區(qū)域的角度[θ]的計(jì)算公式為:
投射到圖像平面上的各個(gè)區(qū)域的關(guān)系示意圖如圖2所示。其中[W]為采集到單幅圖像的寬度,根據(jù)式(1)與圖2的三角關(guān)系可以計(jì)算出重疊區(qū)域的寬度[d:]
在求出重疊區(qū)域的寬度[d]后,即可確定視場分界線的位置。根據(jù)視場分界線判斷障礙物是否存在重疊區(qū)域,來確定使用雙目測距或單目測距。假設(shè)cam0中一個(gè)視角邊界[l0]與[x]軸重合,[l2]為最左邊界;[l1]為cam1的最右邊界,[l3]為最左邊界,如圖3所示。
在圖3中,[α0]為cam0的非重疊視場,[α1]為cam0與cam1的重疊視場,[α2]為cam1的非重疊視場。由式(1),式(2)可得:
若攝像機(jī)的視場中存在障礙物[(x,y),]定義[G(x,y)]為被測障礙物與視場分界線的關(guān)系函數(shù),以此判斷其障礙物是否在重疊區(qū)域。函數(shù)如下:
根據(jù)[G(x,y)]取值,即可判斷被測障礙物處于攝像機(jī)的視場內(nèi)位置。若障礙物處于重疊區(qū)域中,則開啟雙目測距機(jī)制;若處于非重疊區(qū)域中,則開啟單目測距機(jī)制。
本文將以上提出的單雙目結(jié)合測距策略應(yīng)用于全景相機(jī)Ladybug3,實(shí)現(xiàn)360°測距。Ladybug3全景相機(jī)是一種多相機(jī)球面全景成像系統(tǒng),它由6個(gè)200萬像素SONY鏡頭相機(jī)組成,其結(jié)構(gòu)如圖4所示。
全景相機(jī)Ladybug3的鏡頭成正五邊形分布,其中側(cè)面5個(gè)相機(jī)負(fù)責(zé)拍攝水平方向圖片,頂部1個(gè)相機(jī)負(fù)責(zé)拍攝垂直方向圖片,能同時(shí)采集6幅圖像。側(cè)面5個(gè)相機(jī)可以形成5對單雙目組合,從而實(shí)現(xiàn)360°障礙物測距。
2 重疊區(qū)雙目測距
如果障礙物處于圖1的A區(qū)域中,則兩個(gè)攝像機(jī)可以同時(shí)觀測到此障礙物。此時(shí),開啟雙目測距機(jī)制,當(dāng)對兩個(gè)攝像機(jī)的擺放位置不做特別要求,兩攝像機(jī)之間有任意的旋轉(zhuǎn)和平移,這樣便構(gòu)成了非平行配置雙目立體視覺。
設(shè)兩攝像機(jī)的有效焦距分別為[f0]和[f1,]取cam0的坐標(biāo)系為[O?xyz,]圖像坐標(biāo)系為[O0?X0Y0,]cam1的坐標(biāo)系為[O1?x1y1z1,]圖像坐標(biāo)系為[O1?X1Y1,]空間任意一點(diǎn)[P(x,y,z),][P]點(diǎn)在左右圖像上的坐標(biāo)分別為[P0(X0,Y0)]和[P1(X1,Y1)。]
根據(jù)透視變換的三角關(guān)系等式可以得到:
[X0=f0xz, Y0=f0yz, X1=f1x1z1, Y1=f1y1z1] (5)
而cam0的坐標(biāo)系與cam1的坐標(biāo)系之間的相互位置關(guān)系可以通過空間變換矩陣[M]來表示。
[xryrzr=Mxyz1,M=r1r2r3txr4r5r6tyr7r8r9tz=Rt] (6)
式中:[R]和[t]分別為[O?xyz]坐標(biāo)系與[O1?x1y1z1]坐標(biāo)系之間的旋轉(zhuǎn)矩陣和原點(diǎn)之間的平移向量。可以推導(dǎo)出空間點(diǎn)的三維坐標(biāo)為:
通過攝像機(jī)標(biāo)定技術(shù)得到了左右相機(jī)的有效焦距及左右相機(jī)之間的旋轉(zhuǎn)矩陣[R]與平移向量[t,]則只要通過匹配算法獲得空間物點(diǎn)在左右像平面上所成像點(diǎn)的坐標(biāo),就可以按照式(7)計(jì)算出空間物點(diǎn)的三維空間坐標(biāo)及深度信息。
下面以cam0和cam1為例闡述對障礙物測距:由Ladybug3的SDK同步獲得圖像;利用Matlab標(biāo)定工具箱對攝像機(jī)進(jìn)行標(biāo)定,得到內(nèi)外參數(shù);使用RANSAC?SIFT匹配算法對采集的圖像進(jìn)行匹配,獲取特征點(diǎn)坐標(biāo);利用透視模型推導(dǎo)式(7)計(jì)算距離。測量距離與實(shí)際距離及誤差如表1所示。
3 非重疊區(qū)單目測距
如果障礙物處于圖1的B或C區(qū)域中,則只有一個(gè)攝像機(jī)可以觀測到此障礙物。此時(shí),開啟單目測距機(jī)制。單目視覺系統(tǒng)一般對攝像機(jī)進(jìn)行內(nèi)、外參數(shù)標(biāo)定, 建立測量坐標(biāo)參考系,采用對應(yīng)點(diǎn)標(biāo)定法獲取圖像的深度信息,然后求得物體的距離。對應(yīng)點(diǎn)標(biāo)定法是指通過不同坐標(biāo)系中對應(yīng)點(diǎn)的對應(yīng)坐標(biāo)求解坐標(biāo)系的轉(zhuǎn)換關(guān)系,在標(biāo)定過程中,由于受器材限制,無法做到十分精確地記錄一個(gè)點(diǎn)在世界坐標(biāo)系和圖像坐標(biāo)系中的對應(yīng)坐標(biāo)。
本文采用數(shù)據(jù)回歸建模的方法[12]建立測距模型,先獲取距離樣本點(diǎn)與像平面之間較為稠密的一一對應(yīng)關(guān)系, 再用數(shù)據(jù)回歸分析的方法建立該映射關(guān)系對應(yīng)的測距模型。該方法不用再單獨(dú)考慮成像模型、成像系統(tǒng)誤差、透鏡畸變等帶來的影響, 而是在進(jìn)行回歸擬合時(shí)隱含地加以解決。與以前方法相比,計(jì)算復(fù)雜性不高,但相對而言,準(zhǔn)確性和魯棒性較高,且無須在使用前標(biāo)定相機(jī)。
回歸建模所需的觀察數(shù)據(jù)來自定標(biāo)實(shí)驗(yàn)。從1.2 m處開始測量,每隔0.2 m測量一次,一直到5 m處,共20個(gè)觀察值。由記錄所得的觀察數(shù)據(jù),采用非線性回歸對該模型進(jìn)行擬合。
回歸模型進(jìn)行非線性回歸建模:
式中:[D]為要求取的實(shí)際距離;[y]為像平面垂直高度值;[(b0,b1,b2)]為未知參數(shù);[ε]為零均值的隨機(jī)變量。定義[y1=y,][y2=y2,]利用最小二乘法對參數(shù)[(b0,b1,b2)]進(jìn)行估計(jì),像平面垂直高度[y]對實(shí)際距離[D]的回歸方程為:
最后,利用檢驗(yàn)假設(shè)檢驗(yàn)顯著性水平,驗(yàn)證上述回歸方程是否有意義,結(jié)果表明回歸方程有意義。使用非線性回歸模型求得的測量距離與實(shí)際距離及誤差見表2。
4 實(shí)驗(yàn)結(jié)果分析
對表1,表2的實(shí)驗(yàn)結(jié)果進(jìn)行分析, 可以看出:雙目測距結(jié)果最大誤差在5 m處,達(dá)到4.30%,誤差隨著距離的增大逐漸增大;單目測距結(jié)果的最大誤差為3 m時(shí)的8.67%,誤差的變化較為隨機(jī),并不隨著距離的增大而增大,但是誤差明顯比雙目測距要大。實(shí)驗(yàn)中的測距相對誤差最大為9.78%,測距絕對誤差最大為0.76 m,其中,在5~10 m范圍最大誤差為0.57 m,在10~20 m 范圍內(nèi)最大誤差為0.76 m??梢姡谝蟮陌踩熊嚲嚯x范圍之內(nèi),本文提出的測距算法完全可以滿足測距的準(zhǔn)確性要求。
5 結(jié) 論
本文提出了一種單雙目結(jié)合的全景測距方法。該方法通過在視場重疊區(qū)域使用雙目測距,在非重疊區(qū)域使用單目測距,充分利用整個(gè)視場實(shí)現(xiàn)障礙物測距。此方法對于多目全景相機(jī)解決360°障礙物探測具有指導(dǎo)性意義。同時(shí),實(shí)驗(yàn)結(jié)果分析表明,該方法具有較好的測距精度,能滿足避障的精確性要求。
本文下一步將把單雙目結(jié)合測距策略應(yīng)用于多目全景相機(jī)Ladybug3中,實(shí)現(xiàn)全方位障礙物檢測。同時(shí),針對單目測距精度較低的問題繼續(xù)進(jìn)行實(shí)驗(yàn),對一定距離障礙物分別采用雙目和單目方式測距,得出所用相機(jī)兩種方式測距之間的定量誤差關(guān)系,用于校正實(shí)際使用時(shí)單目測距區(qū)的測量值。
注:本文通訊作者為趙祚喜。
參考文獻(xiàn)
[1] 張廣軍.機(jī)器視覺[M].北京:科學(xué)出版社,2005.
[2] 劉杰,閆清東,唐正華.基于激光雷達(dá)的移動(dòng)機(jī)器人避障控制研究[J].計(jì)算機(jī)測量與控制,2015,23(3):787?790.
[3] 蔡自興,鄭敏捷,鄒小兵.基于激光雷達(dá)的移動(dòng)機(jī)器人實(shí)時(shí)避障策略[J].中南大學(xué)學(xué)報(bào)(自然科學(xué)版),2006,37(2):324?329.
[4] 李恒,徐小力,左云波.移動(dòng)機(jī)器人超聲波測距避障系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2014,37(3):157?159.
[5] 韓軍,常瑞麗,陳志靈.智能移動(dòng)機(jī)器人超聲波測距定位系統(tǒng)的研究[J].煤礦機(jī)械,2009,30(8):66?68.
[6] 楊鵬,高晶,劉作軍,等.基于全景與前向視覺的足球機(jī)器人定位方法研究[J].控制與決策,2008,23(1):75?78.
[7] 周宗思.全方位視覺技術(shù)及其在移動(dòng)機(jī)器人導(dǎo)航中的應(yīng)用[D].杭州:浙江工業(yè)大學(xué),2008.
[8] MILLNERT O, GOEDEME T, TUYTELAARS T, et al. Range determination for mobile robots using an omnidirectional ca?mera [J]. Integrated computer?aided engineering, 2007, 14(1): 63?72.
[9] YANG Liangliang, NOGUCHI Noboru, ISHII Kazunobu. Deve?lopment of a real time multi?lens based omni?directional stereo vision [R]. US: Perkin Elmer, 2012.
[10] KINDLMANN U, WHITAKER R, TASDIZEN T, et al. Curvature?based transfer functions for direct volume rendering: methods and applications [C]// Proceedings of 2003 IEEE Visualization Conference. Salk Lake: IEEE, 2003: 513?520.
[11] LUNDSTROM C, LJUNG P, YNNERMAN A. Local histograms for design of transfer functions in direct volume rende?ring [J]. IEEE transactions on visualization and computer graphics, 2006, 12(6): 1570?1579.
[12] 沈志熙,黃席樾.基于數(shù)據(jù)回歸建模的單目視覺測距算法[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(24):15?18.