汪 杰,陳曼龍,2,李 奎,楊 帆,2,燕立志
(1.陜西理工大學(xué)機(jī)械工程學(xué)院,陜西漢中723000;2.陜西省工業(yè)自動(dòng)化重點(diǎn)實(shí)驗(yàn)室,陜西漢中723000)
隨著現(xiàn)代工業(yè)螺紋制造高精度的要求,對(duì)螺紋參數(shù)的檢測(cè)精度也越來(lái)越高,測(cè)量精度達(dá)到微米級(jí),檢測(cè)方式從抽檢到全檢,檢測(cè)項(xiàng)目從單項(xiàng)到多項(xiàng)[1-3]。工業(yè)測(cè)量中采用CCD(charge-coupled device)圖像傳感器采集螺紋圖像,進(jìn)行螺紋參數(shù)提取,對(duì)螺紋的測(cè)量精度在一定范圍內(nèi)取得了良好效果。而在拍攝螺紋圖像時(shí),垂直于投影方向的軸截面是理想的調(diào)焦平面,由于螺紋檢測(cè)過(guò)程中螺紋升角的存在和鏡頭景深的限制[4],造成螺紋牙側(cè)成像不清晰,給螺紋中徑和牙型角等參數(shù)的精確獲取帶來(lái)困難,獲取清晰的螺紋圖像是提高螺紋測(cè)量精度的關(guān)鍵[5]。
運(yùn)用圖像質(zhì)量評(píng)價(jià)可以判斷圖像的清晰度[6]??陀^評(píng)價(jià)方法一直是理論研究的熱點(diǎn),其中:Jia Yonghong[7]提出了信息熵評(píng)價(jià)方法,主要是使用圖像灰度分布來(lái)反映融合圖像所攜帶的信息量;Shen Yu 等[8]提出了平均梯度法(average gradient,AG),能敏感地反映出圖像對(duì)微小細(xì)節(jié)反差的表達(dá)能力,同時(shí)還能反映出圖像中紋理變換的特征;Feichtenhofer 等[9]提出了一種基于局部邊緣梯度的統(tǒng)計(jì)分析的無(wú)參考感知清晰度技術(shù);范賜恩等[10]提出聯(lián)合顏色空間統(tǒng)計(jì)特征和權(quán)重局部二值模式(local binary pattern,LBP)紋理特征的無(wú)參考圖像質(zhì)量評(píng)價(jià)模型;王凡[11]提出一種新的無(wú)參圖像質(zhì)量評(píng)價(jià)方法,該方法結(jié)合了自底向上的視覺(jué)注意力機(jī)制和自頂向下的圖像銳度評(píng)價(jià)標(biāo)準(zhǔn);劉國(guó)軍等[12]設(shè)計(jì)出了與人的主觀評(píng)價(jià)相吻合的全參考型客觀圖像質(zhì)量評(píng)價(jià)(IQA)算法;高敏娟[13]提出了一種結(jié)合全局與局部變化的圖像質(zhì)量評(píng)價(jià)算法。以上圖像評(píng)價(jià)方法雖然效果好,但對(duì)于螺紋圖像清晰度判斷的重點(diǎn)是牙廓的清晰度,螺紋牙廓的清晰度才會(huì)影響螺紋的視覺(jué)檢測(cè)精度,螺紋圖像非牙廓部分對(duì)于評(píng)價(jià)值的計(jì)算并沒(méi)有影響。因此以上方法并不適用于螺紋圖像,需要設(shè)計(jì)專(zhuān)門(mén)針對(duì)螺紋牙廓的評(píng)價(jià)方法。
本文根據(jù)螺紋的結(jié)構(gòu)特點(diǎn),分析螺紋的成像原理,對(duì)螺紋邊緣模糊原因進(jìn)行分析。通過(guò)實(shí)驗(yàn)采集的多組物距的螺紋圖像,研究圖像清晰度的評(píng)價(jià)方法,提出了一種基于螺紋邊緣的圖像評(píng)價(jià)方法L-yakuo,采用邊緣算子提取螺紋的邊緣,統(tǒng)計(jì)圖像邊緣的像素個(gè)數(shù),進(jìn)行歸一化處理作為評(píng)價(jià)值。并通過(guò)實(shí)驗(yàn)驗(yàn)證,應(yīng)用該評(píng)價(jià)方法可以提高螺紋的檢測(cè)精度。
如圖1(a)所示,由于螺紋螺旋升角的存在,螺紋的邊緣存在模糊。取分辨率為2 592×1 944 像素的螺紋圖像的第1 000 行,對(duì)每個(gè)像素的灰度按照8 位量化,其灰度取值范圍在0~255 之間。從圖1(b)所示的灰度分布圖可以看出,其邊緣處灰度波動(dòng)較大,因此對(duì)螺紋的參數(shù)測(cè)量會(huì)產(chǎn)生一定影響。
圖1 螺紋一維灰度分布Fig.1 Diagram of one-dimensional gray distribution of thread
由于CCD鏡頭有確定的入射光瞳直徑,因此景深為定值,對(duì)于一定范圍內(nèi)的物體,CCD 圖像傳感器能夠得到清晰圖像。如圖2(a)所示,螺紋牙廓上有a、b、c 3 點(diǎn)。如圖2(b)所示,螺紋由于有螺旋升角的存在,螺紋牙廓處a、b、c 3 點(diǎn)沿光線方向在圖像傳感器中的成像位置不同,因此其成像清晰度不同。
圖2 螺紋牙廓成像示意圖Fig.2 Schematic diagram of thread tooth-profile imaging
假設(shè)螺紋牙廓上的某點(diǎn)成像清晰,那么必然存在某些點(diǎn)成像位置偏移,導(dǎo)致彌散斑的產(chǎn)生[5]。如圖3所示,u和v分別代表物距和像距,f和R分別代表焦距和透鏡半徑。當(dāng)螺紋牙廓上的點(diǎn)沿光軸反向偏移一定距離后,成像位置沿參考方向向左偏移距離 Δu,此時(shí)的成像點(diǎn)Q在圖像傳感器的前面,偏移距離 Δv,則得到半徑r的彌散斑,如(1)~(6)式。
圖3 螺紋邊緣成像原理Fig.3 Schematic diagram of thread edge imaging principle
得到:
根據(jù)幾何比例關(guān)系:
得到彌散半徑r為
成像物體位置為參考向右偏移距離為 Δu,彌散斑的半徑r為
由于螺紋圖像的牙廓失真,想找出多幅螺紋圖像中牙廓最清晰的圖像,就需要研究多種圖像評(píng)價(jià)值方法,分析其不足之處并找到適合螺紋圖像的評(píng)價(jià)方法,用來(lái)專(zhuān)門(mén)衡量螺紋圖像清晰度,便于后期進(jìn)行參數(shù)計(jì)算。
如圖4(a)所示,采用無(wú)觸點(diǎn)螺紋檢測(cè)儀提取的螺紋圖像為圖4(b),改變CCD 檢測(cè)螺紋的物距,每次增大0.001 mm,提取不同牙廓清晰度螺紋圖像10 組。由于每組螺紋圖像的離焦程度不同,需借助評(píng)價(jià)值來(lái)衡量螺紋圖像的清晰度。通過(guò)圖1 可知螺紋圖像僅在牙廓上存在灰度差異,其余部分灰度無(wú)差異,因此對(duì)于螺紋圖像評(píng)價(jià)算法而言,需要能夠靈敏的反映螺紋牙廓的變化。
圖4 螺紋圖像提取設(shè)備Fig.4 Equipment for extracting thread image
首先采用梯度方法對(duì)螺紋圖像進(jìn)行評(píng)價(jià),在整幅螺紋圖像上分別沿x及y方向取相鄰像素點(diǎn)的灰度值,計(jì)算這兩個(gè)方向上相鄰像素點(diǎn)灰度值差的平方和并累加,作為螺紋圖像評(píng)價(jià)值[14]。
式中:F(x,y)表示螺紋圖像中某個(gè)坐標(biāo)點(diǎn) (x,y)的函數(shù)值;I(x,y)為螺紋圖像某點(diǎn)處的灰度值,最后累加得到螺紋圖像梯度評(píng)價(jià)值,該評(píng)價(jià)值可以較好地反映螺紋圖像的細(xì)節(jié)變化信息。采用matlab 得到的螺紋梯度評(píng)價(jià)值如圖5所示,具體評(píng)價(jià)值如表1。
表1 螺紋圖像梯度評(píng)價(jià)值Table 1 Gradient evaluation value of thread image
圖5 螺紋圖像梯度評(píng)價(jià)值圖像Fig.5 Diagram of gradient evaluation value of thread image
采用信息熵作為評(píng)價(jià)值可以衡量圖像信息豐富程度,該評(píng)價(jià)值在一定程度上也可以反映圖像質(zhì)量。若計(jì)算得到的評(píng)價(jià)值大,說(shuō)明灰度差異越大,圖像質(zhì)量也越高[15]。
(8)式中:g表示圖像灰度值;G表示圖像灰度值的最大值。利用matlab 得到螺紋圖像信息熵評(píng)價(jià)值如圖6所示,具體評(píng)價(jià)值如表2所示。
圖6 螺紋圖像信息熵評(píng)價(jià)值圖像Fig.6 Diagram of information entropy evaluation value of thread image
表2 螺紋圖像信息熵評(píng)價(jià)值Table 2 Information entropy evaluation value of thread image
螺紋圖像的對(duì)比度與其直方圖的分布有關(guān),即螺紋圖像的灰度集中,對(duì)應(yīng)的圖像對(duì)比度評(píng)價(jià)值低;相反圖像的對(duì)比度則較高。螺紋圖像對(duì)比度越高,則表示圖像的質(zhì)量越好[16]。計(jì)算過(guò)程如下:
式中BBrightness為螺紋圖像亮度,其值越小則圖像越暗。用CContrast表示螺紋圖像對(duì)比度,綜合上式得其螺紋圖像對(duì)比度為
利用matlab 軟件得到的螺紋圖像對(duì)比度評(píng)價(jià)值如圖7,評(píng)價(jià)值的變化較大。具體評(píng)價(jià)值如表3所示。
圖7 螺紋圖像對(duì)比度評(píng)價(jià)值圖像Fig.7 Diagram of contrast evaluation value of thread image
表3 螺紋圖像對(duì)比度評(píng)價(jià)值Table 3 Contrast evaluation value of thread image
3 種方法在一定程度上可以代表圖像的質(zhì)量高低,但從上述圖像看出評(píng)價(jià)值差距過(guò)大,而采集的螺紋圖像物距僅變化0.001 mm。如表1 中的第3 組和第4 組、表2 中的第7 組和第8 組、表3 中的第3 組和第4 組評(píng)價(jià)值波動(dòng)過(guò)大,而牙廓部分在整幅螺紋圖像中比例較小,故評(píng)價(jià)值不可能出現(xiàn)過(guò)大差異,不符合螺紋圖像的實(shí)際特點(diǎn)。因此螺紋圖像梯度評(píng)價(jià)值不能反映螺紋牙廓清晰度。
利用螺紋牙廓圖像進(jìn)行評(píng)價(jià)值計(jì)算,可以很好地表征螺紋圖像清晰度的變化情況。首先對(duì)螺紋圖像進(jìn)行二值化處理,將螺紋的背景和牙廓分離便于后續(xù)的研究。設(shè)置螺紋圖像閾值Tc,螺紋圖像上的像素點(diǎn)為[17-18]
閾值的選取是關(guān)鍵問(wèn)題,由于螺紋牙廓成像時(shí)存在彌散斑,邊緣變化緩慢且總體由兩部分區(qū)域組成,因此閾值采用迭代法計(jì)算,首先選擇螺紋圖像的近似閾值T,將螺紋圖像分為L(zhǎng)1和L2兩部分,分別計(jì)算兩部分的灰度均值T1和T2,經(jīng)過(guò)多次迭代直到閾值T不變,通過(guò)最優(yōu)閾值Tc二值化得到螺紋邊緣圖像8。
圖8 sobel 算子螺紋邊緣Fig.8 Diagram of thread edge of sobel operator
對(duì)整幅圖像進(jìn)行圖像質(zhì)量評(píng)價(jià)效果并不理想,螺紋圖像牙廓的清晰程度直接決定儀器的測(cè)量精度,因此采用提取的圖像邊緣進(jìn)行評(píng)價(jià)更有效。研究發(fā)現(xiàn)統(tǒng)計(jì)圖像邊緣像素個(gè)數(shù)Nc,可以很好地評(píng)價(jià)螺紋邊緣的清晰程度。對(duì)該結(jié)果進(jìn)行歸一化處理,得到螺紋牙廓同整幅圖像的關(guān)系,用評(píng)價(jià)指標(biāo)Pc表示[17-18]。
式中:Pc為基于螺紋牙廓的評(píng)價(jià)值;Nc為螺紋圖像灰度值大于閾值的像素個(gè)數(shù)。若Pc值小則代表螺紋牙廓圖像銳利,即螺紋牙廓部分越清晰;同理Pc值較大,說(shuō)明圖像牙廓也越模糊。采用基于螺紋邊緣的評(píng)價(jià)值方法L-yakuo,計(jì)算10 組規(guī)格分別為M14×2、M20×1.5、M20×2.5 螺紋的圖像的評(píng)價(jià)值,表4 為L(zhǎng)-yakuo 評(píng)價(jià)值,表中評(píng)價(jià)值變化較接近,符合螺紋圖像的實(shí)際采集特點(diǎn)。是否能夠正確反映螺紋牙型角誤差,需要通過(guò)實(shí)驗(yàn)進(jìn)一步驗(yàn)證。
表4 L-yakuo 螺紋圖像評(píng)價(jià)值Table 4 L-yakuo thread image evaluation value
圖9(a)所示為IAC 公司的螺紋參數(shù)測(cè)量?jī)x,實(shí)驗(yàn)中主要用來(lái)直接得出牙型角。圖9(b)為實(shí)驗(yàn)中要測(cè)量的圓柱螺紋塞規(guī),規(guī)格為M14×2 和M20×2.5。實(shí)驗(yàn)中螺紋圖像采用GIM-80A 無(wú)觸點(diǎn)錐度測(cè)量?jī)x提取。為了驗(yàn)證該評(píng)價(jià)值對(duì)于螺紋牙型角的影響,通過(guò)圖像處理得到的螺紋牙型角和螺紋參數(shù)綜合測(cè)量?jī)x得到的牙型角進(jìn)行對(duì)比分析。
圖9 實(shí)驗(yàn)設(shè)備Fig.9 Experimental equipment
為了驗(yàn)證L-yakuo 方法和螺紋參數(shù)的關(guān)系,經(jīng)過(guò)評(píng)價(jià)值計(jì)算后的螺紋圖像再進(jìn)行牙型角計(jì)算,采用halcon 軟件進(jìn)行圖像處理,對(duì)螺紋牙廓進(jìn)行分割處理,分別求取螺紋的左牙側(cè)角、右牙側(cè)角,同工具顯微鏡的牙型進(jìn)行對(duì)比分析,每組螺紋圖像處理流程如圖10所示。
圖10 螺紋圖像處理流程Fig.10 Flow chart of thread image processing
為了提取多組螺紋圖像的牙型角,本文采用halcon 軟件進(jìn)行圖像處理,對(duì)螺紋牙廓邊緣分割,分別求取左、右側(cè)牙型角。整個(gè)圖像處理過(guò)程如圖11所示。
圖11 螺紋牙廓邊緣分割Fig.11 Segmentation of thread tooth-profile edge
圖11(a)為螺紋邊緣亞像素邊緣提取,圖11(b)、11(c)、11(d)為分割成單獨(dú)的螺紋牙廓直線1、2、3,可采用角度提取算子直接獲得每條邊緣的牙側(cè)角。表5所示為機(jī)器視覺(jué)得到的M14×2 螺紋牙側(cè)角和牙型角。
表5 M14×2 機(jī)器視覺(jué)螺紋牙型角測(cè)量值Table 5 M14×2 thread angle measurement value by machine vision
采用IAC 螺紋綜合測(cè)量?jī)x測(cè)量M14×2 的牙型角,其測(cè)量值為 60°08′00′′( 左 30°30′29′′右29°37′31′′)。求取機(jī)器視覺(jué)方法得到的牙型角和IAC 測(cè)量?jī)x之間的相對(duì)誤差,相對(duì)誤差越小證明機(jī)器視覺(jué)螺紋測(cè)量的精度越高。相對(duì)誤差和評(píng)價(jià)值的關(guān)系如圖12所示,將上文L-yakuo 方法得到的評(píng)價(jià)值和求得的相對(duì)誤差繪制在同一個(gè)坐標(biāo)系中,就可以明顯看出評(píng)價(jià)值是否能夠正確反映機(jī)器視覺(jué)螺紋測(cè)量精度。如圖12所示,基于螺紋邊緣得到M14×2 的評(píng)價(jià)值的變化和螺紋牙型角相對(duì)誤差變化關(guān)系一致,評(píng)價(jià)值最低時(shí)螺紋牙型角誤差也最小。因此可以通過(guò)該評(píng)價(jià)值間接得到螺紋的測(cè)量精度,通過(guò)計(jì)算得到牙型角精度提高8′31″。
圖12 M14×2 牙型角誤差和評(píng)價(jià)值關(guān)系Fig.12 Diagram of relationship between M14×2 thread angle error and evaluation value
表6所示為機(jī)器視覺(jué)方法得到的M20×1.5 的螺紋牙側(cè)角及牙型角。
表6 M20×1.5 機(jī)器視覺(jué)螺紋牙型角測(cè)量值Table 6 M20×1.5 thread angle measurement value by machine vision
采用IAC 螺紋綜合測(cè)量?jī)x測(cè)量M20×1.5 的螺紋牙型角,得到牙型角測(cè)量值為 60°16′42′′(左30°14′41′′右30°02′01′′)。求取機(jī)器視覺(jué)方法得到的牙型角和IAC 測(cè)量?jī)x得到的牙型角之間的相對(duì)誤差,用L-yakuo 方法得到的M20×1.5 評(píng)價(jià)值和相對(duì)誤差之間的關(guān)系如圖13。
圖13 M20×1.5 牙型角誤差和評(píng)價(jià)值關(guān)系Fig.13 Diagram of relationship between M20×1.5 thread angle error and evaluation value
如圖13所示,L-yakuo 方法得到的M20×1.5 的評(píng)價(jià)值和牙型角的相對(duì)誤差變化關(guān)系一致,評(píng)價(jià)值最低時(shí)的螺紋牙型角相對(duì)誤差也最低,因此可以通過(guò)該圖像評(píng)價(jià)值間接反映螺紋牙型角的測(cè)量精度。評(píng)價(jià)值最低時(shí),計(jì)算得到的牙型角精度提高11′35″。
表7所示為機(jī)器視覺(jué)方法得到的M20×2.5 的螺紋牙側(cè)角及牙型角。
表7 M20×2.5 機(jī)器視覺(jué)螺紋牙型角測(cè)量值Table 7 M20×2.5 thread angle measurement value by machine vision
采用IAC 螺紋綜合測(cè)量?jī)x測(cè)量M20×2.5 的螺紋牙型角,得到牙型角測(cè)量值為 59°42′01′(左29°43′19′′右 29°58′42′′)。求取機(jī)器視覺(jué)方法得到的牙型角和IAC 測(cè)量?jī)x得到的牙型角之間的相對(duì)誤差,相對(duì)誤差越小,證明機(jī)器視覺(jué)螺紋測(cè)量的精度越高。同理得到的評(píng)價(jià)值和相對(duì)誤差之間的關(guān)系如圖14。
圖14 M20×2.5 牙型角誤差和評(píng)價(jià)值關(guān)系Fig.14 Diagram of relationship between M20×2.5 thread angle error and evaluation value
如圖14所示,L-yakuo 方法得到的M20×2.5 的評(píng)價(jià)值和牙型角的相對(duì)誤差變化關(guān)系一致,評(píng)價(jià)值最低時(shí)的螺紋牙型角相對(duì)誤差也最低,因此可以通過(guò)該圖像評(píng)價(jià)值間接反映螺紋牙型角的測(cè)量精度。評(píng)價(jià)值最低時(shí),計(jì)算得到的牙型角精度提高6′54″。
為了滿足機(jī)器視覺(jué)對(duì)高精度螺紋檢測(cè)的需求,本文分析了螺紋的成像特點(diǎn),對(duì)螺紋牙廓失真的原因進(jìn)行了解釋?zhuān)茖?dǎo)了螺紋牙廓彌散斑大小的計(jì)算公式;在應(yīng)用多種螺紋圖像評(píng)價(jià)方法基礎(chǔ)上,提出了基于螺紋邊緣的圖像評(píng)價(jià)方法L-yakuo,通過(guò)該方法可以得到多幅螺紋圖像中牙廓最清晰的圖像并進(jìn)行參數(shù)求取。實(shí)驗(yàn)結(jié)果證明:基于螺紋邊緣的評(píng)價(jià)值的變化和求得的螺紋牙型角相對(duì)誤差變化一致,計(jì)算得到的牙型角精度平均提高9′33′′。螺紋圖像評(píng)價(jià)值和螺紋參數(shù)的誤差函數(shù)關(guān)系還有待進(jìn)一步的研究。