趙春暉, 任 杰, 宿 南
(哈爾濱工程大學 信息與通信工程學院, 黑龍江 哈爾濱 150001)
智能化交通是計算機視覺中最基本、最具挑戰(zhàn)性的任務之一.車輛跟蹤是智能化交通的重要組成部分,其應用場景廣泛,能夠保護城市公共安全,對違規(guī)、逃逸車輛進行及時跟蹤和抓捕,是保持城市交通暢通的有力手段.但在跟蹤過程中,受到惡劣天氣、環(huán)境污染、黑夜等復雜的拍攝場景影響,導致目標與背景相似、局部遮擋、背景模糊、光線變化等諸多問題,使得在跟蹤過程中出現(xiàn)漂移,給車輛跟蹤增加了難度.所以設計一個具有高性能的車輛跟蹤器是有挑戰(zhàn)性的[1].
近幾年,為解決目標跟蹤問題,出現(xiàn)了多種基于深度卷積網(wǎng)絡的實時跟蹤器.孿生網(wǎng)絡就是其中的重要分支,其本質(zhì)是將目標跟蹤建模為一個相似性比較的問題[2].這種方法不需要或幾乎不需要在線訓練,能夠節(jié)省大量時間、確保跟蹤器的實時性.最先使用孿生網(wǎng)絡框架的是SINT(基于孿生實例搜索的跟蹤)算法,在一個圖像中抽取非常多的候選目標,將所有候選目標經(jīng)過同一個網(wǎng)絡去和初始幀作比較,選擇距離最小的就是目標的位置,該方法操作簡單,但耗時長、速度慢.2016年提出的SiamFC算法[3]引入了全連接層,通過滑窗去做卷積,大大減少了計算時間,提高了跟蹤速度.但是其特征提取網(wǎng)絡簡單,沒有模型更新模塊,導致跟蹤精確度及魯棒性降低.2018年提出的SA-Siam[4](用于實時目標跟蹤的雙分支孿生網(wǎng)絡)利用雙重孿生網(wǎng)絡和通道注意力機制提高跟蹤器的泛化能力.2019年提出的SiamRPN++(基于極深孿生視覺跟蹤網(wǎng)絡的演變)算法[5],將ResNet[6](殘差網(wǎng)絡)作為特征提取網(wǎng)絡,提高了獲取語義特征的能力及跟蹤精度.通過以上方法可以看出,孿生網(wǎng)絡因為有較好的實時性,在視覺目標跟蹤領(lǐng)域被廣泛應用.
本文算法主要針對SiamFC跟蹤器存在的特征提取網(wǎng)絡簡單、無法解決復雜場景下目標與背景相似、沒有模型更新導致跟蹤器的魯棒性差等問題進行改進.首先,本文算法在孿生網(wǎng)絡的框架下提出利用VGG16網(wǎng)絡的covn4-2(第4個卷積的第2層)、covn4-3(第4個卷積的第3層)和FC1(全卷積的第1層)、FC2(全卷積的第2層)這2組卷積層,用特征融合的方式,分別對初始圖片和搜索圖片提取目標的表觀特征和語義特征,確保特征的復雜度和多樣性.其次,對表觀特征和語義特征進行權(quán)重分配,獲得更完善的特征圖,可以更有效地解決目標與背景相似的問題.最后,通過不斷試驗的方法,觀察在不同相似度時本文算法的成功率和精確度,找到成功率和精確度達到最高值的點,確定所在位置的相似度,作為模型更新的閾值,每當相似度達到閾值時,對模型更新一次,既可以避免重復更新又能提高整體算法的魯棒性.
圖1給出了本文算法的整體流程圖.算法步驟如下:①利用VGG16網(wǎng)絡的covn4-2、covn4-3和FC1、FC2這2組卷積層,通過特征融合的方式獲取目標的表觀特征和語義特征;②對獲取到的表觀特征和語義特征進行加權(quán)平均,得到整體特征圖;③對初始圖片和搜索圖片的整體特征圖進行相似性比較,找出相似度最大的位置,就是搜索圖片中目標所在的位置;④確定位置之后,判斷相似度是否小于0.89,如果是就要進行模型更新,用當前幀的圖片替換掉初始圖片,再進行下一幀圖片的跟蹤,反之,則直接進行下一幀圖片的跟蹤;⑤重復以上步驟直到視頻的最后一幀結(jié)束.
圖1 本文算法整體流程Fig.1 Overall flow chart of the proposed algorithm
SiamFC是將孿生網(wǎng)絡用在視覺跟蹤上,并且得到了具有很強實時性的視覺跟蹤算法.SiamFC在初始離線階段把CNN看成一個相似性學習問題,然后在跟蹤時對相似性問題在線進行簡單估計.用AlexNet[7]網(wǎng)絡進行特征提取,引入了全連接層的結(jié)構(gòu),通過計算2個輸入的互相關(guān)和插值,可以得到有效的滑動窗口估計.在VOT2016[8]的視覺跟蹤視頻數(shù)據(jù)集上進行了端到端的測試,算法非常簡單,實時性強,在多個數(shù)據(jù)集上達到最優(yōu)的性能.但是SiamFC中特征提取模塊的網(wǎng)絡簡單,不能獲取更深層次和多樣性的特征,泛化能力弱,不能解決目標與背景相似的問題.
本文算法的特征提取網(wǎng)絡由2個分支組成,專注于不同類型的CNN特征.因為不同層上的CNN特征可以針對不同的跟蹤問題,對單目標跟蹤使用所有特征既沒有效率也沒有效果,所以可以利用CNN的不同層特性來制作一個強大的跟蹤器.首先本文采用稀疏表示的方法[9]分析每層輸出的特征圖譜,觀察不同層的CNN特征能夠表達不同水平的目標特征.越深層的特征越抽象,并且具有語義信息,對于形變,目標與背景相似,具有很強的魯棒性.而淺層的特征更多的是局部特征,可以描述目標的外觀信息.車輛跟蹤過程中,其實質(zhì)是從眾多背景中區(qū)分出變化的目標物體,將語義特征與表觀特征互補結(jié)合,用一個語義分支過濾掉背景,同時用一個表觀特征分支來泛化目標的變化,如果一個物體被語義分支判定為不是背景,并且被表觀特征分支判斷為該物體由目標物體變化而來,即可認為這就是需要被跟蹤的車輛.因此本文算法以孿生網(wǎng)絡框架在確保跟蹤過程能夠保證實時性的條件下,使用VGG16網(wǎng)絡分別輸出covn4-2、covn4-3這2個卷積層的特征和FC1、FC2這2個卷積層的特征.在covn4-2、covn4-3和FC1、FC2兩組網(wǎng)絡層特征提取之后插入一個完整的融合模塊,也就是加入了一個1*1的卷積和,使得covn4-2和covn4-3的特征融合到一起,獲取目標的表觀特征;FC1和FC2的特征融合到一起,獲取目標的語義特征.通過改進的特征提取網(wǎng)絡后,利用上采樣處理 FC1、FC2輸出特征圖,使其與 covn4-2、covn4-3層的特征圖尺寸大小相同.最后,對獲取到的表觀特征和語義特征進行權(quán)重分配,原因是語義特征對區(qū)分目標與背景的變化具有較強的魯棒性,使跟蹤器更通用.為了增強語義分支的識別能力,本文算法添加了加權(quán)平均模塊進行權(quán)重分配,所以整體特征圖是由語義特征和表觀特征2個分支的加權(quán)平均構(gòu)成的,公式為
式中:φ()表示特征提取;φ(x)表示初始圖片的整體特征;φ(z)表示搜索圖片的整體特征;φ(s)、φ(s*)分別是初始圖片和搜索圖片的語義特征;φ(a)、φ(a*)分別是初始圖片和搜索圖片的表觀特征;λ為平衡語義特征和表觀特征2個分支重要性的權(quán)重參數(shù).在試驗中,λ的大小是由訓練集估計得到的,訓練次數(shù)越多,所得到的值越準確,這就是利用VGG16網(wǎng)絡通過特征融合獲取表觀特征和語義特征進行特征提取的全過程.
目標跟蹤問題可以表示為回歸問題,公式為
(3)
式中:矩陣A代表訓練樣本的特征向量;向量y是對應的標簽;‖‖2代表L2正則化;向量w為最優(yōu)濾波器,
w=(ATA+λI)-1ATy.
(4)
由于逆矩陣的計算需要很高的計算代價,直接使用式(4)進行目標跟蹤比較困難.上述問題也可以用對偶形式求解,
w=ATα.
(5)
由式(5)可以看出,對偶形式將特征表示與判別器學習分開,α反映了判別器部分.對于基于回歸的跟蹤算法,如KCF[10](基于核相關(guān)濾波器的視覺跟蹤)算法、ECO[11]、C-COT[12],核心問題是如何學習α的估計.
作為對比,在孿生網(wǎng)絡跟蹤器中是學習一個函數(shù)f(z,x)來比較大小相同的初始圖像和搜索圖像的特征x和特征z.通過比較初始圖像和搜索圖像中所有的候選框之間的相關(guān)性來實現(xiàn),其公式為
f(z,x)=φ(z)*φ(x)+b1.
(6)
式中:z為搜索圖片;x為初始圖片;φ()為特征提取;*為互相關(guān);b1為每個像素點的信號值.
通過式(6)可以看出孿生網(wǎng)絡中的視覺目標跟蹤的核心問題是相似性的比較.比較初始圖片和搜索圖片特征圖的相似性大小,如果2個圖像描述相同的對象,則返回一個高分,反之,則返回一個低分.為了找到物體在搜索圖像中的位置,本文利用了快速滑窗技術(shù),在搜索圖片中生成多個候選框,對初始圖片的標準框與所有候選框進行詳盡的測試,并選擇與初始圖片最相似的候選框的位置,作為目標在搜索圖片中的新位置.
在車輛跟蹤過程中目標所處的環(huán)境在不斷地變化, 目標也發(fā)生或多或少的變化, 因此一直用第一幀作為對比圖片, 容易造成精確度下降. SaimFC算法因為沒有添加模型更新模塊, 導致跟蹤效果隨著時間的增長而變差. 但是如果每次對比之后都更新, 容易引入噪聲等干擾信息,降低成功率. 本文利用重復試驗的方法, 分別在相似度為98%、96%、94%、92%、90%、89%、88%、87%、86%、85%時進行一次模型更新, 記錄相應的速度、成功率、精確度. 如表1所示,為方便閾值確定,將相似度的百分制換算成小數(shù)制. 可以發(fā)現(xiàn),當相似度為0.89時,精確度和成功率最高, 相似度大于或小于0.89,精確度和成功率都會有不同程度的下降, 說明在相似度為0.89時進行一次模型更新是最有效的. 所以將相似度為0.89作為模型更新的閾值, 這樣既節(jié)省了重復多次更新所用的時間, 也提高了算法整體的精確度和魯棒性.
為了驗證本文算法的工作效率,采用KITTI[13]公開的車輛運動視頻數(shù)據(jù)集及LaSOT[14]中20段車輛運動視頻,其中包含了目標與背景相似、局部遮擋、形變、快速運動、背景雜亂、光照變化等多種目標跟蹤過程中可能出現(xiàn)的復雜情況,采用了分組對比的方法對進行詳細的分析.
本試驗采用2個標準評價指標[15]:①成功率是計算跟蹤成功視頻所占視頻的比例,就是對于每幀圖片,計算被跟蹤圖片中的候選框和groundtruth(標準框)之間的IoU(重疊度),通過評估不同IoU閾值下的成功率,可以得到一個成功率曲線圖;②精確度是跟蹤目標的中心位置和手工標定的準確位置之間的平均歐氏距離,就是一個序列中所有幀像素之間的平均中心位置誤差,通過評估不同像素閾值下的精確度,可以得到一個精確度曲線圖.這2個指標都可以根據(jù)AUC(曲線下面積)的大小來判斷算法的效果,AUC越大效果越好.
在訓練階段采用了ILSVRC15的數(shù)據(jù)集對VGG16網(wǎng)絡進行了預訓練,采用了隨機梯度下降的優(yōu)化算法,用高斯分布初始化參數(shù),訓練50個epoch(循環(huán)),每個epoch有5萬個樣本,學習率從10-1降到10-7,語義特征和表觀特征的權(quán)重分配是7∶3,模型更新閾值為0.89,其他參數(shù)與VGG16預訓練網(wǎng)絡中的參數(shù)相同.
本文算法是在SiamFC算法的基礎(chǔ)上,對SiamFC算法中存在的特征提取網(wǎng)絡簡單、無模型更新模塊這2個問題進行改進,所以將本文算法中只包含利用特征融合進行特征提取這一單一模塊的算法命名為Ours-1,將利用特征融合進行特征提取和模型更新2個模塊結(jié)合的算法命名為Ours-2,分別與SiamFC算法進行比較.表2是各算法的評價指標,Ours-1相對于SiamFC算法,其成功率提高了0.118,精確度提高了0.086,說明加入特征融合模塊后算法的總體性能得到提高;Ours-2與SiamFC比較,其成功率提高了0.140,精確度提高了0.117,3種算法的速度沒有太大的差別,說明加入特征融合和模型更新模塊之后的算法在保證實時性的條件下,提高了跟蹤算法的精確度及魯棒性.
表2 各算法的評價指標Table 2 Evaluation indicators of each algorithm
圖2是本文算法與SiamFC算法的跟蹤效果視頻序列,分為3組,分別是清晰場景、陰天、黑夜,每一組的第一行為SiamFC,第二行為本文算法,可以看到SiamFC算法在清晰場景視頻中跟蹤效果很好,而在陰天、黑夜這些目標與背景相似的復雜場景,就會出現(xiàn)跟蹤框在不停的抖動甚至脫離目標的情況.本文算法無論是在清晰還是復雜場景的視頻中都能準確確定目標位置,沒有出現(xiàn)漂移或抖動的情況.說明本文算法能夠解決由陰雨天、黑夜等復雜的拍攝場景導致的目標與背景相似的問題.
(a) 清晰場景(b) 陰天(c) 黑夜
為了確保本文算法的穩(wěn)定性,本文算法與同樣以孿生網(wǎng)絡為框架的7個優(yōu)秀算法SINT[1]、CFNet[16]、DCFNet[17](用于視覺跟蹤的判別相關(guān)濾波器網(wǎng)絡)、DSiam[18](學習動態(tài)孿生網(wǎng)絡的視覺跟蹤算法)、SINT++[19](基于對抗性正實例生成的跟蹤算法)、CREST[20](基于卷積殘差學習的跟蹤算法)、RASNet[21](基于殘差注意力孿生網(wǎng)絡的在線視覺目標跟蹤)進行比較.各算法在車輛跟蹤視頻上的跟蹤性能如表3所示,從表3中可以看到,本文算法(Ours)的精確度為0.843,位列于所有算法的第3位,成功率為0.729,位列于所有算法的第1名.與SINT相比精確度提高了7.5%,成功率提高了15.5%;與DCFNet相比精確度提高了31.6%,成功率提高了29.3%.總體的跟蹤性能在所有對比算法中名列前茅,在具有較高跟蹤性能的同時保證了算法的實時性.
表3 各算法的性能Table 3 Performance of each algorithm
為了便于觀察,圖3(見封3)中顯示了跟蹤性能存在差異的4種算法(Ours、SINT++、RASNe、DCFNet)的跟蹤效果視頻序列,驗證各種算法在陰天、黑夜、雪天、霧霾天、雨天這些受到外界影響導致的復雜的視頻場景下的跟蹤情況.圖3中紅色框為本文算法的檢測結(jié)果.可以看到在各種復雜場景和外界干擾下,本文算法的跟蹤框依然緊緊地貼合目標車輛,實現(xiàn)準確跟蹤,而其他算法均有不同程度的位置偏移.可以看出本文算法不僅可以解決由復雜拍攝場景造成的目標與背景相似的問題,還具有很強的魯棒性.
針對復雜場景下車輛跟蹤問題,本文提出了以孿生網(wǎng)絡為框架用特征融合實現(xiàn)目標跟蹤的算法,利用了語義特征和表觀特征的互補,解決復雜場景中目標與背景相似的問題.此外,本文還設計了更新閾值參數(shù)優(yōu)化模型來實現(xiàn)算法的間隔更新,從而提高跟蹤算法的魯棒性.試驗結(jié)果表明,本文所提算法在公開的車輛視頻數(shù)據(jù)集上的表現(xiàn)要遠遠好于其他實時跟蹤算法.