摘 要:針對計量部門測量電纜絕緣層直徑和厚度等參數的問題,設計了一種基于數字圖像處理技術的電纜絕緣層參數測量系統。測量系統以VC++為平臺。首先對顯微鏡放大倍數進行標定,并采集電纜絕緣層圖像;其次將圖像二值化處理后運用Roberts算子對其進行邊緣檢測;最后利用邊緣輪廓特征計算出電纜絕緣層參數。針對本測量系統,選取適當電纜絕緣層進行測試。測試結果表明,系統可靠、精度高,能夠方便地解決電纜絕緣層參數的測量問題。
關鍵詞:電纜絕緣層;圖像處理;參數;VC++;圖像測量
我國對電纜絕緣層直徑和厚度等參數有明確的標準[1],并給出了最低限和最高限,生產廠家必須嚴格按照此標準來指導電纜的工業化生產。因此,計量和檢定部門要對廠家生產的電纜絕緣層厚度和外徑尺寸進行測量,來檢驗電纜是否符合國家標準。然而到目前為止,計量和檢定部門對電纜絕緣層厚度等尺寸的測量仍然采用傳統的基于機械投影儀的人工測量方法[2]。一般的機械投影儀放大倍率在10倍以上,對于最普通的類型,如測量單芯圓形電纜絕緣層厚度,應將電纜圖像移至視場中央,每隔60°測量對稱的三對點,記錄每個位置電纜內外層讀數,求出6組數據中的最小值和算術平均值分別作為電纜絕緣層最小厚度和平均厚度。雖然這種傳統的測量方法有很大的光學測量優勢,但是操作繁瑣、讀數不方便、準確性差,而且后期數據處理更是加重了勞動強度。隨著計算機技術的迅猛發展,計算機已經被應用到了社會生產和生活的各個領域,在精密測量領域也是如此。為此,本文將傳統的光學測量方法與數字圖像處理技術相結合,設計出了一套自動化程度較高的電纜絕緣層參數測量系統。本測量系統利用光學顯微鏡成像,由CCD攝像機攝取圖像信號,經A/D轉換后送至計算機內存儲,從而完成計算機對圖像的采集過程。計算機利用由VC++開發的軟件系統對采集的圖像數據進行處理,并最終獲得被測對象的幾何參數。
1 總體結構及工作原理
1.1 總體結構
電纜絕緣層參數測量系統主要由圖像采集、圖像處理、圖像測量、結果輸出等幾部分組成,配合相應的軟件系統完成對電纜絕緣層直徑和厚度等參數的測量。圖像采集部分由顯微鏡、CCD攝像機和計算機組成,圖像分析及圖像測量部分主要由VC++開發出來的軟件系統完成。硬件系統構成如圖1所示。
1.2 工作原理
本系統通過標定已知標準件的方法來獲取顯微鏡的放大倍數,放大的標準件尺寸被轉換成屏幕像素進行存儲,而屏幕尺寸與計算機的顯示模式和屏幕像素存在一定的比例關系,因此可以得到放大的標準件的尺寸,經計算就可得到標準件的放大倍數,即顯微鏡的放大倍數。第一步應將標準件放于光學顯微鏡測量平臺上,調試顯微鏡的光源系統,使標準件暴露在良好的光源之中。然后,CCD攝像機對將要識別、解釋的對象以圖像的形式記錄下來,并由計算機將此電信號轉換成數字信號[3],以便計算機對其進行各種必要的處理。計算機捕獲到標準件圖像數據后,還必須有一套很好的軟件系統與之配套。Visual C++是微軟公司推出的一個面向對象的、數值計算能力強大的可視化開發工具,并且它在圖形處理方面有較大優勢。第二步,將電纜絕緣層切片放于測量平臺上,利用軟件系統將此切片圖像以BMP格式存儲于計算機內部,然后對此圖像進行二值化、邊緣檢測和封閉邊界的提取等操作,最后根據標定出的顯微鏡放大倍數測出電纜絕緣層的最小厚度及最小直徑。為了更好地保存各種信息,本文設計了相應的Excel數據表單,并應用了ODBC技術完成對數據庫的操作。原理圖如圖2所示。
2 圖像采集
本文采用VC++6.0開發出基于對話框的專用圖像測量軟件。軟件中主要包括4大部分:圖像采集、圖像處理、參數計算及結果輸出。而圖像采集部分是此軟件完成的第一個重要部分。采集部分有如下功能:
(1)啟動程序,進行界面的初始化。
(2)采集。當按下菜單文件中的采集選項時,程序首先調用CameraInit( )函數,判斷系統是否處在攝像機運行模式下,若是則調用CameraStop( )和CameraUnInit( )函數,退出拍攝過程;若不是則重新設置界面模式來達到采集圖像的要求,然后調用CameraPlay( )函數來驅動攝像機運行。
(3)圖像存儲。軟件通過調用CameraCaptureFile( )函數將圖像以BMP格式存儲在計算機中。
(4)設置。在設置功能中可以實現對顯微鏡攝影效果的諸多調整,如曝光設置、白平衡、曝光時間、光照頻率等,以提高采集圖像的清晰度,使后期對圖像的操作和處理更加高效。其中曝光設置是通過AE鎖來實現的,AE鎖是用于自動曝光時人為控制曝光量,保證主體曝光正常。在這個過程中CameraSetAeState (m_Aeen)函數起到了關鍵作用,當按下AE鎖之后,曝光時間和增益被鎖定,可通過目標來實現曝光量的人為調整,而CameraGetExposureTime( )函數和CameraGetAnalogGain ( )函數可分別用來調節曝光時間和增益。
3 圖像處理
3.1 圖像的二值化
任何一幅圖像都包含著豐富的圖像信息,對于圖像處理而言,關鍵在于如何提取這些信息并找出其中的特征[4]。CCD原始圖像為灰度圖像,像素值范圍為0~255 [5],圖像中包括了目標物體、背景還有噪聲,而背景和噪聲將對圖像測量精度產生一定的影響,因此需要對圖像進行預處理。要想從多值的數字圖像中直接提取出目標物體,濾除不利因素,最常用的方法就是設定一個閾值T,用T將圖像的數據分成2部分:灰度大于或等于閾值的像素其灰度值為255,否則為0。這是研究灰度變換的最特殊的方法,稱為圖像的二值化。
閾值的選擇至關重要,選擇不當則可能將被測物的信息歸于背景或將背景的信息歸于被測物。為了使查找的邊緣更理想,本文利用VC++編寫程序對圖像進行二值化處理,采用迭代法計算二值化的閾值。具體步驟如下:
(1)根據圖像的灰度直方圖選擇閾值的初值為T;
(2)利用閾值T將圖像分割成2個區域R1和R2;
(3)分別計算出區域R1、R2的均值u1、u2;
(4)求出新的閾值T=(u1+u2)/2;
(5)重復(2)~(4),直到均值u1、u2恒定不變,這時所得到的T就是二值化處理所需求的閾值。
圖3為二值化處理后的效果圖。
3.2 邊緣提取
邊緣檢測是計算機識別中非常重要的圖像處理手段。邊緣檢測對于灰度級間斷的檢測是最普通的檢測方法,利用邊緣檢測,計算機可以將圖像轉化為有利于識別的邊緣灰度圖[6]。
零件尺寸測量的關鍵在于邊緣輪廓的提取。圖像上顏色相近的像素連在一起形成了不同的區域,在不同區域間的邊緣表現為顏色灰度的躍變。邊緣檢測就是利用微分等方法,通過對灰度躍變的分析尋找圖像區域邊緣的技術。而且圖像的邊緣對于幾何尺寸參數的計算也是非常重要的,通過檢測它可以獲得零件邊緣點位置的數據信息,運用一定的計算方法得到待測的幾何參數。
由于圖像測量系統一般是在現有的最優環境下獲取被測物體的圖像,因此圖像測量系統的邊緣檢測算法側重于定位的精確,要求不漏檢真邊緣同時不產生偽邊緣。本系統采用的方法是:首先利用圖像的灰度直方圖分布得到該圖像灰度的閾值,再根據閾值將圖像二值化,形成銳化圖像,然后選擇邊緣檢測算子檢測邊緣,最后獲得圖像邊緣的曲線。本系統采用Roberts算子對圖像進行邊緣檢測,Roberts算子是針對圖像2×2鄰域的處理來求對角線像素灰度的差分。設G(x)為Roberts算子的計算結果,則這種算子的計算公式為:
其中A0、A1、A2、A3分別為相鄰的4個像素,scale為差分比例系數。
4 圖像測量
4.1 系統標定
在本測量系統中,工件經過顯微鏡物鏡放大后,實際尺寸和顯示的圖像尺寸之間成一個線性比例。因此需要一個系統的標定過程,即確定實際尺寸和圖像尺寸之間的測量比常數k。其具體的標定步驟為:
(1)選取一個尺寸已知的標準零件。本文選用尺寸一定的標準尺作為標定工件,已知它的實際尺寸為d。
(2)將標定工件放置于顯微鏡平臺上進行測量。此時需保證測量系統處于正常的工作狀態,即光源、相機的參數以及工件和相機之間的相對位置等均與正常工作時相同。在這樣的環境下,利用函數GetDeviceCaps( )測量出以像素為單位的工件尺寸dpixel。
(3)按公式k=d/dpixel計算標定系數。k體現了測量系統像素尺寸和實際物理尺寸之間的轉換關系。本測量系統采用的是直徑為1 mm的標準件。圖4為工件定標界面。
4.2 實驗數據及分析
電纜絕緣層圖像經過預處理后,就可以進入到標定好的測量系統進行厚度和直徑的測量。通過像素個數與測量比k的計算,根據公式L=kN即可得到實際電纜絕緣層的測量尺寸L。
根據中華人民共和國國家標準之電線電纜絕緣厚度的測量方法,當絕緣試片內表面呈現絞合線芯線痕時,各點上的厚度應在線痕的凹槽底部最薄處,沿試片圓周盡可能等距離測量6點。
本文所要測量的絕緣材料層與國家規定的一種截面圖相似,所以可以根據國家規定的以上方法盡可能等距離地測量6點,然后根據L=kN計算出實際的尺寸,如圖5所示。
根據圖5測得的數據可知電纜絕緣層的厚度值為0.704 mm,與標準件相比誤差不超過0.01 mm,符合規定。
本文設計了基于圖像處理技術的電纜絕緣參數測量系統,該系統選用不需附加采集卡的CCD攝像頭,通過USB接口將采集到的數據輸入計算機。本文所采用的測量方法是將傳統的光學方法和基于數字圖像的測量技術相結合,與傳統的測量方法相比,既繼承了光學成像的優點,又充分利用了計算機強大的數據處理能力,操作簡單,自動化程度高,較好地避免了人為主觀因素的影響。
參考文獻
[1] 吳紀國.數字圖像處理技術在幾何量精密測量中的應用研究[D].四川:中國工程物理研究院,2005.
[2] 金泰義,孫穎博.電纜絕緣層厚度在線檢測研究[J].上海計量測試,1994,21(4).
[3] 高木干雄,下田陽久.圖像處理技術手冊 [M].北京:科學出版社,2007.
[4] 左飛,萬晉森,劉航.Visual C++數字圖像處理開發入門與編程實踐[M].北京:電子工業出版社,2008.
[5] 賴志國.Matlab圖像處理與應用[M].北京:國防工業出版,2007.
[6] 張冬芳,王向周.基于數學形態學的圖像邊緣處理[J].微計算機信息,2006,8(1):186-187.