宋秋凡,杜亞江,李宗剛,高 溥
(1.蘭州交通大學(xué)機(jī)電工程學(xué)院,甘肅蘭州 730070;2.蘭州交通大學(xué)機(jī)器人研究所,甘肅蘭州 730070;3.蘭州石化職業(yè)技術(shù)大學(xué),甘肅蘭州 730060)
箱體類金屬工件是主要承載結(jié)構(gòu)件,其結(jié)構(gòu)復(fù)雜、緊湊,對制造要求較高。由于鉚接工藝適用于薄壁工件及復(fù)雜結(jié)構(gòu)工件的緊固連接,在極端環(huán)境下具有較高的可靠性,被廣泛應(yīng)用于箱體類金屬工件的制造裝配中[1]。在實(shí)際工況中,一個工件的鉚釘數(shù)量非常多且尺寸多為mm級,鉚接過程中的鉚接壓力、鉚接參數(shù)、鉚釘材料等缺陷都會削弱鉚接強(qiáng)度[2-3]。一旦出現(xiàn)漏鉚、鉚接質(zhì)量不合格等問題,直接影響工件的質(zhì)量和使用壽命,因此箱體類金屬工件鉚接質(zhì)量檢測尤為重要。傳統(tǒng)的鉚接質(zhì)量檢測依靠人工,不僅檢測效率低,而且存在人為因素導(dǎo)致誤檢、漏檢等情況,傳統(tǒng)檢測方式很難滿足現(xiàn)代化發(fā)展需求。相比于人工檢測方式,基于機(jī)器視覺的非接觸式缺陷檢測技術(shù)具有較高的效率和精度,廣泛應(yīng)用于工業(yè)生產(chǎn)缺陷檢測中[4-5]。
目前,基于機(jī)器視覺的質(zhì)量缺陷檢測技術(shù)已經(jīng)在國內(nèi)外進(jìn)行了大量研究。M.Zhao等[6]通過Gabor濾波器提取圖像表面的紋理信息,并采用支持向量機(jī)(SVM)對特征進(jìn)行分類,實(shí)現(xiàn)了熱電制冷元件表面缺陷檢測;周佳禾等[7]采用卷積神經(jīng)網(wǎng)絡(luò)結(jié)合SVM實(shí)現(xiàn)了卷繞式鋰電池電極褶皺檢測;Z.C.Liu等[8]利用灰度變換和圖像差分算法實(shí)現(xiàn)了PCB圖像缺陷的檢測。對于鉚接質(zhì)量檢測的研究,國榮輝等[9]采用面結(jié)構(gòu)光測量系統(tǒng),將鉚釘輪廓映射到三維點(diǎn)云中并計算鉚釘?shù)娜S信息,實(shí)現(xiàn)了飛機(jī)蒙皮鉚釘平齊度的檢測;柳寧[10]針對貨運(yùn)列車轉(zhuǎn)向架鉚接質(zhì)量檢測問題,提出一種利用圖像識別與傳感器技術(shù)的計算機(jī)輔助檢測系統(tǒng),通過Histogram特征及BP神經(jīng)網(wǎng)絡(luò)圖像識別方法對鉚接質(zhì)量進(jìn)行檢測,實(shí)現(xiàn)了鉚接質(zhì)量的自動化檢測;王海燕[11]對飛機(jī)蒙皮鉚釘尺寸測量及表面腐蝕缺陷進(jìn)行了研究,利用隨機(jī)Hough變換檢測鉚釘邊緣,并采用深度學(xué)習(xí)對缺陷特征進(jìn)行分類,這些方法檢測類別單一,不適用于多種缺陷類型檢測。O.S.Amosov等[12]在鉚接質(zhì)量檢測中,應(yīng)用深度神經(jīng)網(wǎng)絡(luò)Yolo模型進(jìn)行缺陷檢測與分類,該方法檢測正確率達(dá)97%,但只適用于大尺寸鉚釘檢測,不適用于mm級鉚釘鉚接質(zhì)量的檢測。
為了提高箱體類金屬工件鉚接質(zhì)量的檢測精度和效率,并實(shí)現(xiàn)缺陷分類,根據(jù)工件鉚接特點(diǎn),綜合考慮自動化檢測問題,本文提出了一種基于機(jī)器視覺的鉚接質(zhì)量檢測方法,通過改進(jìn)的Retinex圖像增強(qiáng)算法和多閾值缺陷分割算法對原始圖像進(jìn)行處理得到鉚釘及鐓頭等感興趣區(qū)域,然后提取鉚釘及鐓頭的幾何形狀及Zernike矩特征,最后采用基于極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)的分類算法對缺陷進(jìn)行分類,實(shí)現(xiàn)了工件鉚接質(zhì)量的批量化檢測。
某箱體類金屬工件采用半空心鉚釘進(jìn)行緊固連接,鉚釘均勻分布在工件表面,如圖1所示。通過對半空心鉚釘鉚接質(zhì)量缺陷進(jìn)行分析,鉚接過程中鉚接質(zhì)量問題主要集中在鉚釘形變端,當(dāng)存在鉚接質(zhì)量不合格或漏鉚情況時,鉚釘形變端產(chǎn)生較大差異[13]。鉚接過程中出現(xiàn)的4種典型缺陷如圖2所示,依次為:
(1)鉚接過程中對鉚接孔中的鉚釘未進(jìn)行鉚接造成漏鉚;(2)鉚接沖頭壓力較小或沖頭與鉚釘距離較遠(yuǎn),鉚釘沒有完全形成圓形卷曲狀態(tài),造成未完全鉚接;(3)鉚接壓力過大導(dǎo)致鉚釘鐓頭破裂,產(chǎn)生縫隙,造成鐓頭開裂;(4)鉚槍沖頭未對準(zhǔn)鉚釘中心,導(dǎo)致鉚釘鐓頭偏離鉚接孔中心,鐓頭形態(tài)呈橢圓形,造成鉚接錯位。
圖1 箱體類金屬工件示意圖
(a)漏鉚
(b)未完全鉚接
(c)鐓頭開裂
(d)鉚接錯位
鉚接質(zhì)量檢測實(shí)際上是對鉚釘形變端進(jìn)行檢測,本文采用CCD工業(yè)相機(jī)檢測鉚釘及鐓頭的形狀判斷工件鉚接質(zhì)量是否合格,并實(shí)現(xiàn)缺陷的分類,其檢測系統(tǒng)結(jié)構(gòu)如圖3所示。控制臺將工件輸送到圖像采集工位,通過相機(jī)、鏡頭和環(huán)形光源等設(shè)備對工件表面圖像進(jìn)行采集。獲取的圖像傳輸?shù)接嬎銠C(jī)的質(zhì)量檢測模塊,并對其進(jìn)行圖像處理、特征提取及缺陷分類,最終輸出鉚接質(zhì)量檢測結(jié)果。由于工件尺寸較大,視野不能完全拍攝整個工件,同時避免因相機(jī)視差造成錯檢,因此通過控制臺運(yùn)動對工件進(jìn)行分塊檢測。
圖3 鉚接質(zhì)量檢測系統(tǒng)
相機(jī)采集的工件圖像不能直接進(jìn)行特征提取,需對其進(jìn)行一系列處理,消除無用信息,增強(qiáng)特征信息,便于后續(xù)的缺陷識別和分類,通過圖像增強(qiáng)、目標(biāo)分割等方法對獲取的圖像進(jìn)行處理,得到鉚釘及鐓頭的特征。
由于鉚釘及箱體類金屬工件為金屬材質(zhì),具有高反光性,光源照射時出現(xiàn)表面亮度不均現(xiàn)象,對圖像特征識別造成很大影響,為了消除光照對鉚接質(zhì)量缺陷檢測的影響,本文提出一種改進(jìn)的Retinex算法對圖像進(jìn)行增強(qiáng)處理。改進(jìn)的Retinex算法分為2步:采用高斯濾波Retinex算法[14]得到反射分量圖像;采用分段伽馬函數(shù)增強(qiáng)圖像感興趣區(qū)域的對比度。
Retinex原理是根據(jù)圖像的光照-反射模型,假設(shè)攝像機(jī)采集的圖像都是由光照分量和反射分量構(gòu)成,其目的是濾除光照分量的影響,盡可能得到圖像反射分量信息。采集得到原始圖像數(shù)學(xué)表達(dá)式如下:
I(x,y)=R(x,y)×L(x,y)
(1)
式中:I(x,y)為攝像機(jī)采集的原始圖像;R(x,y)為光照分量圖像;L(x,y)為反射分量圖像;(x,y)為原始圖像中的任意像素點(diǎn)位置。
將式(1)改寫成對數(shù)形式并整理可得:
logL(x,y)=logI(x,y)-logR(x,y)
(2)
采用高斯濾波方法對原始圖像光照分量R(x,y)進(jìn)行估計后得到反射分量圖像,為了增強(qiáng)鉚釘與背景間的對比度,對反射分量圖像引入伽馬變換方法對其進(jìn)行增強(qiáng)處理。如圖4所示,從反射分量圖像灰度直方圖可以看出背景區(qū)域主要集中分布在低灰度區(qū)域,鉚釘?shù)雀信d趣區(qū)域集中分布在高灰度區(qū)域,且占據(jù)較小的面積。
圖4 灰度直方圖
為了增強(qiáng)感興趣區(qū)域的對比度,同時縮短運(yùn)算時間,本文構(gòu)造一種分段伽馬函數(shù),當(dāng)反射分量圖像L(x,y)中某像素點(diǎn)灰度值小于閾值T0時,令其變換系數(shù)γ1>1,縮小背景等低灰度區(qū)域的動態(tài)范圍;同理,當(dāng)L(x,y)大于等于閾值T0時,令其變換系數(shù)γ2<1,提高鉚釘?shù)雀呋叶葏^(qū)域的對比度,構(gòu)造的分段伽馬函數(shù)表達(dá)式為
(3)
式中:E(x,y)為伽馬變換后的反射分量圖像;L(x,y)為伽馬變換前的反射分量圖像;γ1、γ2為變換系數(shù)。
根據(jù)工件表面灰度直方圖,選取其谷底值作為閾值T0,令T0=100,γ1=2.3,γ2=0.4,改進(jìn)的Retinex圖像增強(qiáng)算法實(shí)現(xiàn)過程如圖5所示,經(jīng)過增強(qiáng)處理后的圖像在很大程度上能夠削弱工件表面及鉚釘反光造成光照分布不均的影響,且增強(qiáng)了鉚釘與工件表面間的對比度,便于后續(xù)的目標(biāo)分割和特征提取。
(a)原始圖像 (b)Retinex處理(c)改進(jìn)伽馬變換圖5 改進(jìn)Retinex圖像增強(qiáng)算法實(shí)現(xiàn)過程
鉚釘相對于工件尺寸較小,不易識別。針對增強(qiáng)后的圖像,采用基于閾值分割的算法對鉚釘及鐓頭等目標(biāo)區(qū)域進(jìn)行分割,得到其輪廓信息。目前常用的閾值分割算法主要包括Otus法、迭代法和最大熵法等,Otus算法[15]能夠自適應(yīng)地選取目標(biāo)分割閾值,且運(yùn)算速度較快,具有較高的實(shí)時性,因此本文采用Otus算法對工件圖像進(jìn)行目標(biāo)分割。
Otus算法的核心思路是將圖像分割為前景與背景,假設(shè)工件表面圖像有L+1個灰度級[0,1,…,L],若像素點(diǎn)的灰度級為i的個數(shù)為ki,則總像素點(diǎn)個數(shù)為K=k1+k2+…+kL,其灰度級為i的像素點(diǎn)概率密度為pi=ki/K,通過設(shè)定閾值T1將前景C1從背景C2中分割出來,則類間方差定義為
σ2=ω1(μ1-μ0)2+ω2(μ2-μ0)2
(4)
在灰度級[0,L]中通過遍歷閾值,最終得到使σ2最大的閾值T1,將T1作為目標(biāo)分割閾值。基于Otus分割后的圖像雖能夠較好地分割出鉚釘區(qū)域,但也存在噪聲及紋理特征,干擾鉚接質(zhì)量檢測效果,針對此問題提出一種基于多閾值的缺陷分割方法。鉚釘?shù)雀信d趣區(qū)域面積比噪聲點(diǎn)及紋理特征大得多,因此通過對每個連通域像素點(diǎn)個數(shù)Pi進(jìn)行統(tǒng)計,當(dāng)Pi
(5)
式中:f(x,y)為閾值分割后圖像;Pi為第i個連通域像素點(diǎn)個數(shù);P為閾值,在本實(shí)驗(yàn)中漏鉚缺陷像素點(diǎn)個數(shù)最少為40 000,為了不影響目標(biāo)特征的提取,本文設(shè)定閾值為35 000。
閾值分割后的二值圖像能完整顯示出鉚釘鐓頭的邊緣輪廓,但輪廓內(nèi)部還存在由金屬反光造成的偽邊緣,故需進(jìn)行形態(tài)學(xué)運(yùn)算消除輪廓內(nèi)的反光點(diǎn)及偽邊緣,多閾值分割方法與Otus閾值分割方法的實(shí)驗(yàn)結(jié)果對比如圖6所示,多閾值分割方法剔除了噪聲及背景紋理,滿足本文要求。
(a)Otus方法 (b)本文方法
經(jīng)過閾值分割后的工件表面圖像包含多個鉚釘,不利于單個鉚接質(zhì)量的檢測,需在二值圖像上對目標(biāo)區(qū)域進(jìn)行裁剪,使其每個切片只包含一個鉚釘。假設(shè)圖像大小為M像素×M像素,在y軸方向上均分m等份,x軸方向上均分n等份,m為工件表面鉚釘行數(shù),n為列數(shù)。并對分割后的切片位置信息進(jìn)行標(biāo)記,便于快速定位存在鉚接質(zhì)量缺陷的鉚釘位置。 最后通過求取每個切片中鉚釘及鐓頭的最小外接矩形,進(jìn)行特征提取、識別及分類,如圖7所示。
圖7 鉚釘及鐓頭最小外接矩形示意圖
幾何形狀特征是圖像目標(biāo)區(qū)域最顯著的特征,不同的缺陷類型具有不同的幾何形狀,本文采用周長、面積、圓度率和偏心率等4個特征參量對鉚釘及鐓頭的幾何形狀進(jìn)行描述。
周長是描述目標(biāo)區(qū)域邊界輪廓的長度,指目標(biāo)區(qū)域邊界輪廓所占像素點(diǎn)之和。
面積是描述目標(biāo)區(qū)域的大小,指目標(biāo)區(qū)域邊界輪廓內(nèi)像素點(diǎn)之和。
圓度率E反映鉚釘及鐓頭輪廓的圓形程度,E的值越小,輪廓形狀越偏離圓形,其定義為
E=4πS/C2
(6)
式中:S為目標(biāo)輪廓面積;C為目標(biāo)輪廓邊界周長。
偏心率反映鉚釘及鐓頭輪廓的幾何形狀,其定義為
W=a/b
(7)
式中:a為目標(biāo)區(qū)域外接矩形的短軸;b為目標(biāo)區(qū)域外接矩形的長軸。
對目標(biāo)的幾何形狀特征參量進(jìn)行歸一化處理,其幾何形狀特征分布如圖8所示。
矩特征是描述區(qū)域幾何特征信息的有效特征,由于Zernike矩在圖像抗噪性和旋轉(zhuǎn)不變性方面具有較大優(yōu)勢[16],而且高階矩更能突出圖像的特征細(xì)節(jié),無信息冗余現(xiàn)象。對于二維圖像f(x,y)的n階m次Zernike矩在極坐標(biāo)下定義為
(8)
式中:n≥0,n≥|m|且n-|m|為偶數(shù);ρ為原點(diǎn)到點(diǎn)(x,y)的矢量距離;θ為ρ與x軸在逆時針方向上的夾角;Vnm(ρ,θ)表示在單位圓上定義的Zernike多項(xiàng)式,*表示復(fù)共軛;Rnm(ρ)表示點(diǎn)(x,y)的徑向多項(xiàng)式。
由式(8)可知,在二維圖像中Zernike矩的值為復(fù)數(shù),對Znm求模進(jìn)而得到|Znm|,本文將圖像的1~4階Zernike矩的模作為其特征向量,分別為|A11|、|A20|、|A22|、|A31|、|A33|、|A40|、|A42|、|A44|,歸一化處理后的Zernike矩特征分布如圖9所示。將幾何形狀特征和Zernike矩特征融合為12維特征向量,不同類別的特征具有較大差異,因此能夠檢測出鉚接質(zhì)量缺陷。
圖9 Zernike矩特征分布
4 基于ELM的分類算法設(shè)計
ELM是一種基于單隱藏層的前向神經(jīng)網(wǎng)絡(luò)構(gòu)建的機(jī)器學(xué)習(xí)方法[17],不同于傳統(tǒng)的BP算法,ELM算法在執(zhí)行過程中,不需要手動調(diào)整大量訓(xùn)練參數(shù),所有參數(shù)一次性調(diào)整優(yōu)化,同時ELM在保證學(xué)習(xí)效率和精度的前提下,擁有較強(qiáng)的泛化能力。ELM由輸入層、隱藏層和輸出層3層網(wǎng)絡(luò)構(gòu)成,其模型結(jié)構(gòu)如圖10所示。
圖10 極限學(xué)習(xí)機(jī)模型
假設(shè)給定N個隨機(jī)選取的不同訓(xùn)練樣本(xi,ti),xi=[xi1,xi2,…,xin]T∈Rn為樣本的矢量特征,ti=[ti1,ti2,…,tim]T∈Rm為對應(yīng)樣本xi的期望輸出。若使單隱藏層神經(jīng)網(wǎng)絡(luò)輸出的誤差達(dá)到最小,則存在βi、Wi和bi,得到如下公式:
(9)
式中:L為隱藏層節(jié)點(diǎn)數(shù);g(x)為激勵函數(shù);βi為第i個隱藏層節(jié)點(diǎn)與輸出層連接權(quán)重;Wi為第i個隱藏層節(jié)點(diǎn)與輸入層連接權(quán)重;bi為第i個隱藏層節(jié)點(diǎn)的偏置。
通過矩陣形式將式(9)轉(zhuǎn)化為
Hβ=T
(10)
式中:
在訓(xùn)練過程中,只要把Wi和bi確定,則隱藏層輸出矩陣H就可得到唯一解,通過解析式(11)求得隱藏層輸出權(quán)重:
β=H+T
(11)
式中:H+為H的Moore-Penrose廣義逆矩陣;T為期望輸出矩陣。
最后得到ELM的數(shù)學(xué)模型為
ELM(x)=min‖Hβ-T‖,β∈RL×m
(12)
根據(jù)ELM分類器原理和檢測系統(tǒng)的需求,本文從分類器的輸入、輸出、隱藏層輸入權(quán)重及偏置的設(shè)置、激勵函數(shù)選擇等方面對ELM分類器進(jìn)行設(shè)計。12維特征向量作為分類器的輸入,5種類型作為分類器的輸出結(jié)果。在ELM中,樣本的分類正確率與激勵函數(shù)和隱藏層神經(jīng)元個數(shù)相關(guān),通過實(shí)驗(yàn)測試本文選取的激勵函數(shù)為Sigmoid函數(shù)、隱藏層神經(jīng)元個數(shù)為30時,其分類效果達(dá)到最優(yōu)。Wi及bi的初始值為在[-1,1]上隨機(jī)均勻分布。
本文采用的實(shí)驗(yàn)平臺計算機(jī)配置為Windows10操作系統(tǒng),處理器為11th Inter(R) Core(TM) i5-11400@2.60GHz,GPU為NVIDIA GeForce RTX 2070,仿真環(huán)境為MATLAB R2019a,實(shí)驗(yàn)過程中采用CCD工業(yè)相機(jī)型號為MER-125-30UM。
實(shí)驗(yàn)數(shù)據(jù)集來源于實(shí)驗(yàn)室箱體類金屬鉚接樣件,從4種典型缺陷及合格的樣本中各選取100個樣本,隨機(jī)從數(shù)據(jù)集中選擇75%作為訓(xùn)練集,其余的25%作為測試集。
為了驗(yàn)證本文算法的有效性,將實(shí)驗(yàn)分為2步,第1步對采集的工件圖像進(jìn)行處理,不同類型的圖像處理結(jié)果如圖11所示,并對處理后的圖像提取鉚釘及鐓頭的幾何形狀及Zernike共12維特征向量;第2步采用ELM分類算法對特征進(jìn)行分類,得到其缺陷檢測精度。
圖11 圖像處理結(jié)果
通過對測試集進(jìn)行測試,得到ELM分類器的“合格-缺陷”二分類結(jié)果及缺陷多分類結(jié)果。從表1可以看出,對于“合格-缺陷”二分類結(jié)果,其正確率為95.2%,本文方法可以較好地檢測出鉚接質(zhì)量存在缺陷的箱體類金屬工件。從表2可以看出,對于4種典型缺陷多分類結(jié)果,其正確率可達(dá)90%以上,圖像特征的選擇直接影響缺陷檢測的正確率,漏鉚和鐓頭開裂缺陷由于特征明顯,其檢測正確率較高,未完全鉚接和鉚接錯位缺陷由于相機(jī)視角原因?qū)е缕溏咁^形態(tài)較接近,故其正確率稍低,但整體上滿足預(yù)期檢測需求。
為了驗(yàn)證本文的分類算法,將ELM“合格-缺陷”二分類結(jié)果與SVM、BP算法比較,如圖12所示。從圖12可以看出,本文采用ELM作為鉚接質(zhì)量缺陷檢測分類器,其正確率高于SVM和BP算法,并且檢測時間明顯低于其他2種算法,檢測速度和效率均達(dá)到最優(yōu)。
表1 “合格-缺陷”二分類結(jié)果
表2 缺陷多分類結(jié)果
圖12 不同分類算法對比
本文針對箱體類金屬工件鉚接質(zhì)量檢測問題,根據(jù)半空心鉚釘在鉚接后所形成的鉚釘及鐓頭的形態(tài)特點(diǎn),利用特征融合結(jié)合ELM的分類方法對鉚接質(zhì)量檢測進(jìn)行了研究。實(shí)驗(yàn)結(jié)果表明:本文所提出的方法能夠有效檢測出箱體類金屬工件鉚接質(zhì)量的缺陷,盡管存在一定的誤檢情況,但整體檢測效果較好,“合格-缺陷”二分類及缺陷多分類檢測正確率分別為95.2%和92%,與SVM和BP算法相比,該方法具有較高的精度,且滿足實(shí)時在線檢測的需求。在后續(xù)工作中需要對此方法做進(jìn)一步改進(jìn),提高其缺陷多分類檢測正確率,擴(kuò)大其應(yīng)用范圍,使該方法也可應(yīng)用于其他領(lǐng)域的質(zhì)量缺陷檢測。S