許楨英,徐家祥,黃建斌,劉家旺,王 勻
(江蘇大學(xué) 機(jī)械工程學(xué)院,鎮(zhèn)江 212013)
高密度電連接器組件是航空航天、航海、軍工、工業(yè)、精密機(jī)械、信息乃至家用電器等眾多領(lǐng)域的控制與驅(qū)動(dòng)系統(tǒng)中的重要基礎(chǔ)元器件,其技術(shù)性能的高低直接影響和制約了這些行業(yè)的發(fā)展水平。十二五期間航空、海工、信息行業(yè)對(duì)高端機(jī)電組件技術(shù)水平的要求越來(lái)越高,電連接器的尺寸檢測(cè)必須達(dá)到100%達(dá)標(biāo)。
目前大多數(shù)電連接器制造企業(yè)都采用人工檢測(cè)或簡(jiǎn)單工具測(cè)量的方法,需要耗費(fèi)大量的人力和時(shí)間,且檢測(cè)精度容易受到人員差異的影響,很難保證高質(zhì)量的產(chǎn)品。
機(jī)器視覺就是利用機(jī)器代替人眼做測(cè)量和判斷[1]。視覺測(cè)量技術(shù)不但速度快、非接觸、易于自動(dòng)化,而且精度高[2]。本文將視覺測(cè)量技術(shù)應(yīng)用在電連接器殼體零件的孔徑測(cè)量中,提高了檢測(cè)的效率,對(duì)促進(jìn)行業(yè)的發(fā)展具有十分積極的意義。
HALCON是德國(guó)MVtec公司開發(fā)的一套完善的標(biāo)準(zhǔn)的機(jī)器視覺算法包,擁有應(yīng)用廣泛的機(jī)器視覺集成開發(fā)環(huán)境。它節(jié)約了產(chǎn)品成本,縮短了軟件開發(fā)周期。在歐洲以及日本的工業(yè)界已經(jīng)是公認(rèn)具有最佳效能的Machine Vision軟件[3],是一套image processing library,由一千多個(gè)各自獨(dú)立的函數(shù)、以及底層的數(shù)據(jù)管理核心構(gòu)成。其中包含了各類濾波,色彩以及幾何,數(shù)學(xué)轉(zhuǎn)換,形態(tài)學(xué)計(jì)算分析,校正,分類辨識(shí),形狀搜尋等等基本的幾何以及影像計(jì)算功能,而且HALCON為大量的圖像獲取設(shè)備提供接口,保證了硬件的獨(dú)立性。它為百余種工業(yè)相機(jī)和圖像采集卡提供接口,包括GenlCam,GigE和IIDC1394。因此只要用得到圖像處理的地方,就可以用HALCON強(qiáng)大的計(jì)算分析能力來(lái)完成工作。
本文通過搭建視覺測(cè)量平臺(tái),用工業(yè)相機(jī)采集標(biāo)定圖像和工件圖像,通過HALCON軟件進(jìn)行攝像機(jī)標(biāo)定和零件的孔徑測(cè)量,所用到的算法包括:閾值分割、亞像素邊緣提取、輪廓線圓分割、擬合圓。
選用的標(biāo)定板為圓心點(diǎn)陣標(biāo)定板,大小為36mm×36mm,厚度為2mm,標(biāo)定板精度為1μm,標(biāo)定板示意如圖1所示。該標(biāo)定板周圍的黑色矩形邊框使得標(biāo)定對(duì)象的中心容易被提取,矩形邊界框角落的方向使得標(biāo)定板的方向唯一。標(biāo)定的具體過程如下:攝像機(jī)拍攝標(biāo)定圖像,對(duì)圖像進(jìn)行閾值分割,將標(biāo)定板的內(nèi)部區(qū)域與背景分離,利用Canny濾波器提取標(biāo)定板各圓形標(biāo)志的邊緣,通過線性最小化代數(shù)誤差擬合橢圓,提取出橢圓的最小外界四邊形,確定標(biāo)志點(diǎn)以及各標(biāo)志點(diǎn)與圖像中投影之間的關(guān)系。本文使用HALCON軟件提供的標(biāo)定助手進(jìn)行攝像機(jī)內(nèi)外參的標(biāo)定,首先加載標(biāo)定板描述文件,標(biāo)定板的厚度是2mm,單個(gè)像元的寬和高是1.67μm,焦距設(shè)置一個(gè)初始默認(rèn)值,加載標(biāo)定圖像,設(shè)置不同的參考位姿,得到相應(yīng)的標(biāo)定結(jié)果,生產(chǎn)標(biāo)定代碼,利用算子矯正位姿,排除相機(jī)沒有嚴(yán)格垂直安裝對(duì)后續(xù)尺寸測(cè)量帶來(lái)的干擾。代碼:Set_origin_Pose(PoseNewOrigin,0,0.02,PoseNewOrigi,1)。通過標(biāo)定獲得的攝像機(jī)內(nèi)參數(shù)的值為interCamera=[0.0119984,49.4911,1.66935e-006,1.67e-006,1.83197,1373.87,3664,2748],獲得的外參數(shù)Pose=[0.00446928,0.00336343,0.128611,359.904,359.978,266.9 94],投影誤差Error=0.126866,標(biāo)定精度達(dá)到微米級(jí),誤差±1.5μm。
圖1 圓心標(biāo)定板示意圖
為了減少電連接器殼體零件金屬材質(zhì)的反光以及獲取高對(duì)比度的零件輪廓圖,在使用背光源的方式下進(jìn)行圖像的拍攝采集,采集后讀取到的圖像如圖1所示。為了獲取所需要的零件特征,必須將背景和零件分離開來(lái),提取出感興趣區(qū)域。圖像閾值化分割是一種簡(jiǎn)單且實(shí)用的圖像分割方法[4]。通過設(shè)定不同的特征閾值,把圖像像素點(diǎn)分為若干類。設(shè)原始圖像為f(x,y),分割后圖像為g(x,y),按一定的準(zhǔn)則在f(x,y)找到閾值T,將圖像分割為兩部分,分割后的圖像表達(dá)式如下:
其中,值為1的部分表示我們需要測(cè)量的目標(biāo)區(qū)域,值為0的部分表示背景。
本文圖像分割用于從采集的圖像中把需要測(cè)量的區(qū)域分割處理,使用算子fast_threshold (Image,Region,200,255,20)對(duì)殼體零件圖像進(jìn)行快速閾值分割,閾值由Region的灰度值范圍確定,然后使用算子connection(Region,ConnectedRegions)對(duì)分割后的區(qū)域進(jìn)行區(qū)域連通,利用面積的特征約束篩選出所需測(cè)量的各個(gè)圓孔區(qū)域,本文選擇了UPP3728-10、UPP2020-06、UPP3728-08f三種型號(hào)的殼體零件進(jìn)行實(shí)驗(yàn)分別用(a)、(b)、(c)表示,處理后的圖如圖2所示。
圖2 殼體零件閾值分割后獲取的區(qū)域示意圖
圖像的邊緣是指圖像局部區(qū)域亮度變化顯著的部分,該區(qū)域的灰度剖面一般可以看作是一個(gè)階躍,既從一個(gè)灰度值在很小的緩沖區(qū)域內(nèi)急劇變化到另一個(gè)灰度相差較大的灰度值。邊緣檢測(cè)就是使用數(shù)學(xué)方法提取圖像像元中具有亮度值(灰度)空間方向梯度大的邊、線特征的過程。梯度能很好的反映圖像的邊緣位置。梯度用表示:
實(shí)現(xiàn)圖像的邊緣檢測(cè),就是要用離散化梯度逼近函數(shù)根據(jù)二維灰度矩陣梯度向量來(lái)尋找圖像灰度矩陣的灰度躍變位置,然后在圖像中將這些位置的點(diǎn)連起來(lái)就構(gòu)成了所謂的圖像邊緣。本文通過邊緣檢測(cè)將分割好的殼體零件圖像的邊緣提取出來(lái),為后續(xù)的測(cè)量做準(zhǔn)備。在HALCON中我們可以不同的算子來(lái)實(shí)現(xiàn)精確地檢測(cè)圖像的邊緣。
本文使用算子edges_sub_pix(ImageReduced,,Edges,'canny',1.5,10,40)進(jìn)行邊緣檢測(cè),canny算子使用滯后閾值分割,包含兩個(gè)閾值——高閾值和低閾值。邊緣幅度比高閾值大的那些點(diǎn)作為安全邊緣點(diǎn)被接受。邊緣幅度比低閾值小的那些點(diǎn)被立刻剔除。邊緣幅度在高閾值和低閾值之間的那些點(diǎn)只有在與安全邊緣點(diǎn)相連時(shí),才作為邊緣點(diǎn)被接受。canny算子改進(jìn)實(shí)現(xiàn)亞像素邊緣檢測(cè)通過在梯度方向上檢測(cè)二階方向?qū)?shù)的過零點(diǎn):
其中,Lx,Ly,…,Lyyy表示用高斯核平滑原始圖像得到的尺度空間。
通過edges_sub_pix算子可對(duì)殼體零件圖像區(qū)域進(jìn)行亞像素邊緣提取,直接返回由像素點(diǎn)組成的邊緣Edges,具有亞像素精度[5]。再通過算子segment_contours_xld(Edges,ContoursSplit,'lines_circles',5,2,2)將輪廓進(jìn)行分割,該算子將分割后的輪廓設(shè)置其全局輪廓屬性cont_approx確定分割輪廓的類型,屬性為-1的輪廓近似為線段,屬性為0的輪廓近似為橢圓弧,屬性為1的輪廓近似為圓弧,輪廓分割后得到的圖像如圖3所示。
圖3 殼體零件輪廓邊緣示意圖
在得到了輪廓分割后的圖像后,對(duì)每段輪廓進(jìn)行計(jì)數(shù),并進(jìn)行篩選。使用算子get_contour_global_attrib_xld(ObjectSelected,'cont_approx',Attrib)獲取每段輪廓的屬性,如果Attrib=1,則該輪廓段屬于圓弧段,對(duì)圓弧輪廓進(jìn)行圓擬合,使用fit_circle_contour_xld (ObjectSelected,'algebraic',-1,0,0,3,2,Row,Column,Radius,StartPhi,EndPhi,PointOrder)獲得圓心的坐標(biāo)和圓的半徑。
利用標(biāo)定結(jié)果得到的單位像素尺寸求得孔徑的實(shí)際尺寸。本文利用HALCON軟件平臺(tái)對(duì)電連接器殼體零件的孔徑進(jìn)行了測(cè)量,并將軟件測(cè)得的尺寸與鎮(zhèn)江市計(jì)量所萬(wàn)能顯微鏡測(cè)出的尺寸進(jìn)行了比較,計(jì)算出了測(cè)量誤差。實(shí)驗(yàn)結(jié)果表明用機(jī)器視覺測(cè)量的方法更方便快捷且誤差在公差允許范圍之內(nèi)。測(cè)量結(jié)果如表1所示,其中a代表萬(wàn)能顯微鏡測(cè)得值,x代表視覺測(cè)量測(cè)得值。
表1 UPP3728-10測(cè)量結(jié)果比較單位/mm
表2 UPP2020-06測(cè)量結(jié)果比較單位/mm
表2 (續(xù))
表3 UPP3728-08f測(cè)量結(jié)果比較單位/mm
若以萬(wàn)能工具顯微鏡的測(cè)量結(jié)果作為標(biāo)準(zhǔn)量,UPP3728-10型號(hào)零件測(cè)量結(jié)果平均誤差為0.00058mm,UPP2020-06型號(hào)零件測(cè)量結(jié)果平均誤差為0.01196mm,UPP3728-08f型號(hào)零件測(cè)量結(jié)果平均誤差為0.01693mm,總體視覺測(cè)量值平均誤差在公差0.05mm之內(nèi),滿足公差允許范圍,UPP3728-08f型號(hào)零件由于加工工藝,孔徑邊緣存在毛刺,在提取邊緣的過程中造成像素誤差。整個(gè)測(cè)量過程運(yùn)行良好,測(cè)量時(shí)間1.2s,速度較快,能夠?qū)崿F(xiàn)電連接器殼體零件孔徑的快速精密測(cè)量。
將機(jī)器視覺測(cè)量技術(shù)應(yīng)用到電連接器殼體零件的孔徑測(cè)量中,通過HALCON軟件將采集到的工件圖像進(jìn)行處理測(cè)出了零件的孔徑,測(cè)量精度均在規(guī)定的公差范圍內(nèi)。該方法具有非接觸的優(yōu)點(diǎn),檢測(cè)速度快、精度高,對(duì)提高產(chǎn)品的生產(chǎn)效率起到了重要作用。
[1] 朱曉麗.關(guān)于機(jī)器視覺及其應(yīng)用問題的探討[J].中國(guó)教育技術(shù)裝備,2010,(9):89-89.
[2] 宋錦萍,職占江.圖像分割方法研究[J].現(xiàn)代電子技術(shù),2006,29(6):59-61,64.
[3] 閆霞,牛建強(qiáng).基于HALCON軟件的攝像機(jī)標(biāo)定[J].數(shù)字技術(shù)與應(yīng)用,2010,(11):112-113,115.
[4] 陳亮,丁國(guó)輝,郭雷.基于直方圖互確認(rèn)的圖像閾值化分割[J].紅外與毫米波學(xué)報(bào),2011,30(1):80-84.
[5] 陳藝峰.Halcon在工件二維尺寸檢測(cè)上的應(yīng)用[J].機(jī)電技術(shù),2011,34(4):12-13,17.