李文舉,張 干,崔 柳,儲(chǔ)王慧
(上海應(yīng)用技術(shù)大學(xué) 計(jì)算機(jī)科學(xué)與信息工程學(xué)院,上海 201418)
交通標(biāo)志識(shí)別技術(shù)是視覺(jué)導(dǎo)航和計(jì)算機(jī)視覺(jué)在智能駕駛中應(yīng)用的研究熱點(diǎn)。道路交通標(biāo)志識(shí)別任務(wù)中,微小的錯(cuò)誤可能會(huì)帶來(lái)災(zāi)難性的后果[1]。在多種約束條件下,需要通過(guò)復(fù)雜的方法以實(shí)現(xiàn)高精度的實(shí)時(shí)檢測(cè)。由于遮擋、目標(biāo)小以及背景復(fù)雜等問(wèn)題,使交通標(biāo)志牌比一般目標(biāo)更難檢測(cè),并且實(shí)時(shí)性也是實(shí)際應(yīng)用中的一大挑戰(zhàn)[2]。由此可以看出交通標(biāo)志的快速檢測(cè)與精確識(shí)別對(duì)于改善輔助駕駛系統(tǒng)的安全性和可靠性具有重要意義。
以往在交通標(biāo)志識(shí)別任務(wù)中通常使用基于顏色、形狀和機(jī)器學(xué)習(xí)的方法進(jìn)行檢測(cè)和分類。文獻(xiàn)[3]中使用基于AdaBoost 二進(jìn)制分類器和循環(huán)霍夫變換的顏色分割對(duì)交通標(biāo)志進(jìn)行檢測(cè),該方法準(zhǔn)確率較高并擁有較好的魯棒性;文獻(xiàn)[4]中根據(jù)交通限速標(biāo)志的顏色和形狀特征,通過(guò)特征匹配有效對(duì)自然場(chǎng)景中的限速標(biāo)志進(jìn)行檢測(cè)與識(shí)別。隨著卷積神經(jīng)網(wǎng)絡(luò)的快速發(fā)展,近幾年深度學(xué)習(xí)被廣泛應(yīng)用于道路交通標(biāo)志識(shí)別任務(wù)中。文獻(xiàn)[5]中采用基于改進(jìn)膠囊網(wǎng)絡(luò)(Capsule Network,CapsNet)的交通標(biāo)志分類模型,充分保留了圖像的空間特征;文獻(xiàn)[6]中通過(guò)對(duì)檢測(cè)分支特征在通道和空間2 個(gè)維度進(jìn)行重新標(biāo)定,使網(wǎng)絡(luò)聚焦和增強(qiáng)有效特征;文獻(xiàn)[7]中設(shè)計(jì)了感興趣區(qū)域提取方法,依靠神經(jīng)元來(lái)表示動(dòng)態(tài)路由、路徑姿態(tài)和方向等目標(biāo)參數(shù),有效地從不同角度或方向獲取交通標(biāo)志信息。上述方法在改善交通標(biāo)志識(shí)別性能的同時(shí)仍然存在各自的局限性。其中:文獻(xiàn)[4]方法只針對(duì)限速標(biāo)志進(jìn)行檢測(cè)與識(shí)別,實(shí)用性有待提升;文獻(xiàn)[3-7]中未能解決檢測(cè)精度與檢測(cè)速度之間的性能不均衡問(wèn)題,無(wú)法滿足實(shí)時(shí)性。
2020 年,精度和速度都非常優(yōu)秀的單階段網(wǎng)絡(luò)模型YOLOv5 被提出?;谧钚碌腨OLOv5 網(wǎng)絡(luò),本文設(shè)計(jì)并改進(jìn)了一種基于坐標(biāo)注意力(Coordinate Attention,CA)的輕量級(jí)交通標(biāo)志識(shí)別模型。1)在主干網(wǎng)絡(luò)[8]中加入坐標(biāo)注意力(CA)機(jī)制[9],將位置信息嵌入通道注意力中,使網(wǎng)絡(luò)能夠獲得更廣泛的區(qū)域信息,盡可能避免了參數(shù)量和計(jì)算量的增加。2)采用具有跨層連接的雙向特征金字塔網(wǎng)絡(luò)(Bidirectional Feature Pyramid Network,BiFPN)[10]代替路徑聚合網(wǎng)絡(luò)(Path Aggregation Network,PANet)[11],提高網(wǎng)絡(luò)的特征提取能力,從而獲得更多道路交通標(biāo)志的通道特征,同時(shí)刪除只有一條輸入邊的節(jié)點(diǎn)并取消加權(quán)操作,極大地降低了計(jì)算成本。3)對(duì)CIoU(Complete Intersection over Union)[12]損失函數(shù)進(jìn)行改進(jìn),將中間點(diǎn)之間的歐氏距離進(jìn)行開(kāi)平方運(yùn)算,降低中目標(biāo)和大目標(biāo)的損失權(quán)重。在TT100K 數(shù)據(jù)集[13]上的實(shí)驗(yàn)結(jié)果表明,改進(jìn)網(wǎng)絡(luò)對(duì)受遮擋以及小尺寸的道路交通標(biāo)志檢測(cè)效果良好,并滿足實(shí)時(shí)性的要求。
注意力機(jī)制起源于對(duì)人類視覺(jué)機(jī)制的研究,并能夠從這一角度進(jìn)行直觀解釋。視覺(jué)系統(tǒng)傾向于關(guān)注圖像中有利于判斷的部分信息,并忽略掉不相關(guān)的信息[14]。注意力機(jī)制作為提高神經(jīng)網(wǎng)絡(luò)特征提取能力的一種有效方法,已經(jīng)成為該領(lǐng)域的一個(gè)重要概念,目前在自然語(yǔ)言處理、統(tǒng)計(jì)學(xué)習(xí)、語(yǔ)音和計(jì)算機(jī)視覺(jué)等領(lǐng)域有著大量的應(yīng)用。
現(xiàn)有研究表明,將注意力機(jī)制融入卷積神經(jīng)網(wǎng)絡(luò)模型中可以帶來(lái)比較顯著的性能提升,但傳統(tǒng)的注意力機(jī)制應(yīng)用于輕量級(jí)網(wǎng)絡(luò)的效果明顯落后于深度網(wǎng)絡(luò),由此帶來(lái)的計(jì)算開(kāi)銷對(duì)于輕量級(jí)網(wǎng)絡(luò)而言也是無(wú)法承受的。目前比較流行的注意力機(jī)制包括SE(Squeeze and Excitation)[15]、BAM(Bottlenect Attention Module)和CBAM(Convolutional Block Attention Module)[16]。SE 只考慮內(nèi)部通道信息而忽略了對(duì)視覺(jué)任務(wù)非常重要的位置信息和空間結(jié)構(gòu),這些位置信息對(duì)生成空間選擇性注意力圖至關(guān)重要;BAM 和CBAM 通過(guò)在通道上進(jìn)行全局池化來(lái)引入局部的位置信息,但是無(wú)法捕獲特征圖上的長(zhǎng)程依賴。
坐標(biāo)注意力作為一種新的高效注意力機(jī)制,第一步將位置信息嵌入通道注意力中,使得輕量級(jí)網(wǎng)絡(luò)能夠獲得更大區(qū)域的信息,減少了注意力模塊的參數(shù)量同時(shí)避免了過(guò)多的計(jì)算開(kāi)銷。為了避免二維全局池化造成位置信息的丟失,將二維全局池化分解為兩個(gè)并行的一維特征編碼,分別沿著兩個(gè)空間方向進(jìn)行特征聚合,高效地將空間坐標(biāo)信息整合到注意力圖中。在坐標(biāo)信息嵌入過(guò)程中,對(duì)X方向的輸入采用尺寸為(H,1)和(1,W)的池化核沿著水平坐標(biāo)方向和垂直坐標(biāo)方向?qū)γ總€(gè)通道進(jìn)行編碼,H、W分別為當(dāng)前注意力模塊對(duì)應(yīng)的輸入特征圖的高度和寬度,數(shù)值會(huì)隨著網(wǎng)絡(luò)的下采樣而改變。高度為h的第c個(gè)通道的輸出如式(1)所示:
類似地,寬度為w的第c個(gè)通道的輸出如式(2)所示:
利用兩個(gè)一維全局池化操作將水平和垂直方向的輸入特征分別聚合為兩個(gè)獨(dú)立的方向感知特征圖并分別編碼為兩個(gè)注意力圖,每個(gè)注意力圖都包含了輸入特征圖沿著一個(gè)空間方向的遠(yuǎn)距離依存關(guān)系,并保存沿著另一個(gè)空間方向的精確位置信息,使得網(wǎng)絡(luò)能夠更準(zhǔn)確地獲取感興趣區(qū)域。
第二步,為了更好地利用坐標(biāo)信息嵌入產(chǎn)生的具有全局感受野并擁有精確位置的信息,在遵循如下3 個(gè)標(biāo)準(zhǔn)的基礎(chǔ)上設(shè)計(jì)了坐標(biāo)注意力生成操作。
1)在移動(dòng)環(huán)境中使用時(shí)應(yīng)該盡可能簡(jiǎn)單高效;
2)能夠充分利用獲取到的位置信息,精確定位感興趣區(qū)域;
3)能夠有效地捕捉通道與通道之間的關(guān)系。
將X方向與Y方向平均池化的輸出張量進(jìn)行拼接,通過(guò)一個(gè)共享的1×1 卷積操作進(jìn)行F1變換,如式(3)所示,生成的是空間信息在水平方向和豎直方向的中間特征圖,r表示下采樣的步長(zhǎng),和SE 模塊一樣用來(lái)控制模塊的大小。
經(jīng)歸一化和非線性處理后,沿空間維度將f切分為兩個(gè)獨(dú)立的張量,之后利用兩個(gè)1×1 的卷積Fh和Fw將特征圖f h和f w分別變換到和X輸入相同的通道數(shù),如式(4)和式(5)所示:
其中:σ代表sigmoid 激活函數(shù),采用這種方式來(lái)降低模型的復(fù)雜度并減少計(jì)算開(kāi)銷。
最后對(duì)得到的結(jié)果進(jìn)行拓展,采用矩陣相乘的方法求得最終的注意力權(quán)重矩陣,坐標(biāo)注意力模塊的最終輸出如式(6)所示:
坐標(biāo)注意力模塊結(jié)構(gòu)如圖1 所示。
圖1 坐標(biāo)注意力模塊結(jié)構(gòu)Fig.1 Structure of coordinate attention module
傳統(tǒng)的特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network,F(xiàn)PN)[17]可將具有高分辨率的淺層特征圖和具有豐富語(yǔ)義信息的深層特征圖進(jìn)行融合,由于受到單向信息流的限制,導(dǎo)致在傳遞過(guò)程中丟失掉較多的細(xì)節(jié)信息,如圖2(a)所示;YOLOv5 在FPN 的基礎(chǔ)上進(jìn)行改進(jìn),通過(guò)增加一條自下而上通道來(lái)縮短信息路徑以達(dá)到減少底層信息丟失的目的,同時(shí)增加了參數(shù)和計(jì)算量,如圖2(b)所示;而雙向特征金字塔網(wǎng)絡(luò)是一個(gè)更加高效的特征融合網(wǎng)絡(luò)。首先,刪除只有一條輸入的節(jié)點(diǎn),如果一個(gè)節(jié)點(diǎn)只有一條輸入而沒(méi)有特征融合,那么它對(duì)以融合不同特征為目標(biāo)的特征網(wǎng)絡(luò)的貢獻(xiàn)就會(huì)更??;如果有超過(guò)兩個(gè)的輸出特征圖在同一層,則增加跨層連接,即添加一條額外的路徑以便在不增加成本的情況下融合更多的特征,如圖2(c)所示。
圖2 三種不同的特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Structures of three different feature pyramid networks
在以往的特征融合方式中,往往是將所有輸入特征直接相加或拼接。但不同階段的輸入特征會(huì)對(duì)輸出特征產(chǎn)生不同程度的影響,因此為每個(gè)輸入特征引入了一個(gè)可學(xué)習(xí)的權(quán)值,使網(wǎng)絡(luò)自行學(xué)習(xí)每個(gè)輸入特征的重要性來(lái)實(shí)現(xiàn)加權(quán)特征融合。計(jì)算方法如式(7)所示:
其中:Ti是可學(xué)習(xí)的權(quán)重,可以為標(biāo)量、向量或多維張量;ε的作用是避免數(shù)值不穩(wěn)定。實(shí)驗(yàn)結(jié)果表明這種融合方法可以提升網(wǎng)絡(luò)的檢測(cè)精度,但由此帶來(lái)的龐大計(jì)算量是輕量級(jí)網(wǎng)絡(luò)無(wú)法承受的,因此對(duì)于輕量級(jí)網(wǎng)絡(luò)而言,跨層連接的思想更加實(shí)用。
改進(jìn)的YOLOv5 網(wǎng)絡(luò)由主干網(wǎng)絡(luò)和頭部組成。主干網(wǎng)絡(luò)包括跨階段局部網(wǎng)絡(luò)模塊、坐標(biāo)注意力模塊和快速空間池化金字塔(Spatial Pyramid Pooling Fast,SPPF)模塊,頭部包括特征融合網(wǎng)絡(luò)和檢測(cè)模塊。改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示。
圖3 改進(jìn)的YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Structure of improved YOLOv5 network
刪除原有的Focus 模塊,使用一個(gè)卷積操作來(lái)代替。Focus 模塊既保證在下采樣的過(guò)程中沒(méi)有信息丟失,又變相增加了網(wǎng)絡(luò)的批處理大小,但在淺層網(wǎng)絡(luò)中,保留上述信息對(duì)網(wǎng)絡(luò)性能并沒(méi)有明顯增益,更多的是為了減少浮點(diǎn)數(shù)和提高運(yùn)行速度,因此采用一個(gè)大的卷積核Conv(kernel_size=6,stride=2,padding=2)對(duì)其進(jìn)行替換,進(jìn)一步壓縮模塊大小,獲得更好的性能。
空間金字塔池化(Spatial Pyramid Pooling,SPP)[18]包括四條路徑,殘差連接、k=5 的二維最大池化、k=9 的二維最大池化和k=13 的二維最大池化,如圖4(a)所示。為了提高模塊的運(yùn)行速度,將其替換為快速空間池化金字塔模塊,僅使用池化核為5(k=5)的二維最大池化,采用并行殘差結(jié)構(gòu),在減少計(jì)算量的同時(shí)達(dá)到與原模塊相同的效果,如圖4(b)所示。其中,路徑①與k=5 時(shí)池化效果相同,路徑②與k=9 時(shí)池化效果相同,路徑③與k=13 時(shí)池化效果相同。
圖4 兩種空間金字塔池化對(duì)比Fig.4 Comparison of two spatial pyramids pooling
空間池化金字塔計(jì)算量如式(8)所示:
快速空間池化金字塔計(jì)算量如式(9)所示:
可以看出,改進(jìn)后的空間池化金字塔在池化過(guò)程中的計(jì)算量比原來(lái)減少了約72.7%,從而加快了模塊的運(yùn)行速度。將快速空間池化金字塔模塊設(shè)置在主干網(wǎng)絡(luò)的最后一層,并為原先最后一層的跨階段局部網(wǎng)絡(luò)模塊添加殘差結(jié)構(gòu)。
YOLOv5n 網(wǎng)絡(luò)作為一種輕量級(jí)網(wǎng)絡(luò)模型,與YOLOv5s、YOLOv5m、YOLOv5l 和YOLOv5x 相比網(wǎng)絡(luò)層數(shù)顯著減少,在訓(xùn)練和檢測(cè)過(guò)程中只需要占用較少的內(nèi)存,正因如此,可以在不改變顯存大小的情況下將圖片輸入分辨率從原先的640×640 增加為1 280×1 280。此外,在主干網(wǎng)絡(luò)中增加一次下采樣,通過(guò)這種方式將檢測(cè)尺度增加到了四種。
在YOLOv5 中,損失函數(shù)由三部分組成,分別為分類損失、定位損失和置信度損失。本文對(duì)CIoU Loss 進(jìn)行改進(jìn),實(shí)現(xiàn)了在交通標(biāo)志識(shí)別任務(wù)中對(duì)預(yù)測(cè)框與真實(shí)框之間更精確的損失計(jì)算。
交并比(Intersection over Union,IoU)[19]代表預(yù)測(cè)框與真實(shí)框交集與并集的比值,用于衡量預(yù)測(cè)框的準(zhǔn)確度,如式(10)所示:
其中:B和Bgt分別代表預(yù)測(cè)框和真實(shí)框。但采用IoU 作為性能度量時(shí),如果兩個(gè)物體不重疊,IoU 值和梯度都為0,無(wú)法進(jìn)行優(yōu)化。
GIoU(Generalized Intersection over Union)[20]首先計(jì)算預(yù)測(cè)框與真實(shí)框的最小閉包區(qū)域面積E,之后計(jì)算閉包區(qū)域中不屬于兩個(gè)框的部分占閉包區(qū)域的比例,最后用IoU 減去這個(gè)比例得到GIoU,如式(11)所示:
其中:A代表預(yù)測(cè)框,B代表真實(shí)框,均為張量。
GIoU 與IoU 不同,不僅關(guān)注預(yù)測(cè)框與真實(shí)框的重疊區(qū)域,還關(guān)注非重合區(qū)域,能夠更好地反映兩者的重合度;但當(dāng)檢測(cè)框和真實(shí)框之間出現(xiàn)包含的現(xiàn)象時(shí)會(huì)存在IoU相同的問(wèn)題。
DIoU(Distance Intersection over Union)[12]計(jì)算的不是框之間的交并比,而是每個(gè)檢測(cè)框之間的歐氏距離ρ。加入框與框中心點(diǎn)之間的距離信息,有效提升了模型訓(xùn)練效果。相較于GIoU,DIoU 不僅收斂速度更快,準(zhǔn)確率也更高,如式(12)所示:
其中:b代表預(yù)測(cè)框的中心坐標(biāo);bgt代表真實(shí)目標(biāo)邊界框中心的參數(shù);ρ2代表兩個(gè)中心點(diǎn)距離的平方;d代表兩個(gè)矩形的最小外接矩形對(duì)角線長(zhǎng)度。
CIoU 在DIoU 的基礎(chǔ)上增加了檢測(cè)框尺度的損失以及長(zhǎng)和寬的損失,使預(yù)測(cè)框更加符合真實(shí)框,如式(13)所示:
在懲罰項(xiàng)中加入了αv,其中α為權(quán)重函數(shù),而v用來(lái)比較兩個(gè)框?qū)捀弑鹊奈呛隙龋x為:
本文在CIoU 的基礎(chǔ)上進(jìn)行改進(jìn):將分子上的歐氏距離進(jìn)行開(kāi)平方運(yùn)算。目標(biāo)越大時(shí),預(yù)測(cè)框和真實(shí)框的中心點(diǎn)距離通常也會(huì)越大,那么在計(jì)算損失時(shí)就會(huì)明顯高于小目標(biāo),不利于小目標(biāo)的損失計(jì)算。在中國(guó)交通標(biāo)志TT100K 數(shù)據(jù)集中,存在大量的小目標(biāo),因此,通過(guò)開(kāi)平方降低大中目標(biāo)的損失權(quán)重,更好地計(jì)算損失,改進(jìn)后的損失函數(shù)如式(15)所示:
TT100K 中國(guó)交通標(biāo)志數(shù)據(jù)集[13]由清華大學(xué)和騰訊的聯(lián)合實(shí)驗(yàn)室所整理和公開(kāi),在中國(guó)的5 個(gè)不同城市中選擇了10個(gè)區(qū)域,從騰訊數(shù)據(jù)中心下載了10 萬(wàn)張全景圖,通過(guò)水平滑動(dòng)將每張圖片分割成2 048×2 048 的大小,之后對(duì)圖像中的交通標(biāo)志進(jìn)行了邊界框標(biāo)注、類別標(biāo)注以及像素級(jí)的標(biāo)注。
TT100K 數(shù)據(jù)集包含的151個(gè)類別當(dāng)中,只有45個(gè)類別的實(shí)例數(shù)超過(guò)50,并且有接近一半的實(shí)例數(shù)為個(gè)位的類別,這造成了嚴(yán)重的數(shù)據(jù)分布不均衡,直接訓(xùn)練會(huì)產(chǎn)生過(guò)擬合現(xiàn)象。因此,對(duì)數(shù)據(jù)集進(jìn)行處理,僅保留實(shí)例數(shù)超過(guò)50的45個(gè)類別[21]。
處理后的TT100K 數(shù)據(jù)集,共9 170 張圖片,約占10 GB內(nèi)存,僅使用CPU 無(wú)法通過(guò)深度學(xué)習(xí)的方式擬合神經(jīng)網(wǎng)絡(luò)模型。因此,在GPU 上對(duì)改進(jìn)網(wǎng)絡(luò)進(jìn)行訓(xùn)練和測(cè)試。
本文實(shí)驗(yàn)均在Windows 10 操作系統(tǒng)下進(jìn)行,GPU 型號(hào)為2080TI,內(nèi)存為16 GB×2,CUDA 版本為10.2,Cudnn 版本為7.6.5,OpenCV 版本為3.4.0。
為了驗(yàn)證改進(jìn)方法的有效性和泛化性,分別對(duì)五種尺度的YOLOv5-P6 模型進(jìn)行了消融實(shí)驗(yàn)。
實(shí)驗(yàn)1 是TT100K 數(shù)據(jù)集在傳統(tǒng)的YOLOv5 模型上的檢測(cè)結(jié)果。分析可知,隨著網(wǎng)絡(luò)深度的減少,YOLOv5 模型的檢測(cè)速度逐漸加快但識(shí)別精度逐漸降低,YOLOv5x 模型比YOLOv5n 的精度高9.66 個(gè)百分點(diǎn),但YOLOv5n 的檢測(cè)速度是YOLOv5x 的7.47 倍,模型大小僅3.85 MB,為YOLOv5x 模型大小的2.3%,因具有模型小、參數(shù)量低等特點(diǎn),可以在不改變?cè)O(shè)備顯存的情況下將圖片輸入分辨率增加為1 280×1 280,檢測(cè)精度為86.81%,比精度最高的YOLOv5x 高1.51個(gè)百分點(diǎn),檢測(cè)速度是它的3.5 倍。實(shí)驗(yàn)結(jié)果如表1 所示,部分實(shí)驗(yàn)數(shù)據(jù)來(lái)源于文獻(xiàn)[22]。
表1 傳統(tǒng)YOLOv5模型的訓(xùn)練結(jié)果對(duì)比Tab.1 Training results comparison of traditional YOLOv5 models
實(shí)驗(yàn)2 為不同深度的YOLOv5-P6 模型的檢測(cè)結(jié)果對(duì)比,和實(shí)驗(yàn)1 相同,網(wǎng)絡(luò)深度的減少伴隨著檢測(cè)速度的提升和識(shí)別精度的降低。對(duì)比實(shí)驗(yàn)1和實(shí)驗(yàn)2可以看出,擁有四種尺度檢測(cè)頭的YOLOv5-P6 模型的識(shí)別效果優(yōu)于對(duì)應(yīng)的傳統(tǒng)模型,精度分別提高了5.93、1.98、3.98、4.23 和2.32 個(gè)百分點(diǎn),隨著參數(shù)量的上升,模型大小分別增加了2.66 MB、10.3 MB、27.7 MB、65.1 MB 和103 MB,檢測(cè)速度分別降低了70.18 FPS、41.7 FPS、17.09 FPS、7.73 FPS 和4.32 FPS。將YOLOv5n-P6 的輸入分辨率增加到1 280×1 280,實(shí)驗(yàn)結(jié)果表明,與YOLOv5x-P6 模型相比,雖然模型大小僅為其2.7%,但檢測(cè)精度相當(dāng),并且檢測(cè)速度達(dá)到了它的3.7倍。由此可以看出,YOLOv5n-P6模型在檢測(cè)速度與識(shí)別精度兩方面的表現(xiàn)更加均衡。實(shí)驗(yàn)結(jié)果如表2 所示。
表2 不同深度的YOLOv5-P6模型的訓(xùn)練結(jié)果對(duì)比Tab.2 Training results comparison of YOLOv5-P6 models with different depths
實(shí)驗(yàn)3 為不同深度的YOLOv5-P6 模型分別結(jié)合坐標(biāo)注意力模塊的檢測(cè)結(jié)果對(duì)比??梢钥闯?,YOLOv5n-P6 和YOLOv5s-P6 在主干網(wǎng)絡(luò)中融入坐標(biāo)注意力機(jī)制后,精度分別提高了3.13 和1.18 個(gè)百分點(diǎn),召回率分別提高了1.35 和0.12 個(gè)百分點(diǎn),速度損失僅為30.59 FPS 和9.09 FPS。而其他三種模型結(jié)合坐標(biāo)注意力機(jī)制后,精度和召回率產(chǎn)生了不同程度的下降,并且網(wǎng)絡(luò)越深,精度下降越多。因?yàn)殡S著網(wǎng)絡(luò)深度的增加,模型復(fù)雜度和參數(shù)量逐漸上升,收斂速度逐漸下降,并且會(huì)影響梯度傳播的效率,這些情況都會(huì)導(dǎo)致注意力模塊的參數(shù)在訓(xùn)練時(shí)難以擬合出好的結(jié)果。同時(shí),1 280×1 280 輸入分辨率的YOLOv5n-P6 結(jié)合坐標(biāo)注意力,精度達(dá)到89.87%,召回率為85.35%,幀處理速率為144.93 FPS,模型大小僅為7.22 MB。綜上,坐標(biāo)注意力是針對(duì)輕量級(jí)網(wǎng)絡(luò)模型的一種有效的注意力機(jī)制,對(duì)YOLOv5n-P6模型的改進(jìn)效果尤為突出。實(shí)驗(yàn)結(jié)果如表3所示。
表3 不同深度的YOLOv5-P6模型結(jié)合坐標(biāo)注意力的訓(xùn)練結(jié)果對(duì)比Tab.3 Training results comparison of YOLOv5-P6 models with different depths combined with coordinate attention
實(shí)驗(yàn)4 中的數(shù)據(jù)表明,本文提出的輕量級(jí)交通標(biāo)志識(shí)別模型在精度、召回率、幀處理速率等指標(biāo)上遠(yuǎn)遠(yuǎn)優(yōu)于大部分最新的交通標(biāo)志識(shí)別模型,在識(shí)別精度與檢測(cè)速度兩方面更加均衡。將輸入分辨率固定為1 280×1 280,在YOLOv5n-P6的主干網(wǎng)絡(luò)中融入坐標(biāo)注意力的基礎(chǔ)上,在特征融合網(wǎng)絡(luò)中加入跨層連接來(lái)融合更多的特征,檢測(cè)精度提高了1.18 個(gè)百分點(diǎn)。在此基礎(chǔ)上引入改進(jìn)的CIoU 損失函數(shù),從圖5 中可以看出,與傳統(tǒng)的CIoU 相比,改進(jìn)算法的收斂更快,效果更好。最終本文模型的檢測(cè)精度達(dá)到91.5%,召回率為86.64%,與傳統(tǒng)的YOLOv5n 模型相比分別提高了20.96%和11.62%,對(duì)圖像中的交通標(biāo)志具有更好的識(shí)別率,幀處理速率為140.84 FPS,滿足實(shí)時(shí)檢測(cè)的要求。圖6 中給出了訓(xùn)練過(guò)程中精度與召回率的演化圖。模型大小僅為7.32 MB,部署在手機(jī)等硬件設(shè)備上時(shí)能夠避免內(nèi)存溢出而導(dǎo)致的無(wú)法運(yùn)行等情況。實(shí)驗(yàn)結(jié)果如表4 所示。
圖5 改進(jìn)的損失函數(shù)與CIoU的訓(xùn)練效果對(duì)比Fig.5 Comparison of training effect between improved loss function and CIoU
圖6 本文模型的訓(xùn)練過(guò)程演化圖Fig.6 Training process evolution diagram of the proposed model
表4 本文模型與其他最新模型的訓(xùn)練結(jié)果對(duì)比Tab.4 Comparison of training results between the proposed model and other latest models
選擇受遮擋和小尺寸的道路交通標(biāo)志實(shí)例,利用YOLOv5n-P6、YOLOv5n-P6 結(jié)合坐標(biāo)注意力機(jī)制和最終模型進(jìn)行檢測(cè)。
根據(jù)圖7(a)檢測(cè)結(jié)果可以看出,YOLOv5n-P6 模型未能在真實(shí)場(chǎng)景下檢測(cè)出小尺寸的交通標(biāo)志;結(jié)合注意力機(jī)制后,能夠成功檢測(cè)到目標(biāo),但置信度得分不高,僅為0.54;而本文模型不僅能夠準(zhǔn)確地框出目標(biāo)位置,置信度得分也達(dá)到了0.84,顯著高于上述模型。
圖7 不同模型的檢測(cè)效果對(duì)比Fig.7 Comparison of detection effects of different models
在受遮擋的情況下,本文模型檢測(cè)出的交通標(biāo)志置信度最高,分別達(dá)到了0.81 和0.92,相較于其他兩種模型分別提高了0.39、0.15 和0.14、0.07,如圖7(b)(c)所示。
與前兩種模型相比,改進(jìn)模型不僅準(zhǔn)確識(shí)別出了被遮擋的目標(biāo),并且在回歸任務(wù)中完整地定位到了圖像中的道路交通標(biāo)志。綜上,本文改進(jìn)模型與傳統(tǒng)模型相比能夠更加精確地檢測(cè)和識(shí)別出受遮擋的目標(biāo)、小目標(biāo)以及受遮擋的小目標(biāo),性能表現(xiàn)良好。
最后,本文還展示了一些檢測(cè)錯(cuò)誤的示例,在圖8 中使用方框標(biāo)出??梢钥闯觯瑢?dǎo)致漏檢和誤檢主要原因包括:1)拍攝過(guò)程中產(chǎn)生畸變、背光以及角度過(guò)大等現(xiàn)象,2)關(guān)鍵信息被遮擋,3)相似度較高的小目標(biāo)。以上幾種情況,都會(huì)導(dǎo)致無(wú)法獲取到檢測(cè)過(guò)程中需要的關(guān)鍵信息,從而使得檢測(cè)效果不佳。
圖8 一些檢測(cè)錯(cuò)誤的示例Fig.8 Some examples of detection error
本文提出了檢測(cè)速度與識(shí)別精度更加均衡的基于坐標(biāo)注意力的輕量級(jí)交通標(biāo)志識(shí)別模型,在YOLOv5n-P6 模型的主干網(wǎng)絡(luò)中融入坐標(biāo)注意力模塊,通過(guò)將位置信息嵌入通道注意力中來(lái)獲取特征圖上的遠(yuǎn)距離依賴關(guān)系,更準(zhǔn)確地獲取感興趣區(qū)域;在特征融合階段,采用加權(quán)雙向特征金字塔中跨層連接的思想,將不同階段的特征信息融合在一起,增強(qiáng)網(wǎng)絡(luò)的特征提取能力,提高對(duì)遮擋目標(biāo)的識(shí)別效果;最后對(duì)CIoU 損失函數(shù)進(jìn)行優(yōu)化,降低大目標(biāo)的損失權(quán)重,緩解由樣本尺寸差異造成的損失誤差,改善模型對(duì)小目標(biāo)的檢測(cè)性能。實(shí)驗(yàn)結(jié)果表明,與基礎(chǔ)模型相比,本文提出的模型在保持極高的檢測(cè)速度同時(shí)有效提升了對(duì)道路交通標(biāo)志的識(shí)別精度。下一步將對(duì)模型的樣本匹配策略進(jìn)行優(yōu)化,以提高模型對(duì)真實(shí)場(chǎng)景中道路交通標(biāo)志的定位精度和召回率。