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

?

基于孿生卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤算法研究

2021-08-09 11:22:29鄒超楊國平
關(guān)鍵詞:目標(biāo)跟蹤卷積神經(jīng)網(wǎng)絡(luò)

鄒超 楊國平

摘 要: 傳統(tǒng)的目標(biāo)跟蹤算法采用人工特征描述物體特征,這類人工設(shè)計(jì)的特征不能全面地表達(dá)一個物體的特點(diǎn),在跟蹤過程中這些特征點(diǎn)容易受到外界因素的影響,導(dǎo)致跟蹤效果不穩(wěn)定。基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤算法由于采用卷積神經(jīng)網(wǎng)絡(luò)提取物體的深層次特征,這類特征能夠模仿人腦描述學(xué)習(xí)一個物體的深層特征,使得在跟蹤中具有較高的穩(wěn)定性,目標(biāo)不容易丟失且跟蹤的準(zhǔn)確性更高,能夠適應(yīng)復(fù)雜多變的環(huán)境魯棒性更好。本文提出的算法采用Tensorflow搭建網(wǎng)絡(luò)框架,離線訓(xùn)練模型,然后利用OpenCV調(diào)用訓(xùn)練好的模型進(jìn)行目標(biāo)跟蹤實(shí)驗(yàn)。算法在確保較高的跟蹤準(zhǔn)確性基礎(chǔ)上,又得到了較快的跟蹤速度、且顯示出很強(qiáng)的實(shí)時性,具有一定的實(shí)際應(yīng)用價(jià)值。

關(guān)鍵詞: 目標(biāo)跟蹤; 卷積神經(jīng)網(wǎng)絡(luò); Tensorflow; OpenCV

文章編號: 2095-2163(2021)03-0177-04 中圖分類號:TP183;TP391.41 文獻(xiàn)標(biāo)志碼:J

【Abstract】The traditional target tracking algorithm uses artificial features to describe the characteristics of the object, this kind of artificial features can not fully express the characteristics of an object, so in the practical application of environmental changes these characteristic points will lead to inaccurate tracking, and the consequences become serious when the target is lost. The target tracking algorithm based on convolutional neural network uses convolutional neural network to extract the deep-level features of an object, which can describe the features of an object in a more comprehensive way, thus resulting in higher stability in the tracking process, less target loss and higher tracking accuracy, and being able to adapt to complex and changeable environments. The algorithm proposed in this paper uses Tensorflow to build network framework and offline train model, and then uses OpenCV to call the trained model for target tracking experiment. The algorithm not only keeps the tracking accuracy, but also has fast tracking speed and real time, which has certain practical application value.

【Key words】 target tracking; convolutional neural network; Tensorflow; ?OpenCV

0 引 言

隨著深度學(xué)習(xí)[1]的不斷發(fā)展成熟,其應(yīng)用范圍也在不斷擴(kuò)大。最近很多學(xué)者將其引用到目標(biāo)跟蹤中。目標(biāo)跟蹤是計(jì)算機(jī)視覺領(lǐng)域的一個經(jīng)典應(yīng)用,通過跟蹤單個或者多個移動目標(biāo),可以獲取目標(biāo)的位置、運(yùn)動速度、方向等信息為相關(guān)的任務(wù)提供信息支持和消除誤差。其應(yīng)用諸如手勢操作、行人行為預(yù)測、車輛跟蹤、機(jī)器人抓手等。經(jīng)典的目標(biāo)跟蹤算法主要有CamShift[2]為代表的運(yùn)用目標(biāo)的色彩特征的跟蹤算法、以KCF[3]代表的核相關(guān)濾波算法、卡爾曼濾波算法[4]、粒子濾波算法[5]以及利用物體的特征點(diǎn)實(shí)現(xiàn)跟蹤諸如基于SIFT特征點(diǎn)、SURF特征點(diǎn)的目標(biāo)跟蹤算法等。這些算法均通過人工設(shè)計(jì)的特征來表達(dá)物體,然后通過分析人工特征實(shí)現(xiàn)對目標(biāo)的跟蹤。

Mean-Shift、CamShift通過物體的色彩信息計(jì)算出色彩分布直方圖,然后利用直方圖的分布實(shí)現(xiàn)對目標(biāo)的跟蹤。基于SIFT和SURF特征點(diǎn)的算法主要運(yùn)用人工設(shè)計(jì)的角點(diǎn)、即一些灰度突變的位置點(diǎn)實(shí)現(xiàn)對目標(biāo)的跟蹤。這些方法受限于人工設(shè)計(jì)的特征的局限性和容易受到諸如光照變化、物體形變、旋轉(zhuǎn)、運(yùn)動模糊等因素的影響,導(dǎo)致跟蹤的準(zhǔn)確性不夠高、目標(biāo)漂移甚至丟失目標(biāo)。核相關(guān)濾波算法(Kernel Correlation Filter,KCF),是在2014年由Henriques等人提出來的。以KCF為代表的核相關(guān)濾波跟蹤算法在速度上具有較大的優(yōu)勢,能夠滿足實(shí)時性的要求,但是其難以應(yīng)對目標(biāo)的尺度變化、遮擋、重疊等問題。

針對這些問題,很多學(xué)者提出了一些改進(jìn)算法結(jié)合多尺度、多通道等方法提高核相關(guān)算法的準(zhǔn)確性。所以找到一種合適的特征能夠全面、準(zhǔn)確地描述一個物體成為目標(biāo)跟蹤領(lǐng)域里的研究熱點(diǎn),從色彩特征到角點(diǎn)特征,從單通道特征到多通道特征都不能完全滿足跟蹤的需求,此外融合的特征信息越多必然會造成算法結(jié)構(gòu)的冗余、龐大的數(shù)據(jù)處理對算法的實(shí)時性造成影響。卷積神經(jīng)網(wǎng)絡(luò)CNN處理圖片類似于人的大腦,處理得到的是更高層次、更高維度的信息,所以將其應(yīng)用在目標(biāo)識別領(lǐng)域是必然的趨勢,其處理圖像信息的方法同樣可以運(yùn)用在目標(biāo)跟蹤領(lǐng)域中用于提取目標(biāo)的特征。

1 網(wǎng)絡(luò)結(jié)構(gòu)與模型

近年來,孿生卷積神經(jīng)網(wǎng)絡(luò)被廣泛運(yùn)用在目標(biāo)跟蹤領(lǐng)域,一些使用孿生卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤算法在各項(xiàng)比賽中都取得了不錯的成績。有些算法為了提高跟蹤的準(zhǔn)確性和算法的魯棒性將網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)得比較復(fù)雜、深度較深,在準(zhǔn)確性提高的同時也導(dǎo)致了算法在跟蹤速度上的表現(xiàn)不夠優(yōu)秀。并且,結(jié)構(gòu)越深、越復(fù)雜的網(wǎng)絡(luò)參數(shù)也會越多,算法的運(yùn)行對硬件條件要求更高且難以滿足實(shí)際工程應(yīng)用的要求,不具有實(shí)際應(yīng)用價(jià)值。所以本文設(shè)計(jì)一種類似于孿生卷積神經(jīng)網(wǎng)絡(luò)[6]的結(jié)構(gòu)神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。

網(wǎng)絡(luò)結(jié)構(gòu)采用雙路五層卷積網(wǎng)絡(luò)提取物體特征,然后合并連接上三層全連接層通過回歸的方式得出目標(biāo)所在位置。這樣的卷積網(wǎng)絡(luò)深度比較合適、結(jié)構(gòu)簡單,五層卷積參數(shù)較少,對硬件的需求不高,可以達(dá)到實(shí)時的跟蹤效果。算法設(shè)計(jì)流程擬詳述如下。

Step 1 輸入1:輸入圖像大小為127*127*3,以目標(biāo)圖像位置為中心,假設(shè)目標(biāo)框的大小為w*h,則以目標(biāo)框的位置為中心剪裁大小為2w*2h的圖像;

輸入2:輸入圖像大小為227*227*3,以目標(biāo)圖像位置為中心,假設(shè)目標(biāo)框的大小為w*h,則以目標(biāo)框的位置為中心剪裁大小為2w*2h的圖像。

Step 2 將輸入1和輸入2輸入到CNN中,進(jìn)行卷積提取目標(biāo)特征。

Layer1:使用11*11*96的卷積核進(jìn)行卷積,卷積步長為4,使用ReLU函數(shù)作為激活函數(shù),最大池化操作,使用3*3的核步長為2,再進(jìn)行正則化后輸入到Layer2中。

Layer2:使用5*5*256的卷積核進(jìn)行卷積,邊緣補(bǔ)充2行2列,卷積步長為2,ReLU激活函數(shù),最大池化,采用3*3的核,步長為2,再進(jìn)行正則化輸入到Layer3中。

Layer3:卷積核為3*3*384,激活函數(shù)為ReLU。

Layer4:卷積核為3*3*384,激活函數(shù)為ReLU。

Layer5:卷積核為3*3*256,補(bǔ)充邊緣一行一列進(jìn)行卷積操作,激活函數(shù)為ReLU,最大池化,采用3*3的核,步長為2。

Step 3 將2個輸入經(jīng)過卷積得到數(shù)據(jù)互相關(guān)運(yùn)算到一起。

Step 4 將互相關(guān)運(yùn)算之后的數(shù)據(jù)輸入到全連接層。

Fc-layer6 輸出4 096維數(shù)據(jù),激活函數(shù)為ReLU,drop_out_ratio為0.5。

Fc-layer7 輸出4 096維數(shù)據(jù),激活函數(shù)為ReLU,drop_out_ratio為0.5。

Fc-layer8 輸出4維數(shù)據(jù)(目標(biāo)框的左上角和右下角坐標(biāo)位置)。

卷積部分是并行的2個卷積網(wǎng)絡(luò),同時對目標(biāo)和待搜索區(qū)域進(jìn)行卷積??紤]物體的移動特性,一般情況下目標(biāo)在下一幀的位置不會距離上一幀的目標(biāo)位置太遠(yuǎn),所以對下一幀的卷積并不是對整個區(qū)域進(jìn)行卷積,以上一幀中目標(biāo)的位置為中心,通過裁切得到2倍于目標(biāo)框大小的搜索圖像送入卷積網(wǎng)絡(luò)提取特征,最后通過全連接層學(xué)習(xí)出t幀和t+1幀的目標(biāo)位置關(guān)系,得出bounding box。返回的bounding box 由4個數(shù)據(jù)組成,分別為跟蹤得到的目標(biāo)框的左上角坐標(biāo)位置和右下角坐標(biāo)位置。

2 重要參數(shù)設(shè)定

激活函數(shù)選用ReLU激活函數(shù)。常用的激活函數(shù)有sigmoid激活函數(shù)、tanh激活函數(shù)以及ReLU激活函數(shù)。對于線性函數(shù)而言,ReLU的表達(dá)能力更強(qiáng),尤其體現(xiàn)在深度網(wǎng)絡(luò)中。而對于非線性函數(shù)而言,ReLU由于非負(fù)區(qū)間的梯度為常數(shù),因此不存在梯度消失問題使得模型的收斂速度維持在一個穩(wěn)定狀態(tài)。ReLU函數(shù)圖像如圖2所示。

由圖2可知,ReLU函數(shù)的數(shù)學(xué)定義形式如下:

損失函數(shù)采用L1-Loss。損失函數(shù)可以避免誤差在反向傳播時出現(xiàn)梯度消失或者梯度爆炸的情況,表現(xiàn)在訓(xùn)練時網(wǎng)絡(luò)過快或者過慢的收斂,導(dǎo)致網(wǎng)絡(luò)無法學(xué)習(xí)到特征。這里需用到如下數(shù)學(xué)公式:

其中,y表示實(shí)際的輸出,d表示真實(shí)值。

在訓(xùn)練網(wǎng)絡(luò)時,由于參與模型的計(jì)算參數(shù)太多,而訓(xùn)練樣本有限,訓(xùn)練出來的模型很容易產(chǎn)生過擬合的現(xiàn)象。過擬合顧名思義就是訓(xùn)練出來的模型過度擬合訓(xùn)練集的數(shù)據(jù),表現(xiàn)出來就是在訓(xùn)練數(shù)據(jù)上損失函數(shù)較小,預(yù)測準(zhǔn)確率較高;但是在測試數(shù)據(jù)上損失函數(shù)比較大,這樣訓(xùn)練出來的模型泛化能力不強(qiáng)。為了提高模型的泛化能力,對網(wǎng)絡(luò)中的神經(jīng)元進(jìn)行剔除很有必要,采用的dropout-ratio為0.5,即隨機(jī)地讓全連接層一半的神經(jīng)元不參與運(yùn)算。

3 模型訓(xùn)練與實(shí)驗(yàn)

3.1 模型訓(xùn)練

一個神經(jīng)網(wǎng)絡(luò)模型的優(yōu)劣不僅與網(wǎng)絡(luò)的結(jié)構(gòu)、算法等因素有關(guān),在很大程度上也取決于訓(xùn)練網(wǎng)絡(luò)數(shù)據(jù)的質(zhì)量。一個標(biāo)注準(zhǔn)確、復(fù)雜程度高、場景全面的數(shù)據(jù)集可以使訓(xùn)練得到的模型準(zhǔn)確率高、魯棒性好和泛化能力強(qiáng)。訓(xùn)練的樣本使用阿姆斯特丹普通視頻跟蹤庫的307個視頻和OTB100[7]中的98個類別100個視頻序列。OTB100中的視頻序列見圖3。阿姆斯特丹普通視頻跟蹤庫涵蓋了多種視頻情況,例如:照明、透明度、鏡面反射、與類似物體混淆、雜亂、遮擋、縮放、嚴(yán)重形狀變化、運(yùn)動模式、低對比度等。OTB100[7]中標(biāo)記了98個物體,每一幀圖片中的物體位置均有相應(yīng)的標(biāo)記,100個視頻序列對應(yīng)100個groundtruth_rect.txt,存放著每個序列中目標(biāo)的位置。模型使用Tensor flow搭建并訓(xùn)練,測試集則是來源于VOT 2014 Tracking Challenge中的25部視頻,視頻的每一幀都注釋有遮擋、光照變化、運(yùn)動、大小變化、機(jī)位移動等變化形式。

使用Tensorflow訓(xùn)練好模型并保存,使用OpenCV調(diào)用模型進(jìn)行跟蹤實(shí)驗(yàn)。目前,OpenCV dnn模塊支持Caffe、TensorFlow、Torch、PyTorch等深度學(xué)習(xí)框架。

3.2 實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)結(jié)果如圖4所示。實(shí)驗(yàn)發(fā)現(xiàn)所設(shè)計(jì)的網(wǎng)絡(luò)結(jié)構(gòu)可以很好地提取到物體的特征,實(shí)現(xiàn)跟蹤。跟蹤的準(zhǔn)確性較高、速度較快,具有一定的實(shí)際應(yīng)用價(jià)值。例如,圖4(a)中的人臉有遮擋、變形,圖4(b)中的汽車有距離、尺度變化,圖4(c)中的踢足球的人有大小、形變等變化,圖4(d)中出現(xiàn)多個與目標(biāo)相似的行人和自行車。算法能夠應(yīng)對這些變化并實(shí)現(xiàn)跟蹤。

4 結(jié)束語

模型采用了五層卷積再加上三層全連接,結(jié)構(gòu)類似于CaffeNet。實(shí)驗(yàn)發(fā)現(xiàn)算法能夠應(yīng)對遮擋、形變、運(yùn)動模糊、尺度變化等挑戰(zhàn)實(shí)現(xiàn)良好的跟蹤效果。就整體而言,算法在跟蹤的準(zhǔn)確性和速度上表現(xiàn)都還好。算法在GTX1050TI+INTER I5平臺上能夠達(dá)到100+FPS的效果,即使在只有CPU的條件下也能夠穩(wěn)定在20+FPS,有著不錯的實(shí)時性表現(xiàn)。算法的泛化能力依然有較大的改進(jìn)空間,需要加大訓(xùn)練的數(shù)據(jù)量,微調(diào)參數(shù)來提高模型的泛化能力。

參考文獻(xiàn)

[1]??羅海波, 許凌云, 惠斌,等. 基于深度學(xué)習(xí)的目標(biāo)跟蹤方法研究現(xiàn)狀與展望[J]. 紅外與激光工程, 2017, 46(5):6-12.

[2] 鄔大鵬, 程衛(wèi)平, 于盛林. 基于幀間差分和運(yùn)動估計(jì)的Camshift 目標(biāo)跟蹤算法[J]. 光電工程, 2010, 37(1):55-60.

[3] HENRIQUES J F, RUI C, MARTINS P, et al. High-speed tracking with kernelized correlation filters [J].IEEE Transactions on Pattern Analysis Machine Intelligence, 2015, 37(3): 583-596.

[4] 汪穎進(jìn), 張桂林. 新的基于Kalman濾波的跟蹤方法[J]. 紅外與激光工程, 2004, 33(5):505-508.

[5] 王法勝, 魯明羽, 趙清杰,等. 粒子濾波算法[J]. 計(jì)算機(jī)學(xué)報(bào), 2014, 37(8):1679-1694.

[6] HELD D, THRUN S, SAVARESE S. Learning to track at 100 FPS with Deep Regression Networks[M]//LEIBE B, MATAS J, SEBE N, et al. Learning to track at 100 Fps with deep regression networks. Computer Vision-Eccv 2016. Lecture Notes In Computer Scienc. Cham:Springer, 2016,9905:749-765.

[7] WU Yi, JONGWOO L, YANG M H. Object tracking benchmark[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2018,37(9):1834-1848.

猜你喜歡
目標(biāo)跟蹤卷積神經(jīng)網(wǎng)絡(luò)
多視角目標(biāo)檢測與跟蹤技術(shù)的研究與實(shí)現(xiàn)
基于深度卷積神經(jīng)網(wǎng)絡(luò)的物體識別算法
基于改進(jìn)連續(xù)自適應(yīng)均值漂移的視頻目標(biāo)跟蹤算法
深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
基于深度卷積網(wǎng)絡(luò)的人臉年齡分析算法與實(shí)現(xiàn)
軟件工程(2016年8期)2016-10-25 15:47:34
基于卷積神經(jīng)網(wǎng)絡(luò)的樹葉識別的算法的研究
空管自動化系統(tǒng)中航跡濾波算法的應(yīng)用與改進(jìn)
科技視界(2016年5期)2016-02-22 12:25:31
基于車牌識別的機(jī)混車道視頻測速算法
五大连池市| 温州市| 城固县| 金寨县| 宁南县| 简阳市| 当涂县| 宁陕县| 旌德县| 望谟县| 武穴市| 东源县| 城步| 文登市| 青海省| 罗田县| 丹棱县| 临夏市| 静宁县| 聂拉木县| 连云港市| 成武县| 调兵山市| 自治县| 凭祥市| 公安县| 通榆县| 木兰县| 张掖市| 潞西市| 恩施市| 湛江市| 赤城县| 博白县| 海兴县| 临沂市| 巫溪县| 亚东县| 靖边县| 镇康县| 旬阳县|