亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        改進YOLOv5算法的鋼筋端面檢測①

        2022-05-10 08:39:26張運楚孫紹涵張漢元
        計算機系統(tǒng)應用 2022年4期
        關鍵詞:端面計數(shù)聚類

        王 超,張運楚,2,孫紹涵,張漢元,2

        1(山東建筑大學 信息與電氣工程學院,濟南 250101)

        2(山東省智能建筑技術重點實驗室,濟南 250101)

        鋼筋作為不可或缺的結構材料,廣泛應用于建筑、橋梁、交通等基建行業(yè).無論是鋼筋生產(chǎn)過程、還是施工現(xiàn)場,對鋼筋進行準確計數(shù)是必不可少的環(huán)節(jié).

        在鋼筋生產(chǎn)過程中,經(jīng)軋制、冷卻、剪切生產(chǎn)的散狀鋼筋,在傳送鏈床上進行計數(shù)分鋼、收集打捆、卸料,然后對每捆鋼筋數(shù)量進行復核計數(shù)、稱重,最后掛牌入庫.散狀鋼筋常采用視頻動態(tài)計數(shù),通過融合多幀視頻圖像中鋼筋端面檢測和跟蹤結果來實現(xiàn).成捆鋼筋的復核計數(shù),則通過檢測單幀圖像中鋼筋端面的數(shù)量來完成,準確度要求高,以捆為單位不低于98%,同時檢測時間應小于100 ms/捆.在施工現(xiàn)場,需對進場成捆鋼筋的數(shù)量進行復驗,目前多采用人工計數(shù),勞動強度大、工作效率低、出錯率高,無法滿足智慧工地的管理要求.

        視覺成捆鋼筋計數(shù)技術的關鍵,在于對鋼筋端面的檢測與分割,主要有基于傳統(tǒng)圖像處理的鋼筋計數(shù)方法和基于深度學習的鋼筋計數(shù)方法.

        基于傳統(tǒng)圖像處理的鋼筋計數(shù)方法主要利用圖像增強、濾波、閾值分割進行鋼筋端面檢測和計數(shù)[1],或者對預處理后的圖像進行模板覆蓋以及空間相關性計算對鋼筋端面進行檢測計數(shù)[2].羅山等人[3]利用二值化后圖像的面積法對成捆鋼筋的根數(shù)進行統(tǒng)計,臧晶等人[4]首先利用雙邊濾波算法去噪聲.然后采用最大類間方差(Otsu)算法對鋼筋端面分割,再使用連通區(qū)域法對鋼筋進行標記.袁中錦等人[5]運用直方圖均衡化增強對比度后,再用高斯模板計算空間相關性,使鋼筋截面特征更加顯著,通過統(tǒng)計相關矩陣中的二維局部極大值點個數(shù)來得到最終計數(shù).

        近年來,基于深度學習的卷積神經(jīng)網(wǎng)絡(convolutional neural networks,CNN)在目標檢測領域得到了快速發(fā)展,如YOLOv3[6]、YOLOv4[7]、YOLOv5、SSD[8]等單步目標檢測算法和Fast R-CNN[9]、Faster R-CNN[10]等兩步目標檢測算法.

        石京磊[11]利用卷積神經(jīng)網(wǎng)絡與紅外相機對鋼筋進行靜態(tài)與動態(tài)檢測,通過改進ResNeXt101 網(wǎng)絡獲得了一種級聯(lián)式目標候選頭網(wǎng)絡對成捆鋼筋端面進行靜態(tài)檢測和計數(shù).Wu 等人[12]通過深度學習語義分割來實現(xiàn)鋼筋計數(shù),對弱監(jiān)督標注的數(shù)據(jù)集訓練語義分割,主干網(wǎng)絡采用改進的U-net預測3 層不同的mask,推斷得到語義分割二值圖像,再使用輪廓提取算法找到各個鋼筋端面.謝海楨[13]提出了基于全卷積網(wǎng)絡的密集多目標識別算法MSFCN,在自建數(shù)據(jù)集上準確率和召回率均達到95%以上,相較傳統(tǒng)算法精準度高出10%.唐楚柳[14]提出了一種由Inception-RFB-FPN 和改進ResNet34-FCN 組成的SWDA-CNN 網(wǎng)絡用于鋼筋計數(shù),實驗表明該網(wǎng)絡提高了定位精度并節(jié)省推理時間.明洪宇等人[15]提出了一種基于RetinaNet 目標檢測框架,采用基于EM 算法的高斯混合聚類方法解決檢測歧義,改進后的模型mAP值為93%.王志丹[16]基于Faster R-CNN 算法利用微調后的預訓練模型對增強后的數(shù)據(jù)集進行訓練,得到98.3% 的mAP值,較原始Faster R-CNN 提高了2.1%,但該模型的計算復雜度較高,在實際應用中難以達到實時檢測.

        由于剪切的鋼筋端面顏色接近,打捆后擠在一起,彼此之間界線不顯著,且端面參差不齊、面積大小不一、形狀不很規(guī)則等原因,基于傳統(tǒng)圖像處理的鋼筋計數(shù)方法準確度和魯棒性難以提高.基于深度學習的單步目標檢測算法對密集小目標的漏檢率較高,兩步目標檢測算法的實時性差.

        本研究主要應用于兩大場景,第一是鋼筋生產(chǎn)企業(yè)入庫復檢,倉庫的環(huán)境通常是一個整體偏暗的環(huán)境,需要燈帶進行打光,除了需要打光之外在某些比較苛刻的工況下,需要定制固定的工位來進行檢測,真實場景如自建數(shù)據(jù)集所示;第二是建筑工地計數(shù),卡車運載著大量的鋼筋進場,現(xiàn)場的驗收人員需要對其進行盤點,該場景中拍照角度存在偏移,現(xiàn)場光照的不均,拍攝距離的遠近不同導致鋼筋面存在尺度不一致,真實場景如公共數(shù)據(jù)集所示.

        本文提出一種基于改進YOLOv5 的鋼筋端面識別計數(shù)算法,主要貢獻如下:

        (1)提出一種半自動數(shù)據(jù)標注方法,在公開數(shù)據(jù)集DataFountain 鋼筋盤點競賽數(shù)據(jù)集上訓練YOLOv5 初始模型,對工廠環(huán)境下的自建數(shù)據(jù)集進行檢測標注,自動生成標注文件,然后進行手工校正,大大提升數(shù)據(jù)集的標注效率.

        (2)通過增加采樣融合擴大特征圖的尺度、增加模型檢測層個數(shù)、改變SPP 模塊在主干網(wǎng)絡中的位置,獲取更充足的端面紋理特征,豐富端面間輪廓信息,提升端面識別率.

        (3)在公開數(shù)據(jù)集與自建數(shù)據(jù)集上與多個主流檢測算法進行消融實驗(ablation experiment),改進后的算法平均精度均值mAP達99.9%,高于所有其他模型,比原始YOLOv5 模型提升了1.1%,精準度Precision達95%,召回率Recall達99.8%.

        1 YOLOv5 的改進及鋼筋端面檢測

        本節(jié)對成捆鋼筋端面檢測的難點進行了總結并簡要闡述了單階段YOLO 系列檢測算法框架,對YOLOv5初步實驗后存在的問題進行分析,并提出改進思路.

        1.1 成捆鋼筋端面的特點及檢測難點

        成捆鋼筋的端面一種密集型小目標,在檢測時具有目標類別單一、目標分布較為集中、彼此區(qū)分度低等特點.采用深度學習模型對成捆鋼筋端面進行檢測計數(shù)會面臨以下難點:

        (1)鋼筋端面尺寸不一.鋼筋端面直徑視規(guī)格型號差距較大,本文涉及鋼筋端面直徑在12-32 mm 之間.

        (2)每捆鋼筋數(shù)量差異較大,視鋼筋規(guī)格型號有95、290、380 根.

        (3)應用場景復雜.拍攝的距離、角度和光線不完全受控,切割端面形狀差異較大、端面銹蝕顏色和亮度差異較大且存在邊界粘連,部分鋼筋端面竄出或縮進造成遮擋等問題.

        (4)計數(shù)精度和準確度要求高.鋼筋產(chǎn)量和使用基數(shù)很大,如果檢測結果中出現(xiàn)了誤檢和漏檢,需要人工從大量的標記點中找出.只有達到極高的計數(shù)精度和準確度,才能保證驗收人員的使用體驗.

        1.2 YOLO 系列目標檢測框架

        YOLO 系列為單步目標檢測框架,對輸入圖像直接進行分類概率回歸和包圍框坐標回歸實現(xiàn)目標檢測.從YOLOv3 開始摒棄了池化層和全連接層,使用Darknet53 代替Softmax 對目標特征進行多尺度預測.YOLOv4 是對YOLOv3的改進,網(wǎng)絡結構主要包括主干特征提取網(wǎng)絡CSPDarknet53、空間金字塔池化(SPP[17])、路徑聚合網(wǎng)絡(PANet[18]),同時使用了多種數(shù)據(jù)增強技術來提升檢測性能,相較于YOLOv3 模型mAP值提升10%.2020年Ultralytics 發(fā)布了YOLOv5,其性能與YOLOv4 相當?shù)评硭俣雀?且模型框架更便于工程部署.YOLOv5 使用C3Darknet 作為主干網(wǎng)絡從輸入圖像中提取豐富的信息特征,使用PANet作為Neck 來聚合特征,模型檢測層與YOLOv3 相同,Conv 卷積模塊的激活函數(shù)采用SiLU[19]函數(shù).此外,YOLOv5 通過設置depth_multiple 和width_multiple 兩個參數(shù)調節(jié)主干網(wǎng)絡的深度和寬度并劃分出4 個量級的模型:YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x.

        1.3 YOLOv5算法與改進方式

        由于鋼筋數(shù)據(jù)集中鋼筋端面分布密集、類內(nèi)差異較大、鋼筋端面半徑小且不統(tǒng)一,因此采用YOLOv5x這個較深層次的網(wǎng)絡作為原始檢測模型.

        1.3.1 K-means 聚類錨點框

        YOLOv5算法中,預測部分分為3 個特征層,每個特征層含有3 個大小不同的先驗框,先驗框是通過Kmeans 聚類算法對數(shù)據(jù)集中標注檢測目標聚類得到的.在聚類過程中,通過隨機化初始K個聚類中心位置、計算目標標注框與聚類中心點的交并比、分配交并比最大的聚類中心、重新計算聚類中心、直到聚類中心不再發(fā)生改變.最終聚類好K個先驗錨點框(anchor)的寬、高.具體的目標函數(shù)D為:

        式中,boxi為檢測目標中的第i個標注框的區(qū)域面積;cenj是第j個聚類中心的區(qū)域面積;boxi∩cenj為標注框與聚類中心區(qū)域交集的面積;n為檢測目標的數(shù)量,k為聚類中心個數(shù).

        聚類時以準確率(Accuracy)作為聚類結果的評價指標,計算公式為:

        使用K-means 算法對自建鋼筋數(shù)據(jù)集的真實包圍框進行聚類來確定性能最佳的K值,結果由圖1所示.當K=12 時,Accuracy=91.57,指標處于較好性能.圖2給出了K值分別為6、9、12、15 時數(shù)據(jù)集的真實框聚類結果圖.

        圖1 Accuracy-K 折線圖

        圖2 樣本包圍框K-means 聚類可視化圖

        1.3.2 改進YOLOv5算法

        在自建數(shù)據(jù)集上對原始YOLOv5 模型進行初步實驗,自建數(shù)據(jù)集的構建將在第2 節(jié)介紹,訓練參數(shù)設置將在第3.1 節(jié)給出,模型評價指標詳見第1.4 節(jié).

        訓練結果如圖3所示,由曲線圖可以看到精準度只有80% 左右,當IOU值為0.5 時的平均精度均值(mAP)為98.8%.對測試集進行檢測的結果如圖4 和圖5所示,圖中部分遮擋目標存在漏檢和誤檢情況,原因是YOLOv5 模型只有3 個檢測層各對應3 組初始化anchor,當輸入圖像尺寸為640×640 時,主干網(wǎng)絡C3Darknet 第3 層對應的檢測層大小為80×80,此時該層對應的感受野最小,只能用來檢測大小在8×8 以上的目標.主干網(wǎng)絡第5 層對應的檢測層的大小為40×40,只能用來檢測尺度在16×16 以上的目標.主干網(wǎng)絡第7 層對應的檢測層的大小為20×20,此時對應的感受野最大,只能用來檢測32×32 以上的目標.

        圖3 原始YOLOv5 模型訓練曲線圖

        圖4 模型自建數(shù)據(jù)集檢測效果圖

        圖5 Data Fountain 數(shù)據(jù)集檢測效果圖

        因此,當被檢測目標尺度小于8×8 時,無法被檢測器準確檢測到,為了避免這種情況,在Neck 結構的第17 層后,繼續(xù)對特征圖進行上采樣等處理,使特征圖繼續(xù)擴大,同時在Neck 第20 層,將獲取到的大小為160×160 的特征圖與主干網(wǎng)絡第2 層特征圖進行Concat 融合,以此獲取更大的特征圖進行小目標檢測.改進后的YOLOv5-P2 模型結構如圖6所示,其中主干Backbone 紅色箭頭加粗虛線是新增采樣對應于Head 層160×160 預測頭.由K-means 算法對數(shù)據(jù)集聚類得到效果最佳的K值為12,當anchor 的數(shù)量為12時能夠得到更精確的anchor 的寬高值.所以網(wǎng)絡模型改進思路的正確性得到初步驗證.

        為了找到適配數(shù)據(jù)的最佳感受野大小,另一種改進方法是把SPP 模塊當作變量,添加在主干網(wǎng)絡的不同位置.本文在主干網(wǎng)絡第6 層與第7 層之間加入SPP模塊,增大感受野提取重要的特征,來提升鋼筋端面小目標檢測精度.SPP 模塊置于位置如圖6 加粗紅色虛線處所示,得到改進的YOLOv5-SPP 模型.

        圖6 改進后的 YOLOv5-P2 模型網(wǎng)絡結構圖

        1.3.3 YOLOv5 改進模型損失函數(shù)

        損失函數(shù)反映了預測框與真實框之間的差值,是衡量檢測模型性能的重要指標.YOLOv5 模型中損失函數(shù)Loss包括預邊界損失函數(shù)Lbox、置信度損失函數(shù)Lconf、分類損失函數(shù)Lcls,因此損失函數(shù)可以表示為:

        式中,λbox、λconf、λcls分別是坐標損失權重,置信度損失權重和分類損失權重.

        式中,Ci表示預測框的置信度得分,表示真實框的置信度得分;分別代表第i個單元的第j個錨點.

        分類損失函數(shù)采用二值交叉熵損失,損失函數(shù)公式為:

        其中,c是當前檢測到的目標類別,classes是所有目標類別;和pi(c)分別是預測類別和真實類別.

        1.4 檢測模型評價指標

        mAP(mean average precision)是多個驗證集的平均精度均值,在目標檢測任務中作為衡量檢測精度的重要指標.AP(average precision)為平均精度,是P-R(precision-recall)曲線與坐標軸圍成的面積值.P-R 曲線是以Recall和Precision作為橫縱坐標的二維曲線.Precision和Recall的定義如式(7)和式(8):

        式中,TP為正確劃分為鋼筋的數(shù)量,FP為錯誤劃分為鋼筋的數(shù)量,FN為被錯誤地劃分為非鋼筋的數(shù)量.

        繪制P-R 曲線來計算單個類的AP值,再計算各類AP值的平均值,得到整個模型的mAP值:

        式中,p為準確率,r為召回率,C為類別總數(shù).本文是對鋼筋的單類目標檢測,所以計算所得AP值就是mAP

        除了mAP外,目標檢測算法的另一個重要性能指標是速度.衡量速度的一個常用指標是每秒幀數(shù)(FPS),即每秒可以處理的圖片數(shù)量.

        2 數(shù)據(jù)集的構造及增強

        2.1 數(shù)據(jù)集的獲取

        本文使用的數(shù)據(jù)集由兩部分組成,一部分是由Data Fountain 的智能盤點鋼筋數(shù)量AI 識別比賽標注好的數(shù)據(jù)集,共有標注圖片250 張,圖片規(guī)格是2666×2000;另一部分是自建的企業(yè)私有數(shù)據(jù)集,使用HIKVISION攝像機拍攝鋼廠鏈條上成捆鋼筋所得,共有未標注的圖片958 張,圖片規(guī)格為1600×1200.

        2.2 數(shù)據(jù)集的半自動標注方式

        鋼筋數(shù)據(jù)集手工標注耗時費工,為提高工作效率,本文利用已經(jīng)標注好的智能盤點鋼筋數(shù)據(jù)集,訓練得到初步模型,然后使用該模型檢測未標注的自建數(shù)據(jù)集,生成XML 標注文件,再使用LabelImg 數(shù)據(jù)集標注軟件進行手工修正標注框,以防止漏標和誤標,如圖7.

        圖7 圖像半自動標注示例

        2.3 數(shù)據(jù)集增強

        原始數(shù)據(jù)集共有1 208 張圖像,為避免模型訓練產(chǎn)生過擬合,本文采用數(shù)據(jù)增強擴充數(shù)據(jù)集.通過水平/垂直鏡像、亮度/色彩調節(jié)、隨機裁剪等方式對數(shù)據(jù)集進行擴充,并自動生成擴充后的XML 標注文件,最終的數(shù)據(jù)集被擴充為3 295 張圖像.圖8 給出了數(shù)據(jù)增強得到的樣本及其自動標注示例.

        圖8 數(shù)據(jù)增強得到的樣本及其自動標注

        2.4 數(shù)據(jù)集劃分

        本文使用數(shù)據(jù)集中包含了日間室外逆光、順光和夜晚室內(nèi)燈帶打光等場景.

        將數(shù)據(jù)集以8:1:1 比例劃分訓練集、驗證集和測試集.選取數(shù)據(jù)集中2 636 幅圖像作為訓練數(shù)據(jù)集,選取未經(jīng)過數(shù)據(jù)增強的圖片330 張作為測試集.對劃分的訓練集真實目標分布情況進行可視化,結果如圖9所示.

        圖9 訓練集的目標分布統(tǒng)計圖

        3 實驗及結果分析

        本實驗硬件配置使用Intel Core i7-9800X CPU@3.80 GHz 處理器、NVIDIA GTX 2080 Ti 顯卡、32 GB RAM、3 TB 機械硬盤,操作系統(tǒng)是Windows 10 64 位系統(tǒng).編程語言為Python,深度學習框架為PyTorch,GPU 加速庫為CUDA10.2 和CUDNN8.0.

        3.1 模型訓練

        YOLOv5 鋼筋端面檢測模型使用的深度學習框架為PyTorch.YOLOv5算法訓練的初始參數(shù)設定為:優(yōu)化器使用隨機梯度下降SGD[22]和余弦學習速率衰減策略來訓練網(wǎng)絡,初始學習率(learning rate)為0.01,最終衰減速率為0.001,迭代次數(shù)(epochs)為1 000.批處理大小(batch size)為8,動量因子為0.937,輸入圖像分辨率為640×640,設置損失權值λbox=0.05、λconf=1、λcls=0.5、 λobj=1、 λnoobj=0.5.

        批量處理多張訓練圖片時,同YOLOv4 算法類似采用了Mosaic[23]、Cutout[24]等方法,此外還使用了圖像擾動,改變亮度、對比度、飽和度、色調,加噪聲、隨機縮放、隨機裁剪(random crop)、翻轉、旋轉、隨機擦除等數(shù)據(jù)增強方式.

        3.2 實驗結果分析

        本文通過在模型Head 層修改檢測層個數(shù)、增加采樣融合擴大特征圖的尺寸提升模型的性能.首先,為了改善鋼筋端面密集小目標的檢測效果,在原始主干網(wǎng)絡上增加P2 采樣層,并在head 層增加第4 個輸出層.與原始模型相比,改進后的YOLOv5-P2 模型的mAP和FPS 如表1所示.

        表1 模型添加小目標檢測層的測試結果

        由表1 可知,改進后模型在主干網(wǎng)絡增加P2 采樣層、Head 輸出增加為4 層時,模型的輸出特征圖增大,在Neck 層提取到更多輪廓特征,提升了小目標檢測精度,mAP值由98.8%提升到99.9%,Precision由原始模型的80%改進后提升到95%.盡管檢測速度有所降低,仍能滿足實際需要.

        為了找到適配數(shù)據(jù)的最佳感受野大小,本文在主干網(wǎng)絡的第6 層與第7 層之間加入SPP 模塊,得到YOLOv5-SPP 模型,增大感受野提取重要的特征,來提升鋼筋端面小目標檢測精度.對比結果如表2所示.

        表2 模型改變SPP 模塊位置的測試結果

        本文的檢測目標是鋼筋端面.在增強后的訓練數(shù)據(jù)集上,將檢測的鋼筋端面預測框的平均精度均值mAP作為檢測效果的衡量標準.

        為了能夠更好的觀察各個檢測層的輸出以及模型各檢測層的特征提取效果,對改進前后模型的檢測層的特征圖(feature map)進行了可視化.如圖10所示,其中圖10(a)為原圖,圖10(b)-圖10(d)為原始模型的檢測層可視化結果,圖10(e)-圖10(h)為改進模型檢測層可視效果.由改進前后的圖10(b)、圖10(e),即小目標特征圖可以看出改進后的圖10(e)的可視化效果更佳,與原始圖像具有空間上的對應關系,目標間的輪廓信息更豐富,此時的感受野最小,能夠提升對小目標的檢測效果.

        圖10 特征圖可視化

        本文除了將改進模型與原始YOLOv5 模型進行對比外,還與YOLOv3、YOLOv3-SPP 以及YOLOv4和ScaledYOLOv4[25]等主流實時目標檢測算法進行消融實驗對比,結果如表3所示.表中,Augmentation 代表是否進行數(shù)據(jù)增強,K-means 表示模型是否對錨點進行聚類,epoch 表示訓練迭代的次數(shù),通過控制不同的變量來驗證改進算法的效果.

        未進行K-means 聚類之前默認的錨點框為[10,13],[16,30],[33,23],[30,61],[62,45],[59,119],[116,90],[156,198],[373,326],進行K-means 聚類之后錨點框為[18,30],[18,34],[19,23],[19,27],[20,31],[22,29],[22,33],[32,42],[39,67],YOLOv5-P2 模型使用的錨點框為[17,31],[17,22],[18,27],[19,32],[19,30],[20,24],[20,36],[21,28],[21,31],[24,33],[33,43],[39,67].

        與目前主流的目標檢測算法相對比,本文改進的算法在Precision以及mAP均取得最優(yōu).其原因如下:(1)平滑的激活函數(shù)允許更好的信息深入神經(jīng)網(wǎng)絡,從而得到更好的準確性和泛化.相較于YOLOv3,YOLOv4 模型,本文模型使用了SiLU 激活函數(shù),與Lekey-ReLU 相比,SiLU 梯度更平滑,保持準確性更好且更準取得地傳播信息.(2)Neck 網(wǎng)絡與YOLOv4 模型相似本模型使用SPP 與PANet 結構.SPP 利用4 個池化核大小分別為13×13、9×9、5×5、1×1 進行處理,該結構能分離出最顯著的上下文特征,是強有力的特征提取,池化后再進行堆疊;PANet 結構是一種反復提取特征的實例分割算法,過程包括上采樣、再堆疊卷積重復,之后再進行下采樣、堆疊.此外本文算法還采用Mosaic 數(shù)據(jù)增強,擴充了數(shù)據(jù)集,均衡大中小目標數(shù)量:隨機使用多張圖片隨機拼接,且通過隨機縮放可以獲得很多小目標,讓網(wǎng)絡的魯棒性更好.通過以上幾點對密集小目標檢測效果有了很大提升,這也證明了本文模型的訓練效果.

        如表3 中所示,分別對幾大主流目標檢測模型采用相同的數(shù)據(jù)集進行訓練,其中YOLOv3 模型、YOLOv3-SPP 模型均在Windows 10 環(huán)境下進行的,輸入圖片尺度為640×640,batch size 為8 訓練的迭代次數(shù)epoch 為200.YOLOv4 模型與YOLOv4-CSP 模型均在Linux 環(huán)境下訓練的,其中YOLOv4 模型的輸入圖片尺度為608×608,YOLOv4-CSP 模型輸入圖片尺度為640×640,batch size 為4,訓練的迭代次數(shù)epoch為500.訓練得到的模型分別在330 張測試集上設置置信度參數(shù)conf=0.15,非極大值抑制閾值IOU=0.45 進行檢測得到mAP值以及FPS.

        表3 不同檢測算法消融實驗檢測精度對比

        圖11 給出了3 個鋼筋端面檢測模型的mAP值以及P-R 曲線圖,其中藍色曲線1 代表YOLOv5-P2 模型,綠色曲線2 代表YOLOv5 模型,紅色曲線3 代表YOLOv3 模型.由曲線圖可知改進后的YOLOv5-P2 模型檢測效果優(yōu)于另外兩個模型.

        圖11 各個模型P-R 曲線與mAP 值

        圖12 給出了為本文改進后的YOLOv5-P2 模型的訓練曲線圖,主要指標為mAP@0.5、精準率Precision、召回率Recall以及訓練集、驗證集的目標與包圍框損失曲線,由于本文設計的是單類目標檢測器因此分類損失函數(shù)恒為零.

        使用TensorBoard 對訓練過程進行可視化,可視化結果由圖13所示,模型輸入圖片尺度為640×640,batchsize=8 時的訓練曲線圖.圖13(a)是mAP@0.5(IOU=0.5)曲線圖,即IOU=0.5 時,計算所有圖片每一類的AP 值;圖13(b)是mAP@0.5:0.9 曲線圖:表示在IOU不同閾值(從0.5 到0.9,步長0.05)的mAP值;圖13(c)表示訓練集預測框損失曲線圖;圖13(d)表示驗證集目標損失曲線圖;圖13(e)表示驗證集預測框損失曲線圖;圖13(f)表示訓練集目標損失曲線圖.

        從圖13 可以看出,改進后的兩個模型在mAP@0.5 曲線(曲線1、曲線2)以及mAP@0.5:0.95 曲線圖中表現(xiàn)最優(yōu),這是衡量檢測器的首要標準.圖13 中曲線1 代表YOLOv5-P2 模型,曲線2 代表YOLOv5-SPP 模型,曲線3 代表YOLOv5x 模型,曲線4 代表YOLOv3 模型,曲線5 代表YOLOv5s 模型.在訓練損失以及驗證損失曲線圖中YOLOv5-P2 模型(曲線1)比YOLOv5-SPP 模型(曲線2)損失更低,說明模型預測框與真實框更接近.

        圖12 給出了置信度閾值一致時訓練的3 種模型,在自建數(shù)據(jù)測試集設置置信度閾值conf=0.15,NMS 閾值IOU=0.25 時鋼筋端面檢測的效果.從圖中可以看到,對于目標邊界存在粘連的情況,YOLOv3、YOLOv5 出現(xiàn)漏檢,改進后的YOLOv5-P2 則能夠準確檢測出,說明改進后的模型對小目標的檢測效果有很大提升.

        圖12 YOLOv5-P2 模型訓練曲線圖

        圖13 給出了當超參數(shù)設置一致時訓練的3 種模型,在Data Fountain 測試數(shù)據(jù)集上設置置信度閾值conf=0.15,NMS 閾值IOU=0.25 時鋼筋端面檢測的效果,從圈出的細節(jié)圖可以看出,YOLOv3 模型和YOLOv5對存在遮擋、光線過強的目標有漏檢、誤檢情況,而YOLOv5-P2 模型能夠準確的檢測到鋼筋目標,說明改進后的模型對兩個數(shù)據(jù)集同時具有很強的自適應性和健壯性.

        圖13 各模型訓練曲線對比圖

        改進后YOLOv5-P2 模型相較于改進前YOLOv5模型,增加了網(wǎng)絡上增加P2 采樣層,并在head 層增加第4 個輸出層,目標間的輪廓信息更豐富,錨點框由9 個增加到了12 個,感受野減小特征圖增大能夠提升對小目標的檢測效果.與YOLOv3 模型相比優(yōu)化了激活函數(shù)和Mosaic 增強以及網(wǎng)絡結構改良,因此對于實例中目標檢測效果有較大提升.

        為了進一步說明改進后的模型在應用于中的優(yōu)越性,在330 張訓練集上設置相同的置信度閾值和非極大值抑制閾值對模型進行測試得到的結果如表4所示,改進后的算法模型在測試集上檢測的誤檢率和漏檢率明顯降低,正確率相對于改進前提升了2.1%.

        表4 在測試集多個模型檢測結果對比

        4 結論與展望

        鋼筋是建筑施工領域一種重要的材料,精準、快速的盤點出鋼筋的數(shù)量代替人工盤點是一項具有重要意義的工作.本文根據(jù)鋼筋端面的特點,基于改進的YOLOv5 模型框架,設計了一種鋼筋端面檢測計數(shù)算法.本文的主要貢獻為:(1)針對目前鋼筋數(shù)據(jù)集稀缺且實際應用場景復雜的問題,創(chuàng)建了一個新的鋼筋端面數(shù)據(jù)集,并使用水平、垂直鏡像、亮度色彩調節(jié)、隨機裁剪等方法進行數(shù)據(jù)增強;使用預訓練模型對數(shù)據(jù)進行半自動標注.(2)通過改進YOLOv5 網(wǎng)絡結構,使輸出特征圖感受野擴大,路徑聚合網(wǎng)絡(PANet)能夠提取更多的目標邊緣特征,從而提升了密集小目標的檢測精度.實驗結果表明,本文方法在鋼筋端面檢測中的mAP和Precision等指標均有所提高,能滿足實時檢測的基礎上顯著提升密集成捆鋼筋的檢測精度.未來工作將考慮進一步改進網(wǎng)絡結構對深層網(wǎng)絡進行剪枝,在保證精度的基礎上提升檢測速度.

        猜你喜歡
        端面計數(shù)聚類
        KDF3E成型機濾棒端面觸頭的原因及排除方法
        古人計數(shù)
        遞歸計數(shù)的六種方式
        古代的計數(shù)方法
        銅基合金襯套端面鍍鉻質量的改善
        基于DBSACN聚類算法的XML文檔聚類
        電子測試(2017年15期)2017-12-18 07:19:27
        這樣“計數(shù)”不惱人
        老舊端面磨齒機故障處理
        基于改進的遺傳算法的模糊聚類算法
        貫通軸端面花鍵拉床的設計
        一本色道久久88加勒比综合| 18无码粉嫩小泬无套在线观看 | 亚洲一区二区三区品视频| 国产高清一区二区三区三州| 少妇久久久久久人妻无码| 朝鲜女子内射杂交bbw| 四虎成人精品国产一区a| 国产在线播放免费人成视频播放| 国产精品主播在线一区二区| 久久久受www免费人成| 国产精品亚洲欧美天海翼| 日本骚色老妇视频网站| av免费在线播放视频| 国产精品欧美一区二区三区不卡| 国产精品无需播放器| 日韩在线中文字幕一区二区三区| 刚出嫁新婚少妇很紧很爽| 免费无码中文字幕a级毛片| 成人在线激情网| 91久久精品国产性色tv| 中文字幕隔壁人妻欲求不满| 亚洲av不卡一区二区三区| 免费一区二区三区在线视频| 国产精品久久久精品三级18| 丁香婷婷激情视频在线播放| 精品日产卡一卡二卡国色天香| 无码 制服 丝袜 国产 另类| 免费人妻精品区一区二区三| 国产极品美女高潮无套| 3d动漫精品一区二区三区| 国产av一区二区三区丝袜| 一区二区三区日韩蜜桃| 男女做爰高清免费视频网站| 国产精品户露av在线户外直播| 婷婷丁香91| 尤物成av人片在线观看| 人禽杂交18禁网站免费| 亚洲国产成人久久一区| 中文字幕av无码一区二区三区电影| 精品极品一区二区三区| 一本色道久久综合无码人妻|