聶新橋,何廣棟
(華南理工大學(xué)廣東廣州510641)
基于OpenCV的微鉆刃面檢測(cè)
聶新橋,何廣棟
(華南理工大學(xué)廣東廣州510641)
為了解決微鉆生產(chǎn)過(guò)程中人工抽檢重復(fù)性差、精度低的問(wèn)題,提出了微鉆刃面的圖像檢測(cè)方法,建立了實(shí)驗(yàn)平臺(tái)。通過(guò)程序控制光源亮度,從而獲得一致的照明。圖像處理程序使用了開(kāi)源的OpenCV庫(kù),采用霍夫變換提取微鉆刃面中心線的角度,通過(guò)閾值分割和Zernike矩實(shí)現(xiàn)了邊緣的亞像素定位,使用擬合法計(jì)算出邊緣的直線方程和刃面參數(shù)。實(shí)驗(yàn)結(jié)果表明,角度類參數(shù)的重復(fù)精度達(dá)0.2°,長(zhǎng)度類參數(shù)的重復(fù)精度達(dá)0.3μm。
微鉆;圖像處理;OpenCV;亞像素
隨著電子信息產(chǎn)業(yè)的快速發(fā)展[1],國(guó)內(nèi)外市場(chǎng)對(duì)PCB的需求越來(lái)越旺盛。微孔加工是PCB制造的重要加工工序,約占PCB制造成本的30%到40%,是PCB產(chǎn)能的瓶頸之一[2],微孔加工過(guò)程中需要消耗大量PCB微鉆,同時(shí)隨著高密度互連等技術(shù)的發(fā)展,以及PCB集成度不斷提高,微鉆的直徑也不斷減小,目前,小于0.1mm直徑的微鉆已經(jīng)開(kāi)始進(jìn)入產(chǎn)業(yè)化階段[3]。微鉆尺寸的不斷減少給微鉆的生產(chǎn)和檢驗(yàn)帶來(lái)了挑戰(zhàn),從現(xiàn)有的研究可以知道,微鉆刃面的缺陷有重疊、分開(kāi),大頭、小頭、偏心和大小面等十余種[4],刃面的缺陷會(huì)造成微鉆的壽命縮短,鉆孔孔數(shù)變少[5]。現(xiàn)有的微鉆刃面檢驗(yàn)方式通常應(yīng)用于終檢,從生產(chǎn)的鉆頭中挑選出不合格品。而在微鉆的生產(chǎn)車間,由于加工的鉆頭過(guò)于精密,受環(huán)境溫度,切削油溫以及砂輪磨損等因素的影響較大,需要人工按時(shí)抽樣在顯微鏡下檢查,并根據(jù)結(jié)果調(diào)整生產(chǎn)設(shè)備參數(shù)或者修整砂輪等。由于受個(gè)人經(jīng)驗(yàn)和視覺(jué)疲勞的影響,人工判斷存在一定主觀因素,可能誤判而造成批量的不良品。
為了減輕工人負(fù)擔(dān),輔助員工抽檢,本研究設(shè)計(jì)了微鉆刃面檢測(cè)系統(tǒng)。系統(tǒng)采用開(kāi)源的OpenCV作為圖像處理庫(kù),使用了亞像素算法提高檢測(cè)的精度,實(shí)驗(yàn)表明測(cè)量重疊、分開(kāi)、偏心和大小面的精度可達(dá)0.3 μm,大頭和小頭缺陷精度可達(dá)0.2°,對(duì)用戶調(diào)整生成機(jī)械有指導(dǎo)意義。
圖1為微鉆刃面檢測(cè)系統(tǒng)的結(jié)構(gòu)框圖,可以看出檢測(cè)系統(tǒng)由光學(xué)成像系統(tǒng)、運(yùn)動(dòng)控制卡、運(yùn)動(dòng)平臺(tái)和工控機(jī)組成。運(yùn)動(dòng)平臺(tái)由工作臺(tái)、夾具、萬(wàn)向節(jié)、伺服電機(jī)和驅(qū)動(dòng)器等組成,可以實(shí)現(xiàn)鉆頭沿軸向的移動(dòng)和自轉(zhuǎn)。運(yùn)動(dòng)控制卡選用了東莞市升力智能科技有限公司的IPMC8812運(yùn)動(dòng)控制卡,上位機(jī)軟件可以通過(guò)運(yùn)動(dòng)控制卡實(shí)現(xiàn)系統(tǒng)的運(yùn)動(dòng)控制和輸入輸出型號(hào)的讀取與操作。刃面光學(xué)成像系統(tǒng)采用了Sentech公司的STC-TB202USB工業(yè)相機(jī),分辨率1 600×1 200,鏡頭選用Navitar公司的12x Zoom變倍鏡頭,環(huán)形光選用銳視光電的藍(lán)色LED環(huán)形光源。側(cè)面光學(xué)成像系統(tǒng)選用方誠(chéng)科技的IK125M工業(yè)CCD相機(jī),分辨率1292×964,選用桂光儀器的TL-60000變焦鏡頭和銳視光電的紅色LED背光源。
測(cè)量過(guò)程中,刃面相機(jī)用于獲取微鉆的刃面圖像,刃面鏡頭的焦距固定,通過(guò)側(cè)面相機(jī)可以標(biāo)定刃面光學(xué)成像系統(tǒng)的焦點(diǎn)的位置,運(yùn)動(dòng)控制系統(tǒng)使鉆頭沿軸向運(yùn)動(dòng)進(jìn)入刃面光學(xué)成像系統(tǒng)的焦點(diǎn)內(nèi),獲得清晰的刃面圖像。通過(guò)設(shè)置光源控制器,調(diào)整環(huán)形光源的發(fā)光強(qiáng)度得到對(duì)不同規(guī)格微鉆的一致的照明,最后通過(guò)自行開(kāi)發(fā)的軟件檢測(cè)出刃面中心線的傾角并旋轉(zhuǎn)到水平位置,最后對(duì)圖像中微鉆的刃面幾何參數(shù)進(jìn)行測(cè)量。

圖1 系統(tǒng)總體結(jié)構(gòu)
微鉆在刃面光學(xué)成像系統(tǒng)下取得的良好的圖像如圖2(a),圖中灰度值較大的區(qū)域?yàn)槲@的第一隙面,測(cè)量微鉆的參數(shù)信息需要第一隙面的邊緣清晰銳利。檢測(cè)系統(tǒng)用于微鉆的抽樣檢測(cè),同樣的光源亮度對(duì)于不同結(jié)構(gòu)參數(shù)的微鉆打光效果差別很大。通常頂角大的微鉆第一隙面容易過(guò)度曝光,從而使邊緣信息丟失,影響后續(xù)算法測(cè)量的準(zhǔn)確性。為了對(duì)不同結(jié)構(gòu)參數(shù)的微鉆得到一致的照明,需要研究微鉆第一隙面的平均灰度與光源亮度之間的關(guān)系。首先通過(guò)閾值分割提取出微鉆第一隙面,即選取合適的閾值k將圖像分成背景B和第一隙面T。滿足下式。

f(x,y)為坐標(biāo)點(diǎn)(x,y)處的灰度值。ROI為圖像的感興趣區(qū)域,既圖像處理的區(qū)域,刃面圖像選取CCD畫(huà)幅中央350× 350的區(qū)域?yàn)镽OI。對(duì)于不同的光源亮度應(yīng)取合適的閾值提取第一隙面,Sezgin分析了各類閾值分割算法,指出并指出聚類分析方法的性能較為優(yōu)越[6],這里采用聚類分析方法的大津法[7]作為閾值提取方法,大津提出使用類間方差作為判斷一個(gè)閾值好壞的依據(jù),類間方差的定義如式(2)。

其中Pi定義為ROI中灰度值為i的像素?cái)?shù)與總像素?cái)?shù)之比,最優(yōu)的閾值k使類間方差最大,在實(shí)際的算法實(shí)現(xiàn)中,只需訪問(wèn)一次ROI的所有數(shù)據(jù)得到直方圖,再使k遍歷[0,255]整個(gè)灰度范圍,就可以找到使類間方差最大的最優(yōu)閾值k。

圖2 微鉆刃面圖像及閾值分割圖像
圖2(b)展示了使用大津法求取的閾值提取的區(qū)域,可以看出黑色的區(qū)域與微鉆的第一隙面重合較好。第一隙面的平均灰度如下:

為了調(diào)整第一隙面的平均灰度需要研究鉆頭第一隙面的平均灰度與光源亮度之間的關(guān)系。設(shè)置光源亮度調(diào)整范圍為[10,100],步長(zhǎng)為10,分別計(jì)算第一隙面的平均灰度,結(jié)果如表1,可以看出,第一隙面的平均灰度隨著光源亮度增加而增大,可以利用其單調(diào)遞增的特性使用二分法搜索合適的光源亮度。使微鉆第一隙面平均灰度為150-180之間,對(duì)于不同結(jié)構(gòu)參數(shù)的微鉆得到一致的照明。
測(cè)量刃面參數(shù)需要首先測(cè)量刃面的傾角,這里使用霍夫變換測(cè)量?jī)A角,為了使用霍夫變換需要得到圖像的邊緣信息,OpenCV提供的像素級(jí)邊緣提取算法有Sobel,Canny,LoG等算法,這些算法受第一隙面的加工痕跡影響較大,容易提取到不相關(guān)的邊緣,因此使用OpenCV提供查找邊緣輪廓的findContours算子[8],從閾值分割得到第一隙面的區(qū)域的圖像中得到第一隙面的輪廓,輪廓只有一個(gè)像素寬,非常利于霍夫變換處理,如圖3(a)。對(duì)于邊緣圖像可以直接使用OpenCV的HoughLines算子,霍夫變換的直線采用Duda提出的參數(shù)表示法[9],方程如式(4)。

設(shè)置θ的分辨率為1°,ρ的分辨率為1,閾值為30個(gè)像素點(diǎn),即只提取得票數(shù)大于30個(gè)像素點(diǎn)的直線,直接使用霍夫變換會(huì)得到多重響應(yīng),如圖3(b)。微鉆的橫刃、切削刃以及中心線均有多條直線檢出。為了剔除這些多重響應(yīng)的影響,需要進(jìn)行非極大的抑制,獲取霍夫變換空間的局部最大值。定義霍夫變換空間中兩條直線的距離為D。

HoughLines算子會(huì)把提取出的直線按照得票數(shù)從多到少排列,對(duì)于每一條檢出的直線,與得票數(shù)大于它的直線計(jì)算霍夫變換空間的距離,如果距離大于設(shè)定的閾值,則該條直線有效。實(shí)際應(yīng)用中權(quán)重系數(shù)a取1,b取0.5,距離閾值設(shè)置為10。經(jīng)過(guò)非極大抑制后得到的檢測(cè)直線如圖3(c),通過(guò)檢測(cè)直線的幾何關(guān)系和強(qiáng)度可以得到刃面中心線直線,最終計(jì)算出刃面傾角,如圖3(d)。通過(guò)機(jī)構(gòu)的旋轉(zhuǎn)可以使得中心線水平,如圖4。則對(duì)于所有微鉆取向一致,方便了檢測(cè)算法設(shè)計(jì)。

表1 光源亮度與平均灰度之間關(guān)系

圖3 微鉆刃面中心線提取步驟
旋轉(zhuǎn)到水平的微鉆圖像仍然使用閾值分割和findContours算子提取如圖3(a)所示的第一隙面的輪廓,使用minEnclosingCircle算子處理輪廓可以得到微鉆的直徑和圓心位置,使用boundingRect算子可以得到輪廓的邊界矩形。通過(guò)霍夫變換提取的橫刃、切削刃、中心線的方程,計(jì)算直線之間,直線和外圓的交點(diǎn),可以設(shè)置合適的ROI使得ROI內(nèi)只有一條邊緣,方便了擬合計(jì)算。圖4為微鉆右側(cè)切削刃ROI和中心線ROI,使用同樣辦法可以得到橫刃的ROI以及左側(cè)各線段的ROI。

圖4 自適應(yīng)的ROI設(shè)置
遍歷所有的邊緣點(diǎn),檢查是否在矩形ROI內(nèi)可以得到ROI內(nèi)的邊緣。但是該邊緣的準(zhǔn)確度在多數(shù)情況下與閾值的選取有關(guān),如果閾值選取不恰當(dāng),提取的邊緣將不準(zhǔn)確[10]。為了提高檢測(cè)精度和準(zhǔn)確性,使用亞像素邊緣檢測(cè)算法對(duì)邊緣進(jìn)行定位,當(dāng)前亞像素邊緣檢測(cè)算法可分為擬合法、插值法和矩法[11]。擬合法利用邊緣附近的像素點(diǎn),根據(jù)假設(shè)的邊緣模型擬合得到亞像素邊緣,但邊緣模型較復(fù)雜時(shí)需要計(jì)算多元非線性函數(shù)極值,求解復(fù)雜速度慢不便于實(shí)時(shí)處理[12]。插值法計(jì)算效率高[13],但容易受噪聲干擾。因此本研究采用矩法進(jìn)行亞像素定位,矩法包括灰度矩[14]、空間矩[15]和Zernike矩[16]等,因?yàn)閆ernike矩的正交特性,計(jì)算量較少,本文使用Zernike矩對(duì)邊緣進(jìn)行亞像素定位。
Zernike提出的邊緣模型如圖5,直線是二維圖像的邊緣,直線下方灰度為h,直線上方灰度為h+k,圓心到直線的距離為l,邊緣的法線與x軸夾角為θ。通過(guò)像素級(jí)邊緣點(diǎn)(x,y)可以計(jì)算出亞像素邊緣點(diǎn)


圖5 理想的二維邊緣
因此只需計(jì)算l和θ就可以得到亞像素精度的邊緣坐標(biāo)。Zernike矩有3個(gè)矩Z00,Z11和Z20,其中Z11是復(fù)數(shù)。計(jì)算式如式(7),通過(guò)文獻(xiàn)給出的矩計(jì)算模板,使用OpenCV的矩陣點(diǎn)乘運(yùn)算可以分別計(jì)算出Z11和Z20。

使用OpenCV的fitLine算子可以擬合亞像素邊緣,得到直線的精確方程。得到所有邊緣的直線方程后,可以通過(guò)幾何知識(shí)確定刃面參數(shù)的大?。?7]。
通過(guò)變焦鏡頭的調(diào)整,本研究所設(shè)計(jì)的微鉆刃面檢測(cè)系統(tǒng)可以測(cè)量直徑0.1 mm到0.5 mm的PCB微鉆。固定放大倍率為3倍時(shí),可以測(cè)量直徑0.2 mm到0.35 mm的微鉆。為了驗(yàn)證檢測(cè)的重復(fù)性,取鉆徑0.25 mm的微鉆,使用該方法測(cè)量10次,結(jié)果如下。該鉆頭有輕微的大頭和重疊缺陷,因此小頭和分開(kāi)測(cè)量數(shù)據(jù)均為0,可以看出大頭的測(cè)量差異為0.2度,直徑、重疊、偏心和大小面的重復(fù)性為0.3μm。

表2 微鉆檢測(cè)重復(fù)性測(cè)量結(jié)果
該微鉆刃面檢測(cè)系統(tǒng)使用開(kāi)源圖像處理庫(kù)OpenCV處理微鉆刃面圖像,為了提高檢測(cè)的精度,比較了各類亞像素邊緣檢測(cè)算法,最終選取具有正交特性的Zernike矩實(shí)現(xiàn)亞像素精度的定位。實(shí)驗(yàn)表明系統(tǒng)測(cè)量精度較高,角度類參數(shù)分辨力為0.1°,長(zhǎng)度類參數(shù)分辨力為0.1μm,重復(fù)性分別可達(dá)0.2°和0.3 μm。能夠有效測(cè)量微鉆刃面缺陷,為人工調(diào)整生產(chǎn)設(shè)備提供了依據(jù)。
[1]工業(yè)和信息化部運(yùn)行監(jiān)測(cè)協(xié)調(diào)局.2015年電子信息產(chǎn)業(yè)統(tǒng)計(jì)公報(bào)[EB/OL].(2016-02-29)[2016-03-16].http://www.miit.gov.cn/newweb/n1146285/n1146352/n3054355/n3057511/n3057518/c4650836/content.html.
[2]王成勇,黃立新,鄭李娟,等.印刷電路板超細(xì)微孔鉆削加工及其關(guān)鍵技術(shù)[J].工具技術(shù),2010,44(1):3-10.
[3]付連宇,厲學(xué)廣,郭強(qiáng).高厚徑比微型鉆頭開(kāi)發(fā)[J].印制電路信息,2010(S1):440-445.
[4]Huang C K,Liao C W,Huang A P,et al.An automatic optical inspection of drill point defects for micro-drilling[J].International Journal of Advanced Manufacturing Technology,2008,37(11):1133-1145.
[5]邱景驛.數(shù)位影像處理應(yīng)用于微型鉆針再研磨之研究[D].基?。簢?guó)立臺(tái)灣科技大學(xué),2007.
[6]Sezgin M,Sankur B.Survey over image thresholding techniquesandquantitativeperformanceevaluation[M].Journal of Electronic Imaging,2004.
[7]Otsu N.A Threshold Selection Method from Gray-Level Histograms[J].Systems Man&Cybernetics IEEE Transactions on,1979,9(1):62-66.
[8]Suzuki S,Be K.Topological structural analysis of digitized binary images by border following[J].Computer Vision Graphics&Image Processing,1985,30(1):32-46.
[9]Duda R O,Hart P E.Use of the Hough transformation to detect lines and curves in pictures[J].Communications of the Acm,1972,15(1):11-15.
[10]Steger C,Ulrich M,Wiedemann C.Machine Vision Algorithms and Applications[M].2008.
[11]張舞杰,李迪,葉峰.基于Sigmoid函數(shù)擬合的亞像素邊緣檢測(cè)方法[J].華南理工大學(xué)學(xué)報(bào):自然科學(xué)版,2009,37(10):39-43.
[12]Hagara M,Kulla P.Edge Detection with Subpixel Accuracy Based on Approximation of Edge with Erf Function[J].Radioengineering,2011,20(2):516-524.
[13]Jensen K,Anastassiou D.Subpixel edge localization and the interpolation of still images.[J].IEEE Transactions on ImageProcessingAPublicationoftheIEEESignal Processing Society,1995,4(3):285-95.
[14]羅鈞,侯艷,付麗.一種改進(jìn)的灰度矩亞像素邊緣檢測(cè)算法[J].重慶大學(xué)學(xué)報(bào),2008,31(5):549-552.
[15]Lyvers E P,Mitchell O R,Akey M L,et al.Subpixel Measurements Using a Moment-Based Edge Operator[J].IEEE Transactions on Pattern Analysis&Machine Intelligence,1990,11(12):1293-1309.
[16]Ghosal S,Mehrotra R.Edge detection using orthogonal moment-based operators[C]//Pattern Recognition,1992.Vol.III.Conference C:Image,Speech and Signal Analysis,Proceedings.,11thIAPRInternationalConferenceon.IEEE,1992:413-416.
[17]胡松立.基于機(jī)器視覺(jué)的PCB微鉆幾何參數(shù)精密檢測(cè)技術(shù)研究[D].上海:上海交通大學(xué),2009.
Inspection of micro drill blade based on OpenCV
NIE Xin-qiao,HE Guang-dong
(South China University of Technology,Guangzhou 510641,China)
In order to improve the repeatability and accuracy of micro drill inspection during manufacturing process,a micro drill blade inspection method is proposed and experiment platform is made.Micro drills of different specification are laminated uniformly through light control.OpenCV is used as the image process library,hough transformation is used to detect the center line,segmentation and Zernike moments are used to find the subpixel edge location.Finally,line fitting is used to calculate the dimension of micro-drill.Experimental result shows the repeatability of angular parameter is within 0.2 degree,longitudinal parameter is within 0.3μm.
micro drill;image processing;openCV;subpixel
TN06
A
1674-6236(2016)17-0160-04
2016-03-07稿件編號(hào):201603069
廣東省科技計(jì)劃項(xiàng)目(2012A090100012);廣東省省級(jí)科技計(jì)劃項(xiàng)目(2013B010134010)
聶新橋(1990—),男,湖南永州人,碩士。研究方向:圖像處理、微鉆檢測(cè)等。