萬 琴 李 智 李伊康 葛 柱 王耀南 吳 迪
移動機器人在安防、物流和醫療等領域應用廣泛[1-2],其中機器人目標跟隨算法引起了廣泛關注,但移動機器人目標跟隨算法的魯棒性和實時性仍是亟待解決的關鍵問題[3-4].
機器人目標跟隨算法分為生成式模型方法和檢測跟蹤方法兩大類[5-6].生成式模型主要通過構建目標模型實現跟隨,如Yoshimi 等[7]利用視覺傳感器獲取行人顏色和紋理特征,機器人在視野范圍內尋找與之相匹配的區域,融合行人與位置速度信息構建模型,采用基于生成式的目標跟蹤算法跟隨行人.然而,此類算法關注目標本身,忽略背景信息,經常出現跟蹤丟失的情況.
為同時考慮目標與背景信息,檢測跟蹤方法得到了越來越多的關注,此方法通過構建分類器區分目標及背景,其跟蹤效果普遍優于生成式模型方法.余鐸等[3]通過快速判別尺度空間切換相關濾波算法與卡爾曼濾波算法實現穩定跟蹤.另外,移動機器人在跟隨控制過程中常受到背景雜斑、光照變化、目標遮擋、尺度變化等干擾,導致跟隨目標丟失.因此傳統的檢測跟蹤方法不適用于移動機器人在復雜多變場景中的目標跟隨[2].
基于深度學習的移動機器人目標跟隨算法具有魯棒性強等優勢[8].Zhang 等[9]通過基于目標輪廓帶采樣策略來提高移動機器人跟蹤性能,但未對遮擋、行人消失等情況進行處理.Pang 等[10]提出一種基于深度學習的目標檢測器,引入卡爾曼濾波來預測目標位置,加入重識別模塊處理遮擋問題,但此類算法需先獲取精度較高的目標檢測結果.鑒于上述問題,JDE (Jointly learns the detector and embedding model)檢測模型可用來融合重識別與檢測分支[11],提高目標檢測精度.YOLO (You only look once) 系列算法則是一類基于JDE 檢測模型的一階段框下的目標檢測算法,具有高效、靈活和泛化性能好的優點.
YOLO 算法包括了YOLOV1~ YOLOV7 系列算法以及一系列基于改進YOLO 的目標檢測算法.Redmon 等[12]提出YOLO 算法進行目標檢測,直接采用回歸的方法進行坐標框的檢測以及分類,使用一個端到端的簡單網絡實現坐標回歸與分類,能夠極大地提升目標的檢測速度.此后,YOLO 的網絡結構不斷優化,已經成為目標檢測領域主流的算法.Hsu 等[13]引入比率感知機制,動態調整YOLOV3的輸入層長度和寬度超參數,從而解決了長寬比差異較大的問題,能夠有效地提高平均跟蹤精度.Huang 等[14]引入改進的YOLOV3 模型,此模型將預測尺度從3 個增加到4 個,并使用額外的特征圖來提取更多的細節.YOLOV3 的目標位置識別精度較差,在目標分布密集、尺寸差異較大的復雜場景中,檢測效果較差.YOLOV4[15]開發了Darknet53目標檢測模型,此模型具有更高的網絡輸入分辨率,網絡層參數多,計算復雜度高,對小目標檢測效果較差.對此,YOLO-Z[16]提出了一系列不同尺度的模型,提高YOLOV5 檢測小目標的性能.Cheng 等[17]提出一種單階段SSD (Single shot multibox detector) 微小目標檢測方法,此方法可提高微小目標檢測的實時性,但其使用的兩階段式目標檢測器使目標定位精度有所下降.YOLOV6[18]設計了更高效的主干網絡和網絡層.YOLOV7[19]擴展了高效長程注意力網絡,加入了基于級聯的模型縮放方法,均可一定程度提高檢測精度和推理效率,但由于未引入重識別分支,無法提取淺層特征用于后續跟蹤.YOLOX[20]在YOLO 系列的基礎上做出了一系列改進,相比于YOLO 系列目標檢測算法,其最大的不同是采用了無錨框檢測器.而YOLOV1~ YOLOV5采用有錨框的檢測器,由于可能會被多個錨框同時檢測且與檢測框中心存在誤差,并不適用于JDE檢測模型.因此,采用無錨框的YOLOX 目標檢測算法更加適合于JDE 檢測模型.
移動機器人檢測與跟蹤跟隨目標的核心問題是其在運動過程中,復雜場景干擾影響其檢測精度以及跟隨性能.YOLOX 以Darknet53 網絡結構為主干,有較高的檢測精度,但模型較大、推理速度較慢,不適用于移動機器人實時跟隨.在YOLOV5 的網絡模型中,雖然網絡的特征提取能力隨著深度的增加而增強,但下采樣次數的增加會導致梯度的消失,這極大影響了移動機器人的檢測精度[21].為了提升移動機器人的檢測精度,DeepSORT 目標跟蹤算法[22]采用卡爾曼濾波更新目標位置,并與當前檢測目標關聯匹配,但未解決因遮擋跟蹤造成的目標丟失問題.Han 等[23]提出PSR (Peak side-lobe rate)目標跟蹤算法,引入深度信息來評估跟蹤可信度,并可主動檢測跟蹤丟失目標.但其采用相關濾波法實現目標跟蹤,在復雜場景下的跟蹤魯棒性低.可見,改進網絡結構的同時引入深度信息,是提升移動機器人檢測跟隨性能的一種亟待探索的方法.
綜上所述,基于YOLO 系列的移動機器人目標跟隨算法的魯棒性強且精度高,但對于變化環境遷移和泛化能力弱,且運行速率低.傳統移動機器人目標跟隨算法速度快,但是當目標發生形變、尺度變化和嚴重遮擋等情況時,跟蹤過程容易出現目標跟蹤丟失.因此,為實現復雜場景下移動機器人穩定跟隨目標,本文提出改進YOLOX 的移動機器人目標跟隨方法(Improved YOLOX target-following algorithm,IYTFA).主要工作如下:
1) 為提高目標檢測精度和速度,提出基于YOLOX-MobileNetV2X 網絡 (YOLOX-M2X) 的目標檢測算法,使用交叉熵損失、回歸損失以及重識別損失函數,共同訓練檢測與重識別分支.
2)為提高目標預測與更新速率,采用改進的卡爾曼濾波器獲取目標跟蹤狀態.同時加入基于深度直方圖的遮擋檢測機制,并通過深度概率約束幀間目標匹配,提高遮擋跟蹤準確率.
3)在目標跟隨過程中,提出基于視覺伺服控制的主動搜尋策略,并在目標消失時引入重識別特征進行跟蹤跟隨,保證移動機器人穩定跟隨目標.
本文內容安排如下: 第1 節介紹IYTFA 算法,包括目標檢測部分、目標跟蹤部分和目標跟隨控制部分;第2 節為實驗驗證,簡要說明移動機器人和深度學習平臺,定性、定量分析目標跟蹤算法,并進行移動機器人目標跟隨實驗;第3 節對本文工作進行總結與展望.
IYTFA 移動機器人目標跟隨方法的結構框圖如圖1 所示,主要由目標檢測、目標跟蹤及目標跟隨控制三部分組成.首先,將YOLOX 的主干網絡Darknet53 替換為MobileNetV2X,通過獲取的RGB 視頻序列輸入訓練完成的MobileNetV2X 網絡得到特征圖,再將重識別損失函數和檢測損失函數分別訓練重識別分支及檢測分支,從而得到目標檢測結果.然后采用改進的卡爾曼濾波器獲取跟蹤狀態,通過軌跡關聯實現目標匹配,同時引入遮擋判別機制,如判斷目標被遮擋則加入深度概率約束進行遮擋目標跟蹤匹配.最后采用基于視覺伺服控制的主動搜尋策略完成移動機器人目標跟隨.

圖1 本文方法結構框圖Fig.1 Structure block diagram of our method
目標檢測是移動機器人目標跟隨的關鍵問題,目標檢測精度很大程度上決定了移動機器人跟隨的穩定性.本文以YOLOX 體系架構為基礎進行改進,優化網絡結構與損失函數,提高檢測實時性.主干網絡使用MobileNetV2X 網絡,再通過檢測分支與重識別分支得到檢測結果.
1.1.1 YOLOX-MobileNetV2X 網絡
YOLOX 算法[20]將解耦頭、數據增強、無錨框以及標簽分類等算法與傳統的YOLO 算法進行融合,算法泛化能力強,檢測小目標精度高.
YOLOX 算法網絡主要分為三個部分,分別為主干網絡、網絡層和預測層.其主干網絡采用Darknet53特征提取網絡,網絡層采用特征金字塔網絡,預測層使用了3 個解耦頭.輸入圖片在主干網絡部分進行淺層特征提取,輸出3 個特征層傳入網絡層進行深層特征提取,輸出分別傳入3 個解耦頭進行目標檢測.但是YOLOX 主干網絡通常使用Darknet53網絡,存在模型尺寸大、推理速度慢等問題.因此為實現移動機器人實時目標檢測,本文提出YOLOXM2X 網絡,將YOLOX 主干網絡采用輕量級的特征提取網絡MobileNetV2X,該網絡的卷積核心層是深度可分離卷積層,可將輸出的特征圖的通道數縮減至一半,并再與原卷積層提取的特征圖合并,與僅使用一組深度可分離卷積的MobileNetV2[24]相比,該網絡可獲得更多特征圖的語義信息.
在YOLOX-M2X 網絡上,先采用COCO2017訓練集訓練得到網絡參數,再移植至移動機器人平臺進行實時檢測.COCO2017 數據集是一個可用于圖像檢測的大規模數據集,包含超過 330×103幅圖像(其中 220×103幅是有標注的圖像),涵蓋150 萬個目標及80 個目標類別(行人、汽車、大象等)、91 種材料類別(草、墻、天空等),每幅圖像包含5 句語句描述,且有 250×103個帶關鍵點標注的行人.
MobileNetV2X 網絡將目標檢測時的分類分為7 個階段,輸入圖片分辨率為H×W(H為圖片高度,W為圖片寬度).假設輸入特征圖表示為RH×W×C,其中H為高度、W為寬度、C為通道數.每個階段的核心層為瓶頸層,每個階段的瓶頸層中包括4 個步驟.
在MobileNetV2X 網絡中的第7 個階段得到深層特征圖F7R15×15×320,在第1 個階段得到淺層特征圖F1R240×240×15,經網絡層后得到檢測分支和重識別分支的輸入特征圖.
1.1.2 目標檢測分支及損失函數
為度量目標檢測信息和真實目標信息之間的差值,進一步定義損失函數,損失函數值越小則差值越小,訓練模型準確度越高.由于MobileNetV2X網絡中的目標檢測分支包括目標分支、回歸分支和分類分支,其對應損失函數由目標損失函數Lobj、回歸損失函數Lreg和分類損失函數Lcls三部分組成,總的訓練損失函數Ldetection表示為
其中,λ1,λ2和λ3是損失平衡系數.Lobj和Lcls采用二值交叉熵損失函數(Binary cross entropy,BCE),Lreg采用交并比 (Intersection over union,IoU) 損失函數.
在目標檢測中,需首先判定預測的目標屬于前景或者背景,目標損失函數Lobj采用Focal 交叉熵損失函數度量其與真實值的差值,即
其中,Nobj代表用于計算Lobj損失函數的視頻幀目標總個數;ys表示測試樣本s的標簽,前景標為1,背景標為0;ps表示測試樣本s預測為前景的概率.
Lreg回歸損失函數使用 IoU 損失函數來度量預測檢測框與真實目標框的交并比(面積重疊度).IoU指標范圍為[0,1],當面積重疊率越大時,IoU指標數值越大,即
其中,IoU表示當前幀目標預測框和目標真實框的面積重疊率,即交并比.
為評判當前視頻幀目標所屬的類別與真實值的差值,分類損失函數采用多分類交叉熵損失函數對目標所屬類別的預測進行評分,即
其中,Ncls代表用于計算Lcls損失函數的視頻幀目標總個數;M表示類別的數量;ydc為符號函數,如果當前視頻幀目標d的真實類別等于c,ydc為1,否則取0;pdc為當前幀目標d屬于類別c的預測概率.
1.1.3 重識別分支及損失函數
為在目標消失再出現時完成視頻連續幀間的目標匹配識別(即目標重識別),在YOLOX-M2X 網絡中加入重識別分支提取目標的顏色、紋理等淺層外觀特征作為重識別特征.
為評判重識別特征圖準確度,定義重識別損失函數,其值越小,表示重識別特征圖越準確.并將重識別損失函數Lid定義為
最后,將檢測和重識別損失函數相加,同時使用不確定性損失函數[11]來自動平衡檢測和重識別損失函數.與單獨使用Lid和Ldetection訓練模型相比,訓練效果得到提升,同時減少了計算復雜度,可達到實時性要求.
首先使用第1 幀檢測的目標框初始化目標軌跡及跟蹤狀態,然后通過改進的卡爾曼濾波器預測下一幀目標位置,最后采用連續幀間的數據關聯確定目標跟蹤狀態.
在當前視頻幀下,設t時刻檢測到M個目標,i1,···,M,t時刻跟蹤N個目標,j1,···,N,每一幀檢測及跟蹤結果實時更新,則當前t時刻的第i個檢測目標狀態為xt,i,第j個跟蹤目標狀態為zt,j.
其中,wt-1和vt分別是過程噪聲序列和量測噪聲序列,并假設wt-1和vt是均值為0 的高斯白噪聲,其方差分別為Qt和Rt,即wt-1~(0,Qt),Vt~(0,Rt).
為詳細說明改進卡爾曼濾波器預測與更新的過程,算法1 給出此部分的偽代碼.
算法1.改進卡爾曼濾波算法
其中,bi,j為正確關聯軌跡集合.在訓練數據集上訓練網絡參數得到余弦距離,并與訓練集基準之間的余弦距離進行比較,得到閾值λ.式(7)中,當bi,j小于閾值λ,表示當前幀檢測目標i與上一幀跟蹤目標j關聯,則跟蹤正常;當bi,j大于閾值λ,表示未成功關聯,則繼續判斷目標是否遮擋或消失.
跟蹤目標由于被遮擋,目標外觀會發生顯著變化,導致目標特征減少,移動機器人跟蹤目標丟失.本文提出一種有效的遮擋處理機制,當判斷遮擋發生時,采用深度概率對目標周圍區域進行空間約束,并通過最大后驗概率(Maximum a posteriori,MAP)關聯匹配實現遮擋跟蹤.
1)遮擋判斷
由于多個目標相互遮擋時,RGB 外觀被遮擋,只可從深度信息區分不同遮擋目標,而ZED 相機獲取的深度信息為多個遮擋目標中離該相機最近的目標深度信息.因此將目標框在RGB 圖中的位置區域映射到深度圖中并設定為深度遮擋區域,若判定其他目標進入此區域表示發生遮擋,具體判定如圖2 所示.

圖2 遮擋前后深度直方圖Fig.2 Depth histogram before and after occlusion
目標1 遮擋前深度直方圖最大峰值為4 000,目標2 遮擋前深度直方圖的最大峰值為2 500,發生遮擋后深度遮擋區域深度直方圖最大峰值為2 500,深度直方圖的峰值從4 000 下降到2 500.顯然,此時目標1 的深度遮擋區域的深度直方圖出現新的上升峰值2 500,且小于遮擋前的峰值4 000,則可見目標被遮擋后的深度直方圖峰值明顯減少.
2)遮擋匹配跟蹤
當目標發生遮擋時,通過最大后驗概率關聯當前幀檢測目標與上一幀跟蹤目標,可有效解決遮擋跟蹤問題.假設所有運動目標之間相互獨立,設單個目標軌跡組成為S,似然概率具有條件獨立性,則關聯遮擋目標的目標函數為
式中,P(zt-1,j) 是所有跟蹤目標的先驗概率;P(xt,i|zt-1,j)表示當前檢測目標屬于跟蹤目標的條件概率,該條件概率通過檢測目標與上一幀跟蹤目標框的重疊率計算得到.
設當前幀檢測目標xt,i的深度圖對應的邊界框為b(xt,i),跟蹤目標zt-1,j的深度圖對應的邊界框為b(zt-1,j),通過判斷b(xt,i)與b(zt-1,j) 的重疊率來表示跟蹤置信度,式(11)用于求目標框的重疊率,即
式中,σ為重疊區域,若C大于σ,表示xt,j與zt-1,j關聯匹配.
在獲取目標跟蹤結果后,選定感興趣的一個目標作為移動機器人的跟隨目標.為使移動機器人實現目標跟隨,本文采用基于視覺伺服控制的目標跟隨算法,使跟隨目標框的中心點保持為視野范圍中心點.如目標消失,則移動機器人按照目標運動軌跡進行主動搜索,重新識別目標并使移動機器人繼續跟隨目標.
1.4.1 基于ZED 相機的移動機器人運動學模型
由于ZED 相機具有成像分辨率高、可獲取遠距離深度圖像等優點,本文采用ZED 相機作為移動機器人視覺傳感器,其內參已標定.
假設ZED 相機的鏡頭畸變小到可以忽略,相機固有參數用針孔模型表示,ZED 相機成像原理圖如圖3 所示.在圖像坐標系Y的跟蹤目標坐標為P(xcn,ycn,zcn),zn是從圖像坐標和ZED 相機的固有參數中獲得

圖3 ZED 相機成像圖Fig.3 ZED camera imagery
其中,f為相機焦距,b為左右相機基線,f和b是通過先驗信息或相機標定得到.其中由極線約束關系,視差d可由左相機中的像素點xl與右相機中的像素點xr對應關系計算得到.
本文算法將移動機器人平臺簡化為基于ZED相機的兩輪差速模型,如圖4 所示.圖4 中包括世界坐標系G、機器人坐標系PR、ZED 相機坐標系Z和圖像坐標系Y.圖中,C(x,y) 為移動機器人運動中心點,D為兩輪之間的距離,θ為方向角.

圖4 基于ZED 相機的兩輪差速驅動模型Fig.4 Two-wheel differential drive model based on ZED
其中,R(θQ,θC)表示從世界坐標系Q到ZED 相機坐標系Z旋轉矩陣.δd表示在世界坐標系M中,移動機器人與攝像機的距離.
1.4.2 機器人主動控制策略
前述跟蹤算法完成目標跟蹤,并獲取目標跟蹤框的深度信息,但直接使用目標跟蹤框的深度信息來計算機器人與跟隨目標的距離,會引入大量的背景信息.因此需要對目標中心進行重定位,為跟蹤區域找到合適的位置,提高機器人跟隨精度.
得到精確位置 (x*,y*)后,獲取以 (x*,y*) 為中心區域框的4 個頂點坐標,計算中心點和頂點對應深度信息平均值f(t),其值表示為移動機器人與目標的距離.設移動機器人期望到達位置為f*(t),誤差e(t) 可定義為
機器人控制變量為Xcontrol[U(t)vt,W(t)wt],vt代表移動機器人的線速度,wt代表移動機器人的角速度,PID 控制器設計為
其中,kP,kI和kD為PID 系數,λ是調整因子.
目標跟隨控制部分的結構框圖如圖5 所示,誤差e(t) 為PID 控制器的輸入端,實時控制移動機器人角速度和線速度,移動機器人與目標保持一定距離并穩定跟隨目標.在跟隨過程中如果目標超出移動機器人視野范圍,移動機器人會保留消失前最后一幀跟蹤目標的重識別特征和位置信息,并朝著目標消失的方向繼續運動.若跟蹤目標再次出現在視野內,進行目標檢測并提取該目標的重識別特征與消失前最后一幀跟蹤目標的重識別特征關聯匹配,實現跟蹤目標重識別即為重檢成功,則可實現目標消失后再重識別并穩定跟隨目標.

圖5 目標跟隨器移動控制部分Fig.5 Target follower movement control section
移動機器人目標跟隨系統主要包括兩個平臺:深度學習平臺及移動機器人跟隨控制平臺.深度學習平臺GPU 為NVIDIA Geforce RTX2080SUPER,內置軟件環境為Ubuntu16.04LTS 系統,通過深度學習平臺訓練數據集獲取YOLOX-M2X 網絡參數.移動機器人跟隨控制平臺重20 kg,可承載50 kg 的額外重量,主要組件包括: ZED 雙目相機、車體、NUC機載微型計算機、STM32F103RCT6 底層驅動控制板等,如圖6 所示.機器人操作系統為ROS (Robot operating system),ROS 具有良好的開源性和擴展性.移動機器人跟隨控制平臺主要包括視覺檢測模塊、目標跟蹤及跟隨控制模塊.視覺檢測模塊采用ZED 相機獲取實時視頻序列,并通過深度學習平臺訓練數據集獲取網絡參數進行目標檢測;移動機器人目標跟蹤及跟隨控制模塊采用兩輪差速驅動,移動機器人內部中心位置安裝有數字姿態傳感器,可檢測機器人的加速度、角速度.移動機器人底盤前后端裝有兩個防跌落傳感器,其檢測范圍為15 cm,通過該模塊實現目標穩定跟隨.

圖6 移動機器人平臺Fig.6 Mobile robot platform
為評估本文算法的性能,本文在測試集和移動機器人平臺進行了大量的實驗.將DeepSORT 算法[22]、CTrack 算法[25]、FairMOT 算法[11]與Realtime MOT 算法[26]等與本文算法在深度學習平臺上進行驗證,并在MOTchallenge 中的測試集上完成對比實驗.1) DeepSORT 算法的最大特點是加入外觀信息,借助重識別模型來提取特征,減少目標ID 切換的次數.2) CTrack 算法是基于輸入鏈式跟蹤框架,實現端到端聯合檢測,同時設計了聯合注意力模塊來突出檢測框在回歸中的有效信息區域.3) FairMOT 算法是將檢測算法和重識別特征進行融合,同時輸出檢測目標和重識別特征.4) Realtime MOT 算法的創新在于將目標檢測環節和外觀特征融合在同一網絡中,大幅度提升多目標跟蹤算法的速率.5)本文跟蹤算法的目標檢測部分采用基于無錨框的改進YOLOX 檢測算法,同時將目標檢測和重識別特征融合到輕量化網絡中,跟蹤部分則采用改進卡爾曼濾波器,可有效提高跟蹤實時性.
為直觀評估本文算法的性能,對跟蹤算法進行定性對比分析實驗;為定量分析本文算法性能,在測試集上進行了網絡消融實驗、不同損失函數對比實驗以及不同算法之間的遮擋跟蹤對比實驗;最后,在移動機器人平臺上進行了室內、室外目標跟隨實驗.
如圖7 所示,測試集為公開MOTchallenge 中的測試集中的部分視頻序列.表1 給出該測試集的幀率、分辨率、時長等屬性.測試集包括大量動態背景,行人姿勢變化多,存在無遮擋、遮擋、交叉遮擋等情況.

表1 測試集視頻序列Table 1 Test set video sequences

圖7 測試集Fig.7 Test set
為驗證本文算法的有效性,分別在MOT2008、MOT2002和HT2114 視頻序列上,將DeepSORT算法、CTrack 算法、FairMOT 算法和Real-time MOT 算法與本文算法進行目標遮擋跟蹤對比實驗.圖8 是不同算法在MOT2002 視頻序列上的跟蹤結果,DeepSORT 算法跟蹤成功率最低,出現了大量漏檢目標.圖8 中,Object-1 在第26 幀時處于未遮擋狀態,除了DeepSORT 算法外,其余3 種算法均能跟蹤目標,但是FairMOT 算法中Object-1 身份ID 由40 變為了60,出現身份ID 信息切換.Object-2 在第326 幀時處于未遮擋狀態,Object-2 目標小、模糊且受光照影響,僅有Real-time MOT和本文算法仍能穩定跟蹤目標.Object-3 在第2 701 幀時處于新出現的目標和周圍物體交叉遮擋狀態,DeepSORT算法、CTrack 算法和FairMOT 算法出現跟蹤丟失,本文算法較其他4 種算法跟蹤效果更好,區分目標與新出現的目標能力較強,具有較好的跟蹤魯棒性.DeepSORT、CTrack、FairMOT和Real-time MOT 均出現一定程度上的漂移.本文采用YOLOX 框架下高性能的MobileNetV2X 特征提取網絡及改進的卡爾曼濾波器改善了目標在遮擋、交叉遮擋和完全遮擋的跟蹤漂移問題.

圖8 本文算法與DeepSORT、CTrack、FairMOT、Real-time MOT 多目標跟蹤算法對比分析Fig.8 Comparison and analysis of our algorithm with DeepSORT,CTrack,FairMOT,and Real-time MOT multi-target tracking algorithm
接下來,在實際場景中將本文算法與在測試集中跟蹤性能較好的FairMOT 跟蹤算法在移動機器人平臺上進行對比實驗,選用了實驗室室內場景、學校食堂場景.圖9 為在實驗室室內場景的實驗結果,圖中標注Person ID-x 框為采用本文算法的目標跟蹤框,標注Preson_x 框為采用FairMOT 算法的目標跟蹤框.由圖9 可見,遮擋前以上跟蹤算法均能準確跟蹤行人.當第122 幀行人Person_2被完全遮擋后,FairMOT 目標跟蹤算法身份切換為Person_3,而本文算法仍然能穩定跟蹤目標行人ID-3.通過與FairMOT 算法在移動機器人平臺上進行對比實驗可知,本文算法能有效地解決跟蹤目標遮擋問題,能夠穩定跟隨目標行人.其原因在于本文算法相比于FairMOT 算法加入了深度概率約束,能夠有效解決遮擋后身份ID 錯誤切換問題.

圖9 移動機器人平臺上FairMOT 算法與本文算法對比實驗Fig.9 Comparative experiment of FairMOT algorithm and our algorithm on mobile robot platform
如圖10 所示,在學校食堂采集視頻序列中進行了目標跟蹤實驗,同時展示了FairMOT和本文算法的部分跟蹤結果.在第10 幀行人ID-1 遮擋了其他目標,如ID-10 被遮擋后本文算法可有效跟蹤,而FairMOT 算法將該目標錯誤跟蹤為ID-29,被遮擋的行人ID 發生了變換,可見本文算法相對于FairMOT 算法ID 錯誤切換較少.分析原因得出,本文算法引入重識別分支,有效解決了遮擋后目標跟蹤問題.同時,本文算法能很好地檢測Fair-MOT 未檢測到的行人,例如第13 幀行人ID-21,得益于改進的YOLOX 目標檢測算法良好的檢測性能.通過在實際復雜場景中的跟蹤結果對比,證明了本文算法在移動機器人平臺上具有良好的實時性和準確性,同時也具有很好的魯棒性.

圖10 學校食堂場景中本文算法與FairMOT 算法對比實驗Fig.10 Comparative experiment between our algorithm and FairMOT algorithm in school canteen scene
定量分析分為目標檢測算法的兩組消融實驗和在測試集上的跟蹤算法對比實驗.
2.2.1 目標檢測算法消融實驗
為驗證加入網絡和重識別損失函數的有效性,將本文算法與3 種算法進行對比: 1)傳統YOLOX網絡[20];2)在YOLOX 框架下用MobileNetV2X 代替主干網絡;3) 在YOLOX 框架下用MobileNetV2X代替主干網絡,再加入重識別損失函數.為定量分析目標檢測性能,使用幾種常用的評估指標[27],如準確率(Presion)、召回率(Recall)、F1 分數和平均準確率(Mean average precision,mAP)、每秒浮點運算次數(Flops,單位為GHz),結果見表2.

表2 網絡消融實驗Table 2 The ablation studies of the proposed network
首先,比較算法1) 與算法2)的性能指標,在準確率、召回率、F1 分數、平均準確率相差不大的情況下,每秒浮點運算次數從21.79 GHz 大幅下降到8.65 GHz,可見運算復雜度大幅下降.由于觸發器導致的精度損失可以忽略不計,因此在移動機器人平臺CPU 計算能力有限的情況下,受計算能力限制的輕量級模型MobileNetV2X 更加適合應用于移動機器人平臺.
接著,比較算法2)與算法3)的性能指標: 采用平均絕對誤差 (Mean absolute error,MAE)和均方誤差 (Mean square error,MSE),在NWPUCrowd和UCF-QNRF 數據集上進行測試[28].在圖11中,在2 個主干網絡(Darknet53、MobileNetV2X)上分別進行測試.比較不同的損失函數性能,包括L2 損失函數、貝葉斯損失(Bayesian loss,BL) 函數[29]、NoiseCC 損失函數和DM-count 損失函數.從圖11 可見,本文的損失函數與其他損失函數相比,Darknet53_MAE 與MobileNetV2X_MAE 指標最低,即本文使用的損失函數訓練模型準確度高,其重識別損失函數最后一層權重的梯度不再與激活函數相關,只與輸出值和真實值的差值成正比,收斂快.但Darknet53_MSE 與MobileNetV2X_MSE 指標略低于DM-count 損失函數,DM-count損失函數MAE 指標偏高,將MAE 與MSE 指標綜合考慮,本文提出的損失函數更加穩定.從以上兩組實驗對比分析可見,采用MobileNetV2X 網絡計算復雜度大大降低,且重識別損失函數收斂快,實時性增強.

圖11 不同主干網絡的不同損失函數的測試結果Fig.11 Test results of different loss functions for different backbone networks
2.2.2 目標跟蹤算法實驗
為定量分析目標跟蹤算法在不同序列上目標遮擋跟蹤效果,選用MOT2008、MOT2002 等6 個視頻序列進行對比分析和驗證.將本文算法與4 種目標跟蹤算法在深度學習平臺上測試,并進行對比分析.對比算法包括DeepSORT 算法[20]、FairMOT算法[11]、CTrack 算法[23]和Real-time MOT 算法[24].本文在這些視頻序列上測試多目標跟蹤準確度(Multiple object tracking accuracy,MOTA)、身份準確率與召回率的調和均值(Identification F-score,IDF1)以及跟蹤目標軌跡數量(Mostly tracked,MT)等指標,各項指標數據如表3 所示.MOTA 指標評估算法性能,基準測試范圍為 MOTA(-∞,100],當跟蹤器的錯誤數量超過場景中所有物體的數量時,多目標跟蹤精度MOTA 為負.IDF1 為正確識別檢測真實數量和平均數量之比;MT 為跟蹤成功的目標數量在所有跟蹤目標中所占的比例;ML 為跟蹤失敗的目標數量在所有跟蹤目標中所占的比例;IDs為單條跟蹤軌跡改變目標標號的次數;FPS (Frames per second)表示幀速率,單位為幀/s.表中的符號“↑”表示數值越大對應該符號指標性能越好;符號“↓” 表示數值越小對應該符號的指標性能越好.

表3 各項性能指標Table 3 Each performance index
本文方法分別在6 個數據集上測試,如表3 所示,除本文算法,FairMOT 算法的MOTA、IDF1與MT 指標最好.在MOT2008 數據集上,本文算法除了IDs 指標為591,略差于FairMOT 算法指標543,其余指標均比其他算法好,得益于本網絡加入了重識別分支,提高了遮擋跟蹤身份匹配率,同時采用改進的卡爾曼濾波器的預測與更新速率.這幾種方法的推理速度接近實時視頻速率,而本文算法更快,在以上視頻序列中,本文算法在MOTS2007數據集中達到了39 幀/s,充分證明YOLOX-M2X網絡實時性強,適用于移動機器人目標跟隨.綜上所述,本文算法跟蹤幀速率比其他目標跟蹤算法要高,在MOTA 指標、IDF1 指標、MT 指標和ML 指標上均為最優.
為測試本文算法的魯棒性和實時性,在不同場景下進行了移動機器人目標跟隨實驗,包括室內場景、室外場景.首先在室內場景中進行目標跟隨實驗,該室內場景存在旋轉門,柜臺等障礙物,宣傳欄反光,光照變化等影響.如圖12 所示,第20 幀之后跟蹤目標左轉、第23 幀避開柜臺、第35 幀跟蹤行人穿過旋轉門均能實時跟隨目標.實驗證明,本文算法目標檢測及跟隨精度高,具有良好的實時性,能夠實現實時避障及穩定跟隨目標.

圖12 室內環境下移動機器人目標跟隨實驗Fig.12 Experiment of mobile robot target following in indoor environment
然后在室外場景進行目標跟隨實驗,分別選取走廊及學校道路兩種場景進行移動機器人目標跟隨實驗.在走廊場景中的實驗如圖13 所示,通過ROS 可視化工具rviz 在地圖上記錄移動機器人跟隨路線,中心區域為移動機器人建立的離線地圖,地圖中的細線代表移動機器人運動軌跡.跟蹤行人識別身份為ID-3.移動機器人鎖定跟蹤行人ID-3,在鎖定目標消失再出現及其他新目標出現時,均能正確跟蹤跟隨鎖定目標.如第35 幀時跟蹤目標ID-3 在轉彎過程中,快速移動消失在機器人視野范圍內,出現目標丟失情況,移動機器人則通過主動搜尋策略,在rviz 界面顯示了主動搜尋的軌跡,能在目標消失再出現后繼續穩定跟隨目標.如第58 幀識別跟蹤到新目標行人ID-4和第73 幀識別跟蹤到新目標行人ID-5,移動機器人仍能實時鎖定跟隨目標ID-3.

圖13 移動機器人跟隨路線圖Fig.13 Mobile robot following road map
在校園內進行大范圍室外目標跟隨的實驗如圖14 所示,左邊地圖顯示了校園衛星地圖,圖中曲線表示移動機器人運行軌跡,包括了路面不平、光照變化、行人密集、下坡路段等復雜場景.在該實驗過程中,機器人平穩跟隨目標約770 m,移動機器人平均速度約為0.42 m/s,總跟隨時間長度約為30 min.機器人軌跡上右邊的16 幅圖像是這些位置對應的移動機器人實時跟隨圖.第1 段為機器人經過不平路面處,機器人跟蹤視野發生抖動,影響了跟蹤算法特征網絡提取特征,經過不平的路面后,利用主動搜尋和重識別功能,重新捕獲到目標并主動跟隨.第2 段為機器人受到光照影響,光照對目標的顏色、紋理特征提取影響大,本文YOLOX-MobileNet-V2X 網絡引入數據增強,提升了模型的魯棒性,保證了在光照變化下的移動機器人穩定跟隨.在第3段食堂附近出現了眾多行人目標,本文算法實時返回跟隨行人的位置信息,實現在復雜場景下穩定跟隨.第4 段為下坡路面,機器人能夠實時控制角速度和線速度,保持與目標相距一段穩定距離跟隨.可見,在室外復雜情況下,移動機器人仍能實現穩定地跟隨目標.

圖14 室外環境下移動機器人目標跟隨實驗Fig.14 Experiment of mobile robot target following in outdoor environment
本文提出了一種基于改進YOLOX 的移動機器人目標跟隨方法,以解決移動機器人在復雜場景中難以穩定跟隨目標的問題.針對目標檢測實時性低的問題,通過改進YOLOX-M2X 網絡實現目標檢測;針對復雜情況下目標跟蹤問題,提出改進的卡爾曼濾波器結合深度概率信息的方法,確保機器人在遮擋情況下穩定跟蹤目標;針對機器人跟蹤目標丟失情況,設計了基于視覺伺服控制的目標跟隨算法,引入重識別特征主動搜尋目標,實現目標跟隨.最后通過在多個測試集上的對比實驗以及在移動機器人平臺上的室內外實驗驗證,證明了本文方法的有效性.下一步工作將引入Transformer[30]作為目標檢測的整體框架,首先將RGB-D 特征圖輸入目標檢測網絡,采用編碼器與解碼器的架構,然后在網絡中提取淺層深度特征圖,用此時的深度特征圖作為遮擋判斷的特征,相比直接使用深度特征,能夠提高遮擋判斷的準確度,從而進一步提高目標跟隨的穩定性.