一、基于機(jī)器視覺(jué)檢測(cè)技術(shù)現(xiàn)狀
機(jī)器視覺(jué)是以普通計(jì)算機(jī)視覺(jué)研究為基礎(chǔ),并且同時(shí)涉及到光源照明技術(shù)、高速圖像采集等方面實(shí)用技術(shù)的研究。在工業(yè)中,利用機(jī)器視覺(jué)構(gòu)建一個(gè)完整的工業(yè)視覺(jué)應(yīng)用系統(tǒng)需要結(jié)合多種技術(shù),其中涵蓋了機(jī)械工程、傳感器、光學(xué)成像、運(yùn)動(dòng)控制、圖像處理等方面。圖1-1顯示的是實(shí)際工業(yè)中機(jī)器視覺(jué)系統(tǒng)整體框架,主要包括被測(cè)目標(biāo)、光源、光學(xué)成像系統(tǒng)、圖像捕捉系統(tǒng)、圖像采集與數(shù)字化、智能圖像處理模塊和運(yùn)動(dòng)控制模塊。
隨著科技的進(jìn)步,機(jī)器視覺(jué)的發(fā)展速度也越來(lái)越快,國(guó)外的一些研發(fā)機(jī)構(gòu)都開(kāi)發(fā)出了很多基于圖像處理的機(jī)器視覺(jué)系統(tǒng)軟件,例如MatroxImaging Library(MIL)、Halcon、Matlab以及開(kāi)源庫(kù)OpenCV 等。由于這些軟件在圖像上具有很強(qiáng)大的處理能力, 所以已經(jīng)被廣泛的運(yùn)用到實(shí)際的工業(yè)生產(chǎn)中了。目前,在機(jī)器視覺(jué)方面有兩類算法,分別為數(shù)字圖像處理算法和基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)算法。
(1)基于數(shù)字圖像處理的方法,主要通過(guò)圖像處理等操作得到膠層的面積、質(zhì)心以及自定義的復(fù)雜度公式進(jìn)行對(duì)膠層的質(zhì)量判定。傳統(tǒng)的基于數(shù)字圖像處理的方法具有操作簡(jiǎn)單,參數(shù)較少的優(yōu)勢(shì),但也存在易受光照等客觀因素影響,膠層分割效果差、缺陷分類差、通用性較差等缺點(diǎn)。
(2)隨著大數(shù)據(jù)時(shí)代的來(lái)臨,各類信息資源的輕易獲取使得深度學(xué)習(xí)的應(yīng)用也越來(lái)越廣泛。特別是在卷積神經(jīng)網(wǎng)絡(luò)中,圖片被深度卷積和池化之后,隱含層能夠表現(xiàn)出比手動(dòng)獲取更加具有泛化性和抽象性的特征,從而在識(shí)別分類上取得了很好的效果。深度學(xué)習(xí)的出現(xiàn)為點(diǎn)膠缺陷的識(shí)別帶來(lái)了更大的可行性。但深度學(xué)習(xí)需要足夠多的訓(xùn)練數(shù)據(jù)和強(qiáng)大的計(jì)算能力,使得其在許多領(lǐng)域內(nèi)的落地和應(yīng)用受到了制約,而這也會(huì)直接影響到點(diǎn)缺陷膠的檢測(cè)效率。
二、點(diǎn)膠檢測(cè)系統(tǒng)的光學(xué)檢測(cè)方案
在進(jìn)行點(diǎn)膠缺陷檢測(cè)的過(guò)程中,圖像信息的持續(xù)和穩(wěn)定獲取也是至關(guān)重要的一步,圖像的好壞對(duì)于算法的設(shè)計(jì)困難程度有著很大的影響,因此,在點(diǎn)膠缺陷檢測(cè)系統(tǒng)的設(shè)計(jì)過(guò)程中,需要對(duì)光學(xué)檢測(cè)時(shí)的硬件進(jìn)行選型。如圖2-1所示,考慮到膠條為透明膠,存在反光現(xiàn)象,所以要求光源在各個(gè)角度的光照程度較為均勻,而同軸光具有高密度排列,成像清晰,亮度均勻等特點(diǎn)。此外,在要求光照亮度均勻的同時(shí),由于部分膠條中存在氣泡,而同軸光源距離膠條存在一定的距離,采集到的圖片無(wú)法觀察到氣泡特征, 故考慮使用條形光源對(duì)膠條上方進(jìn)行照射,使得氣 泡特征可見(jiàn)。由于垂直照射方式具有照射面積大、 光照均勻性好等優(yōu)點(diǎn),故同軸光源選擇垂直照射方式,而條形光源主要是為了對(duì)膠條進(jìn)行光照加強(qiáng), 同時(shí)為了不遮擋同軸光源,故選擇側(cè)面照射。
三、點(diǎn)膠檢測(cè)系統(tǒng)的算法方案
3.1點(diǎn)膠缺陷的類別定義
在實(shí)際的點(diǎn)膠過(guò)程中,往往因?yàn)辄c(diǎn)膠量的大小、 點(diǎn)膠壓力、針頭大小、膠水的粘度以及膠水溫度等因素,導(dǎo)致生產(chǎn)的膠條會(huì)存在各種各樣的缺陷,從而影響產(chǎn)品的質(zhì)量。工業(yè)生產(chǎn)中比較常見(jiàn)的幾種缺陷種類,其具體定義如下所示:
(1)多膠:膠條中間部分寬度大于其他部分,如圖 3-1 a)所示;
(2)少膠:膠條中間部分寬度小于其他部分,如圖 3-1 b)所示;
(3)斷膠:膠條出現(xiàn)一次或多次的斷裂,如圖3-1 c) 所示;
(4)扭曲:膠條整體存在多處彎曲現(xiàn)象,如圖3-1 d) 所示;
(5)氣泡:膠條中含有數(shù)目較多的氣泡,如圖3-1 e) 所示;
同時(shí),在工業(yè)生產(chǎn)中符合生產(chǎn)要求的正常膠條如圖 3-1 f)所示。
對(duì)于點(diǎn)膠缺陷檢測(cè)有兩點(diǎn)要求:
(1)由于缺陷檢測(cè)的點(diǎn)膠圖像數(shù)量多,檢測(cè)需要的時(shí)間比較長(zhǎng),對(duì)檢測(cè)速度要求比較高;
(2)點(diǎn)膠缺陷圖片受環(huán)境影響存在質(zhì)量上的不同,對(duì)于算法的準(zhǔn)確性以及魯棒性有很大的要求。
3.2基于數(shù)字圖像處理的算法
在對(duì)膠條進(jìn)行缺陷檢測(cè)之前,必須先得到膠條的圖片,而在實(shí)際的生產(chǎn)加工中,會(huì)將工件上的某塊區(qū)域作為Mark定位點(diǎn),采用圖像匹配算法來(lái)尋找該Mark點(diǎn)的位置,從而得到膠條的具體位置,由此在工業(yè)攝像頭得到工件圖片后,無(wú)需對(duì)整幅圖片進(jìn)行缺陷分析,同時(shí)也去除了一些干擾區(qū)域,方便了視覺(jué)算法的后續(xù)處理。以下為針對(duì)點(diǎn)膠缺陷相應(yīng)的基于數(shù)字圖像處理的方法:
(1)多膠少膠:對(duì)于膠條多膠少膠的缺陷檢測(cè),首先 對(duì)圖片進(jìn)行相應(yīng)的預(yù)處理操作,得到二值化圖像后進(jìn)行膠條兩側(cè)輪廓的獲取,對(duì)提取到的輪廓區(qū)域進(jìn)行水平和垂直方向的投影,通過(guò)計(jì)算像素值數(shù)量的最大值和最小值的差值以及像素值投影圖中曲線形狀來(lái)判斷是否存在缺陷和具體類型。
(2)斷膠:對(duì)于膠條斷膠缺陷檢測(cè),根據(jù)膠條斷裂圖 片的特征,對(duì)圖片進(jìn)行預(yù)處理后先進(jìn)行閉運(yùn)算,斷開(kāi)膠條之間的細(xì)小連接,之后進(jìn)行輪廓的獲取,通過(guò)計(jì)算各個(gè)輪廓所包含的面積來(lái)作為判斷缺陷是否存在的標(biāo)準(zhǔn)。
(3)扭曲:針對(duì)膠條扭曲缺陷檢測(cè),通過(guò)計(jì)算尋找到 的輪廓的凸缺陷的面積(即輪廓面積與其凸包面積的差值)來(lái)作為判斷是否存在扭曲缺陷的標(biāo)準(zhǔn)。
(4)氣泡:檢測(cè)是否存在直徑和面積較大的氣泡。由 于氣泡的特征是圓形,所以利用霍夫圓變換來(lái)檢測(cè)圖片中的圓形數(shù)量,同時(shí)計(jì)算其面積,通過(guò)對(duì)面積和數(shù)量進(jìn)行閾值設(shè)定,來(lái)判斷氣泡缺陷的存在。
· 深度學(xué)習(xí)模型的選擇
一般在利用深度學(xué)習(xí)算法進(jìn)行缺陷檢測(cè)時(shí),首 先要確定的是網(wǎng)絡(luò)模型。因?yàn)槟z條種類分為6類,類別數(shù)量不是很多,故我們可選擇AlexNet、MobileNet 以及Lenet-5、U-net等網(wǎng)絡(luò)深度不同的或者更優(yōu)質(zhì)的網(wǎng)絡(luò)模型。
· 訓(xùn)練方案改進(jìn)
往往經(jīng)典網(wǎng)絡(luò)模型的準(zhǔn)確率不會(huì)特別高,并不 能滿足我們的需求,所以我們需要對(duì)訓(xùn)練方法進(jìn)行改進(jìn)。通常通過(guò)數(shù)據(jù)增強(qiáng)、遷移學(xué)習(xí)以及改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)三個(gè)方面對(duì)模型進(jìn)行改進(jìn)。其中在實(shí)際生產(chǎn)中,一般在數(shù)據(jù)層上都有缺陷樣本圖片較少、缺陷樣本不均衡等等問(wèn)題,而對(duì)模型進(jìn)行訓(xùn)練時(shí),神經(jīng)網(wǎng)絡(luò)的參數(shù)數(shù)量又非常巨大,要想使得這些參數(shù)正常工作則需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練。
在工業(yè)領(lǐng)域中,可以在人為制造缺陷、數(shù)據(jù)增 廣、生成對(duì)抗網(wǎng)絡(luò)、遷移學(xué)習(xí)等手段解決相應(yīng)的訓(xùn) 練數(shù)據(jù)問(wèn)題。如圖3-3為深度學(xué)習(xí)數(shù)據(jù)支撐手段。
在訓(xùn)練過(guò)程中進(jìn)行相應(yīng)微調(diào)是必不可少的。過(guò)擬合現(xiàn)象在深度學(xué)習(xí)中屢見(jiàn)不鮮,如果網(wǎng)絡(luò)模型出現(xiàn)此類問(wèn)題,那么該網(wǎng)絡(luò)就無(wú)法正常使用,為了解決這個(gè)問(wèn)題,一般會(huì)使用模型集成的方法,即訓(xùn)練多個(gè)模型進(jìn)行組合。但是由于模型數(shù)量的增多,無(wú)論是訓(xùn)練過(guò)程還是測(cè)試過(guò)程,都會(huì)帶來(lái)時(shí)間的浪費(fèi)。由Hinton提出的dropout,在網(wǎng)絡(luò)訓(xùn)練過(guò)程中,對(duì)網(wǎng)絡(luò)層中的參數(shù)以一定概率進(jìn)行歸零操作,每一次訓(xùn)練都可以看作是在訓(xùn)練不同的神經(jīng)網(wǎng)絡(luò),所以dropout相當(dāng)于是對(duì)多個(gè)網(wǎng)絡(luò)取平均,同時(shí)減少了神經(jīng)元之間的復(fù)雜共適應(yīng)性,可以有效地抑制過(guò)擬合現(xiàn)象。當(dāng)然實(shí)際訓(xùn)練過(guò)程中,網(wǎng)絡(luò)結(jié)構(gòu)的改進(jìn)方式有很多,沒(méi)有最優(yōu)的模型,只有符合要求更優(yōu)的模型。
四、結(jié)論
在實(shí)際的點(diǎn)膠過(guò)程中,由于多種因素的影響容 易出現(xiàn)各種缺陷,因此在對(duì)膠條進(jìn)行缺陷檢測(cè)時(shí), 更多的是采用機(jī)器視覺(jué)的方法,從而達(dá)到提高生產(chǎn)效率和降低成本的目的,進(jìn)而使得產(chǎn)品更加具有競(jìng)爭(zhēng)力。目前,在機(jī)器視覺(jué)方面有兩類算法,分別為數(shù)字圖像處理算法和基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)算法。針對(duì)基于數(shù)字圖像處理的視覺(jué)算法,在簡(jiǎn)單的缺陷檢測(cè)方面成本較低,速度和精度也能夠達(dá)到要求,但是在算法層面缺少通用性,對(duì)于每一種缺陷都要設(shè)計(jì)特定的算法進(jìn)行檢測(cè)。深度學(xué)習(xí)算法相對(duì)圖像處理算法在處理新類別的圖片方面較為簡(jiǎn)單,對(duì)于不同的缺陷只要重新進(jìn)行標(biāo)注再訓(xùn)練后就可以進(jìn)行缺陷檢測(cè),不僅如此深度學(xué)習(xí)算法對(duì)于復(fù)雜情況的缺陷檢測(cè)效果比圖像處理算法好,但是深度學(xué)習(xí)算法也有大量的圖片數(shù)據(jù)獲取成本較高、產(chǎn)線換 型檢測(cè)響應(yīng)較慢的問(wèn)題。當(dāng)然,隨著深度學(xué)習(xí)的高速發(fā)展和當(dāng)前大數(shù)據(jù)時(shí)代的信息獲取能力的增強(qiáng),相信深度學(xué)習(xí)在未來(lái)會(huì)更多地落地到生活場(chǎng)景中去。