張舞杰,葉 鋒,謝長貴,鄧 華
(1.東莞市睿華智能科技有限公司,廣東 東莞 523808; 2.華南理工大學(xué) 機(jī)械與汽車工程學(xué)院,廣州 510640)
隨著科學(xué)技術(shù)的不斷發(fā)展和人們生活水平的提高,傳統(tǒng)頭型的微鉆已經(jīng)不能滿足工業(yè)發(fā)展的需求。所以特種頭型的微鉆產(chǎn)品的制造和生產(chǎn)已經(jīng)成為微鉆加工的一種必然趨勢。在其制造過程中,對于尺寸和缺陷的檢測是一道不容忽視的環(huán)節(jié)。傳統(tǒng)的微小零部件的尺寸檢測方法大多是通過人工借助測量工具(如千分尺、顯微鏡等)進(jìn)行檢測的,但是人工檢測方法存在效率低、漏檢率與誤檢率高和檢測精度低等局限性,已逐漸被如激光檢測、射線檢測和機(jī)器視覺檢測等非接觸式檢測方法所取代?;跈C(jī)器視覺的非接觸檢測技術(shù)以其高效、高精、準(zhǔn)確、省力等優(yōu)勢被廣泛應(yīng)用于工業(yè)監(jiān)控、產(chǎn)品尺寸檢測、產(chǎn)品缺陷檢測及衛(wèi)星偵察等領(lǐng)域中。
視覺檢測對比傳統(tǒng)的人工檢測方式主要有以下優(yōu)勢:1)可以實現(xiàn)對生產(chǎn)過程的自動化和智能化;2)檢測速度更快同時檢測精度更高;3)可以重復(fù)性地做同一動作的工作,解決了人工檢測出現(xiàn)的疲勞檢測導(dǎo)致誤差增大的問題,大大地提高了檢測的效率;4)可以非接觸地完成生產(chǎn)的過程,減少了人工在危險工序中的參與,從而提高了生產(chǎn)過程中要求的安全性。所以,為了提高產(chǎn)品的質(zhì)量和生產(chǎn)效率,采用視覺檢測代替人工本檢測具有重要的實用價值。
本文首先對特種頭型微鉆的種類以及定義進(jìn)行了系統(tǒng)的介紹,同時對影響其工藝特性的重要刃面參數(shù)進(jìn)行定義的闡述,其次詳細(xì)地介紹了針對于特種頭型微鉆刃面視覺檢測的算法的實現(xiàn)原理以及相應(yīng)的圖像處理步驟,最后設(shè)計出了可視化的圖像處理軟件,同時通過實驗驗證了該算法的可行性以及準(zhǔn)確性,完全滿足實際生產(chǎn)加工的需求。
特種頭型的微鉆主要包括4種:月牙型、CB型、A型和長條型,如圖1所示。
圖1 幾種常見的特種頭型微鉆
月牙型、CB型、A型和長條型的命名主要是根據(jù)其刃面的形狀來確定的。微鉆頭型的不同,在結(jié)構(gòu)上會對微鉆的實際性能產(chǎn)生不一樣的影響,合理的頭型能夠使鉆頭具有較好的剛性、出色的排屑能力以及較長的壽命。所以針對特定的場合選擇合適的特種頭型微鉆進(jìn)行加工是一件十分必要的事。
微鉆刃面檢測參數(shù)主要包括尺寸和刃面缺陷。尺寸的測量主要包括刃面的外徑以及芯厚的大小,其定義如圖2所示。
圖2 微鉆尺寸測量參數(shù)
外徑和芯厚的實際尺寸必須在公差范圍之內(nèi),過大或者過小都會影響微鉆的性能。尺寸的測量主要采用亞像素的邊緣提取和直線擬合和圓擬合,在求得實際邊緣輪廓的基礎(chǔ)上進(jìn)行計算得到。
在微鉆的生產(chǎn)加工過程中,由于偶然或者人為的因素,往往會在刃面上產(chǎn)生一些加工缺陷,而這些缺陷是不能被允許的。所以后續(xù)的檢測環(huán)節(jié)就顯得尤為重要。微鉆的刃面常見的缺陷種類主要包括圓角、缺口和研磨不足等。幾種常見的缺陷如圖3所示。
圖3 幾種常見的微鉆刃面缺陷
根據(jù)前面可知,特種頭型的微鉆與普通頭型的微鉆由于結(jié)構(gòu)上的差異,相應(yīng)地,視覺檢測算法也要因此做出對應(yīng)的改變,下面就對特殊頭型的視覺檢測方法進(jìn)行分析。
特種頭型的尺寸測量主要包括外徑和芯厚這兩個參數(shù)。為求得這兩個重要的尺寸參數(shù),需要對從工業(yè)相機(jī)獲得的清晰的微鉆刃面圖像進(jìn)行亞像素輪廓提取,下面對所使用的具體圖像處理方法進(jìn)行詳細(xì)的介紹和說明。
首先,為了獲得清晰的噪點少的微鉆刃面圖像,在進(jìn)行正式的圖像處理之前,需要對采集上來的原圖進(jìn)行預(yù)處理濾波。預(yù)處理濾波的方式主要分為:中值濾波、高斯濾波、均值濾波等。在實際的微鉆生產(chǎn)過程中,出現(xiàn)的多為高斯噪聲,所以這里采用高斯濾波對圖像進(jìn)行預(yù)處理,如圖4所示。
圖4 特種頭型微鉆濾波前后對比
為了減少圖像亮度和對比度的影響,這里采用大津法即最大類間方差法去求全局閾值。針對圖4的圖像,運用大津法求出其最合適的分割閾值,之后對其進(jìn)行閾值分割,則可得到刃面的區(qū)域,如圖5所示。
圖5 閾值分割
之后,為求得微鉆外徑尺寸,需要對得到的刃面區(qū)域即感興趣區(qū)域進(jìn)行最大外接圓擬合。RANSAC圓擬合法是通過進(jìn)行多次的隨機(jī)抽樣來進(jìn)行數(shù)學(xué)模型參數(shù)的估計的擬合算法,魯棒性極強(qiáng)。其基本的步驟為:
首先,我們對提取到的所有輪廓點n中無差別地任意獲得3個輪廓點,利用平面上3個輪廓點的坐標(biāo)就可以確定一個圓,進(jìn)而確定此圓數(shù)學(xué)模型中需確定的3個變量參數(shù)。
其次,通過獲得全部圓輪廓上的點以及3個變量參數(shù)之間的擬合殘差,對比之前所設(shè)閾值E,如果殘差比所設(shè)閾值E小,則可以將這個輪廓上的點當(dāng)作內(nèi)點,此時內(nèi)點的個數(shù)為K。
然后,當(dāng)內(nèi)點的個數(shù)增加到等于或者大于所設(shè)閾值e的時候,則表示此算法可以確定最合適的擬合圓所需的變量參數(shù)了。之后通過對之前所保存的內(nèi)點坐標(biāo)進(jìn)行最小二乘法數(shù)據(jù)處理,即可以得到最后的合適的擬合圓方程。
最后,如果內(nèi)點的個數(shù)小于所設(shè)閾值e的時候,算法繼續(xù)進(jìn)行,重復(fù)以上的算法步驟,直至找到正確擬合圓的模型為止,算法結(jié)束;如果重復(fù)迭代m次之后還是未能確定模型參數(shù),則提前結(jié)束算法,擬合失敗。
其中,所設(shè)閾值E和e可以根據(jù)實際所進(jìn)行的實驗結(jié)果來最后決定其數(shù)值的大小,而且重復(fù)迭代次數(shù)的大小確定可以根據(jù)經(jīng)驗和先前理論推敲得到。
由已知文獻(xiàn)參考可知,RANSAC算法擬合失敗的概率公式為:
1-P=(1-w3)m
(1)
其中:p代表算法擬合成功的概率大小,w代表隨機(jī)地在全部提取的圓的輪廓點中挑取一個點,而這個點恰好為內(nèi)點的概率大小。因此,如果要獲得足夠高的算法擬合成功率,則相應(yīng)的迭代次數(shù)需滿足以下條件:
(2)
通過擬合得到各種頭型的微鉆的最大外接圓,如圖6所示。
圖6 外徑求取
同理,為求得微鉆的芯厚大小,需要同ROI求取其對應(yīng)的外接矩形,矩形的寬度即為所求的芯厚。通過相關(guān)計算,得到如圖7所示的4個外接矩形:
圖7 芯厚求取
刃面缺陷檢測主要是缺口以及圓角的檢測,為此需對刃面的輪廓進(jìn)行亞像素級的提取和擬合。除第4種長條形的微鉆之后,其他3種頭型的邊緣輪廓都是直線和曲線的組合,所以在實際的計算過程中,圖像處理手段相對復(fù)雜一些,需要對直線和曲線輪廓分別進(jìn)行亞像素的輪廓提取。
2.2.1 改進(jìn)的直線擬合方法
針對圖像處理算法中的直線擬合,一般有:最小二乘法、梯度下降法以及高斯牛頓法。其中,最小二乘法使用最為廣泛。最小二乘法即最小平方法,它根據(jù)數(shù)據(jù)的最小化誤差的平方來獲得數(shù)據(jù)的最適合函數(shù)匹配。
用最小二乘法來擬合直線,主要的思路是找到一條直線,使得所有已知的輪廓點到這條直線的歐氏距離的和最小即點到直線的誤差平方和最小。因此,其基本的步驟為:首先假設(shè)直線方程,用斜率和截距作為變量表示;然后獲得輪廓點的坐標(biāo);之后計算點到直線的誤差平方和;最后根據(jù)極值定理,讓誤差方程一階導(dǎo)數(shù)等于0處取極值即分別對斜率和截距求導(dǎo),即可獲得直線的斜率和截距,直線方程也隨之解得。
RANSAC估計即隨機(jī)采樣一致性估計。這種具有魯棒性的估計方法最早由Fischier和Bolles提出的。最開始是用來解決計算機(jī)視覺中關(guān)于位姿的估計問題,如今被廣泛地推廣到對于已知模型的參數(shù)估計問題當(dāng)中。對于直線擬合中使用RANSAC估計,其主要的步驟有兩條:第一是在已知的輪廓點中隨機(jī)選取兩個點,由這兩個點確定一條直線;第二是通過使用幾何距離獲得最大一致集最佳的擬合直線,以此作為最后的擬合直線。
具體來說就是,首先隨機(jī)選擇兩個點A1和B1,由這兩個點的坐標(biāo)就可以確定直線的方程中兩個變量參數(shù)的大小,從而獲得直線方程;然后計算其他剩余的輪廓點到這條直線的距離D,在此之前先設(shè)置一個距離的閾值N,判斷D與N的大小關(guān)系,等于或者小于所設(shè)閾值則將點視為內(nèi)點,保存內(nèi)點的個數(shù);之后再隨機(jī)選擇兩個點A2和B2,統(tǒng)計內(nèi)點個數(shù),以此類推;選取內(nèi)點個數(shù)最大的點集作為最大一致集,然后利用這最大一致集中的點擬合直線。
對于特種的微鉆刃面圖像,由于刃面形狀結(jié)構(gòu)的復(fù)雜,單純地通過最小二乘法進(jìn)行擬合直線,很多邊緣輪廓末端的干擾像素點也會被提取到,導(dǎo)致擬合出來的直線精度不高,所以這里使用改進(jìn)的直線擬合方法進(jìn)行擬合。算法的主要思路為:首先使用RANSAC直線擬合算法進(jìn)行第一次的直線擬合,過濾掉干擾邊緣線段和干擾點,然后再對這些篩選后的輪廓點進(jìn)行最小二乘法直線擬合。實驗表明,運用改進(jìn)的直線擬合方法得到的擬合直線比較接近實際的輪廓形狀,為之后的圖像處理減少了不必要的麻煩。擬合的結(jié)果如圖8所示。
圖8 改進(jìn)的直線擬合
2.2.2 樣條曲線擬合
構(gòu)造擬合曲線,除了最常見的最小二乘法之外,為了擬合的精度,通常需要對曲線輪廓進(jìn)行分段擬合即在每一段分段中,用較低次的多項式作為此段的擬合曲線,而且這些分段多項式的曲線的分界點還是光滑過渡的,這就是樣條曲線擬合了。
在實際的處理中,我們可以將曲線近似的看成一條非均勻有理B樣條曲線即NURBS曲線擬合處理。階數(shù)為N的NURBS曲線C的定義為:
(3)
其中:P(K)為曲線上的位置向量,Ni,m(K)為m次樣條基函數(shù)?;瘮?shù)可以通過遞推公式來進(jìn)行定義:
(4)
其中:m≥1,Pi為控制點,Ri為權(quán)因子,K為節(jié)點矢量。
特殊地,如果曲線采用三次NURBS形式表示時,第i段曲線可以寫成下列矩陣的形式:
(5)
其中:t∈[0,1],i=3,4,...,n,整理上式可以得到:
(6)
其中:t∈[0,1],i=3,4,...,n。由于控制點di和權(quán)因子wi都是已知的,而且Mi只與節(jié)點向量有關(guān),所以Ci是確定的,所以整個曲線可以通過上式遞推得到。
利用NURBS曲線擬合法,對各種頭型的微鉆刃面曲線輪廓進(jìn)行擬合,得到的結(jié)果如圖9所示。
圖9 樣條曲線擬合
在進(jìn)行了粗大誤差點去除之后,NURBS曲線擬合后得到標(biāo)準(zhǔn)輪廓,之后再跟實際提取的輪廓進(jìn)行對比,就可以得到在微鉆曲線輪廓部分的缺口最大值。圓角的求法與缺口類似,只是計算大小的方式從擬合輪廓與實際輪廓的最大距離轉(zhuǎn)化為外接圓上的點與刃面最遠(yuǎn)端的輪廓間的距離。
實驗中為驗證視覺檢測算法的可行性,選擇月牙型、A型、CB型以及長條型的微鉆,對每種頭型的微鉆,改變10次刃面角度之后,對其刃面圖像進(jìn)行采集,重復(fù)測試10次外徑,圓角以及缺口值,然后保存;依托圖像處理算法,設(shè)計專門的圖像處理軟件,對這些采集到的圖片進(jìn)行手動檢測,檢測結(jié)果可以直接顯示到軟件界面上;最后,保存數(shù)據(jù)結(jié)果,將結(jié)果與人工檢測得到的數(shù)據(jù)結(jié)果進(jìn)行對比,從而得到驗證。實驗的部分結(jié)果如圖10所示。
圖10 幾種頭型微鉆的實驗結(jié)果
其中,各種頭型的微鉆100次重復(fù)測量,得到的數(shù)據(jù)結(jié)果對比如表1~4所示。
表1 月牙型
表2 A型
表3 CB型
表4 長條型
實驗結(jié)果表明,視覺檢測算法能夠?qū)⒁阎娜毕莘N類全部檢出,同時對于尺寸的測量也滿足生產(chǎn)生活的實際要求。
針對特種頭型微鉆不同于普通微鉆的結(jié)構(gòu)特點,本文提出一種尺寸測量和缺陷檢測的視覺算法。對于微鉆的尺寸測量:首先通過高斯濾波預(yù)處理,獲得干擾較少的微鉆刃面圖像;然后通過改進(jìn)的直線擬合方法和圓擬合方法,提取邊緣輪廓并進(jìn)行擬合;最后計算最大外接圓的直徑得到外徑,計算擬合后矩形的寬度得到芯厚。對于微鉆的缺陷檢測,在同樣的預(yù)處理之后,通過NURBS樣條曲線擬合和直線擬合,獲得刃面輪廓中的曲線輪廓,通過比較與實際輪廓的差異,獲得最大的缺口值,同理得到圓角的大小。