?

利用Hough漸開線變換的齒輪圖像中心檢測

2024-02-29 09:24趙彬彬洪榮晶
機械設計與制造 2024年2期
關鍵詞:基圓齒廓漸開線

趙彬彬,洪榮晶,2

(1.南京工業大學機械與動力工程學院,江蘇 南京 211816;2.江蘇省工業裝備數字化制造及控制技術重點實驗室,江蘇 南京 210009)

1 引言

齒輪測量是保證齒輪精度的重要手段[1],在齒輪測量中,計算齒輪參數需要齒廓的精確位置,而漸開線齒廓的形狀由基圓確定,且計算理論齒廓也需要齒輪基圓參數。因此確定基圓的中心和半徑是齒輪測量中的重要環節。確定齒輪中心有多種方法,按獲取數據的方式可分為:接觸式和非接觸式。接觸式通過齒輪測量中心[2]、三坐標測量儀[3]、激光測距儀[4]等設備提取齒輪齒廓的位置坐標,用反求方式求中心坐標。非接觸式用攝像機等設備提取齒輪齒廓的數字量信息,利用重心法[5-6],Hough圓變換[7-8],最小二乘圓擬合[9-11]等方法求中心坐標。上述方法在確定基圓參數的過程中,受齒輪軸孔形狀、是否有鍵槽的影響,存在局限性。

考慮到漸開線齒廓在輪廓中的高占比,能提供大量的坐標數據,以及Hough圓變換在圓形輪廓檢測中對噪聲和不連續性不敏感的優點。這里提出了一種用于視覺系統的基于Hough漸開線變換的齒輪中心坐標求解方法。

2 漸開線的Hough變換

2.1 圖像中的漸開線模型

在圖像坐標系中建立漸開線的數學模型f(x,α)=0,式中x=(x,y)為像素的圖像坐標,α為確定漸開線形狀的參數向量(下文簡稱為參數向量)。如圖1所示,有漸開線齒廓方程:

圖1 圖像中標準漸開線示意圖Fig.1 Standard Involute in Image Coordinates

式中:rb—基圓的半徑;?—漸開線在點B處的展開角,對于順時針展開的漸開線,?按順時針取值。

圖1中的漸開線基圓圓心在圖像坐標系原點,初始相位角為0,對(1)式做旋轉和平移變換,推廣到任意位置,如圖2所示。

圖2 任意位置漸開線示意圖Fig.2 Involute of Random Position in Image Coordinates

2.1.1 像素的梯度

在求解參數向量α時,如果只使用式(2),自由變量的個數較多,計算復雜度高。為了降低自由變量的個數,用像素的梯度增加約束,記每處像素的梯度角ψ=Ψ(x)。

如圖2中所示,B'點處梯度的方向為直線C'B',其梯度角滿足下面的公式:

式中:dx和dy—該點處沿X和Y方向的梯度分量。

圖2中漸開線A'B'上每點的梯度角ψ與漸開線的初始相位角θ及該點處的展開角?存在等式關系:

展開角?為負時,表示順時針展開的漸開線。

按照Hough變換的思想,漸開線的Hough變換可以通過以下的形式實現。首先,設定一個累加數列C,C(α)表示滿足漸開線形式f(x,α)=0的參數向量α出現的次數,設C(α)的初值為0;其次,對圖像中的每個像素點x,聯立式(2)和式(4)求出所有解α=(xo,yo,rb,θ,?),在相應的累加數列C中有:

尋找累加數列C中的局部最大值,作為圖像中漸開線的參數。實際應用中,只需要漸開線基圓的坐標和半徑,即α的前三個分量。所以取前三個分量來構建累加數列C,降低C的空間維度,便于累加計數和搜索極值。

2.1.2 離散化參數向量

在求解參數向量α的過程中,由于圖像采集和邊緣提取算法的誤差,代入方程的點x和梯度角ψ并不精確。由此得到的參數向量α也不準確,這些不準確的值分布在理想值的附近,給在累加數列C中尋找局部最大值造成影響。為了避免這樣的影響,在C進行累加前,通過某種方式用離散后的參數向量值代替原始值。

考慮到圖像坐標系是以像素為單位的離散坐標系,選擇合適的分度將α離散化。如圖3所示,在參數空間oXoYoRb中,設定參數向量α中(xo,yo)的分度為ΔL,rb的分度為ΔR。由ΔL和ΔR定義了一個以α為起點的長方體鄰域,當計算值落在該鄰域內時,即:

圖3 離散化的參數空間Fig.3 Discretized Parameter Space

用α代替αc在累加數列C中進行計數。參加累加計數的點是以參數空間原點為起始點,ΔL、ΔR為分度的等距點。

將判斷計算值αc落在哪個點鄰域的映射記為g,有:

當αc不在設定的參數空間取值范圍內時,返回空值,不代入累加數列C。

此時累加數列C的計算公式改為:

通過離散化近似,使落在鄰域內的點都以該鄰域的起點參與計數,這樣既可以使基圓參數結果控制在ΔL、ΔR的精度內,也可以補償圖像采集和處理過程中引入的誤差。

2.2 圖像處理流程

對攝像機采集的齒輪圖像,采用上述的漸開線Hough變換原理,按照圖像處理過程,求得齒輪中心坐標,如圖4所示。

圖4 圖像處理流程Fig.4 Block Diagram of Image Processing

2.2.1 圖像濾波

由于圖像采集過程中光源、攝像機傳感器和其它外界因素的干擾,齒輪圖像存在噪聲。這里采用中值濾波方法,它在不模糊圖像邊緣的同時也可以有效的去除噪聲[6]。

設P(x,y)為圖像中第i行第j的像素點的灰度值,使用(3×3)大小的濾波核,濾波后該像素點的新灰度值P'(x,y)為:

式中:i,j—取區間[-1,1]中的整數;

Med—取該集合內像素點灰度的中值。

2.2.2 圖像卷積求梯度角

像素點的梯度角ψ可以通過該點處X和Y方向的梯度分量,用反正切函數求取。這里選用Scharr算子[12]進行卷積,它有較高的精度和較低的敏感性。

選擇Scharr算子的卷積核大小為(3×3),點(x,y)處沿X和Y方向的梯度值Gx、Gy及梯度角ψ可由如下公式計算:

式中:SXi,j和SYi,j—沿X和Y方向的算子中的系數,反正切函數arctan根據Gx、Gy的正負及比值返回角度值。

2.2.3 邊緣提取

濾波后的齒輪圖像經邊緣提取后,得到邊緣圖像。邊緣像素坐標將會用于后續Hough變換,這里采用Canny算子。它是一種雙閾值的混合邊緣算子,具有誤差率低、定位性好的優點。

記邊緣圖像為E,E(x,y)=1表示該像素點為邊緣點。

2.2.4 漸開線Hough變換

用上兩節得到的梯度角和邊緣圖像,將第2.1的原理轉化成可行的圖像處理操作。

設定ΔL、ΔR的值為一個像素單位,D為參數空間取值范圍,[xmin,xmax][ymin,ymax][-?max,?max][rbmin,rbmax]是x、y、?、rb的取值區間,有如下的程序:

上述程序實現了Hough漸開線變換。將[ymin,ymax]按設定的線程數n分段,對每一段(i=1,…,n)做漸開線Hough變換,得到累加數列Ci的結果。當所有線程的運算結束時,對累加數列Ci做矩陣加法,即:

這樣的多線程操作可以成倍的縮減漸開線Hough變換過程的時間。遍歷累加數列C,尋找其中的局部極大值,并設定一個閾值T(c可以取最大值的85%),記錄同時是局部最大值且大于閾值Tc的點對應的參數向量,即:

式中Δαk=(ΔL,ΔL,ΔR),由于圖像中的漸開線齒廓都屬于同一個齒輪,滿足要求的αk通常只有一個。當有多個αk時,取最大值附近m個分度(m看分度的大小自行決定)范圍內滿足條件參數向量的平均值作為結果。漸開線Hough變換得到的最終結果,其中包含需要齒輪中心坐標。

3 實驗結果與分析

齒輪基圓參數提取的實驗裝置示意圖,如圖5所示。有Basler acA2440-35um 型號的CMOS 灰度相機,分辨率為(2448×2048)pixel;相機配備有Moritex ML-M1218HR 型號的定焦鏡頭,焦距12.01mm,視角范圍為(40.52×30.70)°;實驗裝置底部安放了可調光強的白色LED面光源。相機與電腦由USB3.0接口連接,采集圖像傳入電腦后,用基于OpenCV的C++程序進行圖像處理。

圖5 視覺實驗裝置Fig.5 Computer Vision Experiment Equipment

3.1 齒輪基圓參數實驗及對比

分別使用重心法、Hough 圓變換、最小二乘圓擬合與Hough漸開線變換方法提取齒輪基圓參數,比較各自結果驗證可行性。

實驗中對齒數z=24,模數m=5mm的6級精度圓柱直齒輪采集圖像??紤]定焦鏡頭產生的畸變,選用三階徑向畸變和切向畸變的畸變模型,用(8×8)的棋盤標定板對相機進行標定和畸變矯正,標定后重投影誤差為0.14pixel。

相同圖片下,各方法求得的齒輪基圓參數,如表1所示。

表1 基圓參數求解結果Tab.1 Test Results of Base Circle Parameter

實驗中前三種方法參考文獻[5,7,11]中的圖像處理流程,以圖像左上頂點為原點,用標定所得像素當量將結果單位轉為mm。四種方法求出的基圓參數相互收斂,其中由于景深效應的影響,依賴二值化閾值的重心法代入了較多齒輪內圈像素的噪音,基圓坐標和半徑的值與其它三種方法的差距較大。

齒輪理論基圓半徑為56.382mm,后三種方法與理論值的誤差分別為0.178mm、0.093mm和0.037mm,Hough漸開線變換方法的誤差最小。由于Hough圓變換在所用視覺庫中有底層加速,處理速度最快,除此之外,Hough漸開線變換在多線程的幫助下,時間優于其它兩種方法。實驗所用圖片,如圖6(a)所示。齒輪邊緣圖像,如圖6(b)所示。Hough漸開線變換的結果,如圖6(c)所示。

圖6 實驗中的圖片Fig.6 Images in Experiments

3.2 仿真測試及分析

為驗證Hough漸開線變換法的準確性,使用生成的標準齒輪圖像進行仿真實驗。

在(1200×900)大小的8位灰度空白圖像中,基圓圓心隨機選取圖像中央區域,以齒數z=17,模數m=36pixe(l以像素作為長度單位)作齒輪圖像。設置齒輪區域灰度值為30,其他部分灰度值為255,同時對每個像素點添加均方差為2灰度的高斯噪聲模擬隨機誤差。

運行10次仿真測試,其中前8次為帶內孔的的齒輪圖像,第9次為帶有鍵槽的齒輪圖像,第10次為缺齒的齒輪圖像,后兩次的齒輪圖像,如圖7所示。它們最終的結果,如表2、表3所示。

表2 仿真測試結果Tab.2 Results of Simulation Test

表3 各參數的標準差Tab.3 Standard Deviation of Each Parameter

圖7 仿真中的圖片Fig.7 Image in Simulation

在仿真測試中,設定參數空間的分度ΔL、ΔR都為0.2pixel,每次測試中步驟相同。仿真結果顯示,測試值與理論值最大偏差為1.5pixel,基圓中心坐標和半徑誤差的標準差在1pixel以內。一般Hough圓檢測法和重心法的誤差在(1~2)pixel內[5],Hough漸開線變換在通用方法范圍內。后兩次的仿真結果顯示,Hough 漸開線變換對存在鍵槽和缺齒的齒輪圖片同樣可以得到圓心,它的適用性比重心法和最小二乘圓擬合法要好,且無需修改圖像處理的步驟。綜合比較下,Hough漸開線變換在運算時間和誤差結果上都明顯好于重心法和Hough圓檢測法,且在通用性上存在優勢,可以達到檢測齒輪中心的目的。

4 結論

這里用Hough漸開線變換來提取齒輪圖像的基圓參數,闡述了Hough漸開線變換的原理和圖像處理流程。由于Hough變換不受齒輪內孔鍵槽等影響,且對于齒廓邊緣的噪聲和不連續性不敏感,相比其他方法有更大的通用性,在處理速度上也有優勢。在模數為5mm的圓柱直齒輪實驗中,Hough漸開線變換法所求基圓半徑與理論值的誤差為0.037mm,與其他方法的比較結果顯示這里的方法具有可行性。仿真測試結果表明,該方法所得結果與理論值誤差的標準差在1pixel內,當測量小模數齒輪時可以達到較高精度。按該方法求出的基圓參數,可以后續用于齒輪參數及齒輪偏差的計算。

猜你喜歡
基圓齒廓漸開線
一種新型的昆蟲仿生齒廓設計
圍尺法和光電測距法測量立式金屬罐基圓半徑的對比和分析*
變基圓半徑渦旋膨脹機型線參數的優化選取
基于NURBS理論的漸開線齒輪齒面修復
基于Pro/E的漸開線內花鍵安裝盤參數化設計
基于ISO 1328-1:2013的齒廓偏差評定方法研究*
基于齒根圓角圓心所在位置的時變嚙合剛度修正模型
漸開線齒廓鏈輪梳齒刀的設計
六圓弧齒廓螺旋齒輪及其嚙合特性
漸開線齒輪齒形誤差的分析方法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合