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

基于改進YOLOv3的木結缺陷檢測方法研究

2020-03-31 08:04:02岳慧慧白瑞林
自動化儀表 2020年3期
關鍵詞:精確度檢測模型

岳慧慧,白瑞林

(江南大學物聯網工程學院,江蘇 無錫 214122)

0 引言

木結缺陷為嵌入在木條表面中高度紋理化、顏色差異明顯的區域。木結缺陷檢測的主要挑戰在于如何準確、實時地從形狀不規則、分布位置不確定的自然紋理中檢測出木結缺陷,對高質量木條加工有著極為重要的理論和應用價值[1]。隨著卷積神經網絡在圖像領域的普遍應用以及圖形處理器(graphics processing unit,GPU)的迅猛發展,憑借其檢測速度更快、精確度更高的優點,基于卷積神經網絡(convolutional neural network,CNN)的目標檢測正逐漸替代低效率的人工檢測、基于顏色和紋理特征提取的無監督聚類方法。Girshick等提出超快速的區域卷積神經網絡(faster region-CNN,Faster R-CNN)[2]方法,運用候選區域生成網絡(region proposal network,RPN)不斷重復訓練模型,識別精確度較高,但檢測速度不滿足實時性要求。徐姍姍[3]等使用支持向量機對缺陷進行分類,整體算法運行緩慢。劉英[4]等利用非下采樣剪切波變換對圖像進行預處理,再利用CNN提取出木材缺陷輪廓,檢測速度為261 ms,無法滿足實時性要求。Redmon等提出基于端到端的深層卷積神經網絡(you only look once v3,YOLOv3)[5]目標檢測算法,在YOLO[6]和YOLOv2[7]的基礎上進行改進,兼顧了網絡復雜度與識別精確度,在COCO數據集上檢測速度為51 ms,平均識別精確度(mean average precision,mAP)可達57.9%的最佳檢測效果;然而,該算法未應用于木結缺陷檢測。呂鑠[8]等針對YOLOv3使用新損失函數Tan-Squared Error,有效提高了COCO數據集的識別精確度,模型收斂更加快速。

YOLOv3目標檢測算法需要建立大量木條表面圖像數據集,并通過多層特征融合,無需手工設計特征,充分提取高泛化性的木結缺陷特征用于實時檢測。本研究將YOLOv3算法應用于自然紋理中木結缺陷檢測,并針對檢測結果mAP值不高的問題,分別對活結缺陷圖像進行數據擴增。采用k-means++算法提高目標框維度聚類效果,同時壓縮多尺度檢測網絡減少檢測時間,改進loss損失函數提高木條表面缺陷的識別精確度。

1 YOLOv3模型

1.1 目標框維度聚類算法

參考Faster R-CNN,YOLOv3引入一組固定尺寸的初始目標框(anchor box),通過k-means算法對數據集中人工標注目標框的高和寬進行維度聚類,得到k個初始目標框[5]。針對VOC20類和COCO80類數據集,YOLOv2設置5個初始目標框;針對COCO80類數據集,YOLOv3設置9個初始目標框。由于數據集類別與拍攝角度差異較大,并不適用木結缺陷檢測。k-means算法是從樣本集中隨機選k個初始聚類中心導致聚類準確率偏低,故研究選用改進后的k-means++算法設置閾值ε對目標框進行聚類分析,相距較遠點有更大概率被選為下一個初始聚類中心。同時,考慮到交并比(intersection over union,IOU)是目標框的預測結果與真實范圍的交集面積、并集面積的比值,與anchor box尺寸大小無關,因此k-means++聚類算法改用IOU作為空間距離計算代替歐氏距離,從而降低不同尺寸初始目標框產生的誤差。改進后空間距離函數Di(xj)為:

Di(xj)=1-IOU(xj,ci)

(1)

式中:xj∈X={x1,x2,…,xn}為真實目標框;ci∈{c1,c2,…,ck}為聚類中心;k為anchor box的個數。

聚類目標函數J(k)為每個樣本到其聚類中心的距離之和最小值,計算公式為:

(2)

利用改進后k-means++針對目標框進行維度聚類,使用手肘法分析聚類目標函數來選取最優聚類個數k。當k小于真實值6時,J(k)會大幅度下降;而當k到達真實值6時,J(k)快速停止大幅度下降,聚類效果降低,并且隨著k的不斷增加,曲線趨于穩定。因此,木條表面圖像數據集的最優初始目標框聚類個數為6,高和寬分別為(299.0,167.0)、(176.0,460.5)、(448.0,351.0)、(486.0,617.5)、(126.0,234.0)和(419.0,242.0)。目標框的平均交并比對比如表1所示。改進后k-means++的YOLOv3平均交并比相比YOLOv2和改進前YOLOv3提高約15%,在保證較高平均交并比的基礎上減少了目標框個數,降低了計算資源的占用。

表1 目標框的平均交并比對比Tab.1 Comparison of anchor boxes’ average IOU

k-means++算法流程如圖1所示。

圖1 k-means++算法流程圖Fig.1 Flowchart of k-means++ Algorithm

聚類目標函數的變化曲線如圖2所示。

圖2 聚類目標函數的變化曲線Fig.2 Curves of the clustering objective function

1.2 多尺度檢測網絡

YOLOv3借鑒了單個深層神經網絡檢測器(single shot multiBox detector,SSD)[9]、殘差網絡和特征金字塔網絡[10],在YOLO和YOLOv2的基礎上進行改進,設計了一種基于Darknet-53網絡和多尺度檢測網絡的目標檢測模型,大大降低了模型運算量,發揮了YOLO速度快的優勢。Darknet-53網絡共有53個卷積層。先使用5個不同的卷積核對圖像進行卷積操作,再由一系列3×3和1×1交替組成的卷積得到26×26特征圖。在網絡訓練過程中,卷積層的輸出是作為下一層池化層的輸入,而池化層的輸出又作為下一層卷積層的輸入。在第j個卷積核中,第l個卷積層的第i個卷積操作輸出矩陣計算式為:

(3)

式中:F(·)為激活函數;b為偏置;x為n×n的卷積核;m為輸入圖像m×m的矩陣。

選用平均值池化操作對卷積層的輸出進行采樣,進一步減小計算量、提高泛化性。在第j個池化區域中,第l個池化層的第i個池化操作輸出矩陣為:

(4)

選用識別和定位精確度高于Relu函數的Leaky函數作為卷積層激活函數。當輸入x小于0時,輸出不再是0,而是一個微小數字0.01x,計算式為:

F(·)=Leakey(x)=max(0.01x,x)

(5)

為獲得更好的細粒度特征,通過采樣融合不同網絡層中高分辨率和高語義特征圖,在3種尺度特征層上預測邊界框,當減少尺度時會提升大目標缺陷的識別精確度、降低小目標缺陷的識別精確度[11-12]。由于木結缺陷目標多數為大目標,所以將原3種尺度壓縮為2種尺度檢測。當預測大尺寸木結缺陷時,既可獲得更精準的檢測結果,又減少了計算量。在訓練模型過程中,每隔10輪改變模型的圖像輸入尺寸,同時將k-means++維度聚類得到的初始目標框(126.0,234.0)、(299.0,167.0)、(176.0,460.5)分配給(320×320)像素尺度上的各個網格,(419.0,242.0)、(448.0,351.0)、(486.0,617.5)分配給(416×416)像素尺度上的各個網格,用于預測木結缺陷目標框,能讓模型適應不同尺度的輸入圖像,更具有魯棒性。YOLOv3算法的網絡結構如圖3所示。

圖3 YOLOv3算法的網絡結構圖Fig.3 YOLOv3 algorithm network structure

1.3 loss損失函數

YOLOv3將輸入圖像分成Sh×Sw的高×寬網格,負責預測B個目標框(bounding box,bbox)坐標和對應的置信度得分(confidence score,CS)。在訓練預測特征圖過程中,使用五元組B(x,y,w,h,cs)來定義預測的邊界框[12]。其中:x和y為bbox的中心坐標,w和h為bbox的寬度和高度,都在[0,1]范圍內。YOLOv3改進后坐標為:

(6)

式中:cx、cy為從圖像左上角的坐標偏移量;pw、ph為預測目標框的寬和高;tx、ty、tw、th為網絡的學習目標;bx、by、bw、bh為最終得到的bbox坐標。

假設每個網格預測C個目標類別概率,則輸出的張量維度為Sh×Sw×B×(5+C)。

在訓練網絡過程時,網絡會不斷學習真實目標框尺寸特點,邊界框的高寬也在不斷調整以接近真實目標框。而在預測目標類別與bbox位置坐標時,YOLOv3中loss損失函數為:

(7)

式中:Errcoord為預測數據與標定數據之間的坐標誤差;ErrIOU為置信度誤差;Errclass為分類誤差。

其中,坐標誤差Errcoord為:

(8)

Lcross-entropy的計算式為:

Lcross-entropy(p,q)=p×log(q)+(1-p)×log(1-q)

(9)

置信度誤差ErrIOU為:

(10)

分類誤差Errclass為:

(11)

圖與x的函數圖像Fig.4 The function of and x

當bbox尺寸誤差較小時梯度也較小,隨著bbox尺寸誤差逐漸變大時梯度也逐漸變大。因此將坐標誤差Errcoord中的w和h改進為:

2 結果與分析

2.1 試驗配置與數據集

2.1.1 試驗數據集

以木結缺陷作為研究對象,對Basier-12k線掃相機采集到的松木木條表面圖像進行等分切割,共7 876張。隨機選取其中7 376張作為訓練數據集(含有4 260個死結,821個活結),并將剩余的500張作為測試數據集(含有354個死結、89個活結)。由于活結圖像數量過少導致類別不平衡問題,為提高活結識別精確度,對訓練數據集中活結圖像采用水平和垂直鏡像、隨機裁剪以及±15°、±30°旋轉等方法進行數據擴增。同時,在訓練模型時利用自適應直方圖均衡化、飽和度和曝光度調整訓練數據集,以增加樣本的魯棒性。隨學習率增加的mAP值曲線如圖5所示。木條表面圖像數據集中缺陷目標共分為兩類:①活結缺陷;②死結缺陷。

圖5 mAP值隨學習率增加的變化曲線Fig.5 mAP curve with learning rates increasing

2.1.2 試驗軟硬件配置

改進后YOLOv3算法在開源框架TensorFlow上實現,主機配置為Intel Core I5-8400 CPU,2.4 GHz主頻,32 GB RAM,顯卡為英偉達GTX 1080Ti,11 GB 內存,操作系統為Ubuntu14.04,GPU加速庫為CUDA9.0和CUDNN7.03,數據處理使用MATLAB、Python、OpenCV庫,圖像采集使用型號為RAL 12288-8GM的Basier-12k線掃相機。

2.2 試驗參數與性能指標

2.2.1 試驗參數

考慮改進后的YOLOv3模型獲得圖像特征時,設置不同學習率(learning rate)和迭代次數(iteration)對mAP有明顯影響。因此,研究不同學習率和迭代次數情況下mAP的變化,從而找出最優學習率和最優迭代次數。

①最優學習率。

在訓練網絡模型時,learning_rate分別設置為10-10、10-9、10-8、10-7、10-6、10-5、10-4、10-3、10-2、10-1和1,iteration設置為20 000。用測試集進行檢測,分析圖5中mAP值隨學習率增加的變化曲線可知,當學習率增加到10-3時,mAP最高為87.13%,模型具有更好的性能;隨著學習率繼續增加,mAP呈下降趨勢,因此最優學習率為10-3。

②最優迭代次數。

在訓練網絡模型時,iteration分別設置為11×103、12×103、13×103、14×103、15×103、16×103、17×103、18×103、19×103、20×103、25×103和30×103,learning_rate設置為10-3。隨迭代次數增加的mAP值曲線如圖6所示。用測試集進行檢測,分析圖6中mAP隨迭代次數增加的變化曲線可知,當iteration增加到18 000時,mAP最高為88.63%,可得最優迭代次數為18 000。

圖6 隨迭代次數增加的mAP值曲線Fig.6 mAP curve with iterations increasing

最終試驗參數值設置:學習率為0.001、批尺寸(batch_size)為16、衰減系數(decay)為0.000 5、迭代次數為18 000、動量(momentu)為0.9。

2.2.2 性能指標

通過木結缺陷檢測結果的交并比來判別真假樣本。當IOU≥0.5時,結果為真正性樣本(true positive,TP);當IOU<0.5時,結果為假正性樣本(false positive,FP);當IOU=0時,結果為假負性樣本(false negative,FN)。召回率、精確率、AP值和mAP值分別如式(13)~式(16)所示。其中:N為木條表面圖像數據集中樣本數。

(13)

(14)

(15)

(16)

同時,使用AP和mAP值來評價網絡模型的性能,反映算法模型的好壞程度,值越高表示算法識別檢測效果越好。

2.3 試驗結果

改進后,YOLOv3網絡訓練過程中loss收斂曲線如圖7所示。

圖7 網絡訓練中loss收斂曲線Fig.7 Loss convergence curve in network training

當網絡迭代超過18 000時,各參數變化基本穩定,損失值收斂下降到約0.12,訓練結果較理想。最終檢測時間為0.015 6 s,mAP值為88.63%。其中,死結缺陷AP值為91.74%,活結缺陷AP值為85.50%。

使用改進前與改進后YOLOv3檢測I、II類圖像測試集。分析檢測結果可知:改進算法的檢測識別效果明顯提高,基本上不存在目標框漏檢和誤檢的問題,能較好地識別出完整的木結缺陷。Ⅰ、Ⅱ類圖像檢測結果如圖8所示。

圖8 I、II類圖像檢測結果圖Fig.8 Detection results with image type of I and II

為了進一步驗證改進后YOLOv3算法的優越性,對比Faster R-CNN、YOLOv3與改進后YOLOv3算法的mAP值和檢測時間。三種算法的檢測結果對比如表2所示。改進后YOLOv3算法識別木結缺陷效果更好,目標的平均識別精確度更高,檢測時間大大縮短,克服了傳統檢測方法實時性不足的缺點。

表2 三種算法的檢測結果對比Tab.2 Comparison of detection results among three algorithms

2.4 木結缺陷拼接

針對檢測后的木條表面圖像進行缺陷位置拼接。木結缺陷拼接如圖9所示。

圖9 木結缺陷拼接圖Fig.9 Splicing of wood-knot defects

圖9中:圖1的缺陷位置為[x1,y1,w1,h1],圖2的缺陷位置為[x2,y2,w2,h2],圖3的位置為[x3,y3,w3,h3],可得缺陷1位置信息為[(n-1)W+x1,min(y1,y2),w1+w2,max(h1,h2)]和缺陷2位置信息為[(n-1)W+x3,0,w3,H]。由于相機分辨率為12 288像素,其1像素對應3.5 μm,可得具體木結缺陷位置信息。若判斷圖(n-1)與圖n需要缺陷拼接,即|xi-xi+1|≤Δ,則缺陷i位置信息為{(n-1)W+xi}×3.5,0,(wi+wi+1)×3.5,H×3.5];若判斷圖n中含有完整缺陷,即|xi-xi+1|>Δ,則缺陷i位置信息為[{(n-1)W+xi}×3.5,0,wi×3.5,H×3.5]。

3 結論

針對死結和活結缺陷圖像,本試驗提出基于改進YOLOv3的自然紋理中木結缺陷檢測算法,用于解決檢測木結缺陷平均精確度較差、檢測時間不滿足實時性的問題。通過改用k-means++算法對數據集中真實目標框進行維度聚類,確定更適合木結缺陷檢測的初始目標框個數和尺寸。在YOLOv3模型基礎上,將原有的3種尺度檢測網絡壓縮為2種尺度檢測網絡,更改loss損失函數中坐標誤差,以提高識別精確度和減少運算量。通過試驗驗證了不同算法的性能。試驗結果表明:改進后YOLOv3算法能夠精確地檢測出死結和活結缺陷,具有較好魯棒性和實時性;相較于改進前,平均精確度提升7.47%,速度提高35%;相較于Faster R-CNN算法,平均精確度提升11.68%,速度提高約15倍。在后續研究中,將研究更多影響木結缺陷識別精確度和速度的因素,進一步優化YOLOv3網絡,以提高檢測實時性和精確度。

猜你喜歡
精確度檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
“硬核”定位系統入駐兗礦集團,精確度以厘米計算
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
易錯題突破:提高語言精確度
主站蜘蛛池模板: 极品性荡少妇一区二区色欲| 精品91视频| 国产成人高清精品免费软件| 国产高清不卡| 制服丝袜在线视频香蕉| 亚洲系列中文字幕一区二区| 999精品视频在线| 成人国产三级在线播放| 国产精品福利在线观看无码卡| 欧美日韩第二页| 欧美成在线视频| 久久久久免费看成人影片 | 激情综合网激情综合| 婷婷色婷婷| 国产女人在线视频| 日韩欧美高清视频| 亚洲欧洲美色一区二区三区| 97国产在线观看| 亚洲综合色婷婷中文字幕| 久久青草视频| 成人免费一级片| 国产凹凸一区在线观看视频| 日本高清免费一本在线观看 | 扒开粉嫩的小缝隙喷白浆视频| 日韩午夜福利在线观看| 91午夜福利在线观看精品| 亚洲精品久综合蜜| 欧美综合成人| 久久国产拍爱| 91精品aⅴ无码中文字字幕蜜桃 | 欧美成人精品高清在线下载| 无码精品福利一区二区三区| 在线观看国产精美视频| 人妻一区二区三区无码精品一区| 久久亚洲精少妇毛片午夜无码| 91精品情国产情侣高潮对白蜜| 成人国产免费| 欧美一区二区三区香蕉视| 毛片网站在线播放| 欧美亚洲国产精品久久蜜芽| 国产午夜福利亚洲第一| 高潮毛片免费观看| 一本综合久久| 亚洲欧美不卡视频| 欧美日韩国产在线人| 亚洲三级影院| 欧美一级高清片欧美国产欧美| 久久久久中文字幕精品视频| 国产精品免费久久久久影院无码| 国产小视频免费观看| 成人第一页| 亚洲日韩精品无码专区97| 欧美日韩一区二区在线播放| 无码综合天天久久综合网| 国产精品污视频| 国产小视频网站| 成人在线不卡视频| 免费a级毛片视频| 国产特一级毛片| 国产精品一区不卡| 网久久综合| 一本色道久久88亚洲综合| 麻豆精品在线| 国产主播在线一区| 日本在线国产| 97免费在线观看视频| 久热中文字幕在线观看| 国产一级毛片网站| 国产精品青青| 亚洲成人手机在线| 国产免费久久精品99re不卡| 91 九色视频丝袜| 伊人久综合| 久久午夜夜伦鲁鲁片不卡| 日韩欧美中文| 欧美啪啪视频免码| 成人精品在线观看| 国产美女主播一级成人毛片| 一区二区在线视频免费观看| 欧美激情视频一区| 久久精品丝袜高跟鞋| 亚洲人成色在线观看|