• 
    

    
    

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

      基于機器視覺與YOLO算法的馬鈴薯表面缺陷檢測*

      2021-08-23 10:12:54傅云龍梁冬泰陳賢兒
      機械制造 2021年8期
      關(guān)鍵詞:馬鈴薯卷積聚類

      □ 傅云龍 □ 梁 丹 □ 梁冬泰 □ 方 寧 □ 陳賢兒

      寧波大學(xué) 機械工程與力學(xué)學(xué)院 浙江寧波 315211

      1 研究背景

      近年來,隨著我國馬鈴薯主糧化戰(zhàn)略的實施,馬鈴薯在我國的種植面積迅速增大,成為僅次于水稻、小麥、玉米的種植面積第四大糧食作物[1-2]。我國馬鈴薯種植面積為5.8×104km2左右,年總產(chǎn)量約9.9×108t,位居世界第一[3]。馬鈴薯不但有較高的食用價值和藥用價值[4],而且因自身含有豐富的淀粉,成為塑料、造紙、化工等領(lǐng)域不可缺少的原材料。馬鈴薯在采摘、運輸、儲存過程中,不可避免會存在發(fā)芽、病斑、機械損傷、腐爛等表面缺陷,影響馬鈴薯的品質(zhì)與食用安全性。

      目前,在進(jìn)行馬鈴薯表面缺陷檢測時,主要由人工進(jìn)行分揀,工作強度大,效率低,可靠性和一致性比較差[5],嚴(yán)重阻礙馬鈴薯加工自動化產(chǎn)業(yè)的發(fā)展。隨著機器視覺技術(shù)的發(fā)展[6],國內(nèi)外學(xué)者針對馬鈴薯缺陷機器視覺檢測方法開展了相關(guān)研究。王溯源[7]將馬鈴薯表面缺陷統(tǒng)分為三類,分別基于六角錐體顏色空間、三基色顏色空間、單值段同化核算子實現(xiàn)三類表面缺陷的檢測。趙明富等[8]應(yīng)用高光譜成像技術(shù)和改進(jìn)的貝葉斯分類器,實現(xiàn)對馬鈴薯外部缺陷的識別,平均識別精度達(dá)到95%以上。楊森等[9]基于輕量卷積網(wǎng)絡(luò)實現(xiàn)馬鈴薯外部缺陷的無損檢測,平均識別準(zhǔn)確率能夠達(dá)到96.04%。 Zhang等[10]采用單次激發(fā)法多光譜成像系統(tǒng),建立一種基于全特征集的最小二乘支持向量機馬鈴薯缺陷分類模型,能夠檢測六類馬鈴薯表面缺陷。上述研究中,基于傳統(tǒng)圖像處理和高光譜成像技術(shù)的方法,雖然能夠?qū)崿F(xiàn)馬鈴薯表面缺陷的識別,但是識別缺陷種類和精度有限,系統(tǒng)的穩(wěn)定性較差?;谳p量卷積網(wǎng)絡(luò)的方法雖然提高了系統(tǒng)的穩(wěn)定性,但是識別精度和識別速度仍有待提高。

      針對馬鈴薯表面缺陷快速準(zhǔn)確檢測的需求,筆者提出一種基于機器視覺和YOLO算法的馬鈴薯表面缺陷檢測方法。

      這一方法采用圖像增廣對原始圖像進(jìn)行擴(kuò)充,通過最大類間方差法將部分?jǐn)?shù)據(jù)集的馬鈴薯圖像從背景中分離出來,用于預(yù)訓(xùn)練。建立基于YOLO算法的馬鈴薯表面缺陷識別方法,對原YOLO算法中的聚類方法進(jìn)行改進(jìn),基于二分K均值聚類算法進(jìn)行目標(biāo)框聚類分析。在訓(xùn)練過程中,采用分步訓(xùn)練方式優(yōu)化學(xué)習(xí)權(quán)重,提高檢測方法的穩(wěn)定性和檢測精度。

      2 數(shù)據(jù)集構(gòu)建

      2.1 圖像采集

      馬鈴薯常見的表面缺陷主要有腐爛、發(fā)芽、機械損傷、蟲眼、病斑五類,如圖1所示。

      ▲圖1 馬鈴薯常見表面缺陷

      從寧波市某批發(fā)市場篩選73個帶有表面缺陷的馬鈴薯和28個完好的馬鈴薯,用工業(yè)相機在不同的光照強度和背景下采集363張馬鈴薯圖像。市場采購的馬鈴薯,表面缺陷的多樣性有限,不能滿足工業(yè)數(shù)據(jù)集的要求,因此從網(wǎng)絡(luò)上另外收集687張帶有表面缺陷的馬鈴薯圖像。

      2.2 數(shù)據(jù)擴(kuò)增

      為避免數(shù)據(jù)集不足造成訓(xùn)練過程中產(chǎn)生過擬合問題,筆者通過調(diào)節(jié)亮度和對比度、旋轉(zhuǎn)、翻轉(zhuǎn)、縮放、高斯模糊、添加椒鹽噪聲等方法,進(jìn)一步對原有的馬鈴薯數(shù)據(jù)集進(jìn)行增廣。采用最大類間方差法對原始數(shù)據(jù)集進(jìn)行灰度閾值分割,去除背景,凸顯馬鈴薯表面特征,使YOLO算法在預(yù)訓(xùn)練過程中能更快地學(xué)習(xí)馬鈴薯缺陷特征。

      通過以上方式,將原有1 050張馬鈴薯圖像數(shù)據(jù)集擴(kuò)增至7 123張,數(shù)據(jù)集見表1。

      表1 馬鈴薯數(shù)據(jù)集

      最大類間方差法具有良好的自動閾值分割性能,基本思路是按照圖像灰度特性將原始圖像灰度值分為兩部分,使兩部分間的灰度值差異最大,同時每部分內(nèi)部差異最小。假設(shè)原始圖像大小為M×N,灰度值閾值為T,圖像中像素屬于目標(biāo)部分的灰度值區(qū)間為(T,L],像素屬于背景部分的灰度值區(qū)間為[0,T],灰度值k對應(yīng)的像素數(shù)記為Nk,對應(yīng)的概率記為Pk,Pk為:

      Pk=Nk/(M×N)

      (1)

      則類間方差g(T)為:

      g(T)=ω1(T)[μ(T)-μ1(T)]2

      +ω2(T)[μ(T)-μ2(T)]2

      (2)

      式中:ω1(T)、ω2(T)分別為像素被分為背景部分和目標(biāo)部分的概率;μ1(T)、μ2(T)為兩類像素的均值;μ(T)為圖像的整體均值。

      (3)

      (4)

      (5)

      (6)

      μ(T)=μ1(T)ω1(T)+μ2(T)ω2(T)

      (7)

      將式(7)代入式(2),化簡得:

      g(T)=ω1(T)ω2(T)[μ1(T)-μ2(T)]2

      (8)

      令T遍歷灰度值區(qū)間[0,L],尋找g(T)的最大值,此時所對應(yīng)的T即為所求閾值。

      2.3 數(shù)據(jù)標(biāo)注

      筆者通過labelImg圖像標(biāo)注軟件對7 123張馬鈴薯圖像進(jìn)行在線標(biāo)注,其中發(fā)芽、機械損傷、腐爛、蟲眼、病斑的類別號依次為0~4。缺陷標(biāo)簽內(nèi)容見表2。將原圖像長、寬歸一化至0~1,然后以(x,y)代表缺陷中心坐標(biāo),w、h分別代表缺陷目標(biāo)框的長和寬。

      表2 缺陷標(biāo)簽內(nèi)容

      3 識別方法

      3.1 YOLO算法

      YOLO算法是一種端對端學(xué)習(xí)的深度學(xué)習(xí)模型算法[11-14],不同于基于候選區(qū)域的深度學(xué)習(xí)模型算法,不需要提取候選區(qū)域,可直接輸入圖像獲得目標(biāo)類別和目標(biāo)邊框,擁有較好的檢測速度和精度。YOLO V4算法在YOLO V3算法目標(biāo)檢測架構(gòu)的基礎(chǔ)上,對數(shù)據(jù)處理、網(wǎng)絡(luò)訓(xùn)練、激活函數(shù)、損失函數(shù)等進(jìn)行優(yōu)化。

      筆者基于YOLO V4算法來實現(xiàn)馬鈴薯表面缺陷識別。馬鈴薯表面缺陷識別YOLO V4算法網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,這一網(wǎng)絡(luò)結(jié)構(gòu)由輸入端、主干網(wǎng)絡(luò)、頸部、檢測頭四部分組成。輸入端引入馬賽克數(shù)據(jù)增強和自對抗訓(xùn)練兩種新的數(shù)據(jù)增強方法,增強圖像可變性,提高目標(biāo)檢測系統(tǒng)的穩(wěn)定性。通過自對抗訓(xùn)練改變原始圖像,使神經(jīng)網(wǎng)絡(luò)對自身進(jìn)行對抗性訓(xùn)練。頸部采用路徑聚合網(wǎng)絡(luò)附加空間金字塔池化結(jié)構(gòu),空間金字塔池化結(jié)構(gòu)采用內(nèi)核為1×1、5×5、9×9、13×13的最大池化層串聯(lián)結(jié)構(gòu)。圖2中,Mosaic為馬賽克數(shù)據(jù)增強,SAT為自對抗訓(xùn)練,CBM為Mish卷積塊,CSP1~CSP5為跨階段局域網(wǎng)絡(luò),CBL為泄漏線性單元卷積塊,SPP為空間金字塔池化結(jié)構(gòu),PAN為路徑聚合網(wǎng)絡(luò)。

      ▲圖2 馬鈴薯表面缺陷識別YOLO V4算法網(wǎng)絡(luò)結(jié)構(gòu)

      馬鈴薯表面缺陷的識別流程如下:首先,構(gòu)建馬鈴薯表面缺陷圖像數(shù)據(jù)集,通過馬賽克數(shù)據(jù)增強和自對抗訓(xùn)練,對原始數(shù)據(jù)集進(jìn)行圖像增強處理;然后,使用CSPDarknet53主干網(wǎng)絡(luò)提取不同尺度的馬鈴薯表面缺陷特征,由頸部完成缺陷特征的路徑聚合;最后,由YOLO算法檢測頭完成目標(biāo)框和目標(biāo)類別置信度的檢測。置信度C為:

      C=PrI

      (9)

      (10)

      式中:Pr為用于判斷是否有目標(biāo)物落入候選網(wǎng)格的值,有為1,沒有為0;bP為預(yù)測目標(biāo)框面積;bT為真實目標(biāo)框面積;I為交并比。

      3.2 特征提取網(wǎng)絡(luò)

      馬鈴薯表面缺陷識別方法采用CSPDarknet53作為特征提取的主干網(wǎng)絡(luò),將Darknet53網(wǎng)絡(luò)原有的殘差塊與跨階段局域網(wǎng)絡(luò)相結(jié)合,以減小整個網(wǎng)絡(luò)的計算量,縮短計算所需要的時間,并且保證檢測的準(zhǔn)確率。CSPDarknet53主干網(wǎng)絡(luò)結(jié)構(gòu)由五個跨階段局域網(wǎng)絡(luò)構(gòu)成,跨階段局域網(wǎng)絡(luò)3~5是三個有效輸出層,分別輸出52×52×256、26×26×512、13×13×1 024圖像特征??珉A段局域網(wǎng)絡(luò)將淺層映射特征分為兩部分,對兩部分信息進(jìn)行融合??珉A段局域網(wǎng)絡(luò)將梯度信息融合在特征圖中,避免梯度信息重復(fù),在縮短網(wǎng)絡(luò)計算量的同時保證準(zhǔn)確率。

      殘差單元由特征提取層與兩個卷積塊經(jīng)過兩層卷積構(gòu)成。卷積塊是CSPDarknet53主干網(wǎng)絡(luò)中最基本的單元,由Mish函數(shù)、批歸一化和卷積操作組成。

      與傳統(tǒng)帶泄漏線性單元函數(shù)和線性單元函數(shù)相比,使用Mish函數(shù)作為主干網(wǎng)絡(luò)激活函數(shù),可以優(yōu)化梯度流。Mish函數(shù)具有的平滑特性使圖像信息能更深入地融合進(jìn)神經(jīng)網(wǎng)絡(luò),以獲得更好的精度和泛化能力。主干網(wǎng)絡(luò)Mish函數(shù)H(a)為:

      H(a)=atanh[ln(1+ea)]

      (11)

      式中:a為圖像像素經(jīng)卷積操作后的像素值。

      3.3 二分K均值聚類算法目標(biāo)框分析

      目標(biāo)框指置信度最高的檢測目標(biāo)所在的矩形框,傳統(tǒng)深度學(xué)習(xí)方法通過多尺度窗口滑動遍歷來進(jìn)行選取。YOLO算法在COCO數(shù)據(jù)集中進(jìn)行K均值聚類分析,得到一組先驗框,在訓(xùn)練過程中根據(jù)先驗框匹配程度來調(diào)整目標(biāo)框。 COCO 數(shù)據(jù)集所包含的檢測對象多種多樣,所聚類的先驗框在自然場景中具有較好的檢測效果。由于馬鈴薯表面缺陷識別的對象是五類典型缺陷,使用原有先驗框檢測難以滿足實時快速檢測要求,因此需重新進(jìn)行先驗框聚類分析。

      K均值聚類算法是一種無監(jiān)督的聚類分析算法,對于給定的樣本集,按照樣本的分布將樣本劃分為K個簇,并隨機選取K個對象作為初始的聚類中心,計算每個對象與各子聚類中心的歐氏距離。歐氏距離D為:

      D=1-I

      (12)

      采用誤差二次方和準(zhǔn)則函數(shù)作為聚類準(zhǔn)則函數(shù),誤差二次方和J為:

      (13)

      式中:ni為第i個聚類樣本點數(shù)量;mi為第i個聚類中心;xij為第i個聚類中的第j個樣本點。

      K均值聚類算法收斂速度相對較快,聚類效果較優(yōu),但最終結(jié)果和運行時間受初始聚類中心選取的影響較大,初始聚類中心選擇不當(dāng),很可能會造成局部最優(yōu)解。為解決隨機初始聚類中心點問題,筆者采用二分K均值聚類算法來進(jìn)行目標(biāo)框分析。二分K均值聚類算法不需要選取初始聚類中心,由一個樣本集分裂后得到兩個簇,對于K個簇則進(jìn)行K-1次分裂,具體流程如圖3所示。經(jīng)過多次試驗,在K為9的情況下,二分K均值聚類算法得到的馬鈴薯表面缺陷檢測先驗框最優(yōu),分別為(18,18)、(22,37)、(40,25)、(39,62)、(75,43)、(71,81)、(165,80)、(82,165)、(210,211)。

      4 試驗分析

      4.1 模型訓(xùn)練

      在筆者試驗平臺中,中央處理器采用英特爾酷睿i3-9100,主頻為3.6 GHz,圖形處理器采用英偉達(dá)GTX 1080Ti,顯存為11 GByte,內(nèi)存為16 GByte。模型參數(shù)中,輸入圖像大小為418像素×418像素,類別數(shù)設(shè)置為5,每次訓(xùn)練輸入的圖片數(shù)量為 64。動量值設(shè)為 0.949,權(quán)重衰減因數(shù)設(shè)為 0.000 5,學(xué)習(xí)率設(shè)為 0.001,最大迭代次數(shù)設(shè)為30 000。

      ▲圖3 二分K均值聚類算法流程

      為提高馬鈴薯表面缺陷檢測精度和模型訓(xùn)練速度,筆者用分步訓(xùn)練方式優(yōu)化模型參數(shù)。

      對最大類間方差法處理后的950張馬鈴薯圖像進(jìn)行預(yù)訓(xùn)練。經(jīng)過最大類間方差法處理的圖像沒有背景因素干擾,模型可以更快、更準(zhǔn)確地學(xué)習(xí)馬鈴薯表面缺陷特征,但此時模型穩(wěn)定性較差。

      為提高模型穩(wěn)定性和檢測精度,在預(yù)訓(xùn)練權(quán)重基礎(chǔ)上,對數(shù)據(jù)集7 123張圖像進(jìn)行多次訓(xùn)練。

      在基于YOLO算法的馬鈴薯表面缺陷識別訓(xùn)練過程中,每訓(xùn)練100次采集一次損失函數(shù)值,損失函數(shù)值變化曲線如圖4所示。在訓(xùn)練過程中,迭代至24 000次和27 000次時,學(xué)習(xí)率開始衰減。由圖4可知,隨著迭代次數(shù)的增加,損失函數(shù)值不斷減小,在訓(xùn)練到25 000次時,損失函數(shù)值已經(jīng)趨于平穩(wěn)。

      ▲圖4 損失函數(shù)值變化曲線

      4.2 評價標(biāo)準(zhǔn)

      通過精度AP、平均精度MP、識別時間t三個主要指標(biāo)來評價馬鈴薯表面缺陷檢測的效果。召回率R為:

      (14)

      精確率P為:

      (15)

      平均精度MP為:

      MP=AP/E

      (16)

      式中:Tp為馬鈴薯表面有缺陷樣本被檢測為有缺陷的數(shù)量;Fp為馬鈴薯表面無缺陷樣本被檢測為有缺陷的數(shù)量;FN為馬鈴薯表面有缺陷樣本被檢測為無缺陷的數(shù)量;E為識別數(shù)量。

      4.3 缺陷檢測

      選取360張馬鈴薯圖像用于測試筆者提出的馬鈴薯表面缺陷檢測方法的識別效果,每類缺陷圖像均在60張以上,其中38張圖像至少包含兩種缺陷,另有無缺陷圖像60張。識別結(jié)果如圖5所示,在不同背景下,筆者提出的檢測方法均能夠準(zhǔn)確識別缺陷位置和缺陷種類,對60張無缺陷的馬鈴薯圖像,也均可以實現(xiàn)準(zhǔn)確檢測。

      ▲圖5 馬鈴薯表面缺陷檢測方法識別結(jié)果

      為進(jìn)一步分析馬鈴薯表面缺陷檢測方法的識別效果,與高光譜成像法、基于輕量卷積網(wǎng)絡(luò)的方法、多光譜成像法、原YOLO V4算法進(jìn)行對比,對比結(jié)果見表3。表3中,×表示方法不能檢測,Δ表示沒有試驗數(shù)據(jù)。對于發(fā)芽缺陷,高光譜成像法和筆者方法識別精度達(dá)到100%,原YOLO V4算法和多光譜成像法識別精度不足90%。對于機械損傷缺陷,筆者方法明顯高于其它方法。對于病斑缺陷,筆者方法識別精度相比原YOLO V4算法提高了10個百分點以上。對于蟲眼缺陷,筆者方法與原YOLO V4算法的識別精度均達(dá)到100%,多光譜成像法識別精度只有84.71%,高光譜成像法和基于輕量卷積網(wǎng)絡(luò)的方法不能檢測此類缺陷。對于腐爛缺陷,筆者方法識別精度達(dá)到98.86%,高于其它檢測方法。

      表3 馬鈴薯表面缺陷檢測方法對比

      在平均識別精度方面,筆者方法相比原YOLO V4算法提高了7.03個百分點,相比其它三種檢測方法均提高了3個百分點以上,單幅圖像的識別時間只需要29 ms。筆者方法的平均識別精度達(dá)到99.46%,其中,發(fā)芽、蟲眼和合格品的檢測精度達(dá)到100%。試驗結(jié)果表明,基于機器視覺和YOLO算法的馬鈴薯表面缺陷檢測方法可以滿足馬鈴薯表面缺陷快速準(zhǔn)確檢測的需求。

      5 結(jié)束語

      針對馬鈴薯表面存在發(fā)芽、機械損傷、腐爛、蟲眼、病斑五類缺陷的檢測問題,筆者提出一種基于機器視覺和YOLO算法的馬鈴薯表面缺陷檢測方法。構(gòu)建馬鈴薯數(shù)據(jù)集,對馬鈴薯數(shù)據(jù)集進(jìn)行圖像增廣,解決原始數(shù)據(jù)集中圖像數(shù)量少且缺陷特征不均衡的問題。對原YOLO算法中的聚類方法進(jìn)行改進(jìn),采用二分K均值聚類算法進(jìn)行目標(biāo)框分析。通過最大類間方差法將950張馬鈴薯圖像從背景中分離出來,用于預(yù)訓(xùn)練,在預(yù)訓(xùn)練權(quán)重的基礎(chǔ)上對整個數(shù)據(jù)集進(jìn)行訓(xùn)練,得到最終權(quán)重。試驗結(jié)果表明,筆者提出的檢測方法明顯優(yōu)于其它四種檢測方法,平均識別精度達(dá)到99.46%,對五類缺陷檢測的精度均高于98%,單幅圖像識別時間約29 ms,可以有效實現(xiàn)對馬鈴薯表面缺陷的快速準(zhǔn)確檢測。

      猜你喜歡
      馬鈴薯卷積聚類
      馬鈴薯有功勞
      基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于傅里葉域卷積表示的目標(biāo)跟蹤算法
      基于DBSACN聚類算法的XML文檔聚類
      電子測試(2017年15期)2017-12-18 07:19:27
      定邊馬鈴薯
      陜西畫報(2016年1期)2016-12-01 05:35:30
      胖胖的馬鈴薯
      基于改進(jìn)的遺傳算法的模糊聚類算法
      一種層次初始的聚類個數(shù)自適應(yīng)的聚類方法研究
      秋馬鈴薯栽培技術(shù)
      威远县| 舒城县| 滦南县| 饶平县| 衡阳市| 阳江市| 乌苏市| 建昌县| 涞源县| 卢氏县| 聂荣县| 永登县| 星子县| 马龙县| 聊城市| 太湖县| 雷山县| 金平| 开江县| 五河县| 晋城| 浠水县| 汶上县| 陇南市| 溆浦县| 辽阳县| 广汉市| 定陶县| 临澧县| 巴林右旗| 田阳县| 武宁县| 天水市| 奈曼旗| 新郑市| 新乐市| 临沧市| 家居| 上虞市| 康马县| 塔河县|