楊心安,朱文魁,張明建,周 博,王 兵*,馮 楊,高 森*,王珵珵,陳 睿
1. 中國(guó)煙草總公司鄭州煙草研究院,鄭州高新技術(shù)產(chǎn)業(yè)開(kāi)發(fā)區(qū)楓楊街2 號(hào) 450001
2. 四川中煙工業(yè)有限責(zé)任公司長(zhǎng)城雪茄煙廠,四川省什邡市鎣華山路南段128 號(hào) 618400
隨著我國(guó)雪茄煙需求量的快速增長(zhǎng),傳統(tǒng)人工卷制雪茄煙已經(jīng)難以滿足國(guó)內(nèi)消費(fèi)市場(chǎng),機(jī)制雪茄煙成為當(dāng)前消費(fèi)熱點(diǎn)。機(jī)制雪茄煙采用機(jī)器制作茄芯,再通過(guò)手工或機(jī)器卷制的方式包裝茄套和茄衣[1]。在機(jī)制雪茄煙裝盒過(guò)程中,為避免出現(xiàn)煙支缺支、斷殘、破損等質(zhì)量問(wèn)題,目前主要依賴人工目測(cè)的方式對(duì)小盒內(nèi)煙支進(jìn)行檢驗(yàn),存在勞動(dòng)量大、人工成本高及檢驗(yàn)標(biāo)準(zhǔn)不統(tǒng)一等問(wèn)題,難以滿足檢測(cè)精度和實(shí)時(shí)性要求。近年來(lái),煙草行業(yè)廣泛采用高效、精準(zhǔn)、抗干擾能力強(qiáng)的機(jī)器視覺(jué)技術(shù)[2-4]開(kāi)展煙草病害識(shí)別、煙葉成熟度識(shí)別和等級(jí)劃分、傳統(tǒng)卷煙外觀質(zhì)量缺陷檢測(cè)等工作,有效提高了工作效率。陳智斌等[5]采用深度學(xué)習(xí)方法自動(dòng)識(shí)別卷煙牌號(hào),識(shí)別正確率達(dá)到了98%,為卷煙零售數(shù)據(jù)自動(dòng)化采集提供了技術(shù)支持;劉延鑫等[6]建立了基于YOLOv3 的煙草病害檢測(cè)模型,實(shí)現(xiàn)了對(duì)5種常見(jiàn)煙草病害的精準(zhǔn)快速檢測(cè);汪睿琪等[7]使用YOLOv5模型對(duì)上、中、下3個(gè)部位5個(gè)成熟度的煙葉圖像進(jìn)行訓(xùn)練并建立煙葉成熟度識(shí)別模型,實(shí)現(xiàn)了對(duì)鮮煙葉成熟度的有效、準(zhǔn)確判定;魯鑫等[8]采用傳統(tǒng)圖像處理方法對(duì)條盒煙透明塑料包裝上的拉線頭進(jìn)行檢測(cè)后,利用改進(jìn)的YOLOv4 模型進(jìn)行二次復(fù)檢,解決了工業(yè)場(chǎng)景下拉線頭缺陷檢測(cè)誤報(bào)率高的問(wèn)題;袁國(guó)武等[9]基于ResNeSt模型建立了一種煙支外觀缺陷分類方法,準(zhǔn)確率達(dá)到了92.04%;肖雷雨等[10]基于改進(jìn)的YOLOv3 模型建立了一種煙梗在線分類識(shí)別模型,煙梗識(shí)別精確率達(dá)到了95.01%;劉鴻瑜等[11]對(duì)YOLOv5s 模型改進(jìn)后建立煙支外觀缺陷檢測(cè)方法,平均檢測(cè)速度達(dá)到4.7 ms/支。目前,針對(duì)雪茄煙的缺陷檢測(cè)研究較少,金懷國(guó)等[12]基于機(jī)器視覺(jué)技術(shù)建立的雪茄煙質(zhì)量檢測(cè)裝置僅能識(shí)別缺支、斷殘等缺陷煙支而無(wú)法有效識(shí)別破損煙支。為此,結(jié)合圖像形態(tài)學(xué)處理技術(shù)和深度學(xué)習(xí)建立盒裝機(jī)制雪茄缺陷的分類視覺(jué)檢測(cè)方法,對(duì)特征明顯的斷殘、缺支缺陷和不同程度的破損缺陷進(jìn)行分類檢測(cè),以期提高雪茄煙包裝生產(chǎn)品質(zhì)。
“長(zhǎng)城雪茄Mini”牌機(jī)制雪茄煙,10 支/盒,鐵制小盒包裝,由四川中煙工業(yè)有限責(zé)任公司長(zhǎng)城雪茄廠提供。
REX 背式包裝機(jī)(荷蘭皇家阿吉奧雪茄公司);A7A20CG9 工業(yè)相機(jī)(浙江華??萍脊煞萦邢薰荆?,分辨率4 096 px×3 000 px,感光芯片為IMX304,像素位深度12 bit,圖像采集軟件為MV viewer,相機(jī)曝光量為11 000 lx·s,亮度90 cd/m2,飽和度100%。
在雪茄煙包裝機(jī)煙支裝盒和合盒之間的傳輸通道上設(shè)置圖像采集工位并安裝A7A20CG9 工業(yè)相機(jī),采集雪茄煙盒(未合盒)圖像。①缺支、斷殘檢測(cè)數(shù)據(jù)集:取70 個(gè)雪茄煙盒并拍攝圖像,包含無(wú)缺陷樣本10 個(gè),人為制造缺支、斷殘缺陷樣本各30 個(gè)。②破損檢測(cè)數(shù)據(jù)集:取210個(gè)人為制造破損缺陷雪茄煙盒并拍攝圖像,包含明顯破損[破損面積>(3 mm×3 mm)]、不明顯破損[破損面積<(2 mm×2 mm)]和微明顯破損(介于明顯破損與不明顯破損之間)樣本各70 個(gè)(圖1),從3 種破損程度的圖像中各挑選60張采用數(shù)據(jù)增強(qiáng)的方式擴(kuò)充至1 080 張,并按9∶1 劃分為訓(xùn)練集和驗(yàn)證集。將剩余30 張破損圖像和70張缺支、斷殘圖像作為測(cè)試集。兩個(gè)數(shù)據(jù)集各類型圖像數(shù)量見(jiàn)表1。
表1 缺支、斷殘檢測(cè)和破損檢測(cè)數(shù)據(jù)集Tab.1 Dataset of missing and broken cigars and dataset of damaged cigars(張)
圖1 雪茄煙不同破損程度示意圖Fig.1 Schematic diagram of cigars with damages of different degrees
對(duì)獲取的圖像進(jìn)行霍夫變換[13]后,使用邊緣檢測(cè)和最小外接矩形法[14]對(duì)雪茄煙缺支、斷殘兩種較為明顯的特征進(jìn)行識(shí)別,判斷煙盒內(nèi)煙支數(shù)量以及煙支長(zhǎng)度是否符合要求;利用改進(jìn)的YOLOv5s深度學(xué)習(xí)模型[7]對(duì)原始圖像進(jìn)行檢測(cè),判斷煙支是否存在破損缺陷。
1.3.1 缺支、斷殘檢測(cè)方法
1.3.1.1 方法建立
①基于霍夫變換的目標(biāo)區(qū)域定位方法對(duì)原始缺支圖像(圖2a)、斷殘圖像(圖2b)進(jìn)行預(yù)處理,提取包含煙支的目標(biāo)區(qū)域(圖2c、2d),減少周邊物體對(duì)圖像的干擾。②讀取目標(biāo)區(qū)域,對(duì)圖像進(jìn)行灰度化、二值化以及形態(tài)學(xué)等預(yù)處理,然后對(duì)處理后圖像進(jìn)行邊緣檢測(cè);針對(duì)邊緣位置使用最小外接矩形法得到煙支的外接矩形(圖2e、2f),統(tǒng)計(jì)生成的最小外接矩形個(gè)數(shù),通過(guò)判斷矩形個(gè)數(shù)是否小于煙支數(shù)量(10支)來(lái)確定是否存在缺支情況。③統(tǒng)計(jì)煙支外接矩形的長(zhǎng)度,采用最大值Lmax作為正常煙支長(zhǎng)度,計(jì)算Li-Lmax與Lmax的比值ηi,若ηi≥斷殘比閾值則判斷為斷殘煙支,否則判斷為正常煙支。斷殘比閾值的確定方法:收集正常與斷殘煙支樣品并統(tǒng)計(jì)煙支長(zhǎng)度,確定正常煙支長(zhǎng)度分布在7.2~7.4 cm,斷殘煙支長(zhǎng)度分布在5.4~5.9 cm,計(jì)算可得斷殘比(斷殘煙支與正常煙支的長(zhǎng)度差值/正常煙支長(zhǎng)度)最小值為0.18%,即為斷殘比閾值。
圖2 盒裝機(jī)制雪茄缺支、斷殘缺陷圖像檢測(cè)結(jié)果Fig.2 Image inspection results of missing and broken machine-made cigars in packets
1.3.1.2 方法評(píng)估
對(duì)表1 中缺支、斷殘檢測(cè)數(shù)據(jù)集中的70 張圖像進(jìn)行檢測(cè),記錄每個(gè)樣本的檢測(cè)結(jié)果和檢測(cè)時(shí)間ti(i=1,2,3,…,70),統(tǒng)計(jì)缺支、斷殘、無(wú)缺陷3種樣本的識(shí)別準(zhǔn)確率,根據(jù)公式(1)計(jì)算該檢測(cè)方法的檢測(cè)速率。
1.3.2 破損檢測(cè)模型
1.3.2.1 模型建立
由于破損特征沒(méi)有明確的檢測(cè)指標(biāo)且雪茄茄衣顏色不均勻,圖像二值化處理難度較大,因此無(wú)法采用傳統(tǒng)的圖像處理技術(shù)識(shí)別破損煙支。本研究中采用基于深度學(xué)習(xí)的YOLOv5s 模型對(duì)破損煙支進(jìn)行檢測(cè)。破損檢測(cè)數(shù)據(jù)集中,煙支破損面積尺寸較小,為提高檢測(cè)能力,在YOLOv5s模型的backbone部分引入了金字塔壓縮注意力機(jī)制(Pyramid Squeeze Attention,PSA)[15]和EIoU 損失函數(shù)(EIoU Loss)[16]。PSA能夠在更細(xì)粒度的水平上有效提取多尺度空間信息,并能夠形成長(zhǎng)距離的信道依賴性;EIoU 損失函數(shù)將分別計(jì)算寬度與高度的差異值取代縱橫比,可以加速收斂提高精度,并減少樣本不均衡性帶來(lái)的影響。計(jì)算公式為:
式中:LEIoU代表EIoU 損失函數(shù)值;IoU 代表預(yù)測(cè)框與真實(shí)框的交并比;ρ(b,bgt)代表預(yù)測(cè)框與真實(shí)框中心點(diǎn)之間的歐式距離;c代表能夠同時(shí)包含預(yù)測(cè)框和真實(shí)框的最小閉包區(qū)域的對(duì)角線距離;ρ(w,wgt)代表預(yù)測(cè)框與真實(shí)框的寬度差值;cw代表預(yù)測(cè)框與真實(shí)框最小外接矩形的寬度;ρ(h,hgt)代表預(yù)測(cè)框與真實(shí)框的高度差值;ch代表預(yù)測(cè)框與真實(shí)框最小外接矩形的高度。
改進(jìn)后的YOLOv5s 模型如圖3 所示。采用Focus結(jié)構(gòu)對(duì)圖像進(jìn)行切片操作后,由PSA模塊對(duì)各個(gè)通道賦予權(quán)重;由CSP Darknet53和SPP池化模塊將圖像進(jìn)行特征分離,并利用FPN+PAN結(jié)構(gòu)從不同尺度上對(duì)特征進(jìn)行融合;通過(guò)Head檢測(cè)頭對(duì)圖像進(jìn)行預(yù)測(cè),生成目標(biāo)邊界框和預(yù)測(cè)類別概率,破損檢測(cè)結(jié)果見(jiàn)圖4。為避免將雪茄煙支上的茄衣脫落錯(cuò)誤識(shí)別為破損缺陷,同時(shí)能夠準(zhǔn)確識(shí)別破損樣本,設(shè)置了不同置信度閾值,可以統(tǒng)計(jì)各閾值下明顯破損、微明顯破損、不明顯破損以及無(wú)破損樣本的識(shí)別準(zhǔn)確率。
圖3 改進(jìn)后的YOLOv5s模型結(jié)構(gòu)圖Fig.3 Structure of modified YOLOv5s model
圖4 盒裝機(jī)制雪茄破損缺陷檢測(cè)結(jié)果Fig.4 Inspection results for damaged machine-made cigar in packet
1.3.2.2 模型評(píng)價(jià)指標(biāo)
采用精確率P(Precision)、召回率R(Recall)、某一類別平均準(zhǔn)確率AP(Average Precision)、多類別平均準(zhǔn)確率mAP(mean Average Precision)和每秒傳輸幀數(shù)FPS(Frames Per Second)評(píng)估模型表現(xiàn)[17]。
1.3.2.3 環(huán)境配置及參數(shù)
在Windows 11 操作系統(tǒng)上搭建Python3.9.16 和torch-1.12.1+cu113 深度學(xué)習(xí)框架并完成模型訓(xùn)練。對(duì)訓(xùn)練集圖像進(jìn)行數(shù)據(jù)增強(qiáng)(旋轉(zhuǎn)、翻轉(zhuǎn)、高斯噪聲、增量、裁剪),增加圖像樣本的豐富性。模型訓(xùn)練后,保存驗(yàn)證精度最優(yōu)模型,并使用測(cè)試集來(lái)評(píng)價(jià)模型的泛化能力。
采用SGD 優(yōu)化器對(duì)網(wǎng)絡(luò)進(jìn)行優(yōu)化,初始學(xué)習(xí)率設(shè)置為0.01,圖像批處理大小為8,最大迭代次數(shù)為300 輪,權(quán)重衰減率為0.000 5。采用遷移學(xué)習(xí)的方法,加載YOLOv5s的預(yù)訓(xùn)練權(quán)重。
硬件采用Interl Corei7-12700KF CPU@64 位3.60 GHz,128 GB RAM,NVIDIA GeForce RTX 3060 12 143 MB GPU。
對(duì)表1 中缺支、斷殘檢測(cè)數(shù)據(jù)集中的70 張圖像進(jìn)行測(cè)試,得到平均檢測(cè)速率為21幀/s,各類型樣本識(shí)別準(zhǔn)確率均為100%??梢?jiàn),該方法可以準(zhǔn)確識(shí)別缺支、斷殘和無(wú)缺陷樣本。
2.2.1 模型訓(xùn)練結(jié)果
圖5 為改進(jìn)后YOLOv5s 模型的Loss 曲線和mAP曲線??梢?jiàn),模型損失值Loss隨訓(xùn)練輪數(shù)的增加而快速降低,并在50輪訓(xùn)練之后逐漸趨于穩(wěn)定;多類別平均準(zhǔn)確率mAP 在50 輪之前快速上升并存在波動(dòng),100 輪之后逐漸趨于穩(wěn)定,說(shuō)明改進(jìn)后模型對(duì)于破損缺陷的識(shí)別性能良好。
圖5 改進(jìn)后YOLOv5s模型訓(xùn)練結(jié)果Fig.5 Training results of modified YOLOv5s model
通過(guò)消融實(shí)驗(yàn)對(duì)比改進(jìn)前后YOLOv5s 模型性能,結(jié)果見(jiàn)表2??梢?jiàn),在原始YOLOv5s模型中引入EIoU損失函數(shù)后,模型精度P提高0.87百分點(diǎn),召回率R無(wú)變化,AP值降低0.34百分點(diǎn),F(xiàn)PS降低4幀/s;引入PSA 模塊后,模型精度P 提高0.87 百分點(diǎn),AP值提高0.01百分點(diǎn),召回率R無(wú)變化,F(xiàn)PS降低2幀/s;同時(shí)引入EIoU 損失函數(shù)與PSA 模塊后,模型精度P提高1.80百分點(diǎn),AP值提高1.56百分點(diǎn),召回率R提高0.93 百分點(diǎn),F(xiàn)PS 降低7 幀/s。表明改進(jìn)后模型具有更好的性能,結(jié)合缺支、斷殘檢測(cè)速率為21 幀/s,得到本研究中建立的分類視覺(jué)檢測(cè)方法對(duì)單張圖像的缺陷檢測(cè)時(shí)間為0.080 s,可以滿足機(jī)制盒裝雪茄缺陷的實(shí)時(shí)檢測(cè)要求。
表2 不同檢測(cè)模型的性能對(duì)比Tab.2 Performance of different inspection models
2.2.2 模型檢測(cè)結(jié)果
利用改進(jìn)后YOLOv5s模型對(duì)表1中的100張測(cè)試集圖像進(jìn)行破損預(yù)測(cè),結(jié)果見(jiàn)圖6??梢?jiàn),改進(jìn)后模型可以準(zhǔn)確識(shí)別雪茄煙支中明顯、微明顯和不明顯3種破損缺陷,預(yù)測(cè)置信度均>0.5,對(duì)于明顯破損的檢測(cè)精度最高。如表3 所示,置信度閾值為0.50時(shí),破損檢測(cè)模型對(duì)3種破損樣本的識(shí)別準(zhǔn)確率均為100%,而對(duì)無(wú)損樣本的識(shí)別準(zhǔn)確率僅為94.28%,核對(duì)后發(fā)現(xiàn)識(shí)別錯(cuò)誤的無(wú)損樣本是將煙支上的雜色區(qū)域錯(cuò)誤識(shí)別為破損缺陷;置信度閾值為0.70時(shí),破損檢測(cè)模型對(duì)3種破損樣本的識(shí)別準(zhǔn)確率隨破損面積的減小而降低,但對(duì)無(wú)損樣本的識(shí)別準(zhǔn)確率達(dá)到100%;置信度閾值為0.55~0.65 時(shí),破損檢測(cè)模型對(duì)無(wú)損樣本和3 種破損樣本的識(shí)別準(zhǔn)確率均為100%。因此,將置信度閾值設(shè)定為0.60。
表3 不同置信度閾值下破損檢測(cè)模型的識(shí)別準(zhǔn)確率Tab.3 The identification accuracy of the damaged cigar inspection model at different confidence thresholds
圖6 破損檢測(cè)模型的檢測(cè)結(jié)果Fig.6 Inspection results of the model for damaged cigars
針對(duì)機(jī)制雪茄裝盒過(guò)程中存在的斷殘、缺支和破損等缺陷檢測(cè)問(wèn)題,結(jié)合圖像形態(tài)學(xué)處理技術(shù)和深度學(xué)習(xí)建立了一種分類視覺(jué)檢測(cè)方法。結(jié)果表明:①通過(guò)提取盒裝雪茄煙支輪廓和各煙支外接矩形建立的煙支缺支、斷殘檢測(cè)方法,對(duì)缺支、斷殘、無(wú)損3 種樣本的識(shí)別準(zhǔn)確率均為100%。②在YOLOv5s 模型中引入PSA 注意力機(jī)制與EIoU 損失函數(shù)建立煙支破損檢測(cè)模型,與改進(jìn)前YOLOv5s模型相比,檢測(cè)精度和召回率分別提高1.80 和0.93 百分點(diǎn);將模型置信度閾值設(shè)置為0.60時(shí),對(duì)無(wú)損樣本和3種破損樣本的識(shí)別準(zhǔn)確率均為100%。③采用本研究中建立的分類視覺(jué)檢測(cè)方法代替人工目測(cè)對(duì)盒裝機(jī)制雪茄缺陷進(jìn)行檢測(cè),單張圖像測(cè)試時(shí)間為0.080 s,可以實(shí)現(xiàn)對(duì)盒裝機(jī)制雪茄缺陷的實(shí)時(shí)檢測(cè)。