999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MobileNetV3-YOLOv4 的車型識別

2022-01-07 01:23:38凌毓濤鄭錫聰李夏雨
軟件導刊 2021年12期
關鍵詞:特征提取深度特征

萬 浪,凌毓濤,鄭錫聰,李夏雨

(華中師范大學物理科學與技術學院,湖北武漢 430079)

0 引言

近年來,我國機動車數量逐年增長,截至2020 年9 月已高達3.65 億輛,其中汽車占73.97%。汽車帶來了交通的便利,但也導致道路擁擠、交通事故等一系列問題[1]。監控系統是輔助交通監管的重要設施,如何利用監控對道路上的車輛進行檢測與分類成為研究熱點。

在計算機視覺領域,典型的車型識別方法分為形態學圖像處理與卷積神經網絡(Convolution Neural Network,CNN)兩種。在形態學圖像處理方面,程麗霞等[2]提出一種基于灰度共生矩陣紋理特征的車型識別方法,該方法性能穩定、可行性強,但適用范圍較窄,在光線較強或車身顏色較暗的情況下提取的車輛紋理特征并不清晰,會導致分類結果不準確。在CNN 方面,吳玉枝等[3]對SSD 目標檢測算法進行改進,對主干特征提取網絡VGG-16 增加一層卷積層,并將底層與頂層多層特征圖融合后進行預測,以獲取更全面的特征信息。該方法降低了模型誤檢率,提升了識別速度,但識別精度還有待提升。桑軍等[4]提出一種基于Faster-RCNN 的車型識別方法,研究Faster-RCNN 分別與ZF、VGG16 和ResNet-101 3種不同CNN相結合的識別能力,實驗結果表明Faster-RCNN 與ResNet-101 相結合的模型識別能力最強。該算法雖然精度較高,但模型參數量過大,訓練和識別速度較慢。

YOLOv4 目標檢測算法在速度和精度方面均表現優異,但同樣存在參數量過大、難以訓練的問題。為解決目前車輛檢測與分類算法的局限性,本文將MobileNet 輕量級網絡引入YOLOv4 目標檢測網絡中,得到MobileNetV3-YOLOv4 模型,大幅減少了目標檢測網絡的參數量,從而提升了檢測速度。此外,為消除減少參數量帶來的準確度不足問題,本文使用K-means 算法設置預選框用于提升模型最終識別精度,最終構建了一種實用的車輛檢測與分類算法。

1 MobileNet 簡介

MobileNet 網絡是由谷歌提出的一種輕量級CNN。MobileNetV1 的卷積模型主要應用深度可分離卷積(Depthwise Separable Convolution)的方式替換普通卷積方式[5],深度可分離卷積流程如圖1 所示。其通過對每個輸入通道采用不同的卷積核分別進行卷積,然后再通過1× 1 大小的卷積核進行通道調整實現,并在卷積層后加上BN(Batch Normalization)層和ReLU 激活函數。假設輸入特征圖的大小為DW×DH×M,輸出特征圖的大小為DW×DH×N,其中DW、DH分別為特征圖的寬和高,M、N分別為輸入和輸出特征圖的通道數。對于一個卷積核尺寸為DK×DK的標準卷積來說,共有N個DK×DK×M的卷積核,因此參數量PN的計算公式可表示為:

Fig.1 Depthwise separable convolution structure圖1 深度可分離卷積結構

每個卷積核都要經過DW×DH次計算,其計算量QN表示為:

在深度可分離卷積中,一次標準卷積可分為深度卷積(Depthwise Convolution)和逐點卷積(Pointwise Convolution)兩步操作[6]。深度卷積只需要一個尺寸為DK×DK×M的卷積核;逐點卷積的卷積核尺寸為1× 1×M,共有N個,因此其參數量PD表示為:

深度卷積和逐點卷積的每個參數都需要經過DW×DH次運算,其計算量QD表示為:

深度可分離卷積模塊與標準卷積參數量的比值RP表示為式(5)、計算量比值RQ表示為式(6)。

由上式可知,深度可分離卷積的參數和計算量均減少為標準卷積的。

MobileNetV1 網絡結構在訓練過程中易出現深度卷積部分的卷積核失效,即出現卷積核的大部分參數為0 的情況,影響了特征提取效果。MobileNetV2 在V1 的基礎上使用Inverted residuals block[7]結構,具體如圖2 所示。首先使用逐點卷積進行特征升維,再通過深度卷積進行特征提取,最后通過逐點卷積進行降維,將ReLU 激活函數替換為ReLU6 激活函數,使模型在低精度計算下具有更強的魯棒性,并去掉最后的ReLU 層。ReLU6 激活函數的公式表示為:

Fig.2 Inverted residuals block structure圖2 Inverted residuals 結構

在輸入維度與輸出維度相同時,引入ResNet 中的殘差連接,將輸出與輸入直接相連。這種倒殘差結構的特點為上層和下層特征維度低,中間層維度高,避免了Mobile-NetV1 在深度卷積過程中卷積核失效等問題,而且在高維特征層使用單深度卷積也不會增加太多參數量。此外,引入殘差連接可避免在加深網絡深度時出現梯度消失的現象。

MobileNetV3[8]使用一個3×3的標準卷積和多個bneck 結構提取特征,在特征提取層后使用1× 1 的卷積塊代替全連接層,并加入最大池化層得到最后的分類結果,進一步減少網絡參數量。MobileNetV3 包括Large 和Small兩種結構,本文使用Large 結構。為適應車型識別任務,將輸入圖片大小設為416×416。MobileNetV3_Large 結構如表1 所示,其中SE 表示是否使用注意力模塊,NL 表示使用何種激活函數,s 表示步長。

Table 1 MobileNetV3_Large structure表1 MobileNetV3_Large 結構

bneck 結構結合了V1 中的深度可分離卷積與V2 中的殘差結構,并在某些bneck 結構中引入輕量級注意力模塊,增加了特征提取能力強的通道權重。bneck 結構如圖3 所示。

在主干模塊中使用h-swish 激活函數代替swish,在SE模塊中使用h-sigmoid 激活函數代替sigmoid,減少了網絡的計算量。h-sigmoid、h-swish 的計算公式如式(8)、式(9)所示。

Fig.3 Benck block structure圖3 bneck 結構

2 輕量級車型識別模型MobileNetV3-YOLOv4 建立

2.1 MobileNetv3-YOLOv4 整體框架

YOLOv4[9]是一個基于回歸的單階段目標檢測算法,主要由CSPDarknet53特征提取結構[10]、PAnet特征融合結構[11]和進行回歸與分類的head 頭3 個部分組成,其可在檢測目標的同時對目標進行分類。

Fig.4 MobileNetV3-YoloV4 network structure圖4 MobileNetV3-YoloV4 網絡結構

MobileNetV3-YOLOv4 網絡采用MobilenetV3 作為主干提取網絡代替原有的CSPDarknet53 網絡,其結構如圖4 所示。SPP(Spatial Pyramid Pooling)模塊分別使用4 個不同大小的卷積核對前層特征進行最大池化處理[12],卷積核的尺寸分別為13 × 13、9 × 9、5 × 5、1× 1,然后將4 個處理后的結果連接起來組成新的特征層,在增加網絡深度的同時保留了前層特征,以獲取更多局部特征信息。PANet 模塊對MobileNetV3 主干網絡特征提取的結果首先進行上采樣,再進行下采樣,加強了特征金字塔的信息提取能力。通過不同層的自適應池化,將特征網格與全部特征層直接融合在一起,在下采樣的過程中將融合的結果傳入Head 頭進行回歸與分類。

通過PANet 結構得到3 個特征層的預測結果,這3 個特征層的大小分別為52 × 52、26 × 26、13 × 13。Yolo Head 將輸入圖像劃分為對應大小的網絡,例如對于13 × 13 大小的特征層,將其劃分為13 × 13 的網格,目標中心所在的網格負責該目標的預測,每個網格點會有3 個預設的先驗框,不同大小特征層網格點的先驗框大小也不相同。每個預設的先驗框經過預測得到網格中心的偏移量x_offset 和y_offset、預測框的寬高h 和w,以及物體的置信度和分類結果。在預測過程中將每個網格加上其偏移量得到預測框的中心,然后通過先驗框結合h 和w 便可得到預測框的位置。本文模型將所有卷積核大小為3 × 3 的標準卷積替換為深度可分離卷積,進一步減少了模型參數量。

2.2 損失函數

采用YOLOv4 模型的損失函數,包含邊界框回歸(Bounding Box Regression)損失、置信度損失和類別損失3個部分,其中邊界框回歸損失中使用CIOU代替YOLOv3 中的MSE 損失,其他兩部分與YOLOv3[13]相同。

IOU為兩個錨框之間的交并比,表示為:

IOU對目標尺度不敏感,且當預測框與實際框沒有重疊時,IOU會出現無法優化的情況。CIOU對IOU進行了改進,不僅考慮了錨框之間的交并比,還將尺度與懲罰項納入考慮,計算方式為:

式中,ρ2(b,bgt)表示預測框與真實框中心的歐式距離,b和bgt分別為預測框和真實框的中心點,c表示預測框與真實框最小外接矩形的對角線距離。α和υ的計算公式為:

式中,wgt、hgt分別為真實框的寬、高,w、h分別為預測框的寬、高。

相應的損失Lciou表示為:

置信度損失Lconf表示為:

式中,S2表示分類特征層所劃分的網格數,B表示每個網格點包含的先驗框個數,表示預測框內有無目標,為預測目標置信度,為實際置信度,λnoobj為預設參數。

類別損失Lcls表示為:

式中,c為檢測目標類別,為預測為此類的概率,為此類實際概率。

總的損失Lobject表示為:

2.3 遷移學習

遷移學習是將已訓練完成網絡的權重遷移到一個未經過訓練的網絡中[14]。大部分任務或數據都具有一定相關性,且在大數據集中訓練過的模型通常都具有很強的泛化能力,因此遷移學習可以將已經學習到的特征提取能力通過設定預訓練權值的方式共享給新模型以加快其訓練速度。對于在相對較小的數據集上訓練的模型,遷移學習也能使其學習到預訓練模型在大數據集上訓練得到的特征提取能力,防止過擬合現象。為加快車型識別模型的訓練速度,本文使用遷移學習的方式將MobileNetV3 在ImageNet 數據集上訓練好的參數遷移到車型識別任務中。

2.4 K-means 聚類方法重置先驗框

在目標檢測算法中,通過預設不同大小的先驗框分別對每個網格中心進行預測,替換使用多尺度滑動窗口遍歷的方法,提升了模型的速度與精度,其中YOLOv4 的先驗框是通過對VOC 數據集的目標聚類所得。VOC 數據集上的目標尺寸差異很大,因此預設的先驗框差異也很大。在本文設定的車型識別任務中,車輛目標尺寸差異相對較小,因此通過K-means 聚類法[15]重設先驗框可得到更好的檢測效果。

首先遍歷數據集中每個標簽的每個目標,隨機選取9個框作為聚類中心,劃分為9 個區域,計算其他所有框與這9 個聚類中心的距離。如果某個框距離某個聚類中心最近,則這個框就被劃分到該聚類中心所在區域,之后對9 個區域內所有框取平均,重新作為聚類中心進行迭代,直至聚類中心不再改變為止。由于不同目標框的寬高各不相同,若使用目標框中心與聚類中心的歐式距離作為距離參數可能會導致更大誤差,因此選擇聚類中心與目標的IOU作為距離參數,距離d表示為:

3 實驗方法與結果分析

3.1 實驗環境

在Win10操作系統,GPU 為GeForce RTX 2060的計算機上進行實驗。Cuda 版本為10.0,Cudnn 版本為7.4.1.5,使用Pytorch 框架進行模型的搭建與訓練。

3.2 數據集

使用BIT-vehicle 數據集,包含9 850 張車輛圖片,分為Bus、Microbus、Minivan、Sedan、SUV 和Truck 6 種車型[16],以7∶1∶2 的比例劃分訓練集、驗證集和測試集。K-Means 聚類得到的9 個聚類中心寬高分別為(70,140)、(91,201)、(136,172)、(136,251)、(147,194)、(158,219)、(172,264)、(222,231)、(242,282)。在訓練過程中,對送入模型的圖片進行數據增強,隨機對圖片進行翻轉,對寬高進行扭曲,對亮度進行隨機調整,對圖片多余部分填充灰條,以增強模型的泛化能力。增強效果如圖5 所示。

Fig.5 Vehicle image enhancement processing圖5 車輛圖像增強處理

3.3 實驗結果與分析

以精確率(Precision)、召回率(Recall)、平均精度均值(Mean Average Precision)作為評估模型識別效果的指標,以每秒傳輸幀數(Frames Per Second,FPS)作為評估算法速度的指標[17]。精確率與召回率的計算方法如式(19)、式(20)所示。式中TP(True Positives)表示目標被分為正類且分類正確的數量,TN(True Negatives)表示目標被分為負類且分類正確的數量,FP(False Positives)表示目標被分為正類但分類錯誤的數量,FT(False Negatives)表示目標被分為負類但分類錯誤的數量。

采用不同置信度會得到不同的精確率和召回率,分別將Recall 和Precision 作為x、y軸,繪制P-R 曲線,該條曲線下覆蓋的面積即為此類AP(Average Precision)值。對所有分類的AP 值求平均,可得到該模型的mAP 值,計算方式為:

共訓練100 個epoch,在前50 個epoch 凍結主干特征提取網絡的權重,學習率設置為0.001,在后50 個epoch 解凍,對全部網絡參數進行訓練,將學習率降為0.000 1。最后得到各個車型的P-R 曲線如圖6 所示,mAP 值為96.17%。

為驗證本文方法的有效性,分別將數據集在YOLOv4和主干特提取網絡為ResNet-50 的Faster-RCNN 上進行訓練,訓練一個epoch 記錄一次損失值,各網絡的損失函數如圖7 所示。由損失函數的曲線可得,YOLOv4 和Faster-RCNN 的訓練誤差相較于MobileNetV3 收斂趨勢更快。總體來說,三者驗證誤差收斂速度均很快,但MobileNetV3-YOLOv4 在參數解凍前訓練一輪僅需約3min10s,解凍后需約4min50s;Faster-RCNN 參數解凍前訓練一輪需約19min,解凍后一輪需約28min;YOLOv4 參數解凍前訓練一輪需約9min,解凍后一輪需約21min25s。整體來看,MobileNetV3-YOLOv4 比其他兩種模型訓練速度更快。

Fig.6 P-R curve圖6 P-R 曲線

Fig.7 Loss function curve圖7 損失函數曲線

由表2 可知,本文方法在精度達到96.17%的情況下,模型大小較原YOLOv4 降低了約80%,較Faster-RCNN 降低約50%,檢測速度較YOLOv4 提升了約26%,較Faster-RCNN 提升了約130%。

Table 2 Test results of different models表2 不同模型測試結果

網絡正確預測的圖像如圖8 所示,可以看到模型對不同車型均有不錯的檢測效果。

Fig.8 Model prediction results圖8 模型預測結果

4 結語

本文將MobileNet 輕量級網絡引入YOLOv4 目標檢測網絡中,得到MobileNetV3-YOLOv4 模型,并使用K-means算法設置預選框提升了模型最終識別精度。通過BIT-vehicle 數據集下的車型識別實驗驗證MobileNetV3-YOLOv4網絡模型的有效性,實驗結果表明,本文算法較YOLOv4 整體識別速度提升了約26%,且模型參數量降為原來的1/5。但該數據集拍攝的車輛圖片角度較為單一,訓練后的模型對于側面拍攝的車輛圖片誤檢率較高。為進一步增強模型的泛化能力,使其對不同角度的車輛均有較好的識別效果,后續會嘗試將該模型運用于其他大型車輛數據集中進行訓練,并對其進行相應改進以保證識別精度。

猜你喜歡
特征提取深度特征
深度理解一元一次方程
如何表達“特征”
基于Gazebo仿真環境的ORB特征提取與比對的研究
電子制作(2019年15期)2019-08-27 01:12:00
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
深度觀察
深度觀察
深度觀察
抓住特征巧觀察
一種基于LBP 特征提取和稀疏表示的肝病識別算法
基于MED和循環域解調的多故障特征提取
主站蜘蛛池模板: 国产又大又粗又猛又爽的视频| 71pao成人国产永久免费视频| 国产精品自在在线午夜区app| a级免费视频| 国产福利大秀91| 国产成a人片在线播放| 免费A级毛片无码免费视频| 欧美日韩一区二区在线免费观看| 国产高清在线丝袜精品一区 | 中文字幕在线不卡视频| 美女一区二区在线观看| 免费99精品国产自在现线| 国产哺乳奶水91在线播放| 久久精品电影| 精品久久人人爽人人玩人人妻| 成人免费一区二区三区| 国产成人av一区二区三区| 亚洲午夜福利在线| 手机永久AV在线播放| 国产91熟女高潮一区二区| 欧美综合区自拍亚洲综合绿色| 国产簧片免费在线播放| 91久久夜色精品国产网站| 国产精品原创不卡在线| 亚洲国产中文综合专区在| 中文字幕亚洲精品2页| 美女被躁出白浆视频播放| 久视频免费精品6| 四虎成人在线视频| 亚洲视屏在线观看| 亚洲国产综合精品一区| 国产产在线精品亚洲aavv| 国内精品免费| 美女国产在线| 少妇精品久久久一区二区三区| 国产H片无码不卡在线视频| 成人福利在线观看| 久久国产精品夜色| 成人国产精品2021| 国产免费精彩视频| 国产丰满大乳无码免费播放| 日韩麻豆小视频| 欧美另类视频一区二区三区| 欧美日韩综合网| 国产精品污视频| 午夜视频日本| 福利在线不卡一区| 亚洲三级视频在线观看| 成人精品亚洲| 538精品在线观看| 精品福利视频网| 在线欧美a| 97精品久久久大香线焦| 成人亚洲天堂| 91探花国产综合在线精品| 国产精品视频第一专区| 一本无码在线观看| 一级看片免费视频| 亚洲自偷自拍另类小说| 日本三区视频| 自拍亚洲欧美精品| 激情综合网址| 亚洲国产精品一区二区第一页免| 国产精品成| 韩日无码在线不卡| 99资源在线| 免费高清自慰一区二区三区| 曰AV在线无码| 亚洲精品午夜天堂网页| 精品久久国产综合精麻豆| 久久精品人人做人人爽| 日韩在线永久免费播放| 亚洲伊人电影| 精品伊人久久久久7777人| 国产a在视频线精品视频下载| 国产人在线成免费视频| 国产综合精品一区二区| 91在线中文| 无码 在线 在线| 亚洲人人视频| 91青青草视频| 亚洲欧美一区二区三区麻豆|