• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于改進YOLOv5的人臉檢測算法

      2023-03-23 07:44:40孫孚斌朱兆優(yōu)陳思超陳弘揚
      機電工程技術(shù) 2023年2期
      關(guān)鍵詞:人臉損失預(yù)測

      孫孚斌,朱兆優(yōu),陳思超,陳弘揚

      (東華理工大學(xué)機械與電子工程學(xué)院,南昌 330013)

      0 引言

      目標(biāo)檢測算法是目標(biāo)識別的基礎(chǔ),隨著機器視覺行業(yè)及相關(guān)產(chǎn)業(yè)的蓬勃發(fā)展,各種檢測算法也得到了不同程度的優(yōu)化和性能提升。

      目前比較常見的目標(biāo)檢測算法可以分出兩種類型,Two-stage 方 法 和One-stage 方 法。Two-stage 算 法 就 是 把檢測問題分成兩個階段來處理,在第一個階段中劃出包含目標(biāo)大致位置信息的候選區(qū)域(Region Proposals),然后在第二階段對候選區(qū)域作分類以及位置細(xì)修處理。目前比較常用的Two-stage 類型的方法有卷積神經(jīng)網(wǎng)絡(luò)(R-CNN);由Ren 等[1]提出的基于卷積神經(jīng)網(wǎng)絡(luò)改進的FasterR-CNN 算法,該算法結(jié)合特征圖共享和邊框回歸的思想,利用RPN 網(wǎng)絡(luò)提取目標(biāo)的深層網(wǎng)絡(luò)特征,運用非極大值抑制(NMS)的方法實現(xiàn)了在GPU 上的目標(biāo)實時檢測;通過多次迭代尋找最優(yōu)分類器的Adaboost人臉檢測算法。One-stage 目標(biāo)檢測算法,該類算法除去了劃分候選區(qū)域的步驟,可以通過一個stage 直接找出目標(biāo)的類別和坐標(biāo)值,目前常見的one-stage 算法有SSD,由俞偉聰[2]在ECCV2016 提出的一種檢測速度比FasterR-CNN 快的檢測算法;還有Redmon[3]提出的YOLO檢測算法。

      YOLO 檢測算法具有泛用性高,檢測失誤率低且檢測速度快等優(yōu)點,被廣泛應(yīng)用于人臉檢測中。初代的YOLO 檢測算法運用于人臉檢測方面由于其單一尺度的網(wǎng)格劃分導(dǎo)致對于多尺度的人臉檢測實際效果達不到預(yù)期,召回率不高。蔣紀(jì)威等[4]提出修改內(nèi)部參數(shù)改變神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的方法,提高了檢測的實時性,但是沒有改善訓(xùn)練的精度。朱超平等[5]針對卷積層進行改進,在卷積層的后面增加批量歸一化的操作,提升了訓(xùn)練速度,但是仍然沒有提升訓(xùn)練的精度。本文提出一種改進的YOLOv5檢測模型,并應(yīng)用于人臉檢測。首先YOLO的版本選擇YOLOv5,較之前的版本增添了許多有效的數(shù)據(jù)處理方式以達到提高訓(xùn)練模型的精度且減少訓(xùn)練時間的目的,比如用于數(shù)據(jù)擴增的Mosaic、Cutout,還有改變亮度、圖像擾動、加噪聲、翻轉(zhuǎn)、隨機擦除等方式[6]。但是YOLOv5使用的邊界框回歸損失函數(shù)GIOU 存在當(dāng)檢測框與真實框呈現(xiàn)為包含關(guān)系時會退化為IOU,無法對其相對位置關(guān)系進行區(qū)分的問題[7]。在此之上替換YOLOv5的邊界框回歸損失函數(shù)為EIOUloss,即通過預(yù)測框與真實框的中心點間標(biāo)準(zhǔn)化距離加速損失的收斂,并分別考慮邊界框的縱橫比,把縱橫比拆開,分別計算真實框和預(yù)測框的長和框,進一步提升回歸精度。

      1 YOLOv5算法

      YOLOv5 是一種單階段目標(biāo)檢測算法,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。

      圖1 YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)

      YOLOv5 目標(biāo)檢測算法由輸入端、基準(zhǔn)網(wǎng)絡(luò)(Backbone)、Neck 網(wǎng)絡(luò)以及Head 輸出端四個部分組成[8]。首先是YOLOv5網(wǎng)絡(luò)的輸入端,輸入圖像大小為608×608×3(RGB3 通道)。該階段存在一個圖像預(yù)處理步驟,即將輸入的圖像放縮至輸入網(wǎng)絡(luò)的608×608 大小,并對輸入的圖像進行馬賽克(Mosaic)數(shù)據(jù)增強,通過隨機裁剪、隨機排布和隨機縮放的方式對輸入圖像進行拼接,不僅能提高對小目標(biāo)的檢測效果,還可以豐富檢測目標(biāo)的背景[9]。其次是基準(zhǔn)網(wǎng)絡(luò)部分主要采用的是Focus 結(jié)構(gòu)和CSP(內(nèi)含殘差結(jié)構(gòu))以及SPP(空間金字塔池化)結(jié)構(gòu)組成。Foucs 的主要作用就是切片功能,比如將原始的608×608×3的圖像輸入Focus 結(jié)構(gòu)中,再經(jīng)過切片的操作之后會得到304×304×12的特征圖,接著通過一個32個通道數(shù)的Conv 層,輸出大小為304×304×32 的特征映射[10]。圖中C3 模塊內(nèi)含Bottleneck(瓶頸層),其中n代表模塊中瓶頸層的個數(shù),ture/flase代表著是否啟用瓶頸層中的殘差模塊。提取的特征印象經(jīng)過多重卷積之后送入SPP(空間金字塔池化)模塊進行各種尺度的特征圖的融合,先通過一個1*1的卷積使輸入通道減半,之后做內(nèi)核大小分別為5、9、13 的最大池化,再將最大池化結(jié)果與未進行池化的數(shù)據(jù)進行連接,最后合并[11]。之后送入Neck 網(wǎng)絡(luò),進一步提升特征的多樣性和魯棒性。最后采用3個尺度進行預(yù)測,每一個尺度都具有3 個BoundingBox(即界限值),最后根據(jù)與實際框的交并比(IOU)最大的界限值來進行物體預(yù)測[12]。圖像可視化處理過程如圖2所示。

      圖2 圖像可視化變化過程

      2 改進的YOLOv5算法

      2.1 基準(zhǔn)網(wǎng)絡(luò)結(jié)構(gòu)改進

      在傳統(tǒng)的基準(zhǔn)網(wǎng)絡(luò)結(jié)構(gòu)(Backbone)的最后一層添加一層殘差注意力模塊(SE-RsNet Module),改進后的基準(zhǔn)結(jié)構(gòu)網(wǎng)絡(luò)如圖3所示。

      圖3 殘差注意力模塊

      該模塊先將輸入的特征圖通過一次全局平均池化(Global pooling)進行壓縮,經(jīng)過壓縮后輸出一個1*1*512的特征向量,該特征向量通過激勵后進行Scale操作,將1*1*512 的特征向量進行通道權(quán)重相乘,即將SE 模塊計算出來的各通道權(quán)重值分別和原特征圖對應(yīng)通道的二維矩陣相乘,得到輸出結(jié)果。該模塊雖然加大了總計算量,但是提升了參數(shù)量,使檢測模型更加關(guān)注識別物體,而且因為殘差結(jié)構(gòu)的存在,保證了改變后的模型不會相較原來的模型更差。

      2.2 算法改進

      2.2.1 YOLOv5算法存在的缺陷

      目標(biāo)檢測任務(wù)的損失函數(shù)一般由Objectness score 損失(置信度損失)、class probability score 損失(分類損失)以及bounding box 損失(邊界框回歸損失)3 部分組成。YOLOv5 算法采用GIOU 作為邊界框回歸損失函數(shù)[13]。GIOU 損失函數(shù)克服了IOU 損失函數(shù)在預(yù)測框與真實框不相交時無法反饋兩個框之間的距離遠近的問題,并且同時繼承了IOU的優(yōu)點。計算損失公式如下:

      其中,B是預(yù)測框,Bgt是真實框,C包含預(yù)測框和真實框的最小凸閉合框。從GIOU 的公式中可以看出GIOU 類似IOU 采用預(yù)測框與真實框之間的距離來度量損失函數(shù),并且對尺度不夠敏感IOU ∈[0,1],得到GIOU ∈[-1,1],所以GIOU 不僅僅關(guān)注預(yù)測框與真實框之間的重疊區(qū)域,還關(guān)注其他的非重疊區(qū)域,能更好地反映預(yù)測框與真實框的重合度,當(dāng)完全重合時IOU=GIOU=1,當(dāng)預(yù)測框與真實框不重合時,不重合的程度越高,GIOU的值則越接近-1。

      但是根據(jù)式(7)可以看出,當(dāng)預(yù)測框與真實框框呈包含狀態(tài)時無法獲得其相對位置關(guān)系。如圖4所示。

      圖4 預(yù)測框與真實框呈包含狀態(tài)

      在這一情況下,3 張圖的LGIOU是相等的,由于GIOU十分依賴IOU,所以在垂直方向上的誤差很大,很難收斂,導(dǎo)致GIOU不夠穩(wěn)定[14]。

      2.2.2 改進的YOLOv5損失函數(shù)

      針對上述GIOU 存在的問題,提出使用EIOUloss 函數(shù)替代GIOU。EIOU通過將GIOU中引入最小外接框來最大化重疊面積的方法替換為兩個框中心點的標(biāo)準(zhǔn)化距離,并添加一個影響因子和用邊長作為懲罰項,該影響因子考慮了預(yù)測框縱橫比擬合真實框的縱橫比。損失公式如下:

      該損失函數(shù)包含重疊損失LIOU,寬高損失Lasp以及中心距離Ldis損失3 個部分,其中bgt是真實框的中心點,b是預(yù)測框的中心點,ρ代表兩個中心點之間的歐氏距離,c 代表包含真實框和預(yù)測框的最小閉合框的對角線距離,w和h分別是預(yù)測框的寬度和高度,wgt和hgt分別是真實框的寬度和高度,Cw和Ch分別是覆蓋真實框和預(yù)測框的最小外接邊框的寬度和高度。

      3 實驗與結(jié)果分析

      3.1 實驗平臺

      本文搭建的實驗環(huán)境為:Intel core i7-115200 處理器,基準(zhǔn)頻率2.3 GHz,GPU 為RTX 2060,6 GB 顯存,Windows操作系統(tǒng)。

      3.2 結(jié)果分析

      本文采用由香港大學(xué)發(fā)布的人臉數(shù)據(jù)集Wide Face,其中包含了各種不同的光照狀態(tài)、運動狀態(tài)、姿勢、遠近、膚色和不同程度遮擋的人臉,從61 種人臉分類中各取出20 張用作人臉數(shù)據(jù)集訓(xùn)練,迭代次數(shù)為默認(rèn)的300次,訓(xùn)練集與驗證集劃分為80%和20%。訓(xùn)練獲得的損失函數(shù)對比如圖5~6 所示。通過對比可以看出,改進后的YOLOv5檢測模型的損失低于未改進的YOLOv5檢測模型,大概提升14.2%,說明改進后的YOLOv5檢測模型具有更好的魯棒性。

      圖5 改進的YOLOv5損失曲線

      圖6 YOLOv5損失曲線

      改進YOLOv5 檢測模型訓(xùn)練的PR 曲線如圖7 所示。訓(xùn)練后的mAP@0.5(IOU 為0.5 時Precision 和Recall圍成的面 積)和 mAP@0.5:0.95(IOU 從0.5 到0.95,步長為0.05,上的平均mAP)的值以及準(zhǔn)確率比較如表1 所示。可以看到,改進后的YOLOv5目標(biāo)檢測算法較傳統(tǒng)的YOLOv5檢測算法擁有更高的準(zhǔn)確率和精度。

      圖7 PR曲線

      表1 實驗數(shù)據(jù)對比

      將訓(xùn)練獲得的權(quán)重文件應(yīng)用于人臉檢測,每一幀圖片的處理時間平均只需要0.03 s,實時視頻流處理可以保持33 的FPS,保證經(jīng)過算法檢測后輸出的視頻圖像的流暢性,效果如圖8~10 所示。從圖中可以看到,改進后的YOLOv5 檢測算法訓(xùn)練獲得的權(quán)值文件應(yīng)用于實際的人臉檢測中不僅保持了較高的檢測速度,并且擁有較高的準(zhǔn)確率,能夠忽略小人臉檢測、多目標(biāo)檢測和人臉膚色、表情差異產(chǎn)生的影響。

      圖8 程序運行

      圖9 人臉原圖

      圖10 人臉檢測效果

      4 結(jié)束語

      本文提出了改進YOLOv5 目標(biāo)檢測算法的具體方法,通過在損失函數(shù)中引入真實框與預(yù)測框中心點間的歐式距離和預(yù)測框與真實框的長比及寬比作為損失懲罰項以加快函數(shù)收斂速度和提高回歸精度,另外在基準(zhǔn)網(wǎng)絡(luò)結(jié)構(gòu)中的最后一層增加一殘差注意力模塊,提升參數(shù)量,使檢測模型更加關(guān)注識別物體。實驗表明改進的YOLOv5 目標(biāo)檢測算法在wideface 數(shù)據(jù)集上的訓(xùn)練準(zhǔn)確率達到88.28%,較傳統(tǒng)YOLOv5 準(zhǔn)確率提升2.6%,訓(xùn)練過程中的損失為0.013,較傳統(tǒng)YOLOv5 損失減小13.33%,擁有更好的魯棒性。該目標(biāo)檢測算法解決了傳統(tǒng)YOLOv5目標(biāo)檢測算法中當(dāng)預(yù)測框和真實框呈包含狀態(tài)時無法預(yù)測兩框之間相對位置關(guān)系以及在垂直和水平方向上收斂速度慢的問題,提升了回歸精度的同時保證了人臉檢測過程中要求的實時性,能夠較好地應(yīng)用于實際人臉檢測項目中。

      猜你喜歡
      人臉損失預(yù)測
      無可預(yù)測
      黃河之聲(2022年10期)2022-09-27 13:59:46
      選修2-2期中考試預(yù)測卷(A卷)
      選修2-2期中考試預(yù)測卷(B卷)
      少問一句,損失千金
      有特點的人臉
      胖胖損失了多少元
      玉米抽穗前倒伏怎么辦?怎么減少損失?
      三國漫——人臉解鎖
      動漫星空(2018年9期)2018-10-26 01:17:14
      不必預(yù)測未來,只需把握現(xiàn)在
      一般自由碰撞的最大動能損失
      瓮安县| 西乌珠穆沁旗| 荣昌县| 杭锦后旗| 凤翔县| 镶黄旗| 铅山县| 建德市| 开封县| 百色市| 大港区| 辽宁省| 莎车县| 古浪县| 墨脱县| 平顺县| 东辽县| 灵石县| 福海县| 依安县| 平凉市| 浦东新区| 大同县| 涿州市| 项城市| 阿拉善左旗| 梓潼县| 天水市| 贵南县| 绥中县| 韶山市| 石首市| 巴马| 保亭| 杭锦旗| 雷州市| 红河县| 江津市| 扬中市| 泗洪县| 富川|