朱霆芳,趙 博,劉陽春,馮 林,李明輝
(中國農(nóng)業(yè)機械化科學(xué)研究院集團有限公司,北京 100083)
飲料生產(chǎn)過程中,飲料灌裝液位精度受灌裝設(shè)備的硬件狀況和定量灌裝控制系統(tǒng)控制策略的影響會出現(xiàn)瓶裝飲料液位高度波動[1]。影響因素通常有飲料的液體特性及飲料內(nèi)的固態(tài)成分、灌裝設(shè)備故障、自動補償控制系統(tǒng)調(diào)控策略等,因而灌裝作業(yè)中瓶裝飲料會出現(xiàn)灌裝液位差[2-4]。灌裝后的液位高度檢測可以幫助廠家確保質(zhì)量、控制成本,長期出現(xiàn)灌裝過量會造成原料需求量增加,企業(yè)利潤減少;缺量飲料流入市場,會造成企業(yè)的信譽損失,從而影響消費者消費決策[5]。通過液位檢測可以反饋生產(chǎn)設(shè)備狀態(tài),出現(xiàn)大量灌裝高度不合格飲料時,及時反饋錯誤,設(shè)備根據(jù)反饋信號及時調(diào)整參數(shù)修正錯誤,保障生產(chǎn)安全,提高生產(chǎn)效率[6-8]。
瓶裝飲料液位檢測依賴光電傳感器發(fā)出視覺檢測程序觸發(fā)“開關(guān)”,配合壓力傳感器測量、電容式傳感器等對灌裝液位進行檢測,自機器視覺檢測技術(shù)應(yīng)用后,在大部分PET 飲料瓶質(zhì)量檢測、灌裝后液位檢測多采用光電傳感器觸發(fā)檢測開關(guān),配合圖像處理算法構(gòu)成檢測系統(tǒng)[9-19]。早期基于Opencv 液位識別方法識別速度較慢,目前多數(shù)以光電傳感器作為液位檢測圖像處理程序的觸發(fā)器[17]。
隨著機器視覺技術(shù)的成熟,目前機器視覺識別速度已能達到高速生產(chǎn)檢測的要求。使用機器視覺在飲料生產(chǎn)中作為檢測觸發(fā)程序,不僅可以降低檢測系統(tǒng)硬件使用量,集成化檢測系統(tǒng),還能快速對檢測內(nèi)容定位和調(diào)度檢測程序,并且可以簡化檢測系統(tǒng)設(shè)備結(jié)構(gòu),彌補傳感器冗雜的系統(tǒng)硬件布局缺點,提高系統(tǒng)效率和可靠性[18-20]。飲料生產(chǎn)線視覺檢測系統(tǒng)背景較為簡單,因而更容易區(qū)分檢測目標,圖像中信息量少,配合圖像處理方法識別液位高度也就越快。本研究在YOLOv7 基礎(chǔ)上參考飲料生產(chǎn)中飲料瓶質(zhì)量檢測和飲料液位檢測方法,設(shè)計整套系統(tǒng)在背光照明的條件下實現(xiàn)瓶裝飲料液位檢測的快速識別和定位,并驗證了識別速度與識別準確率,為實現(xiàn)高速液位檢測提供識別模型,并快速定位液位區(qū)域,為液位高度檢測程序提供觸發(fā)指令,取代光電傳感器作為檢測程序的觸發(fā)器。
待采集的飲料瓶放置于傳送帶上,傳送帶寬25 cm;傳送帶一側(cè)設(shè)置CMOS 傳感器海威工業(yè)相機,型號為MV-CE060-10UC,8 mm 焦距鏡頭,采集圖像分辨率為3 072 像素×2 048 像素;另一側(cè)正對攝像頭設(shè)置背光板,背光板尺寸30 cm×60 cm,可滿足市場上大部分300~650 mL 飲料瓶的高度,以此模擬生產(chǎn)的環(huán)境,其實際布局如圖1 所示。在采集圖像試驗臺上采集不同類型瓶裝飲料液位。為獲得更好的液位特征完善識別模型,采集時以量筒測量后確定的飲料標準凈含量液位面為高度參考面,采集了俯視、平視和仰視3 個視角的圖像作為學(xué)習(xí)樣本,采集圖像如圖2 所示。
圖1 瓶裝飲料液位檢測硬件布局Fig.1 Measurement hardware layout of bottled beverages liquid level
圖2 采集視角示意Fig.2 Schematic diagram of acquisition angle
采集PET 瓶裝飲料分類如圖3 所示,將采集PET瓶類型分為透明瓶透明液位、透明瓶有色液位、深色透明瓶、表面粗糙瓶、直頸瓶、淺色透明瓶、白色不透明瓶和瓶頸不規(guī)則瓶8 類。8 種瓶分別采集有標簽有蓋、有標簽無蓋、無標簽有蓋和無標簽無蓋4 小類樣本。每種類型飲料瓶基于飲料瓶形狀過渡對液位進行高度分段,據(jù)此條件作為液位高度變量。
圖3 不同類型飲料瓶圖像Fig.3 Images of different types of beverage bottles
由于生產(chǎn)線生產(chǎn)速度不同,多瓶飲料排列間隔也不同,為模擬生產(chǎn)時多瓶排列情況,將多瓶飲料不同間距排列從緊密到稀松分為4 種間隔:緊密、間距2~3 cm、間距5 ~6 cm 和間距8 ~12 cm,如圖4所示。
圖4 飲料瓶不同間距排列Fig.4 Different interval arrangement of beverage bottles
由于YOLOv7 網(wǎng)絡(luò)中默認識別的80 類可識別目標包含飲料瓶,因而只需驗證該模型在經(jīng)過訓(xùn)練后能夠正常識別和正確框定液位即可滿足識別要求。在對采集的部分樣本標注后,通過400 輪次的訓(xùn)練,訓(xùn)練后驗證效果如圖5 所示。
圖5 飲料液位識別與定位Fig.5 Beverage level identification and positioning
將采集的原始圖像篩選出無殘影的圖像,對圖像采取如下方式修改,增強模型對圖像識別準確性。
擴充采集樣本,模擬暗光與背光亮度過高,偏色處理模擬顏色失真,改變明度,圖6a 為隨機選取圖像改變色相、飽和度和明度權(quán)重的樣本圖像。模糊圖像,從選取的圖像中隨機選取圖像,模擬實際應(yīng)用中拍攝出現(xiàn)異常的情況,增加高斯、椒鹽和乘法噪聲;部分虛化圖像模擬鏡頭有霧氣。圖6b 分別為加高斯、椒鹽、乘法噪聲和虛化的樣本圖像。
圖6 處理后的圖像Fig.6 Processed images
為進一步驗證模型復(fù)雜圖片識別能力,選取部分旋轉(zhuǎn)與加馬賽克處理,圖6c 是瓶裝飲料原始圖像旋轉(zhuǎn)和馬賽克處理的樣本圖像。
已驗證YOLOv7 能夠正常且準確識別和框定液位,通過改進YOLOv7 結(jié)構(gòu)(圖7),使得該算法更加適用于瓶裝飲料液位識別與框定,在實際生產(chǎn)檢測中與檢測程序更加契合[21]。
圖7 YOLOv7 網(wǎng)絡(luò)框架Fig.7 Network framework of YOLOv7
YOLOv7 基于空間金字塔池化結(jié)構(gòu)(Spatial Pyramid Pooling,SPP),通過跨階段局部網(wǎng)絡(luò)CSPNet 結(jié)構(gòu)設(shè)計的一種SPPCSPC 的空間金字塔池化結(jié)構(gòu)[21-22]。SPP需要指定3 次卷積核大小,默認核大小為5、9、13,通過將來自CBS 模塊的數(shù)據(jù)進行3 次池化并拼接,然后再過一個CBS,旨在增強特征圖特征表達能力。為獲得訓(xùn)練加速和加速推理,采用更快的空間金字塔池化結(jié)構(gòu)(Spatial Pyramid Pooling - Fast,SPPF),將輸入串行通過3 個5×5 卷積核的MaxPool 層,最后將各個輸出連接,與SPP 相比,SPPF 指定一個卷積核,每次池化后的輸出會成為下一個池化的輸入,計算速度更快,以此為基礎(chǔ)改造該結(jié)構(gòu)為SPPFCSPC 結(jié)構(gòu),其結(jié)構(gòu)如圖8 所示[23-24]。
圖8 SPPFCSPC 結(jié)構(gòu)Fig.8 Structure of SPPFCSPC
YOLOv7 采用CIoU 損失函數(shù),其縱橫比權(quán)重不明確,其公式中參數(shù)反映的是長寬比差異,而不是寬高分別與其置信度的真實差異,在訓(xùn)練后得到模型檢測液位時會因為瓶中傾斜液位而出現(xiàn)檢測框偏移較大,因而改進為SIoU 公式[25]。
角度計算如圖9 所示,其他計算如下。
圖9 角度損失函數(shù)成本貢獻計算Fig.9 Calculation of angle cost contribution into loss function
式中 L ossSIoU?總體損失函數(shù)
IoU?預(yù)測框與真實框交集和并集比值
Δ?距離損失
Ω?形狀損失
Λ?角度損失
A?面積
B?真實框
cw、ch? 真實框與預(yù)測框最小外接矩形的寬和高
chc? 真實框和預(yù)測框中心點的高度差
σc?真實框和預(yù)測框中心點的距離
w、h?預(yù)測框的寬和高
wgt、hgt?真實框的寬和高
θ?形狀損失關(guān)注程度,值為4
SIoU 損失函數(shù)考慮了期望回歸之間的向量夾角,即角度損失Λ,還包括距離損失Δ、形狀損失Ω、IoU損失。方向框的角度會影響回歸,引入了角度損失Λ使得預(yù)測框快速地移動到最近地最近角度的軸,隨后模型將嘗試首先在X 或Y 軸做預(yù)測(以最接近者為準),然后沿著相關(guān)軸繼續(xù)接近。采用SIoU 作為損失函數(shù)相等的訓(xùn)練輪次下精度更高,添加角度懲罰進一步限制距離損失,有效地減少了損失的總自由度[25]。
使用處理后的圖像作為訓(xùn)練數(shù)據(jù)集,采用YOLOv7模塊,400 次迭代,每8 個樣本作為一個批處理單元(Batch size)。以多類別平均精度mAP、準確率(預(yù)測為正樣本實際為正的概率)Precision、損失值Loss及召回率Recall(實際為正的樣本中被預(yù)測為正樣本的概率),作為模型評價指標;以平均精度mAP 和檢測時間t 作為已訓(xùn)練好的模型的主要評價指標。訓(xùn)練配置如表1 所示。
表1 訓(xùn)練與測試環(huán)境Tab.1 Train and test environment setting
標注數(shù)據(jù)集,標注圖像共2 477 幅,單瓶樣本中,無色透明瓶755 幅、有色透明瓶463 幅、不透明白色瓶150 幅、表面粗糙瓶240 幅;多瓶排列樣本269 幅。修改HSV 權(quán)值樣本100 幅、旋轉(zhuǎn)樣本100 幅、加馬賽克100 幅、加噪點150 幅及虛化樣本150 幅。按照4∶1∶1 的比例分配為訓(xùn)練集、驗證集和測試集。
改進后的損失函數(shù)曲線如圖10 所示。模型損失函數(shù)曲線在前50 輪損失值下降較快后開始收斂,300 輪之后損失值變化較小,并且損失值較小,可以確定損失函數(shù)有效。
圖10 模型訓(xùn)練參數(shù)曲線Fig.10 Parameters curves of model training
為驗證改進后的YOLOv7 飲料生產(chǎn)線關(guān)鍵目標檢測模型的識別性能,對模型的測試集做分類驗證。
(1)將分配好的含所有類別圖像的測試集圖像做混合測試,驗證模型性能。
(2)測試集分類驗證,將分類好的測試集圖像樣本、改變HSV 權(quán)值的樣本、馬賽克模糊和加噪聲3 類識別驗證,并對以上識別結(jié)果框定區(qū)域進行人工評估。
將同樣的訓(xùn)練集分別在原YOLOv7 和改進后的YOLOv7 模型上訓(xùn)練。使用二者訓(xùn)練后的模型與本研究改進后的YOLOv7 訓(xùn)練好的最好權(quán)值模型在測試集上驗證。選取測試項為飲料瓶、液位識別精度、總體識別精度和平均精度,結(jié)果如表2 所示,改進后的模型飲料液位識別精度為96.3%,比未改進模型94.5%高1.8 個百分點,模型占用71.3 MB 存儲空間。平均識別時間10.7 ms,非極大值抑制時間1.4 ms,平均識別框定時間12.1 ms。
表2 改進后模型評估Tab.2 Improved model evaluation單位:%
進一步測試模型在暗光、色彩失真條件下模型的可靠性和檢測的準確性,選取暗光和修改色相、飽和度、亮度和全圖馬賽克(馬賽克核為15×15)的圖片各30 張,包含多瓶排列樣本和空瓶,分別使用原算法和改進的YOLOv7 訓(xùn)練后得到的最好的模型中測試得到結(jié)果如表3 和圖11 所示。
表3 失色樣本檢測Tab.3 Discoloration sample detection
圖11 失色樣本檢測結(jié)果Fig.11 Test results of discolored samples
由表3 和圖11 可知,在暗光、馬賽克、修改飽和度和改變色調(diào)的條件下模型沒有出現(xiàn)漏檢且液位定位準確。
在實際生產(chǎn)過程,因為相機過熱、線路不穩(wěn)定等因素會出現(xiàn)部分采集樣本出現(xiàn)噪點,因而為驗證模型穩(wěn)定性,分別選取30 張加了高斯、椒鹽和乘法噪點的樣本圖像實測模型的抗噪點能力,包含多瓶排列樣本和空瓶,檢測結(jié)果如表4 和圖12 所示。通過實測,模型對于出現(xiàn)噪點的樣本同樣能準確識別,并且液位框定位置準確;增加噪點的樣本仍能準確識別并定位液位位置,對含氣泡液位也能正確識別。
表4 噪點樣本檢測Tab.4 Noise sample detection
圖12 加噪點飲料液位樣本檢測結(jié)果Fig.12 Test results of add noise bottled beverage liquid level samples
(1)提出的基于YOLOv7 網(wǎng)絡(luò)模型單幅圖像關(guān)鍵目標識別時間10.7 ms 及非極大值抑制(NMS)處理時間1.4 ms,識別并定位平均耗時12.1 ms,模型占71.3 MB存儲空間。證明該模型對飲料關(guān)鍵檢測目標識別與定位的可行性,替換傳統(tǒng)傳感器作為瓶裝飲料液位高度檢測的圖像識別程序的觸發(fā)器,可實現(xiàn)實時的檢測觸發(fā)。
(2)識別模型可實時輸出識別框的像素位置數(shù)據(jù),圖像處理程序根據(jù)框位置可直接從圖像中截取識別目標進行基于圖像處理的實時識別。
(3)對多種處理后圖像的試驗驗證表明,該模型具有抗干擾檢測能力,并且在暗光、顏色失真、加噪點和混合多類飲料且多噪點情況下也能識別目標,能夠?qū)Χ喾N飲料瓶液位識別。