姚宇捷,彭育輝,陳澤輝,何維堃,吳 慶,黃 煒,陳文強
(1.福州大學機械工程及自動化學院,福州 350116;2.福建漢特云智能科技有限公司,福州 350028)
基于計算機視覺的目標檢測是通過對輸入的圖像信息進行解碼分析,獲得圖像中目標對象的正確類別和準確位置,在商用領域和軍用領域均有巨大應用價值。
傳統目標檢測算法存在運算量大、實時性差等問題[1-2],基于深度學習的目標檢測算法正逐步成為計算機視覺領域的主流技術路線。深度學習目標檢測算法根據是否提前生成候選框可分為Two-stage和One-stage。前者以R-CNN[3]為代表,由于算法本身會產生過多的候選框,導致運算量過大,無法滿足實時性要求;后者則實現了端到端的網絡訓練,大幅減少了運算量,提高了網絡的實時性,如YOLO 系列[4-6]、SSD[7]、MobileNet[8-10]算法等。
RGB 圖像作為目標檢測的輸入數據,其自身的特性之一就是易受到光照的影響,為此Ren 等[11]提出了一種新的單級端到端可訓練的目標檢測網絡,通過在多尺度特征圖上引入遞歸滾動卷積(RRC)架構來構建“深入上下文”的對象分類器和包圍盒回歸器來降低光照影響;Zhao 等[12]提出特征金字塔增強策略(FPES)來增加網絡感受野,并為對象檢測模塊(ODM)階段提出了自適應閾值獲取方法以提高模型精度;Zhu 等[13]采用殘差特征增強的方法來增強頸部卷積層的特征提取,增強的PANet[14]用于改進特征融合,加強了特征圖的表示能力。上述算法均無法回避RGB 圖像自身的固有缺陷,即對光照敏感度過高問題。
由于HSV 圖像具有較好的抗光照能力,以及YOLO 算法在目標檢測中的優越性,本文中提出一種適用于YOLO 系列(YOLOV3、V4、V5等)的改進算法。鑒于YOLOV4[15]網絡相較于其他YOLO 網絡在復雜環境下檢測性能突出,因此以YOLOV4 網絡為基礎,從HSV 圖像分離出抗光照能力最強的S通道,并與RGB 圖像進行融合,使輸入網絡中的圖像數據既保留重要的色彩信息又同時具備抗光照能力;同時對YOLOV4 的主干網絡和損失函數進行優化,以達到提高檢測精度并滿足實時性的預期目標。
RGB 圖像將R(red)、G(green)、B(blue)3個通道的變化和亮度相疊加混合,構成人類視覺所能感知的顏色信息。RGB 3 個通道的分量與亮度緊密相聯,當亮度發生變化后,3 個通道的分量也會隨之發生改變,從而導致整體的顏色信息發生改變。這一特性導致RGB 圖像很易受到光照影響,即對亮度的敏感度過高。
為解決光照帶來的影響,方式之一是采用HSV顏色空間。構成HSV 模型的主要參數有:色調(Hue)、飽和度(Saturation)、明度(Value)。色調H是將所有的顏色顯示轉化為0°~360°之間,不同于RGB需要三通道的分量相互配合,H通道只須選擇相應的角度即可;飽和度S表示的是顏色接近光譜色的程度,光譜色占比越高,則表示顏色的飽和度越高;明度V表示的是顏色明亮程度,明亮值就是指受到外界光照影響的大小。HSV 可由RGB 轉換而成,轉換公式為
式中:R、G、B分別代表RGB圖像的3個通道分量;H、S、V代表的是HSV 圖像的3 個通道分量。由上述公式可知,V通道選取的是RGB 圖像的最大分量,因此光照對HSV 圖像的V通道影響最大,而相較之下,H通道和S通道都是取RGB圖像中的最小分量并相互作差和運算而來的,所以光照對與HSV 圖像的H通道和S通道影響較小。驗證這一結論的光照實驗結果如圖1所示。
由圖1 可知,在相同光照條件下,RGB 圖像易受光照影響,3 個通道分量都出現了亮暗界限分明的情況。HSV 圖像由于其V通道的存在,導致HSV圖像也出現亮暗界限分明的情況。將HSV 圖像進行通道分割,分離出H通道、S通道和V通道進行觀察,發現V通道的亮暗界限分明,S通道的亮暗界限消失,H通道的亮暗界限模糊,說明HSV 圖像的H通道和S通道都具有抗光照能力,而S通道的抗光照能力更強。
HSV 關注的是圖像顏色的劃分,而非圖像顏色的語義信息。如果只是簡單地將HSV去除V通道輸入網絡,就會缺失圖像顏色中攜帶的語義信息,導致網絡無法進行與顏色相關的特征提取。為此,本文將HSV 中抗光照能力強的S通道分離出,與RGB 通道合并后輸入網絡,使輸入網絡的數據兼備抗光照能力。具體流程見圖2。

圖2 抗光照算法流程圖
圖2 所示的實現流程是建立在原YOLOV4 網絡基礎上的,由于YOLOV4網絡本身不具備學習RGBS四通道圖像信息的能力,為此,須對YOLOV4的原網絡維度進行重構,補足四通道信息輸入所需維度,保證網絡正常輸出。
YOLOV4 的主干網絡CSPDarknet53 采用了大量的3×3 卷積核來進行特征提取,過程中產生的相似特征圖通常被當作冗余信息。冗余特征圖雖然能使網絡更具泛化性,但同時也帶來了更大的數據量,降低算法效率。Ghostnet 網絡[16]基于一組內在特征映射,應用一系列成本低廉的線性變換來生成許多冗余特征映射,可以用更低的計算量充分提取內在特征背后的信息。因此,為降低網絡參數量,提高檢測實時性,將主干網絡由CSPDarknet53 替換為Ghostnet網絡,對YOLOV4進行改進。
Ghostnet 模塊主要由兩部分操作構成:先是通過少量的普通卷積來獲取網絡學習所需要的部分特征圖;再對這些特征圖進行低成本的線性操作生成新的特征圖;最后再將兩部分的特征圖Concat 拼接在一起補足輸出維度需求。Ghostnet 模塊相較于普通卷積的理論加速比為
式中:k為Kernel 的尺寸;d為內核尺寸;w、h為輸入數據的寬和高;c為輸入數據的通道數;n為輸出數據的通道數;s為壓縮比。
在一個Ghostnet模塊線性運算中,當內核尺寸d與卷積核尺寸k一致,且s<<c時,模型的效率最大。則參數壓縮率計算如下:
文獻[17]中對比分析了VGG 與ResNet 系列在CIFAR-10 數據集上的測試結果,得出當壓縮比s=2時Ghostnet 模型效果最佳,即在卷積過程中,一半用普通卷積生成,另外一半由簡單線性操作生成。研究發現,部分網絡的冗余特征圖并沒有占到原特征圖總數的一半。對于這部分網絡,如果只用一半的常規卷積進行特征提取,將無法完成對圖像信息的全面理解,導致網絡的識別精度下降。因此壓縮比s=2的Ghostnet模型無法運用到所有的網絡模型中。
為獲得Ghostnet 模塊在YOLOV4 網絡中最佳壓縮比s,采用Hash 算法對YOLOV4 網絡生成的32 張特征子圖進行分析,通過將所有子圖的數據轉化為hash值,并進行兩兩比對其hash值的漢明距離,借此來判定二者是否相似。兩張圖片的漢明距離越小,圖片越相似。最后通過數據變換將距離大小轉化為相似度進行輸出,所得結果如圖3所示。

圖3 YOLOV4特征圖冗余現象
由圖3 可知,YOLOV4 在經過卷積生成的特征圖中冗余特征圖與普通特征圖的占比為1∶3,即壓縮比s為4/3。據此,對GhostNnet 模塊進行修改,將原來普通卷積與廉價卷積的比例由原來的1∶1 重新調整為3∶1,修改前后如圖4所示。

圖4 Ghostnet模塊修改對比圖
改進后的Ghostnet 模型相較于原模型在參數量上有所提升,但其保證了對輸入圖像特征的全面提取,提高了網絡的檢測精度。改進的YOLOV4 檢測模型結構如圖5所示。

圖5 YOLOV4+抗光照算法+改進Ghostnet模塊的網絡結構圖(YOLO-RLG)
YOLOV4 采用CIoU 損失作為Boundingbox(目標識別框)的損失函數,其在IoU 損失的基礎上加入了考慮預測框與真實框高寬比的影響因子,即
式中:b、bgt表示預測框和真實框的中心點;ρ表示兩中心點之間的距離;c為包含兩個框的最小封閉框的對角線長度;v用來衡量高寬比的相似性;α為與交并比相關的權重系數。
盡管CIoU_Loss 在進行候選框與真實框損失計算時考慮了框的面積大小、中心點距離以及框的高寬比等因素。但是,當候選框的高、寬與真實框的高、寬呈倍數關系且大小不相等時,CIoU_Loss 中高寬比影響因子(αν)就會失效。另外,對式(6)求導發現,高、寬的梯度方向相反,即當高度增加時,寬度必然減小,反之也成立。因為高、寬無法實現同增或同減,導致CIoU_Loss可能會以不合理的方式優化相似性。為進一步提高模型的檢測精度和魯棒性,本文中利用EIoU來改進YOLOV4算法的損失函數。
將CIoU 替換為EIoU[17]來優化高寬比影響因子失效的情況,從而實現對YOLOV4 損失函數的改進,即
EIoU 將CIoU 的高寬比損失項拆分成預測框的高寬分別與最小外接框高寬的差值,優化了邊界框回歸任務中樣本不平衡問題,即減少與目標框重疊較少的大量錨框對Boundingbox(目標識別框)回歸的優化共享,使回歸過程專注于高質量錨框,加速了模型的收斂速度和回歸精度。
實驗采用的KITTI 數據集是由德國卡爾斯魯厄理工學院和豐田美國技術研究院聯合采集制作的,其中包含市區、鄉村和高速公路等場景采集的真實圖像數據。每張圖像中最多達15 輛車,還有各種程度的遮擋與截斷,每個車輛特征復雜,場景多變,可以很好地防止訓練過程中由于標記物特征簡單而導致的過擬合風險。KITTI數據集總共分為7 481張訓練集和7 518 張測試集,總共包含80 256 個標記對象,龐大的數據量能夠支持各種不同算法的驗證,為國內外廣大研究人員廣泛使用。
計算環境為Ubuntu16.04 操作系統,服務器硬件配置為Intel Xeon Silver 4108 處理器、GPU 型號為NVIDIA GTX1080Ti 顯卡、32 GB 運行內存。在Anaconda 下使用tensorflow 深度學習框架和Python3.8 編程語言實現車輛的檢測網絡,并使用GPU進行加速。
在目標檢測方面的評價標準主要有精確率P(Precision)、召回率R(Recall)、AP(Average Precision)、網絡推理時間(FPS)和模型大小MS(Model Size)。其中,AP是由類別的精確率和召回率所構成的曲線下方面積,是充分體現模型泛化能力的重要指標,AP計算公式為
式中:P表示精確率;R表示召回率;TP表示正確預測為正樣本的數量;FP表示錯誤預測為正樣本的數量;NF表示錯誤預測為負樣本的數量;AP表示各類別PR曲線構成的下方面積。
在模型訓練的過程中使用SGD 優化方法,模型訓練的超參數設置:初始學習率設置為0.005,動量設置為0.9,權重衰減系數設置為0.000 5。在實驗的訓練和測試中所設置的圖片大小設置為416×416,batch-size 大小設置為16,epoch 大小設置為1 000。
為進一步驗證YOLOV4改進抗光照模型中所用到的各模塊對YOLOV4的優化作用,采取消融實驗。首先對YOLOV4 網絡進行抗光照增強,之后將模型的主干網絡替換成Ghostnet,最后對Ghostnet 網絡和損失函數進行改進。消融實驗各模型的AP 和性能比對結果如圖6和圖7所示。

圖6 各模型AP曲線圖

圖7 性能比對圖
表1 為YOLOV4 改進抗光照模型進行的消融實驗結果,對各種組合下的算法平均精確度、模型大小和檢測幀率進行對比。

表1 消融實驗
(1)定量分析
從表1 可以看出,YOLOV4 模型生成的權重文件大小為256.8 M,AP為92.53%,FPS為34.04 f/s。改進模型1 進行了抗光照增強,輸入數據由原來的RGB 三通道圖像變換RGBS 四通道圖像,并對網絡模型進行維度統一,導致模型權重大小輕微增加了6.9 M,FPS輕微變化了0.18 f/s,但AP提升了1.55%,其原因在于KITTI數據集本身就有較多的陰影交替的場景,而改進模型1 中剛好具有抗光照能力,所以AP有所提升。改進模型2 在改進模型1 的基礎上將原來的CSPDarknet53 替換成Ghostnet,由于Ghostnet本身是輕量化網絡,所以改進模型2相較于改進模型1,其模型權重大小下降了218.3 M,FPS提高了18.41 f/s,由于上文中提到了原Ghostnet網絡特征提取不充分的原因,導致了改進模型2 的AP下降了5.33%,改進模型2 雖然AP下降,但FPS得到了大幅上升,提高了網絡檢測的實時性。改進模型3 在改進模型2 的基礎上運用本文提到的方法對Ghostnet 網絡進行了優化,使模型相較于改進模型2的AP提升了3.87%,模型權重大小增加了1.1 M,FPS上漲了3.28 f/s。本文模型YOLO-RLG 在改進模型3 的基礎上將損失函數由CIoU 替換為EIoU,使AP提升了0.74%,模型大小沒有變化,FPS輕微提升0.67 f/s。與原YOLOV4 網絡模型相比,模型的大小下降了210.3 M,檢測精度提升了0.83%,FPS提高了22.54 f/s。
(2)定性分析
對比YOLOV4 與YOLO-RLG 在測試集上的部分檢測結果如圖8所示。圖8(a)和圖8(b)分別是兩個算法對同一張圖像進行檢測的結果。可以看到,YOLOV4 雖然在近處的檢測結果很好,但在遠處光影交錯的車輛就無法識別到;而YOLO-RLG 能很好識別近處和遠處光影交錯的車輛。為驗證YOLOV4-RLG 能識別到遠處的這類車輛不是因為算法本身AP(平均精確度)高導致的,本文采用了訓練還未完成的AP(平均精確度)較低的YOLO-RLG 權重文件進行同一圖像檢測如圖8(c)所示。結果顯示,由于AP(平均精確度)較低的原因,近處的識別效果沒有YOLOV4 好,但仍然能夠識別到遠處光影交錯的車輛,充分說明了本文算法所具備的抗光照能力。

圖8 KITTI數據集測試結果
為驗證改進后的YOLO-RLG 算法的性能優勢,將本文提出的算法與前沿的目標檢測算法SSD、Faster-RCNN、EfficientDet、Swin Transformer等網絡模型在KITTI二維數據集上進行比對,結果如表2所示。

表2 YOLO-RLG與其他算法比對
由表2 可知,YOLO-RLG 相較于Faster-RCNN,由于使用了Ghostnet 改進模塊,使其計算的參數量遠小于Faster-RCNN,且實時檢測速度也比其快;與SSD系列相比,在實時檢測速度上與SSD300和SSDMoblienetV3 相當,但在檢測精度方面,YOLO-RLG有絕對優勢;與YOLOV5和EfficientDet相比,不管在檢測精度還是實時檢測速度方面都優于二者;最后與Swin Transformer 比較,在檢測精度上略低于SwinTransformer,但在計算參數量上遠小于Swin Transformer,且實時檢測速度比Swin Transformer快。
為進一步驗證YOLO-RLG 算法對不同類型的檢測目標也具備較好的檢測效果,利用PASCAL VOC 數據集對原YOLOV4 算法和改進后的YOLORLG 算法進行驗證,結果如圖9 和圖10 所示。其中PASCAL VOC 數據集包含20 個目標類別,總計有16 551 張訓練圖像和15 943 張測試圖。PASCAL VOC 數據集是計算機視覺中常用的數據集,龐大的數據量和多種類別可支持各種不同算法的驗證。

圖9 YOLOV4模型多類別檢測AP柱狀圖

圖10 YOLO-RLG模型多類別檢測AP柱狀圖
YOLO-RLG 與YOLOV4 在PASCAL VOC 數據集上性能對比數據如表3所示。

表3 PASCAL VOC數據集驗證比對
由表3 可知,改進后的YOLO-RLG 模型檢測多類別的平均精度(mAP)為92.64%,原YOLOV4 模型檢測多類別的平均精度(mAP)為91.33%,改進后的YOLO-RLG 模型mAP提升了1.31%,且改進后的YOLO-RLG 模型在檢測速度、模型大小、抗光照能力方面均優于原YOLOV4 算法。綜上所述,本文的YOLO-RLG 模型相較于其他網絡模型不僅有較好的檢測精度,且有較快的檢測速度,能滿足算法實時性要求,且還具備抗光照能力。
為更好解決強光和陰影等干擾因素對目標檢測的影響,提出了一種基于YOLOV4 的抗光照目標檢測模型YOLO-RLG。首先,從HSV 圖像分離出抗光照能力強的S通道與RGB圖像通道進行合并作為卷積神經網絡的輸入,使輸入模型的數據既保留了重要的色彩信息又具備抗光照與陰影的能力;其次,為提高模型目標檢測的實時性和檢測精度,對主干網絡和損失函數進行改進,將CSPDarknet53 替換成輕量化模型Ghostnet,并對Ghostnet 模型進行優化,使用EIoU 來消除候選框與真實框高寬比相同、大小不同所造成的高寬比影響因子失效的影響,加快模型收斂速度和回歸精度,提升模型的魯棒性。基于KITTI 數據集和PASCAL VOC 數據集對模型的性能進行實驗,結果表明:提出的方法能滿足目標檢測的實時性和檢測精度要求,并有效提升網絡的抗光照能力,相比于原YOLOV4網絡模型,模型的規模下降了210.3 M,在KITTI 數據集上檢測精度提升了0.83%,FPS 提高了22.54 f/s;在PASCAL VOC 數據集上檢測精度提升了1.31%,FPS提高了17.84 f/s。
改進后的YOLO-RLG 算法,雖然在抗光照方面有所提升,但相應地增加了網絡特征提取的復雜度,如何讓網絡更加注重目標特征,將會是YOLO-RLG算法未來提升的方向。