陳從平,李游,徐道猛,鄧揚,何枝蔚
基于深度學(xué)習(xí)的電器目標(biāo)檢測
陳從平1,2,李游1,徐道猛1,鄧揚1,何枝蔚1
(1.三峽大學(xué)機械與動力學(xué)院,湖北 宜昌 443002;2.常州大學(xué) 機械工程學(xué)院,江蘇 常州 213164)
針對傳統(tǒng)目標(biāo)檢測算法無法自適應(yīng)提取目標(biāo)相應(yīng)特征并完成識別的現(xiàn)象,提出一種基于快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster R-CNN)模型的電器識別方法,其優(yōu)勢在于可以自適應(yīng)獲取不同場景下目標(biāo)的特征,避免由于人為設(shè)計目標(biāo)的特征而帶來的主觀因素影響,具有良好的魯棒性與準確性。Faster R-CNN中首先通過建立區(qū)域建議網(wǎng)絡(luò)RPN(Region Proposal Network)代替Fast R-CNN中的Selective Search方法,得到建議位置后再進行檢測。為了解決訓(xùn)練過程當(dāng)中正負樣本失衡問題,在Faster R-CNN中引入了難負樣本挖掘策略,增強了模型的判別能力,提高檢測的精度。
目標(biāo)檢測;識別;深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò)
隨著電器更新速度的加快,常見廢舊電器如洗衣機、冰箱等進行拆解處理后回收利用,不僅可以降低污染,還可以提高經(jīng)濟效益。因此,開展廢舊電器整機自動化識別方法的研究具有重要的意義[1]。目前廢舊電器主要是通過純?nèi)斯げ鸾饣蛘吡魉€人工拆解,存在占地大、成本高、人員需求量大等缺點。為提高工作效率、降低成本,擬設(shè)計一條針對常見廢舊電器的綜合拆解線,并制定好各自的拆解工藝,當(dāng)拆解線上料時,系統(tǒng)自動識別拆解線上來料電器的類型,自動選擇相應(yīng)的拆解工藝,實現(xiàn)一線多用、降低設(shè)備重復(fù)建設(shè)和減少人員數(shù)量的效果,提高效率并降低成本。
為實現(xiàn)以上自動識別的功能,本文提出一種基于Faster R-CNN[2-4]的深度學(xué)習(xí)電器識別方法。相對于傳統(tǒng)目標(biāo)檢測方法如幀差法、光流法、背景減除法[5-6]這幾類,基于深度學(xué)習(xí)[7]的目標(biāo)檢測識別方法具有學(xué)習(xí)效率高、識別速度快且識別精確度高等特點。基于Faster R-CNN算法對電器目標(biāo)圖像進行了目標(biāo)檢測識別,并在Faster R-CNN的訓(xùn)練中加入難負樣本挖掘策略,提高檢測的精度。
本文提出的方法大體思路如下,首先通過學(xué)習(xí)大量的電器(主要為電視機、冰箱、空調(diào)、電扇以及洗衣機五類)圖像訓(xùn)練集,訓(xùn)練獲得一個識別準確率高的檢測模型,然后將電器圖像測試集輸入到該模型,得到可能的結(jié)果。如圖1所示。
圖1 識別流程
本文主相關(guān)數(shù)據(jù)集為常見電器的圖片。在實驗中,自建電器數(shù)據(jù)集中共有800幅圖像,包含五類電器,每類大約160幅,獲取方式主要包括個人拍攝或者網(wǎng)上搜索,圖2為部分電器數(shù)據(jù)集圖片。
本文數(shù)據(jù)集參照VOC2007格式制作[8]。在收集好原始樣本圖片之后,首先將圖片格式統(tǒng)一為jpg,圖片名稱統(tǒng)一命名為6位長度的數(shù)字;然后進行圖像中目標(biāo)的標(biāo)定,即在含有目標(biāo)的圖像中人工將目標(biāo)的外接矩形框標(biāo)定出來,記錄目標(biāo)的位置以及類別,以xml文件的形式保存下來,xml文件中包含標(biāo)定目標(biāo)外接矩形框的所屬種類、外接矩形框的左下角坐標(biāo)、右上角坐標(biāo)
圖2 采集的部分樣本
經(jīng)過R-CNN(Region Convolutional Neural Network,區(qū)域卷積神經(jīng)網(wǎng)絡(luò))和Fast R-CNN的積淀,F(xiàn)aster R-CNN將生成候選區(qū)域、特征提取分類等統(tǒng)一到一個框架中,所有計算均沒有重復(fù),完全在GPU中完成,大大提高了檢測速度[9]。Faster R-CNN可以看成“區(qū)域建議網(wǎng)絡(luò)(RPN)+Fast R-CNN”的融合,用RPN代替Fast R-CNN中的Selective Search方法[10]。經(jīng)過多次的迭代訓(xùn)練之后,RPN網(wǎng)絡(luò)和Fast R-CNN網(wǎng)絡(luò)可以很好地融合[11]在一起構(gòu)成一個統(tǒng)一的網(wǎng)絡(luò)。本文提出基于Faster R-CNN的電器目標(biāo)檢測識別方法,流程如圖3所示。
圖3 算法流程
在訓(xùn)練過程中,由于訓(xùn)練樣本庫不是特別大,為避免產(chǎn)生過擬合現(xiàn)象,采用遷移學(xué)習(xí)的思想對網(wǎng)絡(luò)進行預(yù)訓(xùn)練。將已學(xué)習(xí)好的模型參數(shù)遷移到新的模型中,來幫助新的模型進行訓(xùn)練,利用在其他大的數(shù)據(jù)集中預(yù)訓(xùn)練的模型參數(shù)中進行網(wǎng)絡(luò)初始化,然后使用自制的數(shù)據(jù)集去進行微調(diào)。本文中的Faster R-CNN基于在ImageNet預(yù)訓(xùn)練的模型參數(shù)進行初始化,具體訓(xùn)練步驟如下:
(1)用ImageNet已預(yù)訓(xùn)練的網(wǎng)絡(luò)參數(shù)進行初始化,訓(xùn)練RPN網(wǎng)絡(luò);
(2)用預(yù)訓(xùn)練好的網(wǎng)絡(luò)對Fast R-CNN進行初始化,并用上一步中的RPN網(wǎng)絡(luò)提取候選區(qū)域,訓(xùn)練Fast R-CNN網(wǎng)絡(luò);
(3)用訓(xùn)練好的Fast R-CNN網(wǎng)絡(luò)重新初始化RPN的網(wǎng)絡(luò)參數(shù),保持Fast R-CNN網(wǎng)絡(luò)和RPN網(wǎng)絡(luò)中的共享卷積層不變,單獨訓(xùn)練RPN網(wǎng)絡(luò)特有的部分;
(4)用上一步訓(xùn)練后的RPN網(wǎng)絡(luò)初始化Fast R-CNN網(wǎng)絡(luò)參數(shù),單獨微調(diào)Fast R-CNN網(wǎng)絡(luò)特有的那一部分。
Faster R-CNN中選擇候選區(qū)域時,使用了RPN網(wǎng)絡(luò),對于低于閾值的候選區(qū)域刪除,避免了特征提取和學(xué)習(xí)階段過多的重復(fù)階段,降低了計算復(fù)雜度。RPN輸出的是一組候選目標(biāo)框,這些目標(biāo)框?qū)?yīng)輸入電器圖像的可能位置。主要流程為首先輸入一張圖片,經(jīng)過一系列卷積、池化的操作后得到一個特征圖,將這個特征圖輸入到RPN網(wǎng)絡(luò)中后,該網(wǎng)絡(luò)會對圖像中的每個位置提供9個可能的候選窗口,包含3種面積(128×128、256×256、515×512)和3種比例(1:1、1:2、2:1),這九個窗口即為anchors,如圖4所示。
圖4 Anchor選取方式示意圖
選擇3×3卷積核對候選窗口的特征圖進行卷積操作,輸出的每個特征向量將會分別輸入到cls layer全連接層和reg layer全連接層中,其中cls layer層用于判定該proposal是前景還是背景;reg layer層預(yù)測proposal的中心錨點對應(yīng)的proposal的坐標(biāo)、和寬、高、,如圖5所示。在RPN訓(xùn)練過程中,將候選區(qū)域與真實區(qū)域的重疊度作為標(biāo)準,通過非極大值抑制的方法來消除多余的候選窗口,最終每張圖片獲得300個候選區(qū)域以及和候選區(qū)域有關(guān)的四個值(候選區(qū)域的左上角和右下角坐標(biāo))。
圖5 區(qū)域特征卷積過程圖
RPN損失函數(shù)的計算如下。
本文給出下列樣本的標(biāo)定規(guī)則:
(1)將候選區(qū)域與真實區(qū)域的最大交并比IoU(Intersection over Union)大于0.7時對應(yīng)的anchor標(biāo)記為正樣本;
(2)將最大交并比IoU小于0.3時對應(yīng)的anchor標(biāo)記為負樣本[12]。
損失函數(shù)定義為:
式中:為候選框的索引;p為當(dāng)候選框為目標(biāo)時的概率,如果候選框為正樣本,對應(yīng)的真實區(qū)域標(biāo)簽p=1,否則p=0;t為預(yù)測區(qū)域框的4個參數(shù)化坐標(biāo),t為真實區(qū)域框的坐標(biāo)向量;N和N為歸一化參數(shù),在實驗中分別為256和2400;為平衡因子,在實驗中設(shè)為10。
為了使Faster R-CNN網(wǎng)絡(luò)模型能更好地應(yīng)用于電器目標(biāo)檢測識別中,本文在訓(xùn)練過程中加入了難負樣本挖掘策略來增強模型的性能。Faster R-CNN模型在進行訓(xùn)練時,如果目標(biāo)區(qū)域占整張圖的比例過小,正、負樣本之間會產(chǎn)生失衡,負樣本的空間會過大,從而可能導(dǎo)致將所有樣本分為負樣本,造成難以收斂的情況。原始Faster R-CNN中mini-batch設(shè)置為2,會產(chǎn)生128個候選區(qū)域,然后輸入到后面的網(wǎng)絡(luò)中進行分類檢測。在實際情況中,產(chǎn)生的候選區(qū)域超過128個,這些候選區(qū)域從RPN產(chǎn)生的所有候選區(qū)域中隨機選擇。由于是隨機挑選,可能會挑選到無效的負樣本,對模型的性能產(chǎn)生影響。Shrivastava等[13]提出的難負樣本挖掘策略可有效解決訓(xùn)練過程中正負樣本失衡的問題。
本文在實驗訓(xùn)練中加入難負樣本挖掘策略,訓(xùn)練無檢測目標(biāo)的負樣本集,并收集檢測到的矩形框,用這個錯誤分類的負樣本形成一個難負樣本集,最后將該難負樣本集加入到訓(xùn)練集中去重新訓(xùn)練模型[14]。將最后輸出得分高于0.7且與任意真實區(qū)域包圍盒的IoU值小于0.5的候選框作為難負樣本。通過引入本文提出的難負樣本挖掘策略可以增強模型的判別能力和魯棒性,提高檢測的精度。
實驗環(huán)境為Ubuntu16.04系統(tǒng),用python編程語言在Tensorflow深度學(xué)習(xí)框架中搭建Faster R-CNN模型,本文提出基于Faster R-CNN的常用電器目標(biāo)檢測方法,對于原始的Faster R-CNN來說,加入了難負樣本挖掘策略。選擇了VGG16[15]網(wǎng)絡(luò),VGG16網(wǎng)絡(luò)相對于ZFNet[16]和LeNet[17]而言,擁有更深的網(wǎng)絡(luò)層,更有助于提取檢測的顯著特征,得到更好的檢測效果。
實驗中在設(shè)置迭代次數(shù)為20 000次,并在config.py文件中修改相應(yīng)參數(shù),進行多次實驗。五類電器的圖像中,每類電器的訓(xùn)練圖像為160幅,并隨機抽取30%的圖像作為測試圖像,最終得到的部分預(yù)測圖像如圖6所示。
圖6 部分預(yù)測圖像
模型訓(xùn)練結(jié)果如圖7、表1所示。
表1中,IoU是指真實區(qū)域框與預(yù)測框的最大交并比,其中0.50:0.95是指取0.50~0.95之間的十個IoU值(步距為0.05)所對應(yīng)的平均準確率的平均值;Area是指不同大小的目標(biāo);maxDetections是指允許網(wǎng)絡(luò)生成最大目標(biāo)框建議個數(shù)。
通過表1可知,當(dāng)取IoU值0.50~0.95中十個值的平均值時,平均準確率能達到72.5%,當(dāng)降低標(biāo)準,IoU值取0.50和0.75時,平均準確率可以分別達到93.7%和93.6%。由于檢測目標(biāo)電器的外接矩形框均為大面積目標(biāo),因此無法評估小面積目標(biāo)的檢測效果,故表中Area值為small時,平均準確率與平均召回率均為-100.0%。本文制作的數(shù)據(jù)集中,每張圖片上檢測目標(biāo)固定且數(shù)量不多,因此當(dāng)maxDetections從100降到10時,平均召回率沒有改變,均為77.1%,說明如果減少目標(biāo)框建議個數(shù),對檢測的準確率來說并無很大影響,所以可考慮通過減少模型中目標(biāo)框建議個數(shù)來提高檢測速率。
圖7 平均準確率、平均召回率隨迭代次數(shù)變化的情況
表1 模型訓(xùn)練結(jié)果
每一類電器的檢測結(jié)果如表2所示。
表2中的漏檢率是指在目標(biāo)圖像中沒有識別出檢測目標(biāo)的概率,而誤檢率則是指錯把其他物體識別成檢測目標(biāo)的概率。由表2可知,電扇、洗衣機識別的準確率最高,漏檢率最大的是空調(diào),誤檢率最高的是冰箱。
表2 檢測結(jié)果
圖8為誤檢情況的展示。
圖8 誤檢情況
圖8(a)中的誤檢是因為電視機與相框在大小、外觀輪廓等方面比較相似,因此模型的預(yù)測錯誤;在圖8(b)中誤將洗衣機旁邊的柜子識別成了冰箱,其原因在于柜子與冰箱的外形構(gòu)造比較類似,產(chǎn)生誤檢情況。
漏檢的原因在于拍攝時角度、光線等原因,對圖像質(zhì)量造成一定影響,使得在檢測過程中無法對檢測目標(biāo)進行準確識別;通過檢測結(jié)果與分析,本文將漏檢原因主要歸納為了四個方面,如圖9所示。
本文提出基于Faster R-CNN的電器目標(biāo)檢測識別方法,對常用的五種電器進行了檢測識別。首先自制五類電器數(shù)據(jù)集,然后輸入數(shù)據(jù)集通過卷積神經(jīng)網(wǎng)絡(luò)提取特征,并使用RPN網(wǎng)絡(luò)生成區(qū)域建議,區(qū)域網(wǎng)絡(luò)與目標(biāo)檢測網(wǎng)絡(luò)共享卷積特征,從而大大縮小了選擇候選區(qū)域的時間,提升了檢測效率。同時本文在訓(xùn)練過程中加入了難負樣本挖掘策略,在一定程度上加強了模型的魯棒性。通過學(xué)習(xí)研究,本文所用的網(wǎng)絡(luò)模型在常用電器的檢測中有較高的識別準確率。本文的實驗中,自制的數(shù)據(jù)集樣本量不夠大,對檢測結(jié)果會有影響;制作數(shù)據(jù)集時,使用相關(guān)軟件進行人工標(biāo)注也可能會對檢測結(jié)果產(chǎn)生一定影響,后續(xù)研究中可通過擴大樣本庫等方法來進一步提高準確率。
[1]郭漢丁,張印賢,郭偉,等. 廢舊電器回收再生利用產(chǎn)業(yè)鏈價格協(xié)同機理研究[J]. 生態(tài)經(jīng)濟,2013(2):110-112.
[2]Girshick R,Donahue J,Darrell T,et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]. Proceedings of the IEEE conference on computer vision and pattern recognition,2014.
[3]Girshick R. Fast R-CNN[C]. Proceedings of the IEEE conference on computer vision and pattern recognition,2015:1440-1448.
[4]Ren S,He K,Girshick R,et al. Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks[C]. International conference on neural information processing systems,2015:1137-1149.
[5]張玲,陳麗敏,何偉,等. 基于視頻的改進幀差法在車流量檢測中的應(yīng)用[J]. 重慶大學(xué)學(xué)報(自然科學(xué)版),2004(5):31-33,73.
[6]李超,熊璋,赫陽,等. 基于幀間差的區(qū)域光流分析及其應(yīng)用[J]. 計算機工程與應(yīng)用,2005(31):199-201,226.
[7]LeCun Y,Boser B E,Denker JS,et al. Handwritten digit recognition with a back-propagation network[C]. Advances in neural information processing systems,1989.
[8]張書洲. 基于深度學(xué)習(xí)的Logo檢測與識別技術(shù)研究[D]. 成都:電子科技大學(xué),2018.
[9]樂國慶. 基于車載視覺系統(tǒng)的目標(biāo)檢測優(yōu)化算法研究[D]. 北京:北京交通大學(xué),2017.
[10]鄒雷. 基于深度學(xué)習(xí)的車輛重識別方法[D]. 武漢:華中科技大學(xué),2017.
[11]Tao Kong,Anbang Yao,Yurong Chen,F(xiàn)uchun Sun. HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection[C]. Proceedings of the IEEE conference on computer vision and pattern recognition,2016.
[12]項陽. 基于深度學(xué)習(xí)的無人機影像車輛提取[D]. 贛州:江西理工大學(xué),2018.
[13]Shrivastava A, Gupta A, Girshick R. Training region-based object detectors with online hard example mining[C]. Proc of IEEE Conference on Computer Vision and Pattern Recognition,2016:761-769.
[14]王林. Faster R-CNN模型在車輛檢測中的應(yīng)用[J]. 計算機應(yīng)用,2018,38(3):666-670.
[15]Li Jianjun,Peng Kangjian,Chang Chinchen. An Efficient Object Detection Algorithm Based on Compressed Networks [J]. Symmetry,2018,10(7): 235.
[16]Zeiler M D,F(xiàn)ergus R. Visualizing and understanding convolutional networks [C]. Proc of European conference on Computer Vision,Cham:Springer International Publishing AG,2014:818-833.
[17]Haykin S,Kosko B. Gradient based learning applied to document recognition [J]. Proceedings of the IEEE,1998,86(11):2278-2324.
Electrical Target Detection Based on Deep learning
CHEN Congping1,2,LI You1,XU Daomeng1,DENG Yang1,HE Zhiwei1
( 1.College of Mechanical & Power Engineering, China Three Gorges University, Yichang 443002, China; 2.School of Mechanical Engineering, Changzhou University, Changzhou 213164,China )
Aiming at solving the problem that the traditional target detection algorithm cannot adaptively extract the corresponding features of the target, this paper proposes an electrical detection method based on Faster Region Convolutional Neural Network (Faster R-CNN) model. The advantage of the target detection and recognition method based on deep learning is that it can adaptively acquire the features of the target in different scenarios, avoiding the influence of subjective factors due to the characteristics of the artificial design target. This method has good robustness and accuracy. The method used in this paper establishes the Regional Proposal Network (RPN) to replace the selective search method in the original Fast R-CNN, which can obtains the recommended location before detecting it. In order to solve the problem of positive and negative sample imbalance during training, this paper introduces a hard example mining strategy in Faster R-CNN, which enhances the discriminative ability of the model and improves the accuracy of detection.
target detection;identify;deep learning;the neural network
TP183;V448.25+1
A
10.3969/j.issn.1006-0316.2020.01.001
1006-0316 (2020) 01-0001-08
2019-08-26
國家重點研發(fā)計劃課題(2018YFC1903101,廢線路板器件智能拆解和分選技術(shù)研究與示范);國家自然科學(xué)基金項目(51475266,流體微擠出/堆積制備組織工程支架過程形態(tài)調(diào)控機理研究)
陳從平(1976-),男,湖北荊州人,博士,教授,主要研究方向為機器視覺、深度學(xué)習(xí)、3D打印及機電系統(tǒng)控制。