圖像測量是一種(zhǒng)采用(yòng)CCD( 電荷耦合器件) 進行(háng)攝像測量的新型光電測量技術, 它是將CCD器件與光學儀器聯用, 應用於測(cè)量領域而形成的。圖像(xiàng)測量技術是以現代光學為基礎, 融計算機圖像學、信息處理(lǐ)、計算機視覺、光電(diàn)子學等科學技術為一體的現代測量技術, 它把被測對象的圖像(xiàng)當作檢測和傳遞信息的手段, 從中提取有(yǒu)用的信號(hào)來(lái)獲得待測的(de)參數。
近年, 圖像測量技術(shù)在國內外發展(zhǎn)很快, 已廣泛應用於幾何量的尺寸測量(liàng)、航空遙感測量(liàng)、精(jīng)密(mì)複雜零件微尺(chǐ)寸測量和外觀監測、光波幹涉圖(tú)、應力應(yīng)變場狀態分布圖(tú)等和圖像有關的技術領域。本(běn)文將(jiāng)圖像測量技術(shù)用(yòng)到零件尺寸參數的測量之中,並(bìng)為了提(tí)高(gāo)測量係統的精(jīng)度, 提出了一種先在Sobel算子的基礎上去掉局部非極大值點獲(huò)得象素級邊緣, 進而在梯度方向(xiàng)上進行高斯曲線擬合插值, 進一步提高圖像邊緣定位精度, 從而使測量係統精度大大提高的方法。
1 測量係統的構成
圖像測量係統是集光學、光電子學、精密機械及計算機技術為一體的綜合係統。高(gāo)精(jīng)度零件尺寸測量係統由CCD攝像(xiàng)機、圖(tú)像卡、計算機及圖像處理軟件等組成(chéng), 再加上相應的照明係統、接口硬件, 結(jié)構框圖如圖1所示。其工作過程為: 將被測零(líng)件置於盡可能均勻照明的可控背景前, CCD和圖像卡將被測零(líng)件圖像采集到計算機裏, 計算機按一定的算法計算出被(bèi)測物體的幾何參數, 最後, 計算機對這些數據進行各種處理並將結果按一定(dìng)的要求予以顯示和存儲。
2 測量算法(fǎ)
在圖像測量係統中, 圖像邊緣的檢測是整個測量的基礎和關鍵。圖像邊緣檢測精度高, 整(zhěng)個(gè)測量係統的精度就可大大提高。零件的輪廓通常產生階躍型邊(biān)緣, 因為零件(jiàn)的圖像強度不同於背景的圖像強度。對於階(jiē)躍(yuè)型邊緣的檢測, Canny算子邊緣檢(jiǎn)測效果比較好, 但算法複雜;Marr提出用(yòng)二維高斯加權函數對(duì)原始圖像(xiàng)作平滑, 然後檢測二階方向導數作為邊緣點, 過濾了噪聲, 但可能將原有的邊緣也給(gěi)過濾掉了[1] ; 利用Sobel算子檢(jiǎn)測邊緣方法簡單, 處理速(sù)度快, 得到的邊緣光(guāng)滑(huá)、連續(xù)。雖然得到的邊緣較寬, 但在其梯度圖像中去除非局部最大值點(diǎn), 就可以檢測出更精確的邊緣。
為滿(mǎn)足圖像測量的需要, 本文先在Sobel算子的(de)基礎上去掉局部非極大值點獲(huò)得象素級邊(biān)緣, 進而在梯度方向上進行高斯(sī)曲線擬合插值, 進一步提高圖像邊緣定位精度到(dào)亞象素級, 從(cóng)而大大提高測量係統的精度。
2.1 象(xiàng)素級邊緣提取
象素級(jí)邊緣提取(qǔ)是指(zhǐ)用象素級的邊緣檢測算子對目標初步(bù)定位(wèi), 得到象(xiàng)素級精度的定位過程。本文利用Sobel算子, 在梯度方向上去除非局部最大值點, 成功地獲得了象素級邊緣, 取得了較好的(de)效果。具體的步驟如下。
( 1) 用Sobel算子對去噪後的(de)圖像g( i, j) 進行卷積, 得到卷積圖像。
( 2) 計(jì)算(suàn)圖像中每一點的梯度方向(xiàng)值θ, 其計算公式為: θ( i, j) =tan- 1( f ′y / f ′x) , 這樣就可以得到圖像中(zhōng)每(měi)一點的梯度方向(xiàng)值(zhí)。根據離(lí)散數(shù)字圖像的特點, 將θ分成四(sì)個方向範圍: 0( 水平方向) : 0°—22.5°以及157.5°—180°; 45( 45方向) : 22.5°—67.5°; 90( 豎直方向(xiàng)) : 67.5°—112.5°; 135 ( 135 方向(xiàng)) : 112.5°—157.5°。
( 3) 對梯度圖像(xiàng)中的所有邊緣點, 在每一點的3×3鄰域中, 將中心象素梯度值與沿梯度方向的兩個(gè)象素梯度值進行比較, 若在鄰域中心處的幅值比沿梯(tī)度方向上(shàng)的兩個相鄰點的幅值(zhí)大(dà), 則此點為邊緣點, 否則, 此點為非邊緣點, 賦值為0, 從而得到單(dān)象素邊緣圖像。
圖(tú)2是利用Sobel算子在(zài)改進前後得到的微孔零件圖像的邊緣圖。從圖2中對比結果可以看出, 經典Sobel算子獲得的圖像邊緣比較(jiào)寬, 而利(lì)用改進的(de)算子獲得的圖像邊緣較細, 達到了單象素級水平, 取得了比(bǐ)較(jiào)滿意的效果。
2.2 亞象素邊緣定位
圖像邊緣可以精確到一個(gè)象素點, 這樣, 邊緣點坐標可以近似地為像元的幾何中心位置。這時係統的測量精度由CCD感(gǎn)光部分的像敏元間距決定。因此, 圖像測量(liàng)係統的測量精度, 在不考慮像差等因素的情況下, 主要取決於CCD攝像機的分(fèn)辨率。為了(le)提高測量係統的精度, 提出了一種概率統計細分方法來提高CCD尺寸測量分辨率, 提出了解調測量方法來提高CCD尺寸測量分辨率(lǜ), 提出應用概率論方法來提高CCD尺(chǐ)寸(cùn)測量分辨率(lǜ), 提出應用多(duō)項式插值函數來(lái)提高CCD尺寸測量分辨率等等(děng)。本文提出在梯度方向上進行高(gāo)斯曲線擬合插值進一步提高圖像邊緣定位的(de)精(jīng)度, 從而(ér)使測量係統的精度大大提高(gāo)的方法。
2.2.1 高斯曲線擬合原理分析
在圖像邊緣梯度方向上, 灰度(dù)梯度呈一個高斯曲線分布。若用(yòng)邊緣檢測算子直接提取圖像邊緣, 則隻需找出灰度變化最大的象素的坐標就可以(yǐ)了。但是, 灰度變化最大的象素坐標不一定是這個高斯曲線的極(jí)值點, 而且可以說往(wǎng)往不是極值點, 如圖3所示, 我們往往認為0位置點就是(shì)圖像(xiàng)的邊緣點, 但從圖中可(kě)以(yǐ)很明顯地看出(chū)來, 實際的邊緣位置點不是0點, 而是(shì)xg點。對於一個圖像(xiàng)測(cè)量係統來說, 若認定0位置點(diǎn)就(jiù)是我們(men)所要找的邊緣點, 這往往達不到係統測量的精度。為了提(tí)高係統(tǒng)測量的精度, 必須找到xg點的準確位置, 這可以通過(guò)采用亞象素細分算法(fǎ)來精確定位(wèi)xg點。在圖3中, 0點的梯(tī)度值最大設為F0, - 1點和1點(diǎn)的(de)是在梯度(dù)方向上緊挨0點的左右兩點(diǎn), 設它(tā)們的梯度值分別為F- 1和F1, 通過這三個梯度值(zhí)擬合出(chū)一條高斯曲線, 然後通(tōng)過求導來取得其極值點, 則對(duì)應極值點的坐標點xg即為圖像邊緣的精確定位點。
2.2.2 梯度方(fāng)向上高斯曲線擬(nǐ)合插值細分算法
通過Sobel算子可以很方便地得到每個邊緣(yuán)象素(sù)點(diǎn)的梯度值和梯度方向值, 根據這兩個值就能夠(gòu)進行下一步(bù)梯度方向上的高斯曲線擬合。高(gāo)斯曲線的表達式為其中u為均值, σ為標準差。直接對(duì)此式進行擬
合很困難, 可以把高斯(sī)曲線作變換, 兩邊取對(duì)數, 有下式成立
可以看出上式形如(rú)y=Ax2+Bx+C, 是一條典型對x的(de)二次曲線。這樣就能用取對數後的值來擬合(hé)出拋物線, 求出(chū)頂點坐標, 使計算大(dà)大(dà)簡化。
為了求出梯度方向上二次曲線的形式, 我們采(cǎi)用曲麵擬(nǐ)合的觀念: 先用一個二元二次多項式去擬合邊緣點附近鄰域內象素梯(tī)度的對數值, 得(dé)到曲麵擬合函數, 然後再通過曲麵擬合函數來得到二次曲線形式。通常, 我們利用邊(biān)緣點附近3×3鄰域象素點來計算參數, 當然也可以加大區域取點範圍, 這樣求出的曲麵函數效果也比較好。但是(shì), 這(zhè)會增加檢測時計算的複雜度, 且增(zēng)加的效果不是很明顯。所以我們通常采用邊緣點附近(jìn)3×3鄰域象素點來計算參數。
設曲麵擬合函數為:
f( x, y) =k0+k1x+k2y+k3x2+k4xy+k5y2 ( 2)
其中的x, y為象素點的坐標(biāo)值, f( x, y) 為在象素點( x, y) 處梯度大小的對(duì)數值。所以, 關鍵(jiàn)是計算方程( 2)中曲麵擬合函數的係數, 可用最小(xiǎo)二乘法求出係數k0, k1, ⋯, k5的值, 然後運用公式( 4) 就可以求出邊緣點的準確位置。
根據最小二乘原理( 殘差平方和最小) , 有:】
最小化誤差後, 就可以(yǐ)求出(chū)係數k0, k1, ⋯, k5的值。以(yǐ)邊緣點(diǎn)為中(zhōng)心, 建立極坐標係, 將(jiāng)x=ρcosθ, y=ρsinθ代入所得(dé)的曲麵擬合函(hán)數裏, 得到在梯(tī)度方(fāng)向上關於極徑的(de)二次曲線方程, 對這個方程(chéng)求(qiú)取其極(jí)大值, 即可得到準確(què)的(de)邊緣點的位置:
在上麵求解k值的過程中, 需要注(zhù)意到的一點,就是二次曲線是由原高斯曲線取對數後得到的, 因此求解時應將象素點的灰度梯度值用(yòng)其對(duì)數值代替。這樣, 邊緣點亞象素位置的提取公式為:
3 實驗結果
本課題實驗采用的是型號為MTV- 2821CB的黑白(bái)CCD攝像機, 工作台是JX14A數字(zì)式工具顯微鏡。圖2中a) 圖是通過CCD攝像機拍(pāi)攝到的精密小孔原圖, 測量時, 通過前後左右移動工作台, 使小孔在成像視場中的位置發生變化, 采樣10次, 運用本文所提出的方法測量小孔的直(zhí)徑, 得到的實驗(yàn)數據如表1所示。
從表1的測量結果中可以看到, 測量結果的精度達到了0.868 μm, 取得了比較好的(de)效果。
4 結(jié)論
本文首先提出了高精度(dù)零件尺寸測量係統的結構、工作原理等(děng)問題。然後提出了一種在Sobel算子(zǐ)的基礎上去掉局部非(fēi)極大值點(diǎn)來(lái)快速獲得象素級邊緣的方法, 進而提出在梯度方向上進行高斯曲線擬合插值來提高測(cè)量係統的精(jīng)度, 從實驗結果中可以看出, 取得了比較好的效果。
如果(guǒ)您有機床行業、企業相關新(xīn)聞稿件發表,或進行(háng)資訊合作,歡迎聯係本(běn)網編輯部, 郵箱:skjcsc@vip.sina.com