黃德成 任德均
摘 ?要:隨著新能源車的迅速發(fā)展,各汽車制造商正不斷推出新產(chǎn)品。在此背景下,各類工件供應(yīng)是否齊全成為相關(guān)企業(yè)關(guān)注的重要問(wèn)題。文章設(shè)計(jì)了一種基于機(jī)器視覺(jué)的工件計(jì)數(shù)系統(tǒng)。該系統(tǒng)具有視覺(jué)成像系統(tǒng),能夠?qū)Χ喾N工件進(jìn)行圖像采集。同時(shí)系統(tǒng)還設(shè)計(jì)了一套簡(jiǎn)單易操作、功能完備的工件計(jì)數(shù)軟件,滿足實(shí)時(shí)統(tǒng)計(jì)和工件種類拓展的需求。為了穩(wěn)定監(jiān)測(cè)工件位置信息,還設(shè)計(jì)了一種模擬光電傳感器的算法替代實(shí)物光電傳感器,減少系統(tǒng)受干擾的可能性。最后,運(yùn)用YOLOv5目標(biāo)檢測(cè)算法,實(shí)現(xiàn)了99.9%的檢測(cè)精度。
關(guān)鍵詞:機(jī)器視覺(jué);模擬光電門(mén);目標(biāo)檢測(cè);計(jì)數(shù)軟件
中圖分類號(hào):TP389.1;TP391.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2023)16-0171-05
Design of Workpiece Counting System Based on Machine Vision
HUANG Decheng, REN Dejun
(School of Mechanical Engineering, Sichuan University, Chengdu ?610065, China)
Abstract: With the rapid development of new energy vehicles, automakers are constantly introducing new products. In this context, whether the supply of various workpieces is complete has become an important issue for relevant enterprises. In this paper, a workpiece counting system based on machine vision is designed. This system has a vision imaging system that enables to carry out image acquisition of a wide range of workpieces. At the same time, the system also designs a set of easy-to-operate and fully functional workpiece counting software to meet the needs of real-time statistics and workpiece type expansion. In order to stably monitor the position information of the workpiece, this paper also designs an algorithm that simulates the photoelectric sensor to replace the physical photoelectric sensor, so as to reduce the possibility of system interference. Finally, the YOLOv5 target detection algorithm is used to achieve a detection accuracy of 99.9%.
Keywords: machine vision; analog photoelectric door; object detection; counting software
0 ?引 ?言
在汽車工業(yè)當(dāng)中,汽配維修是一個(gè)長(zhǎng)期的領(lǐng)域。對(duì)于汽修廠而言,因汽車零部件的替換維修等業(yè)務(wù),需要對(duì)各類零件進(jìn)行存儲(chǔ)統(tǒng)計(jì)以方便調(diào)用。因汽車品牌及款式眾多,對(duì)應(yīng)的零件種類更加紛繁復(fù)雜,且相當(dāng)一部分汽車零部件為金屬器件,大量的搬運(yùn)和人工計(jì)數(shù)統(tǒng)計(jì)對(duì)維修人員而言耗時(shí)費(fèi)力且效率、準(zhǔn)確度均不高。
目標(biāo)檢測(cè)技術(shù)是計(jì)算機(jī)視覺(jué)以及機(jī)器學(xué)習(xí)中的重要研究領(lǐng)域,而視覺(jué)檢測(cè)在計(jì)數(shù)領(lǐng)域主要應(yīng)用于農(nóng)牧業(yè)和水產(chǎn)養(yǎng)殖業(yè)等。田冉等[1]在2016年通過(guò)紅外傳感器與機(jī)器視覺(jué)融合的技術(shù)替代人工對(duì)果樹(shù)誘捕靶標(biāo)害蟲(chóng)進(jìn)行檢測(cè),實(shí)現(xiàn)了遠(yuǎn)距離、大面積、可持續(xù)的果樹(shù)害蟲(chóng)檢測(cè)技術(shù)支撐。中國(guó)計(jì)量大學(xué)古亭[2]在2020年運(yùn)用機(jī)器視覺(jué)對(duì)蠶繭進(jìn)行計(jì)數(shù)和分類識(shí)別,在預(yù)處理和二值化的基礎(chǔ)上,采用距離變換的方法對(duì)蠶繭進(jìn)行準(zhǔn)確計(jì)數(shù)。2021年,鞠文輝[3]使用YOLOv3算法在單幀圖像中對(duì)麥穗進(jìn)行檢測(cè),從而完成對(duì)小麥產(chǎn)量的預(yù)估,同時(shí)用Faster R-CNN算法對(duì)水流中浮游生物進(jìn)行目標(biāo)檢測(cè)計(jì)數(shù)。
上述文獻(xiàn)中處理機(jī)器視覺(jué)檢測(cè)計(jì)數(shù)問(wèn)題多以傳統(tǒng)視覺(jué)算法為立足點(diǎn),對(duì)圖像進(jìn)行BLOB分析,在形態(tài)學(xué)處理以及閾值分割等操作下找到合適的提取方法。此類方法需要人工對(duì)特定類別圖像目標(biāo)物進(jìn)行特征分析和提取,具體算法僅適用于特定目標(biāo)物,不具備通用性。且農(nóng)牧業(yè)及水產(chǎn)養(yǎng)殖業(yè)大多不具備穩(wěn)定的機(jī)器視覺(jué)成像采集環(huán)境,例如內(nèi)蒙古科技大學(xué)李雪冬[4]在對(duì)羊群的計(jì)數(shù)追蹤研究中因數(shù)據(jù)缺乏,采用無(wú)人機(jī)進(jìn)行跟拍采集對(duì)應(yīng)數(shù)據(jù),天氣情況以及地理環(huán)境背景完全不穩(wěn)定,給傳統(tǒng)算法設(shè)計(jì)以及特征提取帶來(lái)了很多困擾??紤]到工業(yè)廠家在生產(chǎn)線上對(duì)小型零部件的統(tǒng)計(jì)計(jì)數(shù)需求,以及稱重計(jì)量的較大偏差和傳統(tǒng)人工計(jì)數(shù)錯(cuò)誤率高、勞動(dòng)力強(qiáng)度大、效率低、不穩(wěn)定等固有缺點(diǎn)。本文設(shè)計(jì)了一套通用的工件計(jì)數(shù)檢測(cè)系統(tǒng),通過(guò)設(shè)計(jì)的機(jī)械分堆結(jié)構(gòu)進(jìn)行工件分?jǐn)?,形成姿態(tài)角度隨機(jī)但無(wú)重疊的成堆工件,通過(guò)圖像采集硬件系統(tǒng),結(jié)合傳統(tǒng)圖像處理以及深度學(xué)習(xí)目標(biāo)檢測(cè)算法進(jìn)行實(shí)時(shí)檢測(cè),對(duì)各類小型生產(chǎn)工件進(jìn)行識(shí)別計(jì)數(shù)統(tǒng)計(jì)。
1 ?軟硬件方案設(shè)計(jì)
本文工件計(jì)數(shù)系統(tǒng)結(jié)構(gòu)由機(jī)械分堆控制模塊、光源成像采集模塊、軟件操作模塊和檢測(cè)算法模塊四部分構(gòu)成。機(jī)械分堆控制模塊運(yùn)行流程圖如圖1所示,金屬擋板閉合阻止工件前進(jìn)從而形成分堆,金屬擋板由PLC控制的電機(jī)驅(qū)動(dòng),PLC根據(jù)傳送帶傳送速率控制擋板開(kāi)閉時(shí)間,使分堆零件數(shù)量大致相同。硬毛刷轉(zhuǎn)動(dòng)掃下重疊的零件,避免工件相互間遮擋。
光源成像采集模塊布局在機(jī)械分堆控制模塊后,采用頂部攝像、常亮條光及方形外殼搭配擬合為燈箱光源的效果,同時(shí)根據(jù)工件生產(chǎn)環(huán)境,工件生產(chǎn)往往多附帶油污以及灰塵,因此本文選用深色傳送帶,以抑制帶有黑色油污的工件進(jìn)入傳送帶時(shí)對(duì)傳送帶造成的污染,有效減緩算法處理過(guò)程中由于圖像背景顏色差異過(guò)大導(dǎo)致的干擾。本文選用??低旵E050-30UC彩色工業(yè)相機(jī)搭配6 mm鏡頭構(gòu)成成像硬件系統(tǒng)。成像硬件布局示意圖與實(shí)景圖如圖2所示。
本文在Visual Studio 2019上基于Winform框架設(shè)計(jì)制作了工件計(jì)數(shù)設(shè)備的操作軟件,包含登錄界面和操作主界面。主界面中包含兩個(gè)picture box窗口camwindow和camwindow2。camwindow位于主界面左側(cè)用于實(shí)時(shí)顯示成像系統(tǒng)采集的圖像,camwindow2用于顯示上一批次工件檢測(cè)效果,便于用戶實(shí)時(shí)監(jiān)測(cè)設(shè)備運(yùn)行情況及準(zhǔn)確度。
2 ?模擬光電傳感器
光電傳感器[5]通過(guò)把光強(qiáng)度變化轉(zhuǎn)化為電信號(hào)進(jìn)行信息發(fā)送,工業(yè)生產(chǎn)過(guò)程中常使用光電傳感器來(lái)探測(cè)物料在傳送帶上的運(yùn)行位置,并結(jié)合軟件和算法對(duì)設(shè)備運(yùn)行進(jìn)行控制。但由于工業(yè)生產(chǎn)環(huán)境的復(fù)雜性,光電傳感器因探測(cè)的方式?jīng)Q定其需要靠近物料,實(shí)際運(yùn)用過(guò)程中相當(dāng)一部分光電傳感器是以裸露在外的方式進(jìn)行使用。長(zhǎng)時(shí)間情況下,光電傳感器容易在物料搬運(yùn)轉(zhuǎn)移過(guò)程中被破壞,多數(shù)生產(chǎn)車間在長(zhǎng)時(shí)間運(yùn)作的過(guò)程中會(huì)有灰塵雜物等累計(jì),這也會(huì)對(duì)光電傳感器的功能穩(wěn)定性造成干擾。對(duì)于企業(yè)生產(chǎn)以及設(shè)備檢修都會(huì)造成延誤以及資源損耗。
2.1 ?傳感器算法邏輯
本文使用算法實(shí)現(xiàn)了一個(gè)模擬光電傳感器,用于感知進(jìn)料口和出料口工件堆的位置以及輔助計(jì)數(shù),實(shí)際使用過(guò)程中達(dá)到了替代實(shí)物光電傳感器的作用。以無(wú)工件的背景圖案作為模板,設(shè)備所拍工件照片進(jìn)行目標(biāo)面積值對(duì)比。設(shè)定ROI位于成像視野中部、灰度差異閾值用于判定是否進(jìn)料、差異面積值用于判定進(jìn)料是否完整。計(jì)算式如下:
Δarea = Spinture - Smodel ? ? ? ? ? ? ? ? ?(1)
Spinture為采集圖片中高于設(shè)定灰度閾值的面積大小,Smodel為背景模板對(duì)應(yīng)的超出灰度閾值的面積值,Δarea為二者面積差。
2.2 ?綜合計(jì)數(shù)數(shù)量判斷流程
根據(jù)機(jī)械分堆控制模塊中傳送帶運(yùn)行速率與擋板開(kāi)閉控制的搭配,工件被較為均勻分堆送入成像系統(tǒng),相機(jī)拍攝時(shí)間間隔也會(huì)有相應(yīng)調(diào)整,使每堆工件在成像區(qū)域劃定的ROI區(qū)域內(nèi)被完整拍攝,軟件調(diào)用深度學(xué)習(xí)模型對(duì)每張圖片進(jìn)行檢測(cè),得到該圖檢測(cè)計(jì)數(shù)數(shù)量,本堆零件完成拍攝計(jì)數(shù)后,以所有圖片的計(jì)數(shù)眾數(shù)作為實(shí)際數(shù)量錄入總數(shù)進(jìn)行疊加。若眾數(shù)不止一個(gè),則取所有數(shù)據(jù)的中位數(shù)為中值。
2.3 ?ROI檢測(cè)區(qū)域設(shè)定
本文在成像區(qū)域前后端均設(shè)有模擬光電傳感器,入料口灰度差異面積值達(dá)到閾值時(shí)再調(diào)用深度學(xué)習(xí)模型,此時(shí)工件堆已經(jīng)完全進(jìn)入成像視野范圍,當(dāng)出料口灰度差異面積值達(dá)到閾值時(shí),說(shuō)明此時(shí)上一堆零件已經(jīng)基本走出成像視野范圍且下一堆零件尚未達(dá)到入料口光電傳感器,由此ROI檢測(cè)區(qū)域設(shè)定來(lái)確保用于檢測(cè)的數(shù)據(jù)為對(duì)應(yīng)的分堆圖像,同時(shí),確保設(shè)備運(yùn)行速度及效率在較高水準(zhǔn)。模擬光電傳感器運(yùn)行效果圖如圖3所示。
3 ?YOLOv5檢測(cè)算法
YOLO系列算法作為One-stage的代表性算法,把目標(biāo)分類與定位均轉(zhuǎn)化為回歸問(wèn)題,相比于Faster-RCNN等兩階段系列算法,YOLO系列算法在檢測(cè)精度上稍遜,但在檢測(cè)速度上展現(xiàn)出明顯優(yōu)勢(shì),在工業(yè)的應(yīng)用場(chǎng)景中廣受歡迎。YOLOv3[6]借用ResNet[7](殘差網(wǎng)絡(luò))的優(yōu)點(diǎn),改進(jìn)提出DarkNet53網(wǎng)絡(luò)進(jìn)行特征提取,并引入特征金字塔(Feature Pyramid Networks)[8]進(jìn)行多尺度預(yù)測(cè)。YOLOv4繼續(xù)改進(jìn),加入Mosaic數(shù)據(jù)增強(qiáng)法,分為輸入端、Backbone、Neck以及預(yù)測(cè)四個(gè)部分。YOLOv5緊跟YOLOv4提出,在原有的基礎(chǔ)上不斷創(chuàng)新集成,在準(zhǔn)確度上與YOLOv4相當(dāng)?shù)耐瑫r(shí),在速度上遠(yuǎn)優(yōu)于YOLOv4,模型明顯輕量化,有利于在工業(yè)中進(jìn)行部署,是深度學(xué)習(xí)現(xiàn)有技術(shù)的優(yōu)化整合。
本文選用YOLOv5目標(biāo)檢測(cè)對(duì)工件進(jìn)行計(jì)數(shù)統(tǒng)計(jì),YOLOv5共有4個(gè)版本:YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,區(qū)別在于網(wǎng)絡(luò)通道數(shù)量以及模塊堆疊次數(shù)不一致,模型大小也因此不同。結(jié)合計(jì)數(shù)項(xiàng)目實(shí)際檢測(cè)需求,本文選擇YOLOv5s作為檢測(cè)模型。
YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)分為輸入端、骨干網(wǎng)絡(luò)(Backbone)、頸部(Neck)以及預(yù)測(cè)(prediction)四個(gè)部分。輸入端保留YOLOv4中的Mosaic數(shù)據(jù)增強(qiáng)方法,把4張圖片隨機(jī)縮放、隨機(jī)分布和隨機(jī)裁剪,最后拼接整合成一張圖,達(dá)到豐富數(shù)據(jù)集和提升網(wǎng)絡(luò)訓(xùn)練速度的目的。Backbone模塊用于提取圖像特征,采用Focus結(jié)構(gòu)與CSP結(jié)構(gòu)相結(jié)合的方式。Focus結(jié)構(gòu)通過(guò)slice操作對(duì)圖像進(jìn)行切片,slice操作用等距離的方式提取圖像原圖中的對(duì)應(yīng)像素,然后按照原圖行列關(guān)系進(jìn)行對(duì)應(yīng)拼接,循環(huán)依次對(duì)圖像所有像素進(jìn)行相同操作,最終原圖被裁剪為幾張等大的小圖,再經(jīng)過(guò)Concat操作把所有完成裁剪的小圖合成多通道的圖像序列用于與后續(xù)卷積核進(jìn)行特征提取。YOLOv5在保留YOLOv4設(shè)計(jì)的包含殘差模塊的CSP結(jié)構(gòu)的同時(shí),另外新增了疊加卷積模塊的CSP結(jié)構(gòu)。Neck網(wǎng)絡(luò)中與YOLOv4相同,仍然保留FPN+PAN[9]結(jié)構(gòu),強(qiáng)化不同層之間的特征融合,增強(qiáng)多尺度上進(jìn)行預(yù)測(cè)的能力。預(yù)測(cè)模塊用于模型的最終檢測(cè)。YOLOv5框架結(jié)構(gòu)如圖4所示。
4 ?實(shí)驗(yàn)結(jié)果與分析
本文數(shù)據(jù)集采用自制的數(shù)據(jù)集,以某汽車配件廠提供的工件作為樣品,搭建本文實(shí)驗(yàn)平臺(tái),使用Labelimg對(duì)采集到的數(shù)據(jù)進(jìn)行數(shù)據(jù)標(biāo)注,類別名為工件生產(chǎn)的實(shí)際名稱,生成平行框xml數(shù)據(jù)集后,數(shù)據(jù)集以7:2:1比例劃分訓(xùn)練集、驗(yàn)證集以及測(cè)試集,以VOC2007文件格式導(dǎo)入YOLOv5進(jìn)行訓(xùn)練。
本文選取三種在形狀、顏色、大小、材質(zhì)上各有異同的工件進(jìn)行實(shí)驗(yàn),來(lái)驗(yàn)證所選YOLOv5s網(wǎng)絡(luò)在各類工件檢測(cè)中的普適性和通用性。20-P007與28-T001外觀上均為圓形,體積大小稍有不同,材質(zhì)均為硬性塑料,28-T001尺寸最小,單個(gè)工件標(biāo)注框大小約為70×70,同時(shí)30-2001與其他工件相比傳送帶背景相比和傳送帶背景更為接近,材質(zhì)為軟塑料,相比其他兩種工件更易變形。三種工件均在同一成像環(huán)境、硬件條件以及拍攝距離下進(jìn)行采集。工件圖樣如圖5所示,訓(xùn)練后測(cè)試結(jié)果如表1所示。測(cè)試集原圖效果圖如圖6所示。
定量評(píng)價(jià)方面,選取的指標(biāo)為:召回率(Recall, R)、準(zhǔn)確率(Precision, P)[10]、平均精度均值mAP(mean Average Precision)等。計(jì)算式如下:
(2)
(3)
(4)
(5)
上式中TP表示IoU≥設(shè)定閾值的檢測(cè)框數(shù)目;FP表示IoU<設(shè)定閾值的檢測(cè)框數(shù)目;FN表示漏檢的目標(biāo)數(shù)目,mAP表示平均精度,n表示檢測(cè)目標(biāo)類別數(shù)。
YOLOv5中損失包含三個(gè)部分:矩形框損失(lossrect)、置信度損失(lossobj)、分類損失(lossclc)??傮w損失為三部分損失的加權(quán)和。損失函數(shù)如下:
loss = a · lossobj + b · lossrect + c · lossclc ?(6)
其中a、b、c分別表示三種損失的權(quán)重。
本文使用CIoU loss[11]來(lái)衡量矩形框的損失。DIoU把兩矩形框的重疊面積以及中心點(diǎn)距離用于損失計(jì)算,CIoU在此基礎(chǔ)上把兩矩形框的寬高比作為影響因素帶入計(jì)算,公式更加合理:
lossCIoU = 1 - CIoU ? ? ? ? ? ? ? ? ? (7)
(8)
(9)
(10)
其中,ρ表示兩矩形框中心點(diǎn)之間的距離,c表示兩矩形框的最小外接矩形的對(duì)角線長(zhǎng)度,v表示兩框?qū)捀弑鹊南嗨贫?,α表示v的權(quán)重,IoU表示兩矩形框面積的交并比值。預(yù)測(cè)矩形框左上角坐標(biāo)為(xp1,yp1),右下角坐標(biāo)為(xp2,yp2);標(biāo)簽矩形框左上角坐標(biāo)為(xl1,yl1)、xl2,yl2)。
實(shí)驗(yàn)訓(xùn)練了200輪,由表1分析可知,實(shí)驗(yàn)條件下,工件的計(jì)數(shù)準(zhǔn)確度可達(dá)99.9%,滿足企業(yè)的生產(chǎn)檢測(cè)需求。
5 ?結(jié) ?論
本文針對(duì)工業(yè)中批量工件識(shí)別計(jì)數(shù)的實(shí)際需求,設(shè)計(jì)開(kāi)發(fā)出一套工件識(shí)別計(jì)數(shù)系統(tǒng)。通過(guò)光源與機(jī)械結(jié)構(gòu)的搭配構(gòu)造出燈箱光源的成像效果,形成具備通用穩(wěn)定的視覺(jué)成像環(huán)境,滿足多類別工件的成像采集需求;在winform軟件框架下設(shè)計(jì)出一套簡(jiǎn)單易觀察的操作軟件,滿足實(shí)時(shí)檢測(cè)和統(tǒng)計(jì)的生產(chǎn)需求。算法中選用了YOLOv5s目標(biāo)檢測(cè)模型,檢測(cè)速度快的同時(shí),在少量數(shù)據(jù)用于訓(xùn)練的情況下即可達(dá)到極高的檢測(cè)精度;同時(shí)還使用算法模擬實(shí)現(xiàn)了光電傳感器的功能,效果穩(wěn)定,減少了系統(tǒng)可能受到的干擾。
參考文獻(xiàn):
[1] 田冉,陳梅香,董大明,等.紅外傳感器與機(jī)器視覺(jué)融合的果樹(shù)害蟲(chóng)識(shí)別及計(jì)數(shù)方法 [J].農(nóng)業(yè)工程學(xué)報(bào),2016,32(20):195-201.
[2] 古亭.基于機(jī)器視覺(jué)的蠶繭計(jì)數(shù)與識(shí)別研究 [D].杭州:中國(guó)計(jì)量大學(xué),2020.
[3] 鞠文輝.基于深度學(xué)習(xí)的視覺(jué)計(jì)數(shù)方法研究 [D].濟(jì)南:山東師范大學(xué),2021.
[4] 李雪冬.基于計(jì)算機(jī)視覺(jué)的羊群計(jì)數(shù)算法研究與實(shí)現(xiàn) [D].包頭:內(nèi)蒙古科技大學(xué),2021.
[5] 顏曉河,董玲嬌,蘇紹興.光電傳感器的發(fā)展及其應(yīng)用 [J].電子工業(yè)專用設(shè)備,2006(1):59-62.
[6] REDMON J,F(xiàn)ARHADI A .YOLOv3:An Incremental Improvement [J/OL].arXiv:1804.02767 [cs.CV].(2018-04-08).https://arxiv.org/abs/1804.02767.
[7] HE K,ZHANG X,REN S,et al. Deep residual learning for image recognition [C]//Proceedings of the IEEE conference on computer vision and pattern recognition. Las Vegas:IEEE,2016:770-778.
[8] LIN T Y,DOLL?R P,GIRSHICK R,et al. Feature pyramid networks for object detection [C]//Proceedings of the IEEE conference on computer vision and pattern recognition. Honolulu:IEEE,2017:2117-2125.
[9] LI H,XIONG P,AN J,et al. Pyramid Attention Network for Semantic Segmentation [J/OL].arXiv:1805.10180 [cs.CV].(2018-05-25).https://arxiv.org/abs/1805.10180v1.
[10] 任秋霖,任德均,李鑫,等.基于卷積自編碼器的醫(yī)用玻璃瓶口缺陷檢測(cè)方法 [J].計(jì)算機(jī)與現(xiàn)代化,2022,324(8):114-120.
[11] ZHENG Z,WANG P,REN D,et al. Enhancing geometric factors in model learning and inference for object detection and instance segmentation [J].IEEE Transactions on Cybernetics,2021,52(8):8574-8586.
作者簡(jiǎn)介:黃德成(1997—),男,漢族,四川成都人,碩士研究生,研究方向:機(jī)器視覺(jué)、深度學(xué)習(xí);通訊作者:任德均(1971—),男,漢族,四川成都人,副教授,碩士生導(dǎo)師,博士,研究方向:機(jī)器視覺(jué)、機(jī)器人、嵌入式系統(tǒng)、機(jī)電一體化。