国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

行人多目標跟蹤算法

2021-09-22 03:58朱新麗寇婷婷杜冬暉孫俊喜
關(guān)鍵詞:殘差行人軌跡

朱新麗, 才 華,2, 寇婷婷, 杜冬暉, 孫俊喜

(1. 長春理工大學(xué) 電子信息工程學(xué)院, 長春 130022; 2. 長春中國光學(xué)科學(xué)技術(shù)館, 長春 130117;3. 東北師范大學(xué) 信息科學(xué)與技術(shù)學(xué)院, 長春 130117)

多目標跟蹤技術(shù)廣泛應(yīng)用于計算機視覺領(lǐng)域中的智能視頻監(jiān)控、 自動駕駛和人機交互[1]中. 采用傳統(tǒng)多目標跟蹤方法進行目標跟蹤, 跟蹤準確率和跟蹤速率都較低, 且很難適應(yīng)較復(fù)雜的背景. 在多目標跟蹤中應(yīng)用深度學(xué)習(xí)可有效提高模型的準確性和魯棒性, 從而適應(yīng)更復(fù)雜的背景環(huán)境, 因此基于深度學(xué)習(xí)的多目標跟蹤算法已成為多目標跟蹤技術(shù)的發(fā)展趨勢. 多目標跟蹤技術(shù)可實現(xiàn)對給定的視頻或圖像中多個對象進行同時定位, 同時保持他們的身份(ID)標簽不變, 并最終給出各自的運動軌跡. 跟蹤的對象可為行人、 車輛和鳥類等, 目前研究最多的跟蹤對象為行人, 因為行人是典型的非剛性目標, 其在跟蹤難度上比剛性目標更大, 且在實際應(yīng)用中行人的檢測跟蹤應(yīng)用范圍更廣泛.

傳統(tǒng)目標檢測算法主要包括預(yù)處理、 窗口滑動、 特征提取、 特征選擇、 特征分類和后處理等6個主要步驟[2]. Girshick等[3]采用基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(region based convolutional neural network, R-CNN)將深度學(xué)習(xí)應(yīng)用于目標檢測, 將在數(shù)據(jù)集PASCAL VOC 2007上的檢測精度從29.2%提升到66.0%, 極大提高了目標檢測的準確率, 這種基于端到端的訓(xùn)練, 將目標的特征提取、 特征選擇和特征分類融合在同一模型中, 實現(xiàn)了性能與效率的整體優(yōu)化[2]. 近年來, 深度學(xué)習(xí)技術(shù)迅速發(fā)展, 其在檢測和識別的應(yīng)用中都取得了良好效果. 在深度學(xué)習(xí)算法中, 目標檢測可分為雙階段檢測和單階段檢測, 其中: 雙階段檢測[2,4-7]基于候選區(qū)域, 首先粗略地定位檢測框, 然后進行細化; 單階段檢測[8-10]是基于回歸的端到端目標檢測. 其主要區(qū)別在于檢測過程是否分為兩個階段, 前者由檢測和分類兩個階段組成, 后者則將這兩個階段融合到一個階段進行. 在性能上, 單階段檢測網(wǎng)絡(luò)速度快, 雙階段檢測網(wǎng)絡(luò)準確度更好. Baser等[11]提出了一種數(shù)據(jù)驅(qū)動的在線多目標檢測與跟蹤算法, 該算法使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)在每個檢測器中進行數(shù)據(jù)關(guān)聯(lián), 通過深度學(xué)習(xí)技術(shù)將數(shù)據(jù)關(guān)聯(lián)問題等效為CNN中的推理, 同時監(jiān)督學(xué)習(xí)一種相似性函數(shù), 該函數(shù)包含了目標所在圖像上和空間上特征的信息, 該算法可從3D上對數(shù)據(jù)進行全局分配, 對檢測雜亂和數(shù)量分布不均的目標進行精確處理, 并且容易訓(xùn)練. Yu等[12]提出了一種具有高性能檢測和外觀特征的多目標跟蹤算法(POI), 該算法采用動態(tài)尺度的多尺度訓(xùn)練策略, 組合不同尺度和水平層次的特征. He等[13]對YOLOv3[14]進行了改進, 使用雙線性插值方法調(diào)整圖像大小, 使網(wǎng)絡(luò)檢測小目標的能力得到提升, 更適合行人多目標跟蹤的應(yīng)用場景, 提升了跟蹤效率[15]. Bewley等[16]提出了SORT算法, 該算法只使用Kalman濾波器和匈牙利算法等基本組合構(gòu)建跟蹤器, 由于使用了Faster RCNN作為檢測器, 使算法有較高的效率, 但其目標的標簽交換次數(shù)過多; 文獻[17]在SORT算法的基礎(chǔ)上又提出了Deepsort算法, Deepsort算法是在原算法的基礎(chǔ)上整合了外觀信息, 并在預(yù)訓(xùn)練階段加入了深層關(guān)聯(lián)度量, 在線期間使用視覺外觀空間中的最近鄰數(shù)據(jù)關(guān)聯(lián)算法進行軌跡關(guān)聯(lián), 同時使用級聯(lián)匹配算法進行匹配, 并使用馬氏距離和余弦距離計算運動信息和外觀信息. Wang等[18]提出了JDE算法, 通過在單階段檢測的檢測器中嵌入外觀模型的方法, 使其在輸出檢測結(jié)果的同時輸出相對應(yīng)的嵌入向量, 并對各損失值進行自動加權(quán)計算. AI對象檢測器FairMOT[19]通過一個統(tǒng)一的網(wǎng)絡(luò)同時完成目標檢測和身份重識別(REID)兩項任務(wù), 并通過對大部分計算共享減少時間. 任珈民等[20]提出了一種基于YOLOv3與Kalman濾波的多目標跟蹤算法, 只使用Kalman濾波算法, 在應(yīng)對復(fù)雜背景等非線性的情形下, 最終得到了目標跟蹤34.4%的準確度.

但上述算法在面對多目標跟蹤中目標被遮擋的問題時, 其跟蹤效率均較低, 為提高目標被遮擋情形下的多目標跟蹤效率, 本文提出一種新的行人多目標跟蹤算法: 首先使用YOLOv4[21]檢測待跟蹤目標得到檢測框, 利用擴展Kalman濾波器預(yù)測下幀圖像中跟蹤目標的位置; 其次采用匈牙利算法進行數(shù)據(jù)關(guān)聯(lián), 確定行人目標的運動軌跡, 并針對發(fā)生遮擋的目標加入軌跡異常修正算法緩解遮擋引起的目標丟失.

1 本文算法

為提高多目標跟蹤的跟蹤準確度及跟蹤速度, 本文使用YOLOv4作為檢測器, 檢測出當前幀中不同尺寸的行人目標并確定對應(yīng)的邊界框(Bbox); 利用擴展Kalman濾波器預(yù)測下幀圖像中跟蹤目標的位置; 采用匈牙利算法進行數(shù)據(jù)關(guān)聯(lián), 確定行人目標的運動軌跡, 并針對發(fā)生遮擋的目標加入軌跡異常修正算法緩解遮擋引起的目標丟失.

1.1 目標檢測網(wǎng)絡(luò)

YOLOv4深度神經(jīng)網(wǎng)絡(luò)由卷積層、 殘差網(wǎng)絡(luò)層、 激活函數(shù)層、 批標準化(batch normlization)等網(wǎng)絡(luò)基礎(chǔ)層組成, YOLOv4整體結(jié)構(gòu)如圖1所示. 本文選用YOLOv4網(wǎng)絡(luò)作為檢測器.

圖1 YOLOv4整體結(jié)構(gòu)Fig.1 Overall structure of YOLOv4

目標檢測網(wǎng)絡(luò)首先通過骨干CSPDarknet(卷積-批量歸一化層-Mish激活函數(shù))改變輸入圖像的尺寸, 通過多個殘差組提取圖像特征, 獲得多種分辨率的特征圖, 采用1×1,5×5,9×9, 13×13的最大池化方式進行多尺度融合, 然后對特征圖進行上采樣, 與原特征圖拼接, 利用特征金字塔結(jié)構(gòu)獲得19×19,38×38,76×76三種不同尺度的預(yù)測結(jié)果. 在檢測模塊中添加了深度殘差收縮網(wǎng)絡(luò)(DRSN)[22], 使網(wǎng)絡(luò)模型引入了軟閾值函數(shù), 并將其作為非線性層, 以增強深度學(xué)習(xí)方法對含噪聲數(shù)據(jù)或復(fù)雜數(shù)據(jù)的特征學(xué)習(xí)效果.

深度殘差收縮網(wǎng)絡(luò)由深度殘差網(wǎng)絡(luò)、 注意力機制和軟閾值函數(shù)三部分組成, 其先通過注意力機制查找無用特征, 再使用軟閾值函數(shù)將其設(shè)為零, 增強了深度神經(jīng)網(wǎng)絡(luò)從含噪聲數(shù)據(jù)中提取有用特征的能力. 軟閾值函數(shù)是將絕對值小于某個閾值的特征設(shè)為零, 將絕對值大于該閾值的特征趨近于零, 計算公式為

(1)

其中x為輸入特征,y為輸出特征,τ為閾值(非負值).軟閾值函數(shù)的導(dǎo)數(shù)為

(2)

由式(2)可得軟閾值函數(shù)的導(dǎo)數(shù)為1或0.該屬性類似于整流線性單元(ReLU)激活函數(shù). 因此, 軟閾值函數(shù)的使用也能減小梯度彌散和梯度爆炸的可能性.

在計算機視覺領(lǐng)域, 注意力機制是使系統(tǒng)快速掃描范圍內(nèi)的所有物體, 找到目標物體, 從而將注意力放在目標物體上, 以提取目標物體更多有用的細節(jié)信息, 同時忽略無關(guān)物體的所有信息. 深度殘差收縮網(wǎng)絡(luò)通過改進SENet[23]的子網(wǎng)絡(luò)結(jié)構(gòu), 達到在深度注意力機制下使特征軟閾值化的目的, 其殘差模塊如圖2所示.

深度殘差收縮網(wǎng)絡(luò)對深度殘差網(wǎng)絡(luò)的殘差模塊進行改進, 在其中引入子網(wǎng)絡(luò), 通過子網(wǎng)絡(luò)學(xué)習(xí), 得到一組閾值, 并對每個特征通道進行軟閾值化處理. 在子網(wǎng)絡(luò)中, 所有輸入特征的絕對值經(jīng)過全局平均池化得到最后的平均值A(chǔ); 同時, 全局均值池化后的特征圖, 通過一個全連接網(wǎng)絡(luò)(其最后一層為Sigmoid激活函數(shù))輸出系數(shù)α; 平均值A(chǔ)和系數(shù)α相乘得到最后的閾值.這樣既可以使閾值大于零且每個樣本都有自己的閾值, 同時保證閾值大小適當.因此, 深度殘差收縮網(wǎng)絡(luò)的工作原理是注意到無用特征, 通過軟閾值函數(shù), 將其設(shè)為零; 或注意到有用特征, 將其保存.完整的深度殘差收縮網(wǎng)絡(luò)如圖3所示.由圖3可見, 輸入首先通過卷積層, 然后經(jīng)過多個基本模塊, 再經(jīng)過批標準化、 整流線性單元激活函數(shù)、 全局均值池化層, 最后從全連接輸出層得到分類結(jié)果.

圖2 深度殘差收縮網(wǎng)絡(luò)的殘差模塊Fig.2 Residual module of deep residual shrinkage network

圖3 深度殘差收縮網(wǎng)絡(luò)的整體結(jié)構(gòu)Fig.3 Overall structure of deep residual shrinkage network

1.2 跟蹤器

本文采用改進的Deepsort作為跟蹤器, 將其中的Kalman濾波器調(diào)整為擴展Kalman濾波器, 以滿足非線性輸入線性化, 并預(yù)測下一幀目標位置, 先將YOLOv4的檢測結(jié)果輸入擴展Kalman濾波器, 得到當前幀的估計值, 然后使用融合度量的方法計算檢測結(jié)果與跟蹤結(jié)果的匹配程度, 最后對運動軌跡中發(fā)生遮擋的物體加入軌跡異常修正算法, 以得到更準確的跟蹤軌跡.

1.2.1 擴展Kalman濾波

傳統(tǒng)Kalman濾波器只適用于高斯分布的線性系統(tǒng)中, 但在多目標跟蹤的實際應(yīng)用中存在大量非線性因素, 如光照、 形變、 復(fù)雜的環(huán)境背景以及各種遮擋等因素. 因此, 本文引入擴展Kalman濾波器解決上述問題.

擴展Kalman濾波算法通過狀態(tài)方程和觀測方程描述. 狀態(tài)方程是關(guān)于上一個狀態(tài)和將要執(zhí)行控制量的二元函數(shù), 再疊加一個高斯噪聲, 計算公式為

θk=f(θk-1)+sk,

(3)

其中θk是第k幀目標的系統(tǒng)狀態(tài)向量(第k幀目標的真實值),f(θk-1)為狀態(tài)轉(zhuǎn)移矩陣,sk是協(xié)方差為Q的零均值高斯噪聲.觀測方程是關(guān)于當前狀態(tài)的函數(shù)再疊加一個高斯噪聲, 計算公式為

zk=h(θk)+vk,

(4)

其中zk為第k幀目標的系統(tǒng)觀測向量(第k幀目標的檢測值),h(θk)為觀測矩陣,vk是協(xié)方差為R的零均值高斯噪聲.

對于非線性系統(tǒng)中的狀態(tài)估計問題, 采用Kalman濾波器解決.對f(θk-1)和h(θk)非線性函數(shù)進行Taylor級數(shù)展開, 取一次項為一階擴展Kalman濾波, 公式為

(5)

(6)

1.2.2 軌跡異常修正

圖4 遮擋情形下的行人跟蹤結(jié)果Fig.4 Pedestrian tracking results under occlusion

圖5 軌跡異常修正算法流程Fig.5 Flow chart of trajectory anomaly correction algorithm

當跟蹤目標被遮擋時, 利用匈牙利算法進行數(shù)據(jù)關(guān)聯(lián), 雖然可能跟蹤到目標, 但效果不佳, 如圖4所示. 由圖4可見, 行人從開始被遮擋到遮擋結(jié)束, 遮擋前后跟蹤目標的ID發(fā)生了轉(zhuǎn)變, 即跟蹤軌跡有發(fā)生中斷的情況. 基于此, 本文加入了軌跡異常修正算法, 以減少因遮擋情形出現(xiàn)的軌跡中斷, 即跟蹤目標ID變換現(xiàn)象.

軌跡異常修正算法[24]步驟如下:

3) 比較(T-1)時刻和T時刻目標i的中心點P(Ti-1)和P(Ti);

4) 更新邊界框中心點坐標.坐標更新過程如下:

(7)

其中Δh為(T-1)時刻和T時刻的邊界框高度變化量.

(8)

其中Δω為(T-1)時刻和T時刻的邊界框?qū)挾茸兓?

軌跡異常修正算法的流程如圖5所示.

1.3 算法流程

本文算法步驟如下:

1) 用YOLOv4檢測器對目標進行檢測, 得到當前幀目標的檢測框和置信度;

2) 通過置信度刪除部分檢測框, 并利用深度神經(jīng)網(wǎng)絡(luò)提取各檢測目標的特征, 由輸入第一幀圖像的檢測輸出信息初始化擴展Kalman濾波器;

3) 通過擴展Kalman濾波器, 根據(jù)上一幀的目標框信息為當前幀預(yù)測目標位置信息, 得到預(yù)測目標框;

4) 計算面積交并比(IOU), 并使用級聯(lián)匹配得到匹配成功和匹配失敗的邊界框;

5) 利用匈牙利算法進行數(shù)據(jù)關(guān)聯(lián), 對于匹配成功的邊界框, 直接輸出其坐標; 對于匹配失敗的檢測框, 首先創(chuàng)建一個新的跟蹤器, 保存其坐標及特征, 若連續(xù)3幀均跟蹤成功, 則將其作為新增的檢測目標, 然后初始化新的擴展Kalman濾波器; 若連續(xù)3幀均跟蹤失敗, 則將其作為目標丟失處理, 然后加入軌跡異常修正算法尋找丟失目標, 在尋找過程中若幀數(shù)超過60幀還未找到, 則刪除跟蹤器;

6) 處理完所有圖像則結(jié)束, 否則轉(zhuǎn)步驟3).

本文算法流程如圖6所示.

圖6 本文算法流程Fig.6 Flow chart of proposed algorithm

2 實 驗

2.1 實驗環(huán)境

本文采用COCO數(shù)據(jù)集訓(xùn)練本文算法的模型, 用MOT16的訓(xùn)練集作為測試集測試本文算法, 數(shù)據(jù)集中包含多個行人目標, 且存在目標交互和遮擋現(xiàn)象. MOT16訓(xùn)練集中各包含7段視頻. 實驗環(huán)境: Ubuntu 18.04, Intel Xeon(R) CPU E5-2660 V2 @ 2.20 GHz×40處理器, GeForce GTX 2080Ti GPU顯卡, Python3.6.12.

2.2 評價標準

實驗采用跟蹤準確度(MOTA)、 跟蹤精度(MOTP)、 命中的軌跡假設(shè)占地面真實總軌跡的比例(MT)、 丟失的目標軌跡占地面真實總軌跡的比例(ML)、 身份標簽切換總數(shù)(ID_Sw)、 誤檢總數(shù)(FP)和漏檢總數(shù)(FN)作為評判標準.

2.3 實驗結(jié)果與分析

設(shè)計兩組實驗, 對比分析本文算法的性能.

實驗1本文算法在不同視頻序列上進行多目標跟蹤測試, 分析在不同背景下本文算法的實驗結(jié)果.

實驗2將本文算法與其他算法進行對比, 從而對本文算法的性能做進一步分析. 對比算法為RFS[25],MTDF[26],AM_ADM[27]和HISP_T[28].

用本文算法在測試集MOT16的所有不同視頻序列上進行對比實驗, 實驗結(jié)果列于表1. 由表1可見: 本文算法在視頻序列MOT16-03上效果最佳, 在視頻序列MOT16-14上效果最差, 這是因為MOT16-14背景顏色對比不明顯, 且行人目標過小, 導(dǎo)致誤差較大, 跟蹤效果較差; 視頻序列MOT16-03相對背景對比顏色明顯, 行人目標大小適宜; 視頻序列MOT16-01背景過暗且行人目標有的太小, 導(dǎo)致跟蹤效果一般; 視頻序列MOT16-06的圖像分辨率低, 有鏡面成像現(xiàn)象, 且相機晃動影響了最終的跟蹤效果; 視頻序列MOT16-07和MOT16-08都存在行人目標過小且部分行人目標與背景顏色相似的問題, 從而影響了跟蹤效果; 視頻序列MOT16-12有過多的鏡面成像現(xiàn)象且相機晃動, 從而影響了跟蹤結(jié)果.

表1 本文算法在測試集MOT16不同序列上的量化跟蹤結(jié)果

在測試集MOT16上, 將本文算法與RFS,MTDF,AM_ADM,HISP_T算法進行對比實驗, 實驗結(jié)果列于表2. 由表2可見: 本文算法的跟蹤準確度為56.5%, 比第二位的RFS算法(準確度為50.9%)高出5.6%; 本文算法的MT為20.4%, 是5種算法中的最高值, 比第二位的RFS算法(MT為16.7%)高出3.7%; 且本文算法在數(shù)據(jù)集MOT16中的誤檢和漏檢數(shù)目為2 740個和75 925個, 其標簽切換總數(shù)為610, 是5種算法中最少的, 從而證明了本文算法有良好的跟蹤準確度且可有效解決目標被遮擋問題的軌跡丟失問題及標簽切換問題.

表2 不同算法在數(shù)據(jù)集MOT16上的量化跟蹤結(jié)果對比

為更直觀展現(xiàn)本文算法在處理遮擋問題時的優(yōu)勢, 在視頻序列MOT16-01和MOT16-06上使用本文算法與RFS,MTDF,AM_ADM,HISP_T算法進行對比實驗, 其中遮擋效果截圖如圖7所示, 連續(xù)遮擋效果如圖8所示.

圖7 不同算法在目標被遮擋情形下的跟蹤效果Fig.7 Tracking effect of different algorithms in the case of target occlusion

圖8 不同算法在目標被連續(xù)遮擋情形下的跟蹤效果Fig.8 Tracking effect of different algorithms in the case of target continuous occlusion

圖7中第一行為第176幀目標被遮擋發(fā)生前, 第二行為第186幀目標被遮擋正在發(fā)生, 第三行為第200幀目標被遮擋已結(jié)束. 由圖7可見, 本文算法在目標被遮擋前后可準確地跟蹤到行人目標且不發(fā)生標簽交換; RFS,MTDF,AM_ADM,HISP_T算法在這3幀圖像中都框選到了行人目標, 但都存在遮擋前后行人目標標簽交換的問題, 而且HISP_T算法還存在誤檢現(xiàn)象. 圖8中第一行為第311幀目標被遮擋發(fā)生前, 第二行為第315幀目標被遮擋第一個行人, 第三行為第318幀目標被遮擋兩個行人, 第四行為第326幀目標被遮擋已結(jié)束. 由圖8可見, 本文算法在目標被遮擋前后可準確地跟蹤到行人目標且不發(fā)生標簽交換; RFS,MTDF,HISP_T算法在這4幀圖像中都框選到了行人目標, 但都存在遮擋前后行人目標標簽交換的問題, 而AM_ADM算法在第311幀和315幀圖像中存在漏檢和誤檢的問題.

圖9 不同算法在目標過小時的跟蹤效果Fig.9 Tracking effect of different algorithms when targets are too small

為直觀展現(xiàn)本文算法在處理目標過小問題時的優(yōu)勢, 在視頻序列MOT16-07和MOT16-14上進行不同算法處理效果的對比分析, 實驗結(jié)果如圖9所示. 圖9中第一行為視頻序列MOT16-07中第290幀, 由圖9可見, 本文算法和AM_ADM算法各檢測出一個小目標, 但AM_ADM算法和其他算法都存在漏檢問題, 而且MTDF算法還存在誤檢問題; 圖9中第二行為視頻序列MOT16-14中第269幀, 由圖9可見, RFS和HISP_T算法都漏檢了兩個目標, MTDF和AM_ADM算法都漏檢了一個小目標, 而且AM_ADM算法還誤檢了兩個目標.

實驗結(jié)果表明, 本文算法的跟蹤準確率比其他對比算法都高, 且在遮擋問題上有較好的跟蹤結(jié)果, 能有效緩解目標標簽交換問題, 且對小目標的跟蹤也有一定效果.

綜上所述, 本文使用YOLOv4進行行人多目標檢測, 在保證檢測精度的同時, 實現(xiàn)了實時檢測. 使用YOLOv4檢測到跟蹤目標后, 通過擴展Kalman濾波器預(yù)測下一幀目標的位置, 以此獲得當前幀的先驗假設(shè), 在獲得檢測和預(yù)測結(jié)果后, 計算兩者的交并比, 并用級聯(lián)匹配方法將擴展Kalman濾波預(yù)測的檢測框與目標檢測的檢測框進行匹配, 然后用匈牙利算法找到最佳匹配, 同時針對發(fā)生遮擋的目標加入軌跡異常修正算法, 即根據(jù)跟蹤框的高度和寬度與其中心坐標對比, 更新目標的中心坐標, 從而達到軌跡異常修正的目的. 實驗結(jié)果表明, 本文算法在數(shù)據(jù)集MOT16上進行目標跟蹤達到了56.5%的準確度, 且減少了目標標簽交換次數(shù).

猜你喜歡
殘差行人軌跡
基于雙向GRU與殘差擬合的車輛跟馳建模
毒舌出沒,行人避讓
基于殘差學(xué)習(xí)的自適應(yīng)無人機目標跟蹤算法
軌跡
軌跡
基于遞歸殘差網(wǎng)絡(luò)的圖像超分辨率重建
路不為尋找者而設(shè)
軌跡
進化的軌跡(一)——進化,無盡的適應(yīng)
我是行人