王 輝,于立君,孫 蓉,劉朝達(dá),高天禹
融入幀間差分法的深度學(xué)習(xí)目標(biāo)識(shí)別仿真研究
王 輝,于立君,孫 蓉,劉朝達(dá),高天禹
(哈爾濱工程大學(xué) 自動(dòng)化學(xué)院,黑龍江 哈爾濱 150001)
目標(biāo)檢測(cè)與識(shí)別是數(shù)字圖像處理實(shí)驗(yàn)的創(chuàng)新性實(shí)驗(yàn)項(xiàng)目。傳統(tǒng)的目標(biāo)識(shí)別算法可以識(shí)別目標(biāo)類型,但不能識(shí)別目標(biāo)的位置信息,且對(duì)相同目標(biāo)的識(shí)別率較低。該文設(shè)計(jì)了一種基于幀間差分法的深度學(xué)習(xí)目標(biāo)識(shí)別算法,即在深度學(xué)習(xí)理論構(gòu)架下,將幀間差分法融入識(shí)別過程,補(bǔ)充增強(qiáng)候選框分割圖像,通過NMS算法對(duì)候選框進(jìn)行篩選。仿真結(jié)果表明,該算法在識(shí)別目標(biāo)種類的同時(shí)還能對(duì)目標(biāo)在圖像中的位置進(jìn)行精確標(biāo)定,并可判斷目標(biāo)是否處于運(yùn)動(dòng)狀態(tài),具有較高的識(shí)別率。
目標(biāo)檢測(cè)與識(shí)別;創(chuàng)新性實(shí)驗(yàn)項(xiàng)目;幀間差分法;深度學(xué)習(xí)
近年來,隨著現(xiàn)代機(jī)器人技術(shù)的快速發(fā)展,機(jī)器工作的場(chǎng)景已不再局限于室內(nèi),在許多室外工作場(chǎng)所中,機(jī)器代替人工進(jìn)行生產(chǎn)作業(yè)提高了工作效率、降低了生產(chǎn)成本。這些應(yīng)用都需要可靠的目標(biāo)檢測(cè)識(shí)別算法[1]來幫助機(jī)器人完成任務(wù)。傳統(tǒng)的識(shí)別算法識(shí)別效果完全取決于人工設(shè)計(jì)的特征提取算法是否合理,然而大部分人工設(shè)計(jì)的特征提取算法都無法完全滿足要求,算法產(chǎn)生的特征健壯性不佳,難以作為分類器分類的依據(jù)。
本文利用深度學(xué)習(xí)技術(shù)將平臺(tái)上的攝像機(jī)捕獲的圖像中的目標(biāo)識(shí)別出來,再通過Tensorflow對(duì)其進(jìn)行實(shí)現(xiàn),同時(shí)將幀間差分法的動(dòng)態(tài)目標(biāo)識(shí)別算法融入Faster RCNN[2]分割候選區(qū)域選擇與最終標(biāo)注中。動(dòng)態(tài)目標(biāo)識(shí)別算法能夠?yàn)樯窠?jīng)網(wǎng)絡(luò)提供多幀圖像間的變化信息加強(qiáng)識(shí)別效果,還能夠幫助確定目標(biāo)的運(yùn)動(dòng)情況,從而為無人平臺(tái)提供更多參考信息。
卷積神經(jīng)網(wǎng)絡(luò)[3]能夠通過卷積一層層地提取圖像的特征信息并進(jìn)行分類識(shí)別。但是在目標(biāo)識(shí)別任務(wù)中,卷積神經(jīng)網(wǎng)絡(luò)[4]只能對(duì)圖像中存在的目標(biāo)進(jìn)行整體的定性識(shí)別。為了利用神經(jīng)網(wǎng)絡(luò)提取圖像中目標(biāo)的更多信息,需要對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改變。
在構(gòu)建新的神經(jīng)網(wǎng)絡(luò)時(shí),需要在原有的目標(biāo)識(shí)別基礎(chǔ)上加入對(duì)目標(biāo)位置的檢測(cè)。而遷移學(xué)習(xí)[5]的作用就是將深度網(wǎng)絡(luò)通過訓(xùn)練所學(xué)習(xí)到的“知識(shí)”,從一個(gè)作用場(chǎng)景遷移到另一個(gè)作用場(chǎng)景,如圖1所示。
圖1 遷移學(xué)習(xí)
遷移學(xué)習(xí)可以調(diào)用現(xiàn)有的訓(xùn)練成果,使已經(jīng)完成的工作成果被重復(fù)利用,而不用浪費(fèi)時(shí)間重新訓(xùn)練。當(dāng)對(duì)某類目標(biāo)只有少量數(shù)據(jù)集的情況下,以已經(jīng)訓(xùn)練好的網(wǎng)絡(luò)為基礎(chǔ)進(jìn)行訓(xùn)練,能夠成功完成。最常用的一種遷移學(xué)習(xí)方式是將原訓(xùn)練模型進(jìn)行分割,保留基礎(chǔ)模型數(shù)據(jù),再將模型遷移到新領(lǐng)域。本文構(gòu)建網(wǎng)絡(luò)的第一步就是以已經(jīng)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),用遷移學(xué)習(xí)方式來提取用于識(shí)別任務(wù)的特征層。
本文選擇VGG16網(wǎng)絡(luò)[6]作為遷移學(xué)習(xí)的對(duì)象。VGG是由AlexNet發(fā)展而來的網(wǎng)絡(luò),相對(duì)于最初的AlexNet,VGG網(wǎng)絡(luò)選擇使用的卷積核尺度及卷積計(jì)算步長(zhǎng)更小,分別為3×3 的卷積核大小與2像素每次卷積步長(zhǎng)。
VGG網(wǎng)絡(luò)[7]系列的結(jié)構(gòu)包括從11層到19層的不同版本。一般來說,識(shí)別效果隨著網(wǎng)絡(luò)深度(層數(shù))的不斷加深越來越好,但進(jìn)行訓(xùn)練的難度及參數(shù)數(shù)量也越多,尤其在超過19層之后,網(wǎng)絡(luò)訓(xùn)練會(huì)因?yàn)樘荻入y以傳遞等問題變得無法進(jìn)行,因此大多選擇16或19層的VGG。
本文采取RPN層提取建議框方法來構(gòu)建深度神經(jīng)網(wǎng)絡(luò)。VGG16[8]卷積生成的特征圖中,每一個(gè)像素都與原圖有著空間上的對(duì)應(yīng)關(guān)系,因此在新的網(wǎng)絡(luò)中可以首先對(duì)整個(gè)圖片用VGG16進(jìn)行特征提取,這樣可以獲得一個(gè)22×22的特征層,然后再在這張?zhí)卣鲌D上通過建議框進(jìn)行劃分,而不是直接在原圖上進(jìn)行劃分。相較于預(yù)先劃分好候選框再對(duì)框內(nèi)的內(nèi)容調(diào)整大小進(jìn)行卷積,新的網(wǎng)絡(luò)結(jié)構(gòu)只需要使用一次卷積過程,所有建議框內(nèi)部?jī)?nèi)容的檢測(cè)都是以卷積形成的特征層為基礎(chǔ)的,大大減少了計(jì)算工作量。
通過RPN生成候選框是針對(duì)[9-11]單幀圖像進(jìn)行候選框識(shí)別的,但在實(shí)際的無人平臺(tái)中傳回來的是一串圖片流,通過這些圖片的時(shí)間先后次序可以提取相關(guān)信息幫助進(jìn)行圖像檢測(cè)。因此,在利用RPN生成候 選框的基礎(chǔ)上,可以融入幀間差分法,再次提高系統(tǒng)的性能。
幀間差分法可以在攝像機(jī)保持靜止不動(dòng)的情況下提取到合適的候選框,將其作為RPN層候選框的補(bǔ)充增強(qiáng)。
將RPN層提取出的anchor前景得分較高的部分送入最后的全連接層進(jìn)行預(yù)測(cè),此時(shí)的預(yù)測(cè)結(jié)果往往已經(jīng)足夠精確。但由于選出進(jìn)行全連接層預(yù)測(cè)的候選框有300個(gè)左右,不能全部作為輸出,需要再次對(duì)候選框進(jìn)行篩選。本文引入非極大值抑制(NMS)算法,對(duì)同一類識(shí)別目標(biāo)候選框進(jìn)行篩選,舍去重復(fù)的,只保留一個(gè)。
NMS算法[13]的輸入是RPN層產(chǎn)生的候選框,以及全連接層對(duì)這個(gè)候選框中的內(nèi)容在當(dāng)前這一類識(shí)別目標(biāo)的評(píng)分。他們組成了一個(gè)5列的數(shù)組,前4列是每一個(gè)建議框的坐標(biāo),第5列則是對(duì)該建議框的評(píng)分。計(jì)算中首先按分?jǐn)?shù)高低對(duì)數(shù)據(jù)進(jìn)行排列。然后從分?jǐn)?shù)最高的開始,依次計(jì)算與之后各候選框的重疊度,如果重疊度大于設(shè)定的閾值,就將這個(gè)候選框舍去。完成一輪計(jì)算后,再在剩下的候選框中選擇分?jǐn)?shù)第二高的重復(fù)上述過程,并再舍去一些候選框,這樣不斷進(jìn)行直到最后,如圖2所示。經(jīng)過非極大值抑制后,就可以通過對(duì)候選框的不斷過濾直至得到最后輸出。
為了使網(wǎng)絡(luò)能夠正常工作,需要訓(xùn)練好網(wǎng)絡(luò)中各部分的參數(shù)。在網(wǎng)絡(luò)的訓(xùn)練過程中,選擇PASCAL VOC數(shù)據(jù)集作為訓(xùn)練集。
首先提取特征值,將特征值送入RPN層生成各個(gè)anchor點(diǎn)的前后景概率以及回歸參數(shù),依照這些參數(shù)構(gòu)造候選框,并將候選框?qū)?yīng)的值送入FC層產(chǎn)生分類預(yù)測(cè)及基于此分類預(yù)測(cè)的第二次回歸參數(shù)。然后將第二次回歸好的候選框進(jìn)行NMS過濾,產(chǎn)生最終結(jié)果。程序流程圖如圖3所示。
圖2 NMS算法流程圖
圖3 總程序流程圖
本文采用的圖像數(shù)據(jù)來源于公路(見圖4—圖7),因?yàn)檫@里識(shí)別目標(biāo)較多,且識(shí)別目標(biāo)之間相互存在重疊,可以更好體現(xiàn)算法的性能。對(duì)這種復(fù)雜的空間交疊識(shí)別目標(biāo),以往傳統(tǒng)的通過harr特征結(jié)合SVM檢測(cè)算法處理起來困難很大,但是通過基于深度學(xué)習(xí)的目標(biāo)識(shí)別與檢測(cè)算法,則非常方便。
圖4 原圖像
圖5 圖片中汽車的識(shí)別結(jié)果
圖6 圖片中人的識(shí)別結(jié)果
圖7 劃分區(qū)域識(shí)別結(jié)果
圖4為原圖像,圖5、圖6是對(duì)圖像中汽車和人的識(shí)別結(jié)果。相較于一般的卷積神經(jīng)網(wǎng)絡(luò),帶有區(qū)域的RCNN不僅能夠檢測(cè)出圖像中目標(biāo)的位置,而且還能提高最終的識(shí)別效果。這是因?yàn)樵赗CNN中進(jìn)行區(qū)域分割,相當(dāng)于減少了每一個(gè)區(qū)域的內(nèi)部干擾。在單獨(dú)使用卷積神經(jīng)網(wǎng)絡(luò)時(shí),如果一個(gè)畫面中同時(shí)出現(xiàn)多種識(shí)別目標(biāo),就會(huì)因?yàn)榛ハ嘤绊懯棺詈蟮淖R(shí)別結(jié)果不準(zhǔn)確。本文對(duì)基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行劃分后,識(shí)別效果如圖7所示。
圖8是對(duì)一幅圖像單獨(dú)使用卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果??梢钥闯?,由于VGG16輸出的是整張圖的情況,所以對(duì)各個(gè)種類目標(biāo)的評(píng)分普遍較低。而圖7在準(zhǔn)確標(biāo)定目標(biāo)位置的同時(shí),對(duì)各個(gè)目標(biāo)分類的準(zhǔn)確率也大幅上升。
圖8 單獨(dú)使用卷積神經(jīng)網(wǎng)絡(luò)識(shí)別的結(jié)果
為了更好地使用幀間信息,使用幀間差分法對(duì)Faster RCNN進(jìn)行補(bǔ)充,幀間差分法的計(jì)算結(jié)果如圖9所示。
圖9 幀間差分法對(duì)圖像的處理結(jié)果
幀間差分法很好地提取出了目標(biāo)的范圍。將這樣提取到的ROI區(qū)域作為RPN層候選框的補(bǔ)充,如圖10所示。
圖10 補(bǔ)充后的候選框集
其中最后一行為幀間差分法得到的候選框。新產(chǎn)生的候選框?qū)⑴cRPN層產(chǎn)生的原候選框一同被送入全連接層進(jìn)行檢測(cè),增加了候選框的數(shù)量,增大了識(shí)別目標(biāo)的可能性。
在攝像頭保持靜止時(shí),幀間差分法還可幫助確定目標(biāo)是否運(yùn)動(dòng)。將幀間差分法得到的結(jié)果與神經(jīng)網(wǎng)絡(luò)經(jīng)過NMS處理后的輸出檢測(cè)框進(jìn)行重疊度計(jì)算,當(dāng)計(jì)算結(jié)果達(dá)到某一閾值時(shí),即可判定該目標(biāo)處于運(yùn)動(dòng)中,如圖11所示。相較于后方停車場(chǎng)中靜止的車輛,道路上車輛的運(yùn)動(dòng)被檢測(cè)出來。
圖11 加入幀間差分法后獲得運(yùn)動(dòng)信息
本文提出一種基于幀間差分法的深度學(xué)習(xí)目標(biāo)識(shí)別算法,并采集來自公路上包含復(fù)雜信息的視頻圖像進(jìn)行了仿真驗(yàn)證。相比于傳統(tǒng)的目標(biāo)識(shí)別算法,基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)算法能夠很好地利用卷積層提取到的特征,對(duì)圖像中的目標(biāo)類別進(jìn)行識(shí)別。同時(shí),RPN層產(chǎn)生的候選框還能幫助網(wǎng)絡(luò)在復(fù)雜背景中確定目標(biāo)位置。而幀間差分法的融入,能夠?qū)PN層產(chǎn)生的候選框進(jìn)行補(bǔ)充增強(qiáng),在提高算法識(shí)別率的同時(shí),還能識(shí)別出目標(biāo)的運(yùn)動(dòng)狀態(tài)。此外,由于采取了先分割再識(shí)別的方式,相比于直接使用卷積網(wǎng)絡(luò)大大提高了識(shí)別的準(zhǔn)確率。
[1] 孫曉峰.基于圖像識(shí)別的智能小車障礙物檢測(cè)方法研究[D].昆明: 昆明理工大學(xué), 2017.
[2] 胡靖逸, 郭雪亮, 李會(huì)軍, 等.目標(biāo)檢測(cè)算法R-CNN在現(xiàn)實(shí)場(chǎng)景數(shù)字檢測(cè)任務(wù)中的應(yīng)用[J].電子技術(shù)與軟件工程, 2018(24): 90.
[3] 周飛燕, 金林鵬, 董軍.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)學(xué)報(bào), 2017, 40(6): 1229–1251.
[4] 陳全, 王澤, 賈偉.基于深度卷積神經(jīng)網(wǎng)絡(luò)的車標(biāo)識(shí)別研究[J].工業(yè)控制計(jì)算機(jī), 2018, 31(12): 36–38.
[5] 徐旭東, 馬立乾.基于遷移學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)的控制圖識(shí)別[J].計(jì)算機(jī)應(yīng)用, 2018, 38(增刊2): 290–295.
[6] 陳毅, 黃妙華, 胡勝.基于改進(jìn)VGG卷積神經(jīng)網(wǎng)絡(luò)的前方車輛目標(biāo)檢測(cè)[J].數(shù)字制造科學(xué), 2018, 16(4): 282–287.
[7] GU J X, WANG Z H, JASON K, et al. Recent advances in convolutional neural networks[J]. Pattern Recognition, 2018(77): 354–377.
[8] DMYTRO M, NIKOLAY S, JIKI M. Systematic evaluation of Convolution Neural Network advances on the ImageNet[J]. Computer Vision and Image Understanding, 2017(161): 11–19.
[9] REN S Q, HE, K M, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine, 2015.
[10] 曹詩(shī)雨, 劉躍虎, 李辛昭.基于Fast R-CNN的車輛目標(biāo)檢測(cè)[J].中國(guó)圖象圖形學(xué)報(bào), 2017, 22(5): 671–677.
[11] 王林, 張鶴鶴. Faster R-CNN模型在車輛檢測(cè)中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用, 2018, 38(3): 666–670.
[12] 孫挺, 齊迎春, 耿國(guó)華.基于幀間差分和背景差分的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].吉林大學(xué)學(xué)報(bào)(工學(xué)版), 2016, 46(4): 1325–1329.
[13] 趙文清, 嚴(yán)海, 邵緒強(qiáng).改進(jìn)的非極大值抑制算法的目標(biāo)檢測(cè)[J].中國(guó)圖象圖形學(xué)報(bào), 2018, 23(11): 1676–1685.
Research on simulation of deep learning target recognition based on inter-frame difference method
WANG Hui, YU Lijun, SUN Rong, LIU Chaoda, GAO Tianyu
(College of Automation, Harbin Engineering University, Harbin 150001, China)
Target detection and recognition are an innovative experimental project in digital image processing experiment. Traditional target recognition algorithm can recognize the type of target, but it can’t recognize the location information of the target, and the recognition rate of the same target is low. A deep learning target recognition algorithm based on frame difference method is designed. In the framework of deep learning theory, the frame difference method is applied to the recognition process, the enhanced candidate frame is segmented and the candidate frame is filtered through the NMS algorithm. The simulation results show that the algorithm can’t only recognize the type of the target, but also accurately calibrate the position of the target in the image. It can also judge whether the target is in a moving state and has a high recognition rate.
target detection and recognition; innovative experimental project; inter-frame difference method; deep learning
G642.0
A
1002-4956(2019)12-0178-04
10.16791/j.cnki.sjg.2019.12.042
2019-04-25
黑龍江省教改項(xiàng)目(SJGY20170505,SJGY20170506);哈爾濱工程大學(xué)教改項(xiàng)目(JG2018Y06)
王輝(1976—),女,黑龍江肇東,博士,副教授,控制工程(電氣工程)實(shí)驗(yàn)教學(xué)中心副主任,碩士生導(dǎo)師,主要研究方向?yàn)槟J阶R(shí)別與智能系統(tǒng)、教學(xué)研究。E-mail:wangh@hrbeu.edu.cn
于立君(1975—),男,黑龍江安達(dá),博士,副教授,自動(dòng)化學(xué)院副院長(zhǎng)(主管實(shí)驗(yàn)教學(xué)),碩士生導(dǎo)師,主要研究方向?yàn)榇翱刂?、智能控制、教學(xué)研究。E-mail:yulijun@hrbeu.edu.cn