楊 彪,王 狄,沈紹博,楊長(zhǎng)春+,劉小峰
(1.常州大學(xué) 微電子與控制工程學(xué)院,江蘇 常州 213164;2.河海大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 常州 213022)
室內(nèi)外環(huán)境的復(fù)雜性為移動(dòng)機(jī)器人的精準(zhǔn)跟隨提出了挑戰(zhàn)。為了更好地完成行人跟隨任務(wù),需要精確測(cè)量人-機(jī)距離[1,2],根據(jù)距離和偏航角調(diào)整機(jī)器人運(yùn)動(dòng)狀態(tài),從而魯棒地跟隨行人。
為了準(zhǔn)確測(cè)量前人距離,研究人員使用多傳感器融合的方法來(lái)檢測(cè)和跟蹤行人[3,4]。Tripathi等[5]使用超聲波和紅外傳感器跟隨指定行人。隨著激光雷達(dá)技術(shù)的發(fā)展,可以實(shí)現(xiàn)遠(yuǎn)距離人體目標(biāo)的測(cè)距[6,7]。Chebotareva等[8]基于激光測(cè)距儀和單目相機(jī)的數(shù)據(jù)融合方法,提出了人體跟蹤算法。Zhu等[9]使用毫米波雷達(dá)和單目相機(jī)的信息感知環(huán)境,使機(jī)器人以預(yù)期的距離跟蹤人體目標(biāo)。毫米波雷達(dá)和激光雷達(dá)可以直接獲取目標(biāo)位置,但是兩者成像分辨率低,難以區(qū)分物體邊界,而多傳感器融合方法因其高昂的售價(jià)難以在移動(dòng)機(jī)器人中普及[10]。
本文基于低成本的RGB-D相機(jī),搭建了移動(dòng)機(jī)器人平臺(tái),提出了一種基于MRSD測(cè)距的移動(dòng)機(jī)器人跟隨系統(tǒng),主要工作在于:①本文引入Mask R-CNN算法[11]對(duì)行人進(jìn)行實(shí)例分割,根據(jù)行人掩膜從深度圖像中提取深度像素點(diǎn),測(cè)量行人距離。②針對(duì)深度偽影問(wèn)題,當(dāng)前工作多使用傳統(tǒng)濾波算法[12],導(dǎo)致測(cè)距精度低。本文引入S2R-DepthNet網(wǎng)絡(luò)[13]從彩色圖像中推理深度,替換相機(jī)深度圖像中的無(wú)效點(diǎn),提高測(cè)距精度。③針對(duì)深度融合的測(cè)距信息,建立基于Sage-Husa自適應(yīng)濾波器的測(cè)距模型,抑制量測(cè)異常值的影響,從而使得移動(dòng)機(jī)器人能夠更加魯棒地跟隨行人。
實(shí)例分割是計(jì)算機(jī)視覺(jué)領(lǐng)域經(jīng)典任務(wù)之一。在移動(dòng)機(jī)器人領(lǐng)域,實(shí)例分割可以分析場(chǎng)景,檢測(cè)場(chǎng)景中的不同實(shí)例并完成像素層面的分類。隨著深度學(xué)習(xí)技術(shù)的發(fā)展,科研工作者相繼提出了Faster R-CNN[14]、Cascade R-CNN[15]和YOLO系列[16,17]網(wǎng)絡(luò)模型。相比于傳統(tǒng)目標(biāo)檢測(cè)算法,上述網(wǎng)絡(luò)模型在準(zhǔn)確性有著顯著優(yōu)勢(shì)。但是,上述算法的目標(biāo)檢測(cè)框無(wú)法準(zhǔn)確分離物體的前景和背景,從而降低深度測(cè)距精度。因此,本文引入Mask R-CNN模型,檢測(cè)場(chǎng)景中的行人目標(biāo),獲得行人掩膜。
通過(guò)預(yù)訓(xùn)練的RPN獲得行人目標(biāo)檢測(cè)框、使用ROIPool從檢測(cè)框中提取特征,在進(jìn)行分類和邊界框回歸的同時(shí)輸出二進(jìn)制掩膜。在具體訓(xùn)練過(guò)程中,分類損失函數(shù)Lc和邊界框回歸損失函數(shù)Lb的運(yùn)算如下
(1)
(2)
其中,s是分類器預(yù)測(cè)的softmax概率分布,u為目標(biāo)真實(shí)類別標(biāo)簽,tu為預(yù)測(cè)回歸參數(shù),v為真實(shí)目標(biāo)邊界框參數(shù)。
Mask的損失函數(shù)Lm為
Lm=-ylog(p(x))-(1-y)log(1-p(x))
(3)
式中:p(x) 是模型輸出,y是真實(shí)標(biāo)簽。
與單任務(wù)網(wǎng)絡(luò)相比,多任務(wù)網(wǎng)絡(luò)共享特征提取層參數(shù),從而減小模型參數(shù)和計(jì)算量,完成檢測(cè)和分割任務(wù)。
單目深度估計(jì)網(wǎng)絡(luò)的任務(wù)是預(yù)測(cè)彩色圖像中像素的深度值。S2R-DepthNet模型借鑒了人對(duì)場(chǎng)景的三維感知的特點(diǎn),重點(diǎn)關(guān)注彩色圖像物體的空間結(jié)構(gòu),結(jié)合深度注意力模塊預(yù)測(cè)彩色像素的深度信息。S2R-DepthNet模型可以分離彩色圖像結(jié)構(gòu)信息并提取互補(bǔ)的高層語(yǔ)義,抑制與深度無(wú)關(guān)的信息,從而增加深度推理的準(zhǔn)確性。
具體過(guò)程如下:輸入彩色圖像,通過(guò)結(jié)構(gòu)提取模塊分離彩色圖像中不變的結(jié)構(gòu)信息,生成結(jié)構(gòu)圖,真實(shí)深度為T(mén),損失函數(shù)如下所示
(4)
式中:T′是預(yù)測(cè)的深度值,p是深度像素索引,Δx和Δy是深度圖的水平和垂直算子,α和β是超參數(shù)。
結(jié)構(gòu)圖中包含了大量與深度無(wú)關(guān)的低層信息,會(huì)降低深度估計(jì)的精度。而利用深度注意力模塊產(chǎn)生的深度注意力圖,優(yōu)化結(jié)構(gòu)圖,輸出預(yù)測(cè)深度圖,從而提高深度估計(jì)質(zhì)量。注意力圖和深度預(yù)測(cè)的損失函數(shù)為
(5)
本文搭建了一個(gè)移動(dòng)機(jī)器人作為行人跟隨的平臺(tái),提出的基于MRSD測(cè)距的移動(dòng)機(jī)器人跟隨系統(tǒng)的運(yùn)行流程,如圖1所示,主要包含MRSD測(cè)距算法和行人跟隨控制兩個(gè)部分。首先對(duì)輸入的彩色圖像進(jìn)行目標(biāo)檢測(cè);然后深度融合測(cè)距模塊獲取人-機(jī)距離,根據(jù)目標(biāo)距離建立Sage-Husa自適應(yīng)卡爾曼預(yù)測(cè)和測(cè)量方程輸出距離信息;最后,當(dāng)人-機(jī)距離與設(shè)定距離不等時(shí),通過(guò)PID控制器輸出相應(yīng)角速度和線速度,驅(qū)動(dòng)小車跟隨行人移動(dòng)至設(shè)定距離后,若行人繼續(xù)運(yùn)動(dòng),小車持續(xù)跟隨行人,否則,小車停止運(yùn)動(dòng)。
圖1 機(jī)器人跟隨系統(tǒng)流程
本文提出的MRSD測(cè)距算法包含兩個(gè)部分:行人檢測(cè)和深度測(cè)距,如圖2所示。具體流程為:將彩色圖像輸入Mask R-CNN和S2R-DepthNet網(wǎng)絡(luò),前者用于檢測(cè)行人,獲取行人前景掩膜;后者用于推理深度圖像。根據(jù)掩膜從深度圖像中提取行人區(qū)域深度點(diǎn),使用推理深度圖像替代相機(jī)深度圖像中的無(wú)效點(diǎn),從而精確計(jì)算人-機(jī)距離。下面分別介紹MRSD測(cè)距算法的兩個(gè)模塊。
圖2 MRSD測(cè)距算法結(jié)構(gòu)
2.1.1 行人檢測(cè)
行人檢測(cè)既是深度融合測(cè)距的前提,又是移動(dòng)機(jī)器人感知環(huán)境的基礎(chǔ)[18]。YOLOv5雖然可以快速檢測(cè)行人,但目標(biāo)檢測(cè)框會(huì)選中圖像的背景像素,導(dǎo)致深度測(cè)距精度降低。因此,準(zhǔn)確表示行人區(qū)域,對(duì)于測(cè)量人-機(jī)距離至關(guān)重要。本文引入Mask R-CNN網(wǎng)絡(luò)準(zhǔn)確分割行人區(qū)域并輸出前景掩膜。定義輸入彩色圖像X,則掩碼Y的公式如下
Y=Mask(X,Ws)
(6)
式中:Mask()表示預(yù)訓(xùn)練的Mask R-CNN網(wǎng)絡(luò),Ws表示權(quán)重矩陣。
Mask R-CNN結(jié)合Faster R-CNN和FCN的功能,前者用于提取特征,隨后在特征圖上,利用分類器鑒別的候選ROI并檢測(cè)行人;后者利用卷積和去卷積操作,對(duì)每個(gè)像素分類后得到行人掩膜,從而準(zhǔn)確分割行人前景和背景。同時(shí)為了降低誤判率,本文設(shè)置算法的行人置信度為0.92。
2.1.2 深度融合測(cè)距
行人運(yùn)動(dòng)速度的動(dòng)態(tài)變化,導(dǎo)致人-機(jī)距離也隨之變化。若移動(dòng)機(jī)器人能精確測(cè)量人-機(jī)距離,就能通過(guò)控制算法控制其運(yùn)動(dòng)狀態(tài),準(zhǔn)確跟隨行人。在跟隨行人的過(guò)程中,由于行人運(yùn)動(dòng)狀態(tài)的不確定性和RGB-D相機(jī)的成像限制,移動(dòng)機(jī)器人不可避免地產(chǎn)生距離誤差。深度測(cè)距誤差原因通常來(lái)自于兩個(gè)方面:不準(zhǔn)確的目標(biāo)檢測(cè)框以及深度圖像中無(wú)效像素值,前者可以通過(guò)Mask R-CNN輸出行人掩膜解決;后者指深度圖像中距離為0的深度像素點(diǎn)。
為了降低無(wú)效深度點(diǎn)對(duì)測(cè)距精度的影響,本文首先定位相機(jī)深度圖像中深度無(wú)效點(diǎn)的位置,然后提取單目深度估計(jì)網(wǎng)絡(luò)推理的深度圖像對(duì)應(yīng)位置的距離,最后完成像素替換,從而提高測(cè)距精度,完成行人跟隨任務(wù)。定義結(jié)構(gòu)提取模塊的編碼器、解碼器,前者將彩色圖像X映射到潛在空間[19],后者生成結(jié)構(gòu)圖Ms。由于結(jié)構(gòu)圖中存在大量無(wú)用的低維信息,S2R-DepthNet將注意力機(jī)制與結(jié)構(gòu)圖結(jié)合,消除低維信息對(duì)深度估計(jì)的影響,進(jìn)一步建立彩色像素和深度像素的映射關(guān)系。
深度注意力模塊中的編碼器使用擴(kuò)展殘差網(wǎng)絡(luò)[20],用于增加編碼器網(wǎng)絡(luò)的感受野。在解碼器后增加sigmoid函數(shù),輸出深度注意力MA。S2R-DepthNet的推理深度為
Tt=f(Ms×MA)
(7)
式中:f()表示深度預(yù)測(cè)模塊。
RGB-D相機(jī)的深度圖像存在深度偽影的固有問(wèn)題,若直接使用相機(jī)深度圖像測(cè)量人-機(jī)距離,會(huì)降低測(cè)距精度,進(jìn)而降低移動(dòng)機(jī)器人跟隨的穩(wěn)定性。因此本文引入單目深度估計(jì)網(wǎng)絡(luò),彌補(bǔ)相機(jī)深度圖像中的無(wú)效像素點(diǎn)。在獲得行人掩膜后,融合相機(jī)深度和推理深度,計(jì)算人-機(jī)距離。定義Pli表示相機(jī)深度圖像的行人區(qū)域第i個(gè)像素點(diǎn)的距離,Pti表示S2R-DepthNet網(wǎng)絡(luò)推理深度圖像的行人區(qū)域第i個(gè)像素點(diǎn)的距離,測(cè)量人-機(jī)距離Edis的公式如下所示
(8)
(9)
其中,Pi表示融合后行人區(qū)域第i個(gè)像素的距離;n表示行人掩膜區(qū)域的深度像素的總數(shù)量。
2.1.3 偏航角計(jì)算
偏航角φ表示為行人目標(biāo)偏離相機(jī)視野中間位置的角度,如圖3所示。在行人跟隨過(guò)程中,人-機(jī)距離Edis和偏航角φ共同決定移動(dòng)機(jī)器人的運(yùn)動(dòng)狀態(tài)。在相機(jī)的成像平面中,行人目標(biāo)偏移距離所占像素PQ誤差小,相機(jī)焦距f為固定值,由兩者計(jì)算得到的偏航角具有較高的準(zhǔn)確性[21,22]。
圖3 偏航角計(jì)算模型
定義P是人體中心點(diǎn),其坐標(biāo)為(Px,Py),O是相機(jī)光心,AQ是彩色圖像寬度的一半,ζ是AO與QO之間的角度,則偏航角φ為
(10)
2.2.1 系統(tǒng)模型建立
在行人跟隨過(guò)程中,距離信息受光照變化、行人和移動(dòng)機(jī)器人速度的影響較大,導(dǎo)致測(cè)量距離存在較大波動(dòng)的問(wèn)題?;诖耍疚氖褂每柭鼮V波算法對(duì)測(cè)距值進(jìn)行平滑處理,使得測(cè)量距離更加趨近真實(shí)值,從而驅(qū)動(dòng)移動(dòng)機(jī)器人更加平穩(wěn)地跟隨前人。卡爾曼濾波算法將加速度建模為隨機(jī)噪聲,使用人-機(jī)距離、速度和加速度作為狀態(tài)變量,其中人-機(jī)距離p由觀測(cè)得到,速度為v,加速度為a,那么移動(dòng)機(jī)器人在k時(shí)刻的狀態(tài)向量
X=[pva]T
(11)
系統(tǒng)的狀態(tài)方程和觀測(cè)方程如下
(12)
式中:Xk是目標(biāo)k時(shí)刻的狀態(tài)向量;Zk是觀測(cè)向量;Fk,k-1是狀態(tài)轉(zhuǎn)移矩陣;Hk是觀測(cè)矩陣;Wk-1和Vk分別是狀態(tài)預(yù)測(cè)過(guò)程和觀測(cè)過(guò)程的高斯噪聲且相互獨(dú)立。狀態(tài)轉(zhuǎn)移矩陣F為
(13)
式中:T代表采樣時(shí)間。
由于本文只有人-機(jī)距離一個(gè)觀測(cè)量,故設(shè)置觀測(cè)矩陣H為
(14)
2.2.2 Sage-Husa自適應(yīng)濾波器
測(cè)距系統(tǒng)常采用卡爾曼濾波算法進(jìn)行運(yùn)動(dòng)控制,但在濾波過(guò)程中,若噪聲特性時(shí)變,易發(fā)生濾波發(fā)散和精度降低的現(xiàn)象。因此,本文引入Sage-Husa自適應(yīng)濾波器(SHAKF),減小時(shí)變?cè)肼暤挠绊?,測(cè)距系統(tǒng)的狀態(tài)空間方程見(jiàn)式(12)。
常規(guī)卡爾曼濾波假設(shè)系統(tǒng)的量測(cè)噪聲具有穩(wěn)定性,但在實(shí)際應(yīng)用中,時(shí)變的量測(cè)噪聲對(duì)濾波效果影響較大。若能夠?qū)崟r(shí)推理系統(tǒng)的量測(cè)噪聲協(xié)方差矩陣Rk,就可以防止濾波發(fā)散,提高濾波精度。系統(tǒng)的新息公式為
(15)
由上式可得新息協(xié)方差矩陣為
(16)
(17)
式中:b為漸消因子,一般取0.9,故量測(cè)噪聲協(xié)方差矩陣Rk為
(18)
聯(lián)合上式,Sage-Husa自適應(yīng)濾波公式為
(19)
式中:Pk-1和Pk,k-1分別是k-1時(shí)刻和k時(shí)刻的狀態(tài)估計(jì)協(xié)方差;Qk是k時(shí)刻的過(guò)程噪聲協(xié)方差;Kk是k時(shí)刻的卡爾曼增益。針對(duì)距離信息受光照條件和行人速度變化大的問(wèn)題,Sage-Husa自適應(yīng)濾波能夠有效降低測(cè)距誤差,提高距離測(cè)量的精度,從而增加移動(dòng)機(jī)器人跟隨的平順性。
2.2.3 行人跟隨控制
當(dāng)移動(dòng)機(jī)器人獲得行人的距離和偏航角后,需要控制器驅(qū)動(dòng)移動(dòng)機(jī)器人,完成行人跟隨任務(wù)。
PID控制器能夠減小測(cè)量位置和設(shè)定位置之間的誤差,使得移動(dòng)機(jī)器人能夠快速穩(wěn)定跟隨行人運(yùn)動(dòng)。同時(shí),PID控制器能夠避免機(jī)器人移動(dòng)速度過(guò)快導(dǎo)致人-機(jī)碰撞危險(xiǎn)。因此,本文選擇PID控制器作為移動(dòng)機(jī)器人的運(yùn)動(dòng)控制模塊。
PID控制器以測(cè)量距離和偏航角作為輸入,以線速度和角速度作為輸出,驅(qū)動(dòng)車輪電機(jī)跟隨行人。本文設(shè)置跟隨距離為0.6 m,設(shè)置偏航角為0°。本文所使用的離散式PID控制器的計(jì)算公式為
(20)
(21)
其中,v和w分別表示PID輸出的線速度和角速度;ed(k) 和ew(k) 分別為k時(shí)刻的距離偏差和角度偏差;ed(k-1) 和ew(k-1) 分別為k-1時(shí)刻的距離偏差和角度偏差;KP、KI和KD分別為速度PID的比例系數(shù)、積分系數(shù)和微分系數(shù);Kp、Ki和Kd分別為角度PID的比例系數(shù)、積分系數(shù)和微分系數(shù)。
當(dāng)距離和偏航角與設(shè)定值產(chǎn)生誤差時(shí),PID控制器中的比例控制快速響應(yīng),積分控制用于消除過(guò)去累計(jì)的誤差,微分控制用于提高系統(tǒng)動(dòng)態(tài)性能指標(biāo),輸出線速度和角速度。PID控制器能夠使得移動(dòng)機(jī)器人與目標(biāo)人體保持合適的相對(duì)位置,達(dá)到理想的跟隨效果。
本實(shí)驗(yàn)的硬件平臺(tái)由樂(lè)視LeTMC-520RGB-D相機(jī)、NVIDIA Jetson Xavier、STM32控制器和驅(qū)動(dòng)電機(jī)組成,如圖4所示。本文選擇樂(lè)視RGB-D相機(jī)作為視覺(jué)傳感器,通過(guò)深度測(cè)距使得機(jī)器人能以設(shè)定的距離跟隨目標(biāo)移動(dòng)。將MRSD算法部署在NVIDIA Jetson Xavier上,既可以配合RGB-D相機(jī)測(cè)量距離和偏航角,又可以連接STM32控制直流電機(jī),完成行人跟隨任務(wù)。
圖4 移動(dòng)機(jī)器人硬件
測(cè)試數(shù)據(jù):本文使用RGB-D相機(jī)在室內(nèi)環(huán)境中采集圖像數(shù)據(jù)和深度數(shù)據(jù),采集的圖像分辨率為640×480,行人和相機(jī)間的真實(shí)距離由卷尺手工測(cè)量。由于無(wú)法實(shí)時(shí)獲得人體目標(biāo)和移動(dòng)機(jī)器人的真實(shí)距離,本文設(shè)置移動(dòng)機(jī)器人和人體目標(biāo)保持靜止?fàn)顟B(tài)。每隔0.6 m測(cè)量人體目標(biāo)的實(shí)際距離,并保存此位置的20張彩色圖像和深度圖像。由于深度相機(jī)存在距離越遠(yuǎn)誤差越大的限制,本文將距離測(cè)量范圍設(shè)置為0.6 m至4.8 m,并將測(cè)量范圍劃分為7個(gè)區(qū)間,方便后續(xù)距離誤差測(cè)試。
評(píng)價(jià)指標(biāo):本文使用位移誤差Derr(displacement error)評(píng)價(jià)機(jī)器人和目標(biāo)之間距離的精度。位移誤差由實(shí)際距離Rdis(real distance)和測(cè)量距離Edis計(jì)算可得
Derr=Rdis-Edis
(22)
本文提出了一種基于MRSD測(cè)距的移動(dòng)機(jī)器人跟隨系統(tǒng),引入MaskR-CNN實(shí)例分割算法和S2R-DepthNet單目深度估計(jì)網(wǎng)絡(luò),提高深度測(cè)距的精度。為評(píng)價(jià)不同網(wǎng)絡(luò)模塊的作用,在測(cè)試數(shù)據(jù)上進(jìn)行銷蝕實(shí)驗(yàn)。MRSD測(cè)距算法銷蝕實(shí)驗(yàn)結(jié)果見(jiàn)表1,與目標(biāo)檢測(cè)算法相比,實(shí)例分割算法能大幅提高深度測(cè)距精度。在加入單目深度估計(jì)算法后,在測(cè)試數(shù)據(jù)上的平均誤差相較于之前降低了40.6%,取得更好的測(cè)距效果。
表1 MRSD測(cè)距算法銷蝕實(shí)驗(yàn)結(jié)果
測(cè)量人-機(jī)距離是移動(dòng)機(jī)器人跟隨系統(tǒng)領(lǐng)域的熱點(diǎn)話題。傳統(tǒng)方法通過(guò)YOLOv5算法檢測(cè)行人,由于無(wú)法準(zhǔn)確獲得行人區(qū)域的深度點(diǎn),導(dǎo)致人-機(jī)距離測(cè)量不精確。本文以深度圖像為基礎(chǔ),結(jié)合行人檢測(cè)和深度融合算法,提高人-機(jī)距離的測(cè)量精度。
為了驗(yàn)證本文方法的測(cè)距性能,選取了如下方法對(duì)比:YL和YLX表示YOLOv5和YOLOX[23]的目標(biāo)檢測(cè)框的測(cè)距方法;IS表示Mask R-CNN的實(shí)例分割的測(cè)距方法;Fu等[12]表示使用傳統(tǒng)數(shù)字濾波處理深度圖像的實(shí)例分割的測(cè)距方法;IS_S2R和IS_RMS表示S2R-DepthNet和R-MSFM[24]的深度融合的測(cè)距方法;Ours表示本文提出的測(cè)距方法。
本文使用測(cè)試數(shù)據(jù)上8個(gè)位置進(jìn)行實(shí)驗(yàn),采用位移誤差指標(biāo)衡量人-機(jī)測(cè)距的精度,如表2所示,本文算法由于引入了Mask R-CNN網(wǎng)絡(luò)和S2R-DepthNet單目深度估計(jì)網(wǎng)絡(luò),抑制深度無(wú)效點(diǎn)對(duì)深度融合測(cè)距的影響,提高了人-機(jī)測(cè)距的精度。
表2 人-機(jī)距離誤差比較
本文引入Mask R-CNN算法,獲得行人掩膜,并根據(jù)掩膜信息提取行人區(qū)域的深度像素點(diǎn),計(jì)算人-機(jī)距離。因此,檢測(cè)算法的輸出形式?jīng)Q定了行人區(qū)域的表示準(zhǔn)確度,從而影響人-機(jī)測(cè)距的精度。YOLOv5的深度測(cè)距方法誤差較大,且隨著距離的增加誤差逐漸增大,如圖5所示。本文引入的Mask R-CNN在人-機(jī)距離較近時(shí),深度測(cè)距的精度較高。但在人-機(jī)距離較遠(yuǎn)時(shí),受限于RGB-D相機(jī)成像素質(zhì)和深度圖像中的無(wú)效深度點(diǎn),測(cè)距誤差逐漸增大。
圖5 不同算法測(cè)量距離與實(shí)際距離對(duì)比結(jié)果
受到光線的影響,YOLOv5算法誤檢和漏檢,無(wú)法準(zhǔn)確選中行人,影響深度測(cè)距的精度,如圖6所示。Mask R-CNN由于應(yīng)用了ROlAlign策略,可以實(shí)現(xiàn)像素級(jí)別的分割,使其能夠獲得較高的行人檢測(cè)準(zhǔn)確率。所以本文引入Mask R-CNN算法分割人體目標(biāo)的效果較好。
圖6 YOLOv5和Mask R-CNN行人檢測(cè)
深度可視化結(jié)果如圖7所示,圖7(a)場(chǎng)景中相機(jī)深度圖像出現(xiàn)無(wú)效點(diǎn),而S2R-DepthNet算法因加入了結(jié)構(gòu)一致性模塊,其推理圖像具有深度連續(xù)性,避免出現(xiàn)無(wú)效深度點(diǎn)。圖7(b)場(chǎng)景中深度相機(jī)由于受到室外的強(qiáng)烈光照和人-機(jī)距離過(guò)遠(yuǎn)的影響,其深度圖像像素點(diǎn)的距離為0,而S2R-DepthNet推理深度圖像能夠獲得人-機(jī)距離。但相比于相機(jī)深度圖像,推理深度的距離并不精確。在室外場(chǎng)景中,通過(guò)深度融合算法可獲得大致人-機(jī)距離信息,從而提高移動(dòng)機(jī)器人跟隨系統(tǒng)的魯棒性。因此,本文在近距離使用Mask R-CNN的測(cè)距方法;在遠(yuǎn)距離時(shí)使用深度融合測(cè)距的方法,將單目深度估計(jì)后的深度圖像替換無(wú)效深度點(diǎn)進(jìn)行深度測(cè)距,最終提高深度測(cè)距的精度。
圖7 室內(nèi)室外彩色圖像和深度圖像可視化
在室外走廊環(huán)境中進(jìn)行行人跟隨實(shí)驗(yàn)并采集人-機(jī)距離,采樣頻率為7 Hz,歷時(shí)142 s,共采集994個(gè)圖像序列。由于光照強(qiáng)度變化,樂(lè)視深度相機(jī)采集的距離信息存在野值。以ZED相機(jī)輸出的距離信息作為真實(shí)值,對(duì)比傳統(tǒng)卡爾曼濾波算法、檢測(cè)野值的卡爾曼濾波算法和SHAKF算法的測(cè)距精度。
本文將不同卡爾曼濾波算法輸出距離數(shù)據(jù)與真實(shí)值對(duì)比,采用均方根誤差RMSE來(lái)量化算法的性能指標(biāo),公式為
(23)
式中:n是圖片幀的數(shù)量;Mi是第i個(gè)圖像幀的距離估計(jì)值;Gi是第i個(gè)圖像幀的距離真實(shí)值。
3種算法在行人跟隨過(guò)程中第500~600幀的距離對(duì)比曲線如圖8所示,第39幀距離信息發(fā)生異常,傳統(tǒng)卡爾曼算法出現(xiàn)了濾波拖尾的現(xiàn)象,影響下一幀的距離估計(jì)值。而當(dāng)過(guò)濾異常值后,SHAKF算法可以快速計(jì)算量測(cè)噪聲協(xié)方差,獲得更為精確的距離信息,提高移動(dòng)機(jī)器人跟隨系統(tǒng)的魯棒性。
圖8 500~600幀距離對(duì)比
3種算法在行人跟隨過(guò)程中第500~600幀的距離均值誤差對(duì)比曲線如圖9所示。與傳統(tǒng)卡爾曼濾波和過(guò)濾野值的卡爾曼濾波相比,SHAKF算法的均值誤差更小,可以提高算法的測(cè)距精度,進(jìn)而使得移動(dòng)機(jī)器人能夠更加魯棒地跟隨行人,對(duì)應(yīng)的RMSE見(jiàn)表3。
表3 3種算法的均方根誤差
圖9 500~600幀距離均值誤差對(duì)比
在本文的實(shí)驗(yàn)場(chǎng)景中,實(shí)驗(yàn)環(huán)境為Ubuntu18.04,軟件環(huán)境為ROS機(jī)器人操作系統(tǒng),硬件平臺(tái)由阿克曼小車、樂(lè)視RGB-D相機(jī)和NVIDIA Jetson Xavier等硬件搭建。移動(dòng)機(jī)器人首先將RGB-D相機(jī)采集的彩色圖像和深度圖像送入深度融合測(cè)距模塊中,計(jì)算粗略的人-機(jī)距離;然后通過(guò)Sage-Husa自適應(yīng)濾波算法估計(jì)當(dāng)前時(shí)刻的人-機(jī)距離,減小測(cè)距誤差;最后通過(guò)PID控制算法驅(qū)動(dòng)移動(dòng)機(jī)器人跟隨前人。
移動(dòng)機(jī)器人在室內(nèi)室外的跟蹤結(jié)果如圖10所示。在室內(nèi)場(chǎng)景中,移動(dòng)機(jī)器人使用RGB-D相機(jī)采集彩色圖像和深度圖像,并根據(jù)深度圖像獲得行人位置信息,以此調(diào)整人-機(jī)相對(duì)位置。在室外場(chǎng)景中,移動(dòng)機(jī)器人的視野范圍更廣,但是室外走廊光線條件較為復(fù)雜,可以驗(yàn)證其在復(fù)雜光照環(huán)境的行人跟隨能力。移動(dòng)機(jī)器人能夠在室內(nèi)環(huán)境穩(wěn)健地跟蹤行人目標(biāo),且在光照強(qiáng)度變化劇烈的室外環(huán)境中依然具有跟隨的魯棒性。
圖10 機(jī)器人跟隨
本文提出了一種基于MRSD測(cè)距的移動(dòng)機(jī)器人跟隨系統(tǒng),主要包含3項(xiàng)工作:①引入Mask R-CNN檢測(cè)行人目標(biāo)獲取掩膜信息,并根據(jù)行人掩膜從深度圖像中提取深度信息。②引入S2R-DepthNet網(wǎng)絡(luò)從RGB圖像估計(jì)深度信息,融合相機(jī)深度圖像解決無(wú)效深度點(diǎn)的問(wèn)題,從而準(zhǔn)確測(cè)量目標(biāo)行人的距離和偏航角。③基于該距離,建立了基于SHAKF的測(cè)距模型,降低量測(cè)異常值的影響,同時(shí)設(shè)計(jì)了PID控制器,能夠以設(shè)定的距離魯棒跟隨前方行人。本文在真實(shí)環(huán)境中進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明:本文提出的基于MRSD測(cè)距的機(jī)器人跟隨系統(tǒng)能夠快速準(zhǔn)確檢測(cè)前人距離并跟隨目標(biāo)人物。