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

改進的YOLOv3交通標志識別算法

2022-11-04 07:11:22林軼陳琳王國鵬盛余洋孫立超
科學技術與工程 2022年27期
關鍵詞:特征實驗檢測

林軼, 陳琳*, 王國鵬, 盛余洋, 孫立超

(1.長江大學計算機科學與技術學院, 荊州 434000; 2.三峽大學計算機與信息學院, 宜昌 443000)

近年來,隨著目標檢測技術的發展,交通標志的精準識別對高級輔助駕駛起著不可或缺的作用。而交通標志通常置于室外場景,在自然環境下受到雨淋、光照、老化等因素干擾,為確保到駕駛員的安全,在實際應用場景既要考慮檢測的速率,也要注重識別精度。

傳統目標檢測遵循手工設計特征并結合滑動窗口實現目標識別與定位,此方法準確度低、魯棒性差且無法實現實時檢測。在計算機視覺領域中,深度學習憑借卷積神經網絡逐步取代傳統手工設計,并在目標檢測、目標分類和目標分割等任務上有著良好的表現。目標檢測主要分為One-stage和Two-stage檢測算法,其中One-stage典型算法如SSD[1]、YOLO[2]、YOLOv2[3]、YOLOv3[4]等,直接回歸目標的分類與坐標位置,相比Two-stage有更快的檢測速度。Two-stage典型代表是R-CNN[5]、Fast R-CNN[6]、Faster R-CNN[7]等,通過利用區域生成網絡[8](region proposal network, RPN)對候選區進行區域推薦,相比One-stage有更高的檢測精度。

當前已有學者將目標檢測算法應用到交通標志識別中。宋青松等[9]提出一種聚類殘差單次多盒檢測算法(single shot multibox detector ,SSD),在德國交通標志數據集(german traffic sign detection benchmark ,GTSDB)上準確率達到89.7%,檢測速度僅為0.96 f/s。Song等[10]提出一種高效的卷積神經網絡,在TT100K數據集上精準度高于Fast R-CNN及Faster R-CNN近10%。Cao等[11]在LeNet-5卷積神經網絡模型基礎上,采用Gabor作為初始核,選擇Adam作為優化算法,在GTSDB數據集上檢測精度達到99%。以上學者的方法具有高精度與通用性,但模型網絡復雜致使計算量大識別速度慢,無法滿足實時檢測要求。

針對YOLOv3檢測算法和一些卷積神經網絡檢測過程中,無法兼顧精度和速度的平衡,提出一種改進的S-YOLO算法。在實驗部分,將S-YOLO與YOLOv3以及其他檢測算法進行對比分析,S-YOLO實現了交通標志檢測的有效性,同時在實時場景下達到理想的檢測精度。

圖2 S-YOLO實現圖Fig.2 S-YOLO implementation diagram

1 YOLOv3檢測模型

YOLOv3為One-stage目標檢測算法,采用Darknet-53網絡作為主干特征提取網絡,替代了YOLOv2的Darknet-19,共有53個卷積層,整個結構無池化層和全連接層。該網絡由5個殘差塊構成,每個殘差塊由CBL(Conv, Batch Normalization) LeakyRelu和殘差組件組成,如圖1(a)所示。其中,CBL是Darknet-53網絡中最小組件,由卷積層、批歸一化層和Leaky_relu激活層組成,如圖1(b)所示。通過引入ResNet[12]殘差結構,避免訓練過程造成梯度爆炸和消失等問題,降低深層網絡訓練難度。

圖1 Darknet-53組件結構Fig.1 Darknet-53 component structure

2 改進的S-YOLO檢測算法

YOLOv3在通用場景下已取得良好的檢測效果,但針對交通標志識的識別還存在一些不足:在CBL組件上多了一些層的計算,導致占用更多的顯存,降低檢測速度;初始先驗框為COCO數據集聚類的結果,不適用于交通標志;網絡結構對于小目標的交通標志檢測效果不理想;使用交并比(intersection over union, IoU)作為損失函數,在一些特殊條件下會出現異常值。針對上述問題,提出一種改進的S-YOLO算法,主要改進思想:合并批歸一化層[13](batch normalization,BN)到卷積層,減少一些層的計算,加快模型前向推理;使用二分K-means算法,對交通標志重新聚類確定初始先驗框,實現精準定位;添加空間金字塔池化(spatial pyramid pooling,SPP)模塊[14],有效地提取出交通標志的深度特征,提升模型檢測精度;采用CIoU[15]損失函數,通過最小化預測框與真實框的中心距離并增加長寬比的懲罰,加快模型收斂,提升模型檢測精度。

S-YOLO算法實現整體流程圖如圖2所示,將圖像輸入Darknet-53主干網絡進行卷積等操作生成三種特征層,對第三個特征層進行空間金字塔池化操作,再進行上采樣后和第二個特征層進行張量拼接,同理,將第二個特征層進行上采樣后再與第三個特征層進行張量拼接,最后進行卷積等操作生成三種不同尺寸的特征圖。

2.1 合并BN層到卷積層

圖3 合并BN層到Conv層Fig.3 Merge BN layer to Conv layer

YOLOv3引入了批歸一化BN層,位于卷積層后,在訓練階段加快網絡收斂,解決了梯度爆炸和消失等問題,增強網絡健壯性。將BN層參數合并到卷積層,減少計算量以達到模型前向推理速度的提升。如圖3所示,圖像經過卷積再到BN層進行歸一化。計算過程為

(1)

xconv=xiwi+b

(2)

式中:xbn為BN計算結果;β為偏置;γ為縮放因子;μ為均值;為正則化參數,σ2為方差;xconv為卷積后結果;xi為輸入特征圖;wi為權重參數。

合并BN層到卷積層,將式(2)代入式(1)中得到新的卷積層為

(3)

合并后的權值參數為

(4)

偏置為

(5)

最終得到

xbn=xiwnew+bnew

(6)

BN層合并于卷積層后,新的卷積層參數只有權值wnew和偏置bnew,且少了BN層的計算,從而降低內存的使用,加快模型推理速度。

2.2 特征金字塔池化

引入空間金字塔池化模塊,將特征圖的局部與全局特征融合,豐富特征圖的表達能力。融合過程如圖4所示,原始圖像經過Darknet-53后得到13×13×256特征圖,將該特征圖輸入SPP模塊后,進行4個分支操作,從輸入直接到輸出,分別在3種大小的池化核進行下采樣,生成3個局部特征圖,再將4個特征圖進行張量拼接,得到13×13×1 024的特征圖,增加了特征圖的深度,豐富了交通標志的多尺度信息。

改進的S-YOLO網絡結構如圖5所示,Darknet-53網絡對輸入的圖像進行下采樣等操作,最終獲得3種尺寸特征圖,分別在3組特征圖的基礎上進行目標預測。網絡實現的具體過程如下:首先將13×13×1 024特征層進行5次卷積后得到第一個中間層,再將該層進行分類和回歸預測,得到預測層13×13×75;同時,將第一個中間層進行卷積和上采樣,與Darknet-53生成的26×26×512特征層進行Concat操作,即特征金字塔搭建過程,得到第二個中間層,再將該層進行分類和預測,得到預測層26×26×75;同理,將中間層進行卷積和上采樣,與Darknet-53生成的52×52×256特征層進行Concat操作,得到第三個中間層,再將該層進行分類和預測操作,最終得到預測層52×52×75。通過上述操作,得到3組不同尺度的預測層,能有效地提取到小目標的特征信息。

圖4 張量拼接Fig.4 Tensor splicing

圖5 S-YOLO網絡結構Fig.5 The network structure of S-YOLO

2.3 二分K-means聚類算法

采用二分K-means對數據集進行聚類,相較于K-means,該算法減少相似度計算量以提高執行速度,并克服局部收斂的不足。其距離度量公式為

d(box,centroid)=1-IoU(box,centroid)

(7)

式(7)中:box表示先驗框;centroid表示先驗框的中心,IoU為兩個先驗框的交集與并集的比。

圖6為使用二分K-means聚類得到先驗框個數K與IoU關系。從圖6可知,隨著K的增大,IoU值逐漸遞增,當K=9時,IoU增長趨于平穩,綜合交通標志檢測精度與速率,該點為最佳初始框框個數。最終得到的9個先驗框為(9,15)(4,21)(19,28)(24,36)(31,43)(39,52)(50,69)(67,89)(91,116),分別對應13×13、26×26、52×52這三種尺度特征層。

圖6 先驗框個數K與IoU關系Fig.6 The relationship between K and IoU

2.4 CIoU回歸損失函數

IoU作為評價模型性能的一個重要指標,通過計算預測框與真實框交并比的值來衡量邊界框的相似度。計算公式為

(8)

式(8)中:area(A)為預測框的面積;area(B)為真實框的面積。常見的計算IoU損失函數為

(9)

該損失函數反映出邊界框的重合程度且具有尺度不變性,但存在兩個缺陷:當預測框與真實框不相交時,如圖7所示,IoU=0,LIoU=1,此時LossIoU不可導,無法反映邊界框之間距離;當預測框與真實框的尺度相同且IoU也相同時,LossIoU無法區分兩者相交的情況。

圖7 預測框與真實框不相交Fig.7 Prediction box don’t intersect the ground-truth box

為彌補IoU損失函數的不足,采用CIoU作為目標框的坐標回歸損失,其計算公式為

(10)

(11)

(12)

圖8 CIoU實現圖Fig.8 CIoU implementation diagram

3 實驗與分析

精選部分CTSDB[16]數據集并網絡爬取百度圖庫,為了提高數據集的泛化性,對樣本進行旋轉、壓縮、添加噪聲等圖像增強方式,最終獲得數據集6 218張,訓練集與驗證集按照3∶1分配,選取數量最多的4類交通標志作為檢測對象,分別為限速(speedlimit)、禁止(prohibitory)、指示(mandatory)和行人(pedestriancrossing)。

3.1 實驗環境與配置參數

本實驗的軟硬件環境配置如表1所示。在網絡訓練階段,使用原始YOLOv3提供的參數作為初始化參數,選用遷移式學習方法,通過YOLOv3內置參數進行迭代調整,實驗參數如表2所示。

表1 實驗環境配置Table 1 Experimental environment configuration

表2 S-YOLO參數配置Table 2 S-YOLO parameter configuration

3.2 評價指標

為了對不同模型進行性能評估,采用平均準確率(mean average precision, mAP)、準確率P(precision)、召回率R(recall)、F1值及檢測速度每秒幀率(frame per sceond, FPS)作為衡量模型性能的指標,計算公式分別為

(13)

(14)

(15)

式中:TP為真正例;FP為假正例;FN假負例;m為類別;AP為類別平均精度。

3.3 實驗對比與分析

3.3.1 消融實驗

為驗證所提方法的有效性,在重制的CTSDB交通標志數據集上進行消融實驗,以mAP、R、FPS和F1四項作為算法的評價指標,通過替換或組合模塊來對模型進行訓練,再對訓練完成的權重文件進行測試,驗證各個模塊對網絡性能的提升,如表3所示。從表3可知,模型A相對Base模型,在不影響檢測精度前提下僅提升了識別速度,表明合并BN層到卷積層只提升了模型的識別速度,但不影響檢測精度;對比模型A與模型B、C、D可知,添加二分K-means、SPP、CIoU模塊相對模型性能都有一定的提升,在mAP上分別提升了0.93%、1.3%、2.21%,而識別速度幾乎一致;對比模型A與模型E、F、G可知,將每兩個模塊進行結合模型性依舊提升,在mAP上分別提升了2.18%、2.26%、3.51%;最后將四個模塊相結合得到S-YOLO模型,在mAP上提升了4.26%,速度提升了15.19%。消融結果可知,合并BN層到卷積層、添加二分K-means、SPP、CIoU模塊對于網絡的性能均有一定的提升。

表3 重制的CTSDB數據集上消融實驗結果Table 3 Ablation experimental results on the reproduced CTSDB dataset

3.3.2 其他算法比較

為更進一步驗證所提算法的檢測性能,將Tiny-YOLOv3、YOLOv3、SSD ReNet50[17]、Faster R-CNN[9]以及YOLOv4[18]與S-YOLO算法進行對比,以mAP和FPS作為評價指標,實驗結果如表4所示。數據表明,S-YOLO的mAP和FPS分別達到94.33%和42.41 f/s,相對Tiny-YOLOv3和YOLOv3,在mAP上分別提升了5.36%和4.26%,雖然FPS不及Tiny-YOLOv3,但其檢測精度明顯高于Tiny-YOLOv3;對比Faster R-CNN算法,雖然在精度上略低,但其檢測速率遠高于Faster R-CNN;SSD算法在mAP和FPS兩項指標上分別為89.7%和0.08 f/s,均不及S-YOLO算法;對于當前的YOLOv4算法,在mAP上高于本人提出的算法1.67%,但識別速度為26 f/s。

對兼顧精度與速度的檢測環境而言,所提的S-YOLO算法在精度和速度兼顧的條件下有更好的檢測性能,達到一個實時檢測效果。

表4 其他模型對比實驗Table 4 Comparative experiment of other models

3.3.3 權重測試

使用Loss-IoU和Loss-CIoU作為回歸損失訓練得到的權重文件,以IoU和CIoU作為評價度量進行比較,將閾值(threshold)設置為0.75,分別在IoU和CIoU下進行驗證,統計結果見表5,Promote為提升度。數據表明,Loss-CIoU在測試數據集AP值較Loss-IoU分別提高了7.80%,并且Loss-CIoU的平均IoU閾值(AP)較Loss-IoU提高了3.40%,表明采用Loss-CIoU作為損失函數的模型性能得到優化。

表5 不同損失函數性能比較Table 5 Performance comparison of different loss functions

3.4 檢測可視化

圖9 S-YOLO檢測效果Fig.9 S-YOLO detection visualization

圖9為S-YOLO在不同環境場景下對交通標志的檢測結果。由圖可知,在目標密集、雨天、暗光等復雜場景下,S-YOLO具有良好的識別效果,并能精準地檢測出相應的交通標志。

為進一步驗證所提模型的泛化性,將原始YOLOv3與改進的S-YOLO在TT100K交通標志數據集中進行對比實驗。如圖10所示,圖(a1)存在漏檢,未能識別出2個較小尺寸的交通標志,但圖(b1)能夠檢測出這2個較小的目標;圖(a2)未能識別1個較小尺寸目標,而圖(b2)正確檢測出所有目標。實驗表明,改進的S-YOLO能夠有效地降低目標檢測的漏檢率,在交通標志檢測上具有良好的泛化作用。

圖10 S-YOLO與YOLOv3對比實驗Fig.10 Comparative experiment of S-YOLO and YOLOv3

4 結論

針對原始YOLOv3算法在交通標志識別場景下存在精度低、速度慢問題,提出一種改進的S-YOLO目標檢測算法。首先將CBL組件中的BN層合并到卷積層來提高模型前向推理速度,然后引入SPP模塊來更有效獲取圖像特征,再使用二分K-means聚類算法確定適合交通標志的先驗框使模型的收斂性更好,最后引入CIoU回歸損失函數來提高模型檢測精度。實驗結果表明,改進的S-YOLO算法計算量少、精度高、泛化性強和實時性檢測,并且mAP與召回率分別達到了94.33%和94%,較原始YOLOv3提升了4.26%和5%,速度達到了42.41 f/s,較YOLOv3提升了15.19%,整體性能得到一定的提升。

同時,本文所提算法還有諸多方面有待改進,在識別小目標效果上還未達到預期的結果,檢測速度上也還有提升的空間。在實時檢測情景下,如何更進一步地提高模型的檢測精度,將是下一步的研究方向。

猜你喜歡
特征實驗檢測
記一次有趣的實驗
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
做個怪怪長實驗
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 高清色本在线www| 亚洲精品少妇熟女| 2021国产v亚洲v天堂无码| 亚洲无码高清一区二区| 在线国产91| 欧美中文字幕在线视频| 国产黄网永久免费| 在线国产欧美| 日韩成人在线视频| 亚洲欧美另类日本| 国产麻豆精品在线观看| 这里只有精品在线播放| 韩国自拍偷自拍亚洲精品| 国产噜噜噜视频在线观看| 国产精品美女免费视频大全| 日韩无码视频播放| 97精品伊人久久大香线蕉| 日韩无码一二三区| 亚洲欧美日韩成人在线| 久久精品丝袜| 国产91在线|日本| 国产亚洲视频中文字幕视频| 久草中文网| 亚洲av日韩av制服丝袜| 国产99精品视频| 黄色片中文字幕| 美女内射视频WWW网站午夜 | 国产精品亚洲天堂| 国产精品自拍露脸视频| 国产精品蜜芽在线观看| 久久综合丝袜日本网| 色综合久久88| 日韩天堂在线观看| 久久夜色撩人精品国产| 久青草免费在线视频| 强乱中文字幕在线播放不卡| 天堂网亚洲系列亚洲系列| 91国内视频在线观看| a免费毛片在线播放| 日本午夜三级| 男人的天堂久久精品激情| 日韩黄色在线| av午夜福利一片免费看| 色哟哟国产精品| 色偷偷一区二区三区| 欧美黑人欧美精品刺激| 一本大道东京热无码av| 久久99热66这里只有精品一| 国产黑人在线| 亚洲精品视频免费看| 国产成人三级| 国产青青草视频| 欧美国产在线看| 在线不卡免费视频| 亚洲色图欧美| 91蝌蚪视频在线观看| 欧美视频在线播放观看免费福利资源| 国产亚洲精品自在久久不卡| 欧美福利在线观看| 综合色88| 日韩欧美91| 好吊妞欧美视频免费| 成人日韩欧美| 欧美日在线观看| 日韩小视频在线播放| 欧美色综合网站| 日本道中文字幕久久一区| 中文纯内无码H| 噜噜噜久久| a级毛片网| AV片亚洲国产男人的天堂| 亚洲午夜福利精品无码| 精品国产成人高清在线| 婷婷色婷婷| 久久精品人人做人人综合试看| 国产在线日本| 99在线视频免费| 成人免费一区二区三区| 欧美精品在线看| 99在线视频网站| 国产交换配偶在线视频| 色哟哟国产精品|