林海,龐妙珍,劉天成
(1.湛江幼兒師范專科學(xué)校,湛江524300;2.遂溪縣第一中學(xué),湛江524300)
隨著人工智能與新一代信息技術(shù)的發(fā)展,CNN車型識(shí)別技術(shù)是智能公路治超、智慧安防、智能交通系統(tǒng)、自動(dòng)駕駛等領(lǐng)域中的重要人工智能技術(shù)。馬秀[1]研究了一種基于快速R-CNN的車型識(shí)別算法。通過目標(biāo)檢測(cè)網(wǎng)絡(luò)進(jìn)行圖像特征提取,經(jīng)過RPN算法,對(duì)車輛進(jìn)行精細(xì)化檢測(cè),使用Softmax-SVM集成模型分割目標(biāo)區(qū)域,實(shí)現(xiàn)了對(duì)車型的識(shí)別。針對(duì)車型數(shù)據(jù)集的特點(diǎn),費(fèi)東煒[2]提出了一種適用于車型識(shí)別的數(shù)據(jù)增廣方法,有效提升了小樣本車型識(shí)別的準(zhǔn)確率。通過采用改進(jìn)的HashNet網(wǎng)絡(luò)對(duì)車輛的二值特征表達(dá)進(jìn)行學(xué)習(xí),以全局平均池化層替換HashNet中的部分全連接層,大幅度減少了參數(shù)數(shù)量,提升了前向計(jì)算速度和網(wǎng)絡(luò)性能。在車型識(shí)別中,帶標(biāo)簽車型數(shù)據(jù)的數(shù)量是影響車型識(shí)別的重要因素。楊昌東等[3]以“增強(qiáng)數(shù)據(jù)”為核心,結(jié)合PGGAN和Attention機(jī)制,提出一種基于對(duì)抗網(wǎng)絡(luò)的再分類的網(wǎng)絡(luò)模型ATPGGAN,由生成網(wǎng)絡(luò)和分類網(wǎng)絡(luò)組成。使用生成網(wǎng)絡(luò)對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行增強(qiáng)擴(kuò)充,運(yùn)用注意力機(jī)制和標(biāo)簽重嵌入方法對(duì)網(wǎng)絡(luò)進(jìn)行再優(yōu)化使其生成圖像細(xì)節(jié)更加完善,從而提高車型識(shí)別準(zhǔn)確率。
雖然,目前CNN車型識(shí)別技術(shù)已經(jīng)發(fā)展的比較成熟,但是以上方法存在模型復(fù)雜度高的計(jì)算成本高、分類速度慢,模型復(fù)雜度低的靈敏度低和分類精度低等問題。為了提高當(dāng)前車載和野外環(huán)境安裝的低配置設(shè)備車型識(shí)別系統(tǒng)的分類精確度,本文提出了一種CNN輕量型分類網(wǎng)絡(luò)DGNet用于車型識(shí)別,該方法以DarkNet53網(wǎng)絡(luò)為基礎(chǔ),沿用了原網(wǎng)絡(luò)的濾波器尺寸,保持了基本體系結(jié)構(gòu)的優(yōu)勢(shì),設(shè)計(jì)了輕量型Ghost-Conv模塊,能夠在提高分類精度的同時(shí),大幅降低了計(jì)算成本,并提高了分類的速度,經(jīng)過實(shí)驗(yàn)表明本文方法在模型參數(shù)、分類精確度、分類速度上都取得了較好的平衡。本文貢獻(xiàn)如下:
(1)提出了新的輕量型分類網(wǎng)絡(luò)DGNet。
(2)設(shè)計(jì)了Ghost-Conv模塊,完成對(duì)DarkNet53網(wǎng)絡(luò)的改造,使DGNet更適合在配置低的設(shè)備中運(yùn)行車型識(shí)別系統(tǒng)。
目前基于CNN深度學(xué)習(xí)的圖像分類方法,往往存在模型復(fù)雜度高,計(jì)算成本高的現(xiàn)象。因此,研究輕量化CNN圖像分類方法是當(dāng)今的熱門議題。Sandler等[4]提出了一種新的移動(dòng)架構(gòu)MobileNet,它提高了移動(dòng)模型在多個(gè)任務(wù)和基準(zhǔn)測(cè)試以及不同模型大小范圍內(nèi)的最新性能。該模型基于反向殘差結(jié)構(gòu),其中殘差塊的輸入、輸出是薄瓶頸層,使用了輕量級(jí)深度卷積來過濾中間擴(kuò)展層中的特征,從而達(dá)到了減少計(jì)算成本的效果。楊遠(yuǎn)飛[5]提出了基于輕量型的卷積神經(jīng)網(wǎng)絡(luò)模型,首先,把上層輸出通過數(shù)量較少的卷積核,然后,通過并行操作得到與原模型相同維度的輸出行輸出整合在一起。和同規(guī)模的模型相比,該模型在減少參數(shù)的同時(shí)增加了網(wǎng)絡(luò)的深度,在保持精度的前提下減少了結(jié)構(gòu)參數(shù)量和計(jì)算量。針對(duì)分組卷積引起的分組通道間不流通的問題,董藝威[6]提出了奇異瓶頸,基于SqueezeNet網(wǎng)絡(luò),提出輕量化結(jié)構(gòu)SlimNet,在分類精度、結(jié)構(gòu)參數(shù)量及計(jì)算量上均優(yōu)于SqueezeNet。
為了減少最新的深度神經(jīng)網(wǎng)絡(luò)的計(jì)算成本,Han等設(shè)計(jì)了GhostNet[7],提出了一種用于構(gòu)建高效的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的新模塊GhostModule。首先,將原始卷積層分為兩部分,使用一半的卷積核來生成原始特征圖,然后,進(jìn)一步使用廉價(jià)變換操作以高效產(chǎn)生另外一半幻影特征圖,最后,進(jìn)行合并生成特征圖。在基準(zhǔn)模型和數(shù)據(jù)集上進(jìn)行的實(shí)驗(yàn)表明,GhostModule是一個(gè)即插即用的模塊,能夠?qū)⒃寄P娃D(zhuǎn)換為更輕量化的模型,同時(shí)保持可比的性能。此外,在效率和準(zhǔn)確性方面,使用提出的GhostModule構(gòu)建的GhostNet均優(yōu)于原始模型。
DarkNet53是由Joseph Redmon[8]提出的圖像特征提取主干網(wǎng)絡(luò)。該網(wǎng)絡(luò)包括了5個(gè)Stage單元(每個(gè)單元中都包含有重復(fù)結(jié)構(gòu)的殘差單元,分別重復(fù)重復(fù)1次、2次、8次、8次、4次),共53層,網(wǎng)絡(luò)結(jié)構(gòu)相對(duì)復(fù)雜。該網(wǎng)絡(luò)模型結(jié)合了深度殘差網(wǎng)絡(luò)ResNet和DarkNet19的特點(diǎn),分類精確度可與最先進(jìn)的分類器相媲美,而且浮點(diǎn)運(yùn)算更少,速度更快。例如Dark?Net53比ResNet101性能更好,而且分類速度更快,這主要是因?yàn)镽esNet101的層數(shù)太多,從而增加了運(yùn)算成本。不過在沒有GPU的低配備的設(shè)備中運(yùn)行,由于模型參數(shù)較大,該網(wǎng)絡(luò)運(yùn)行速度與輕量型網(wǎng)絡(luò)相比還是比較慢。
DGNet網(wǎng)絡(luò)是基于DarkNet53網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)的圖像分類網(wǎng)絡(luò),沿用了網(wǎng)絡(luò)的濾波器尺寸,保持了基本體系結(jié)構(gòu)的優(yōu)勢(shì),如表1所示,DGNet網(wǎng)絡(luò)除去最后一個(gè)Connected(全連接層)總共6個(gè)卷積層和46個(gè)Ghost-Conv作為主體網(wǎng)絡(luò)。首先是3×3,32通道的卷積層Conv提取圖像的初始特征,然后是5組重復(fù)的Stage,每個(gè)Stage由1個(gè)單獨(dú)的卷積層Conv與一組重復(fù)執(zhí)行的殘差單元構(gòu)成,重復(fù)執(zhí)行的殘差單元分別重復(fù)1次、2次、8次、8次、4次;在每個(gè)重復(fù)執(zhí)行的殘差單元中,先執(zhí)行1×1的Ghost-Conv操作,再執(zhí)行3×3的Ghost-Conv操作,Ghost-Conv通道數(shù)量先減半,再恢復(fù)。最后是全連接層和輸出。

表1 DGNet網(wǎng)絡(luò)結(jié)構(gòu)
Ghost-Conv模塊的設(shè)計(jì)如圖1所示,使用了GhostNet中的GhostModule提取圖像特征圖,并根據(jù)kernel_size的值,決定GhostModule所使用的激活函數(shù)以及其他參數(shù)。Ghost-Conv一共有46個(gè),占據(jù)了整個(gè)網(wǎng)絡(luò)88%的計(jì)算量,是DGNet網(wǎng)絡(luò)輕量化的關(guān)鍵設(shè)計(jì)。我們使用Ghost-Conv替換原DarkNet53模型Stage單元中的Conv,通過GhostModule使用更少的參數(shù)來生成與Conv相同數(shù)量的特征圖,從而減少計(jì)算成本和提高分類運(yùn)行速度。

圖1 Ghost-Conv模塊

它大約等于加速比。經(jīng)實(shí)驗(yàn)證明,減少的計(jì)算成本相當(dāng)于原來的一半,運(yùn)行速度也加快了一半。
為了提高網(wǎng)絡(luò)的學(xué)習(xí)能力,提升梯度的傳遞效率。Ghost-Conv模塊使用的激活函數(shù)主要有Leaky?ReLU和mish,在濾波器尺寸為1×1的Ghost-Conv中使用的是LeakyReLU激活函數(shù)降低計(jì)算成本,在濾波器尺寸為3×3的Ghost-Conv使用的是mish激活函數(shù),使用計(jì)算精度更高的mish激活函數(shù)有利于提高分類的精度,mish激活函數(shù)的計(jì)算公式如下:

mish激活函數(shù)在負(fù)值的時(shí)候,曲線并不是完全截?cái)嗟模窃试S比較小的負(fù)梯度流入,從而保證信息流動(dòng)。
LeakyReLU激活函數(shù)的計(jì)算公式如下:

LReLU是ReLU的變體,對(duì)輸入小于0部分的反應(yīng)有所變化,減輕了ReLU的稀疏性,negative_slop這個(gè)系數(shù)保證在輸入小于0的時(shí)候有微弱的輸出,緩解一些ReLU導(dǎo)致神經(jīng)元死亡的問題。

其中,N為最小值,θ為模型參數(shù)。在訓(xùn)練數(shù)據(jù)集過程中,梯度下降得到模型參數(shù)θ=(θ1,θ2,…,θc),最終取得損失函數(shù)的全局最優(yōu)解。
車輛車型識(shí)別數(shù)據(jù)集我們采用BIT-Vehicle數(shù)據(jù)集,包含9850張車輛圖像。數(shù)據(jù)集中有1600×1200和1920×1080兩個(gè)攝像頭在不同時(shí)間、不同地點(diǎn)拍攝的圖像。圖像包含照明條件、比例、車輛表面顏色和視點(diǎn)的變化。數(shù)據(jù)集中的車輛分為6類:公共汽車、面包車、小型貨車、轎車、SUV和卡車。每種車型的車輛數(shù)量分別為558、883、476、5922、1392和822輛。如圖2所示。模型算法運(yùn)用PyTorch深度學(xué)習(xí)框架實(shí)現(xiàn),模型訓(xùn)練平臺(tái)為Ubuntu 16.4 64位系統(tǒng),顯卡為8張NVIDIA GTX 2080 Ti顯卡,每張顯卡顯存為8G。初始學(xué)習(xí)率、batch分別設(shè)置為0.01、1000,從數(shù)據(jù)集圖像數(shù)據(jù)中,隨機(jī)選擇7200張用于訓(xùn)練,1800張用于驗(yàn)證和850張用于測(cè)試。

圖2 BIT-Vehicle數(shù)據(jù)集
為了驗(yàn)證DGNet網(wǎng)絡(luò)的車型識(shí)別有效性,我們?cè)贐IT-Vehicle數(shù)據(jù)集上進(jìn)行了訓(xùn)練和評(píng)估。評(píng)估平臺(tái)選用只帶集顯的低配PC,硬件配置為:CPU為Intel Core i3,內(nèi)存 為4G,并和MobileNetV3、Dark?Net53兩種分類方法進(jìn)行了對(duì)比。如圖3和表2所示,分類準(zhǔn)確率較低的是MobileNetv3網(wǎng)絡(luò),Top1 Acc值為77.3,這主要是因?yàn)樵摼W(wǎng)絡(luò)深度不夠,從而影響了分類的精度,不過該模型參數(shù)是最低的,size值為14,由于網(wǎng)絡(luò)比較簡(jiǎn)單,分類速度也是最快的。Dark?Net53網(wǎng)絡(luò)的Top1 Acc值為86.5,由于采用了53個(gè)卷積層結(jié)構(gòu),網(wǎng)絡(luò)的復(fù)雜度高,分類的精度有很大的提升,不過模型參數(shù)也是最大的,size值為162,分類速度也是最慢的,比MobileNetV3慢了將近兩倍。本文方法DGNet網(wǎng)絡(luò)的Top1 Acc值為92.3,是目前圖像分類方法中精度非常高的模型。由于采用了Ghost-Conv模塊,因此在參數(shù)減少量方面比原模型減少了將近一半,size值為83,分類速度上也相應(yīng)提高了將近一倍的速度。與MobileNetV3對(duì)比,雖然在模型參數(shù)上有所增加,但也屬于輕量型分類方法,并且在分類精度上有了更大的提高,因此本文方法在模型參數(shù)、分類精確度、分類速度上都取得了較好的平衡。

表2 3種網(wǎng)絡(luò)在BIT-Vehicle數(shù)據(jù)集的實(shí)驗(yàn)數(shù)據(jù)對(duì)比

圖3 3種分類網(wǎng)絡(luò)
在BIT-Vehicle數(shù)據(jù)集的Top1 Acc、平均分類時(shí)間與模型參數(shù)的氣泡圖,Y軸表示Top1 Acc,氣泡大小代表模型參數(shù),X軸表示平均分類時(shí)間
為了對(duì)比MobileNetV3、DarkNet53、DGNet分類網(wǎng)絡(luò)損失率的情況,我們?cè)贐IT-Vehicle數(shù)據(jù)集上進(jìn)行了訓(xùn)練。根據(jù)訓(xùn)練后的分類結(jié)果,我們分別繪制了3種分類網(wǎng)絡(luò)的損失率曲線圖,如圖4所示,Mobile?NetV3的收斂速度比較慢,損失率相對(duì)比較高,這是由于網(wǎng)絡(luò)的深度不夠,圖像特征提取能力比較弱造成的。DarkNet53的損失率曲線與DGNet的相近,這主要是由于兩種方法在網(wǎng)絡(luò)結(jié)構(gòu)上是相同的,DGNet的收斂速度是3種方法中最快的,損失率也是最低的。由此可見采用了Ghost-Conv模塊和Softmax-Loss損失函數(shù),有助于提高訓(xùn)練過程中的收斂速度和降低損失率。

圖4 3種分類網(wǎng)絡(luò)的在BIT-Vehicle數(shù)據(jù)集上的損失率
CNN分類方法相對(duì)傳統(tǒng)分類算法在分類精度上有了很大的提高,本文以DarkNet53網(wǎng)絡(luò)為基礎(chǔ),提出了一種新的圖像分類網(wǎng)絡(luò)DGNet用于車型識(shí)別,通過實(shí)驗(yàn)對(duì)比發(fā)現(xiàn),本文方法相對(duì)于原模型Dark?Net53進(jìn)一步減少了網(wǎng)絡(luò)參數(shù),降低了運(yùn)算成本,分類速度提高了一半,分類精度也有所提升,能夠高效運(yùn)行在沒有GPU的低配置設(shè)備中,適合在車載和野外環(huán)境中應(yīng)用。在未來的實(shí)驗(yàn)探索中,可以繼續(xù)研究具有更多特性的特征提取網(wǎng)絡(luò),在數(shù)據(jù)集的采樣中將對(duì)更多的車輛顏色、型號(hào)、朝向進(jìn)行收集,以進(jìn)一步提高分類的精度。