劉 貝,王樹奇,高 夢,劉 薇
(1.中國移動通信集團陜西有限公司,陜西 西安 710076;2.西安科技大學 通信與信息工程學院,陜西 西安 710054;3.西安信息職業(yè)大學,陜西 西安 710125)
目標跟蹤作為計算機視覺的一項基本任務,在人機交互、軍事巡檢、公共安防及視頻監(jiān)控等諸多領域有著廣泛的應用[1-2]。在煤礦這種復雜場景中,利用計算機視覺對礦井監(jiān)測視頻進行智能化分析,精準地對井下人員實施檢測與跟蹤[3],可以對突發(fā)、異常事件快速采取應急措施,減少井下安全事故的發(fā)生,保障井下人員安全[4]。
目標跟蹤是指通過外觀特征和位置信息將視頻序列中相鄰幀的跟蹤目標關聯(lián)起來,以此構成目標序列,對視頻中的特定目標進行持續(xù)跟蹤,從而得到運動軌跡[5]。當前,基于深度學習的目標跟蹤算法已經成為主流[6]。CHEN K 等人提出基于深度學習的行人目標跟蹤算法,將行人檢測器訓練為基于Faster R-CNN 的跟蹤機制,訓練全卷積網絡(Fully Convolutional Network,F(xiàn)CN)提取目標模型中的行人信息,基于FCN 的圖像語義分割算法,能夠有效去除背景噪聲。與傳統(tǒng)的梯度下降算法相比,該算法縮小了搜索范圍,提高了跟蹤精度,具有更好的跟蹤性能[7]。HE M 等人提出了一種在線多行人跟蹤算法,通過卡爾曼濾波器建立目標的運動模型,通過卷積神經網絡提取目標的外觀模型。該算法與MOT15基準和MOT16基準上的其他算法相比,具有較高的準確性和實時性[8]。
隨著對跟蹤任務要求的不斷提高,對跟蹤算法的研究慢慢轉移到多目標跟蹤算法上。BEWLEY A等人[9]提出了基于檢測的多目標跟蹤算法SORT,以目標檢測為基礎得到檢測框與卡爾曼濾波的預測框,通過匈牙利算法進行數據關聯(lián),獲取最優(yōu)匹配框并為每個目標分配編號(Identity Document,ID)。傳統(tǒng)的礦井視頻監(jiān)控系統(tǒng)僅起到一個錄像的作用,不具備自動檢測及追蹤行人目標等功能,無法滿足煤礦井下的安全生產要求。因此,本文將YOLOv7 模型融合DeepSORT 算法,提出一種改進的DeepSORT 目標跟蹤算法,實現(xiàn)對礦井人員的追蹤。
多目標跟蹤(Multi-Object Tracking,MOT),是指在一個視頻幀序列中同時對多個目標的運動軌跡進行跟蹤。多目標跟蹤算法大多采用tracking-bydetection 的策略來完成目標跟蹤任務,即對每一幀圖像中的目標進行跟蹤的同時,還需要對所跟蹤的目標進行檢測,將目標跟蹤的結果與目標檢測相結合,以此達到數據關聯(lián)的目的。
SORT 算法結構簡單、速度快,是跟蹤算法的檢測器,以Faster R-CNN 目標檢測方法為基礎,選用卡爾曼濾波算法預測和更新運動軌跡,選用匈牙利算法對軌跡預測框和檢測器計算實現(xiàn)最優(yōu)化分配。SORT 算法的具體步驟如下。
(1)輸入視頻幀序列,判斷視頻幀序列是否結束。
(2)若步驟(1)的結果為“是”,則認為任務結束;否則進入YOLOv7 檢測算法,獲取當前時刻行人位置信息的檢測框,賦予檢測到的所有目標ID編號并創(chuàng)建相應軌跡。
(3)進行交并比(Intersection over Union,IoU),通過匈牙利算法進行匹配,判斷是否匹配成功。若匹配成功,執(zhí)行卡爾曼濾波預測并更新軌跡;若匹配失敗,則繼續(xù)進行是否為檢測失配判斷。當為檢測失配,繼續(xù)執(zhí)行更新軌跡并進行卡爾曼濾波預測;否則直接刪除。
(4)重復執(zhí)行步驟(1)~步驟(3),直到幀序列結束。
DeepSORT 算法解決了SORT 算法由于存在遮擋而頻繁切換ID 或目標丟失的問題,其最大特點為引入外觀信息,借用了ReID 領域模型提取外觀特征,通過外觀特征和運動特征加權得到匹配度,減少ID 切換次數。
DeepSORT跟蹤算法通過運動信息與外觀特征,使用卡爾曼濾波器匹配預測框和跟蹤框,在循環(huán)執(zhí)行過程中添加了軌跡確認狀態(tài),當連續(xù)三幀匹配成功,可將檢測的軌跡轉為確認狀態(tài),實現(xiàn)過程簡單,可有效減少跟蹤過程的ID 切換問題。
在井下行人跟蹤過程中,當目標長時間被物體遮擋,算法會利用外觀模型匹配運動目標。為了獲取更穩(wěn)健高效的外觀特征,本文在DeepSORT 跟蹤算法中引入全尺度網絡OSNet,以實現(xiàn)軌跡和檢測之間更精確的關聯(lián)。
OSNet 全尺度網絡基于殘差塊來實現(xiàn)全尺度特征學習,生成的多尺度特征圖由統(tǒng)一聚合門(Aggregation Gate,AG)生成的通道權重動態(tài)方式融合。除此之外,OSNet 網絡在基礎構建過程的另一個關鍵設計原則是設計一個輕量級網絡,因此在支撐構建模塊中采用點卷積和深度卷積分解標準卷積。以輸入尺寸為256×128 的圖像為例,OSNet網絡的結構如圖1 所示,表1 為網絡結構表。
表1 OSNet 網絡結構表
圖1 OSNet 網絡結構圖
在DeepSORT 算法匹配過程中,當為不確認狀態(tài)時,通過IoU 匹配的結果利用匈牙利算法計算其代價矩陣,尋求最優(yōu)匹配判斷匹配程度。一般情況下,IoU 都能較好地反映兩者之間的關系,但IoU 對目標尺度變換并不敏感,礦工目標易被相似目標干擾,并且當檢測框與預測框之間沒有重疊時,IoU 的值恒為0,算法認為目標消失,則無法再進行判斷。
為了解決這個問題,本文對IoU 匹配進行改進。完全交并比(Complete Intersection over Union,CIoU)在IoU 基礎上添加了懲罰項,考慮了邊框的重合度、中心距離和長寬比的尺度信息,在目標框不重疊時,依然可以為邊界框提供移動方向。因此,在跟蹤軌跡與檢測結果匹配過程中選用CIoU 匹配,計算過程為
式中:m為預測邊界框與真實邊界框的交并比IoU,n為CIoU;ρ2為預測框和真實框兩個中心的歐氏距離;X表示預測邊界框,Y表示真實邊界框;c為包攬預測框和真實框的最短對角線的長度;u為權衡的參數,v為衡量長寬比相似性的參數;wgt、hgt為真實框的寬和高,w、h為預測框的寬和高。從計算公式可以看出,當m值為0,表明兩者之間并無交集,此時IoU 并不會直接將邊界回歸框刪除,而是通過最小包圍框計算邊界回歸框與檢測框二者之間最短對角線距離c,c越大說明兩個框距離越遠。值恒大于0 小于1,uv具有非負性。n值越小,表明匹配程度越差,反之亦然。
在井下行人跟蹤過程中,采用CIoU 匹配方式檢測卡爾曼預測結果與檢測結果之間的匹配程度,能夠減少跟蹤過程中跨度較大時產生狀態(tài)重新確認現(xiàn)象,降低ID 切換次數。
數據集采用自制的礦井視頻圖像和公共數據集10 245 張行人作為訓練集組合進行離線預訓練。自制礦井短視頻的格式為1 080×720,幀率為25 f·s-1。對每個礦工目標進行標注,訓練集和測試集的數據比例為2 ∶1。仿真環(huán)境如下:實驗室主機CPU 型號為英特爾Xeon(R) CPU E5-2686 v4,主頻為2.30 GHz,內存為16 GB×2,GPU 型號為GeForce RTX 2080 Ti,操作系統(tǒng)為Windows 10 旗艦版64 位系統(tǒng),框架為Pytorch。仿真驗證、分析、對比改進的DeepSORT 網絡模型在礦井下的跟蹤效果,分別選取背景相對獨立、目標清晰的視頻集和礦工與背景融為一體兩種不同礦井監(jiān)控場景,進行仿真測試。場景一的跟蹤效果如圖2 所示。
圖2 中的視頻序列跟蹤場景較為簡單,行人輪廓特征明顯且容易分辨,改進的算法能夠準確地追蹤運動目標。在第368 幀中,算法在視頻幀中跟蹤到3 個目標。自第400 幀開始,新目標出現(xiàn),但由于目標較小、所含特征較少,此時算法并沒有檢測到此目標。在第522 幀,此目標ID 編號被賦予“10”。在第658 幀,ID 編號為“10”的目標被遮擋;在第794 幀,目標身份復現(xiàn),ID 編號未改變,成功實現(xiàn)跟蹤。第968 幀時,4 個目標基本無遮擋,成功實現(xiàn)跟蹤。
場景二采用環(huán)境較為黑暗且曠工輪廓相對模糊的視頻集,跟蹤效果如圖3 所示。本段視頻時長23 s,在運動過程中,共發(fā)生4 次遮擋。前3 幀首先進行狀態(tài)確認,在第4 幀時,算法賦予兩個目標ID編號分別為1 和2。在第447 幀,算法賦予第3 個新出現(xiàn)目標ID。第586 幀時,發(fā)生井下人員第一次遮擋,ID 編號為2 的目標消失。在第652 幀,ID編號為2 的目標重現(xiàn),其ID 并未發(fā)生改變。在第830 幀,新目標出現(xiàn),由于目標特征信息較少,算法并未賦予其ID 編號。在第838 幀,新目標被賦予ID 編號。第887 幀時,第二次遮擋問題發(fā)生,ID編號為1 的目標被遮擋,目標消失。第900 幀時,ID 編號為1 的目標重現(xiàn),其ID 編號依舊為1,繼續(xù)成功跟蹤。在第910 幀時,第三次遮擋出現(xiàn),ID 編號為2的目標再次消失。第936幀時,目標身份恢復,ID 編號并未發(fā)生改變,算法成功跟蹤。隨著目標運動,在第1 133 幀時發(fā)生了第四次遮擋,目標消失造成無法跟蹤。第1 163幀時,目標重現(xiàn),算法成功跟蹤。自此開始再無遮擋,算法繼續(xù)跟蹤至視頻幀結束。
圖3 場景二跟蹤效果
根據兩個場景的跟蹤效果可以得出結論,在礦井人員相互遮擋時,本文算法具有很好的判別追蹤能力,能夠實現(xiàn)對井下人員的連續(xù)跟蹤,對于遮擋重疊情況具有良好的健壯性。
為了評估改進的DeepSORT 算法的追蹤效果,本文選擇3 種不同的指標進行效果評價,分別是序號切換數(ID switches,IDs),多目標跟蹤準確度(Multiple Object Tracking Accuracy,MOTA),多目標跟蹤精確度(Multiple Object Tracking Precision,MOTP)。序號切換數是整個跟蹤過程誤配數量的和,其值越小,則跟蹤結果越好,計算公式為
式中:r為序號切換數;dt表示t幀時,第i個匹配目標與真實目標之間的距離。
多目標跟蹤準確度用于衡量多目標跟蹤算法在實際過程中保持跟蹤對象軌跡的能力,計算公式為
式中:s為多目標跟蹤準確度,r為序號切換數,F(xiàn)N為漏檢數,F(xiàn)P為誤檢數,GT為真實目標的數量。
多目標跟蹤精確度衡量的是多目標跟蹤算法跟蹤目標位置精確度的能力,計算公式為
式中:dt,i為第t幀數據集中第i個匹配對的距離,ct為第t幀數據集中真實軌跡與算法預測軌跡成功匹配的數量。
分析對比改進后的目標跟蹤算法的多目標跟蹤準確度、多目標跟蹤精確度和序號切換數3 個評價指標,實驗數據如表2 所示。對比表2 中的數據可以得出結論,改進后的算法MOTA 提高了1.6%,MOTP 提高了0.5%,IDs 下降了42,本文算法有更好的跟蹤結果,性能明顯優(yōu)于原跟蹤算法。
表2 多目標跟蹤結果對比
本文算法通過采用OSNet 全尺度網絡替換特征提取網絡,解決了人員跟蹤過程中ID 變換問題;通過采用CIoU 計算預測回歸與檢測框之間的匹配程度,二次重新匹配,解決了IoU 匹配機制過程中的目標丟失問題,提高了人員跟蹤準確性。改進的DeepSORT 目標跟蹤算法應用在礦井環(huán)境下進行跟蹤處理,發(fā)揮了深度學習技術從數據中獲得更深層次特征的優(yōu)勢,實現(xiàn)了對井下人員的實時有效跟蹤,保障了井下人員的作業(yè)安全。該方法不僅適用于煤礦井下等低照度空間,而且對于其他復雜場景的檢測和跟蹤有一定的借鑒意義。