摘 要: 介紹了基于計算機視覺技術的直齒圓柱齒輪數字測量儀,闡述了儀器的運行原理、硬件組織結構和軟件功能模塊,提出了齒輪基本參數的測量算法。首先利用圖像處理技術提取圖像精確邊緣,然后利用改進的隨機Hough變換確定齒輪中心,最后計算齒輪基本參數并存儲于數據庫中。實驗結果表明,該儀器測量精度高、速度快、操作簡便、自動化程度高,對齒輪精密制造和機械傳動具有重要意義。
關鍵詞: 直齒圓柱齒輪;參數測量;計算機視覺;圖像處理;隨機Hough變換;誤差分析
0 引言
齒輪是機械行業使用最廣泛的傳動零件,它的加工精度直接影響到機械產品的性能和壽命。傳統的接觸式機械測量法耗時長,計算量大。隨著計算機技術與檢測理論的發展,基于圖像處理的計算機視覺檢測技術以其非接觸、精度高、速度快、動態范圍大等優點而得到廣泛運用。以該項技術為基礎,設計與研究了一種直齒圓柱齒輪數字測量儀,提高了測量精度、效率與自動化程度;而且能將齒輪測量系統直接耦合到加工系統中,實現了數據的實時監測和數據庫存儲、管理。
1 測量原理
數字測量儀運行原理如圖1所示[1]。
齒輪的實際位置由儀器坐標系中視覺系統的位置與圖像坐標系中齒輪圖像的位置共同決定。將直齒圓柱齒輪置于均勻、穩定的照明光源上方,在工作臺上移動視覺系統尋找齒輪影像,由CCD相機在固定焦距下拍攝齒輪二維圖像并將光學信號轉換成電荷信號,通過圖像采集卡把數據傳輸到工控機內存,由數字圖像軟件處理齒輪圖像,得到齒輪在圖像坐標系中的基本數據,然后通過系統標定參數將圖像坐標系轉換到儀器坐標系,再考慮光柵尺的數值,便可得到齒輪參數的精確值,最后將測量數據通過屏幕顯示或存入數據庫以便調用和管理。其中,CCD相機有兩路數據傳輸通道,一路通過AV端口將動態視頻信號傳輸到圖像采集卡,尋找齒輪影像;一路通過USB接口將齒輪圖像直接傳輸到工控機中,由軟件分析和測量圖像,得到最終的測量參數。
對于100 mm及其以下尺寸的齒輪,儀器可以直接測量;對于大齒輪,可以采用圖像拼接的方法測量;如需更高的測量精度,可以采用局部特寫的方法測量[2]。
2 儀器組織結構與功能模塊
數字測量儀主要由Sony F717型CCD數碼相機、COMPUTAR M1214-MP2工業鏡頭、內置(PCI拓展)NIPCI-1409單色四通道圖像采集卡與NIPCI-7344運動控制卡的工控機、濾光罩、光源、執行機構、工作臺等組成,如圖2所示。儀器主要可分為4個功能模塊:機械系統、視覺系統、數據采集系統、軟件系統[3]。
2.1 機械系統
機械系統主要由滑動導軌(X、Y方向)、組合驅動器、步進電機與工作臺等組成,主要起承載、移動和定位作用。儀器開始工作時,因為被測齒輪的尺寸大小不同,需要在滑動導軌上適當移動視覺系統,以便齒輪能夠在CCD像面上成像。當視覺系統粗略定位時,可以使用步進電機實現大范圍快速移動;當其精確定位時,可以使用手輪進行實現手動微調。
2.2 視覺系統
視覺系統是數字測量儀與傳統測量儀的最大區別,它主要由光源與成像系統組成。
LED光源具有可見光強度高、無熱量、無陰影、可無極調節等優點,儀器和刀具不會產生熱變形而影響測量精度,因此選取0.68 μm的紅色LED光源。欲獲得較好的成像質量和較高的精度要求,成像系統中常采用柯拉照明方式。柯拉照明法采用多組透鏡,能克服光源照明的不均勻性,獲得穩定、均勻的視場強度,提高測量精度。如圖3所示,光源經聚光鏡1成像于聚光鏡2的物方焦面,再成像于無限遠處,與成像物鏡的入瞳重合。為了防止雜散光對測量精度的影響,在視覺系統中放置0.68 μm的濾光罩和濾光片。
2.3 數據采集系統[4]
在滑動導軌X、Y方向上分別放置光柵尺,視覺系統在導軌上移動時,光柵生成響應信號并經過濾波、辨向、細分等分析處理后傳入工控機中。齒輪在CCD像面上成像,CCD攝取齒輪圖像通過AV端口由圖像采集卡傳輸到工控機屏幕實時監測或通過USB接口傳輸到工控機內存,由圖像處理軟件進行實時數字處理。數據采集系統框圖如圖4所示。
2.4 軟件系統
數字圖像處理軟件是在Windows平臺下利用Visual C++6.0語言編寫的,它是人機對話的窗口,是儀器的核心部分,為操作員提供測量指導。軟件實現了對齒輪的自動調焦與參數測量,能實時顯示齒輪參數的精確測量數據,還提供了齒輪數據庫管理功能,可便捷地管理齒輪參數[5]。軟件系統原理如圖5所示。
2.4.1 圖像濾波去噪
儀器在光學成像和數據傳輸等過程中會受到各種噪聲干擾,這些噪聲在CCD元器件對感光面光強積分時產生影響,使得像素點灰度實際值與理想值產生差異。對于點線尖頂較多的齒輪,中值濾波器算法會引起細節損失和邊緣模糊,帶來誤差。
為了達到較好的處理效果,本文對中值濾波器算法進行改進:選取相鄰的3個濾波窗口AI(I=1,2,3)對圖像濾波,計算各窗口的灰度均方差BI,選取均方差BI最小的窗口作為前點窗口,以窗口灰度的中值替代中心像素灰度值,實現了預期效果。
2.4.2 圖像二值化
圖像二值化是將圖像像素點灰度值差異化處理的過程,把圖像分割成相鄰不重疊的黑、白區域,即實物區域和背景區域。當像素點灰度值大于或等于給定閾值時,該點屬于實物區域,其灰度值轉換為255;當像素點灰度值小于給定閾值時,該點屬于背景區域,其灰度值轉換為0。在此之前,本文采用δ=15高斯函數平滑直方圖。
圖像二值化原理的數學表達式為:
其中,M是給定的閾值,f是像素點原灰度值,F是像素點灰度轉換值。
2.4.3 圖像邊緣檢測
本文采用了快速亞像素邊緣檢測算法:首先利用空間矩的旋轉不變性將二維邊緣檢測范疇降為一維邊緣檢測范疇,然后由5次正交多項式擬合方程求得一維圖像亞像素邊緣位置,實現邊緣精確檢測。實現過程如下:在二維圖像邊緣檢測過程中,利用空間矩的旋轉不變性,經數學計算得到式(2),再由式(2)求得夾角?琢的值。
其中,為圖像邊緣法線與X軸的夾角,Mpq為空間矩,f(x,y)為圖像素點灰度值。然后將式(2)求得的?琢的數值代入式(3),便可將圖像像素點投影到過原點的邊緣法線上,實現從二維到一維檢測的轉換[6]。
在一維邊緣檢測中,由于Sobel算子能提供較好的圖像邊緣信息,因此在邊緣粗定位時選用Sobel算子。通過所得邊緣點,沿邊緣法線方向拓展像素,得到一系列過邊緣線的像素點,求得這些點的灰度值,根據點灰度分布的數學特征,利用正交多項式最小二乘法求得擬合函數[7],如式(4)所示:
如式(5)所示,將函數F5(x)對x求二階微分并令其等于零,求得x的數值,如式(6)所示。
通過上述推導得到邊緣計算表達式,可直接求得邊緣的亞像素精確位置。
2.4.4 圖像區域標記
區域標記將連接在同一邊緣的像素附上同一標記,不同邊緣的像素附上不同標記。通過區域標記,齒輪內、外輪廓得以區分并為測量提供便利,具體過程如下:
(1)逐行掃描齒輪圖像,首次遇到目標像素A時為其附上一個標記;
(2)繼續掃描齒輪圖像,將與A相連接的所有像素附上相同的標記;
(3)返回步驟(1),重新查找新的目標像素并附上新標記,直至齒輪圖像完成標記。
3 齒輪參數測量算法
齒頂圓半徑、齒根圓半徑、齒數、模數與公法線長度是直齒圓柱齒輪的主要測量參數。在測量過程中,必須先確定齒輪中心,然后給出其余參數的測量方法。
3.1 齒輪中心O的確定
齒輪中心用圖像中心坐標來表示,以像素為度量單位。本文采用改進的隨機Hough變換,其基本思想是構造圖像邊緣點集,從中隨機選取不共線的3點確定一個參考圓,計算參考圓的參數,計算該參數對應圓上的點數Mpc。如果Mpc大于Mmin,則判定參考圓為真實圓,其圓心坐標就是齒輪中心[8]。對同一齒輪圖像分別用基本Hough變換和改進的隨機Hough變換進行處理,結果如表1所示。
3.2 齒頂圓半徑ra與齒根圓半徑rf的計算
在理想的理論下,將漸開線直齒圓柱齒輪輪廓從某點展開,齒輪外輪廓上的點到齒輪中心的距離r是一個周期固定的理想函數,齒頂、齒根點到齒輪中心的距離是分別相等的。但在實際情況下,齒輪在加工過程中通常受到各種因素的影響,其幾何參數必定存在誤差,齒輪外輪廓上的點到齒輪中心的距離如圖6所示。
通過計算距離曲線斜率的極值可提取外輪廓上所有齒頂點與齒根點的坐標,從而可得到單個齒頂點與齒根點分別到中心的距離,最后計算所有齒頂點與齒根點距離的算術平均值即是齒頂圓及齒根圓半徑。
3.3 齒輪齒數Z的計算
齒數Z可根據齒頂圓輪齒的中心角計算得到。為了減小誤差,首先利用特征匹配排除齒輪缺陷部分,然后在齒頂圓上取多個齒的中心角并求出單個齒的平均中心角,最后利用式(7)經圓整求得齒數Z。
3.4 齒輪模數m的計算
齒輪模數m可根據齒頂圓半徑與齒根圓半徑計算。首先利用式(8)求出預估模數m1,然后從GB 1357-87中選定與m1相近的兩三個標準值m2、m3、m4,待預估模數m1圓整后便可從中確定齒輪模數m。
3.5 齒輪公法線長度L的計算
齒輪公法線是齒輪加工與測量中用到的重要參數,直齒圓柱齒輪的公法線長度可根據齒輪齒數與模數計算求得。首先根據壓力角α與式(9)求取跨距齒數k:
其中,[[]]是取整符號,定義[[x]]≤x。再由式(10)求直齒圓柱齒輪公法線長度。
4 實驗結果與誤差分析
選取壓力角α=20°、帶鍵槽的直齒圓柱齒輪,在相同的實驗環境下分別使用數字測量儀與傳統測量方法對其主要參數進行測量,檢測結果如表2所示。
數字測量儀能實現齒輪參數的精確、快速、自動化、實時在線測量,但是測量結果仍然存在誤差。誤差來源主要如下:
(1)硬件系統引起的誤差。視覺系統中CCD相機分辨率是有限的,被測零件越大,則每個像素所代表的實際尺寸就越大,測量精度就越低。在信號攝取、轉換與傳輸過程中,視覺系統通常會受到光子噪聲、暗電流噪聲、噪聲等影響,產生失真誤差。
(2)圖像處理引起的誤差。利用Hough變換確定齒輪中心過程中,由于算法精度限制會引起定位誤差。在計算齒頂圓半徑與齒根圓半徑過程中,利用求導法求極值點時會產生誤判而丟失部分數據。
(3)舍入誤差。在參數計算過程中,按照計算機有效數字對測量數據進行適當取舍,由此必定造成舍入誤差。
5 結論
將基于圖像處理的計算機視覺檢測技術應用于直齒圓柱齒輪數字測量儀,實現了對齒輪參數的快速、精確和自動測量,可廣泛適用于實時在線的精密測量;同時具有較好的靈活性與拓展性,能耦合到齒輪加工系統中,極大地提高了生產的智能化與自動化程度。
參考文獻
[1] 倪振松,邢濟收.計算機視覺技術在齒輪測量中的應用研究[J].微計算機信息,2007,23(3):123-125.
[2] 張少軍,茍中魁,李慶利,等.利用數字圖像處理技術測量直齒圓柱齒輪幾何尺寸[J].光學精密工程,2007,12(6):619-625.
[3] 黎鵬,劉其洪.基于機器視覺的直齒圓柱齒輪尺寸參數測量[J].計算機測量與控制,2009,17(4):646-648.
[4] 劉力雙.電子攝像式刀具預調測量儀的研究[D].天津:天津大學,2006.
[5] 陳炳奇,孫明.Visual C++實用圖像處理[M].北京:清華大學出版社,2004.
[6] 徐中宇,寧闖,周亞洲.一種快速亞像素邊緣檢測算法[J].吉林大學學報(理學版),2014,5(2):308-313.
[7] 劉力雙,張銚,盧慧卿,等.圖像的快速亞像素邊緣檢測方法[J].光電子激光,2005,16(8):993-996.
[8] 孟得欣,謝二蓮.基于Hough變換的汽車零件中圓形檢測算法的改進[J].計算機工程與應用,2015,51(11):172-174.