劉永 王生懷 王宸 陳誠 袁海兵 李捷
(湖北汽車工業(yè)學院機械工程學院 湖北十堰 442002)
隨著計算機技術和光電技術的進步,機器視覺技術取得了較大的發(fā)展,并在汽車、機械、煤炭和冶金等行業(yè)有著廣泛應用。為了確保機械加工完成的零件質量符合要求,需要對零件基本尺寸以及表面缺陷等特征進行檢測。通過視覺設備對被測零件圖像進行采集并傳輸到計算機中的視覺工程應用軟件中,設計相關算法完成零件尺寸測量或表面缺陷檢測。傳統(tǒng)的零件尺寸測量器具有游標卡尺、卡規(guī)、螺旋測微儀和三坐標測量儀等,這些測量器具或多或少存在著效率和精度低、工人勞動強度高、不適合大批量測量等問題。傳統(tǒng)的零件表面缺陷檢測方式主要通過人工完成,效率較低,容易受到測量人員主觀因素的影響?!稒C器視覺》是一門多學科交叉融合課程[1-2],包含機械設計、軟件工程、光學和圖像處理等課程的核心內容。對機械專業(yè)的碩士研究生來說,本科階段并未學習過相關的專業(yè)核心課程,且這些課程內容較為抽象,采用傳統(tǒng)的教學方法難以讓學生在短時間內理解,學生學習興趣不高,容易使學生產生厭學心理。
目前,機器視覺技術在各行各業(yè)中有著廣泛應用,人才需求量巨大,機器視覺人才有著廣闊的就業(yè)前景。如何培養(yǎng)出具備高水平、高素質且滿足市場需求的機器視覺人才是一個有研究價值的課題。該文以齒輪齒距偏差測量為例,闡述了理實一體化的教學方法實施過程,避免了傳統(tǒng)課堂教師講、學生聽的教學模式,提高了學生的學習興趣,使專業(yè)知識更加容易理解,取得了較好的教學效果。
《機器視覺》課程是一門多學科交叉融合的課程,包括測量系統(tǒng)硬件部分的選型、相機成像原理、數字圖像處理技術和軟件編程等內容。機器視覺技術不僅可以對零件基本尺寸進行測量,也可以對零件表面缺陷進行檢測[3],應用非常廣泛。對本科為計算機和通信專業(yè)的研究生來說,本科階段學習了一些核心課程,有一定的基礎,學習起來比較輕松。但對本科是機械專業(yè)的研究生來說,本科階段并沒有接觸過機器視覺相關課程的核心內容,基礎較為薄弱,學習起來存在一定困難。在傳統(tǒng)的教學模式中主要以教師講、學生聽,教師講解的內容主要有:測量系統(tǒng)的硬件構成,包括各個硬件的工作原理;采集零件圖像后圖像的預處理方法和原理;對零件尺寸進行測量設計的相關算法;表面缺陷檢測的原理及相關算法等。教授過程中列舉教材中實例,如圓直徑測量、矩形邊長測量、車道線檢測和人臉識別等。教學過程中學生以聽為主,缺乏動手實踐的機會。且由于知識產權等原因,書中的實例很難在課堂上進行復現(xiàn),學生參與感不強,無法真正理解各部分內容和原理,學生學習的欲望較低,最后導致學生對這門課程喪失興趣。因此,授課教師需要自行開發(fā)一套視覺檢測系統(tǒng)[4-6],首先在課堂上介紹測量系統(tǒng)硬件部分的原理及選型。其次介紹一些專業(yè)的視覺工程應用軟件,如OpenCV和Halcon 等,這些軟件需要和硬件設備兼容,由于課堂條件限制,可以選擇使用MATLAB軟件對圖像進行處理,并設計算法完成檢測。接著可以將采集到的零件圖像發(fā)給學生,讓學生在攜帶的筆記本電腦中安裝MATLAB軟件并導入圖像。最后讓學生自行完成檢測算法并得出檢測結果。這樣可以讓學生體驗整個檢測過程,增強了參與感,能夠真正地理解機器視覺檢測的原理,做到了將理論和實踐相結合,從而激發(fā)出學生濃厚的學習興趣,有效提高了教學效果。該文以作者指導的碩士研究生設計的齒輪齒距偏差參數視覺測量方法為例,闡述了教學設計的實施過程。
圖1是購買的某公司視覺檢測實驗設備原理圖。
圖1 視覺檢測實驗設備原理圖
硬件部分講解在實驗室完成,對著實驗設備講解各個部分的工作原理。講解相機和鏡頭時,介紹CCD相機和CMOS相機各自存在的優(yōu)缺點,鏡頭的成像原理,畸變產生的原因及焦距、成像尺寸、分辨率、光圈(通光量)、工作距離、視角等參數的含義和相互關系。相機通過螺栓安裝在支架上,位置和高度可通過滑軌和手輪進行調節(jié),支架可移動。講解光源時介紹環(huán)形光源的優(yōu)點,分析視覺測量系統(tǒng)中常見的3種光照方式以及優(yōu)缺點。環(huán)形光源的高度和亮度也是可以調節(jié)的。讓學生動手調節(jié)鏡頭的位置、焦距及光源的亮度,使其能清楚地感受到各個因素對齒輪圖像清晰度的影響,獲取清楚的齒輪圖像是后續(xù)準確測量齒輪參數的前提條件。講解工作臺時,介紹工作臺由步進電機帶動旋轉的工作原理,步進電機經過細分驅動器可以細分步距角,步距角大小可以調節(jié),讓學生多次調整工作臺旋轉角度,參考相機視野水平線,保證齒輪中心與相機中心重合。講解圖像采集卡時可以打開機箱讓學生近距離觀察其形狀和連接方式,選擇圖像采集卡時需要考慮與相機之間的匹配度。當選擇連續(xù)采集模式時,需要圖像采集卡的存儲空間足夠大,也可以選擇能對圖像進行壓縮的圖像采集卡。工作臺安裝有傳感器,當零件轉動經過傳感器時,給出電信號觸發(fā)相機進行圖像采集,在生產線上可以實現(xiàn)自動采集。使用OpenCV軟件給學生演示整個測量過程并讓學生自己操作測量軟件,讓其直觀地感受整個操作流程和測量方法。最后給學生介紹測量系統(tǒng)在生產線上的應用,使用分揀機構將不合格的齒輪進行剔除,將合格的齒輪傳送到下一個工位,可以加強學生對測量系統(tǒng)實際應用的理解。
被測齒輪實物圖如圖2所示。
圖2 被測齒輪實物圖
講解測量系統(tǒng)的常用的標定元件:量塊、圓形標定板及棋盤格標定板,讓學生了解各種標定元件的材質、精度和使用方法。選擇長度尺寸和齒輪大小接近的標定板進行標定,在測量之前讓學生拍攝20張棋盤格標定板圖像,將其導入MATLAB 圖像處理工具箱中對相機參數屬性進行標定,并調用相關函數對圖像進行矯正,消除畸變的影響,讓學生直觀地感受鏡頭畸變對圖像產生影響。矯正完圖像后向學生展示像素當量的標定過程,選擇圓形標定板對像素當量進行標定,選擇圓形標定板4個頂點和中心點共5個圓點,提取5個圓點的亞像素邊緣,利用最小二乘法擬合得到5 個圓直徑值,計算得到5個像素當量,最后求其均值得到最終的像素當量,讓學生了解實際尺寸和像素尺寸的比例關系。在測量之前驗證測量系統(tǒng)的重復性精度,使用標定像素當量的5個圓點的圓心坐標,進行10次測量,采用貝塞爾公式得到其標準差和不確定度,通過標準差和不確定度讓學生直觀地了解測量系統(tǒng)的穩(wěn)定性。
圖像的預處理和參數測量算法使用MATLAB 軟件完成。在課堂上先給學生講解各種預處理方法的原理,講解完成后讓學生在課堂上練習,理論和實操相結合,使學生對整個課程產生濃厚的興趣,提高其學習積極性。圖像的預處理包括灰度化、濾波去噪、二值化、形態(tài)學處理和邊緣檢測等。首先選擇灰度轉換函數將采集到的RGB圖像轉換為灰度圖,其次讓學生選擇中值濾波、高斯濾波和均值濾波對圖像濾除噪聲,對比各種濾波方式的效果。接著采用Otsu算法對閾值進行選取,將圖像轉換為二值圖像。然后讓學生選擇Canny算子、Robert 算子、Log 算子和Prewitt 算子等像素級邊緣檢測算子和Zernike 矩亞像素級邊緣檢測算子提取齒輪輪廓邊緣,比較像素級和亞像素級邊緣檢測算子檢測效果的不同,讓學生直觀地感受像素和亞像素之間的區(qū)別。最后調用邊界跟蹤函數獲取齒輪輪廓邊緣點坐標,為后續(xù)設計算法測量相關參數做好了準備。邊界跟蹤圖像見圖3。
圖3 邊界跟蹤圖像
講解測量算法之前將學生分為若干組,提示編程思路后讓每組學生在下次上課時展示自己的測量結果并進行討論。齒輪中心點是測量其他參數的基準,選擇Hough變換和最小二乘法對齒輪中心點坐標和中心孔半徑進行測量,讓學生對比兩種方法的準確性。計算所有齒廓邊緣點到安裝孔中心點的距離值,分別提取其中最大、最小各50個值,計算其平均值得到齒頂、齒根圓半徑。測量齒數時繪制齒廓邊緣點到安裝孔中心點距離值的曲線分布圖,選取齒頂圓與齒根圓半徑值之和的均值,在曲線圖中對應高度繪制一條直線,由于一個齒廓與直線存在兩個交點,所以統(tǒng)計交點的個數即可得到齒數。根據模數、齒數和齒頂圓半徑之間的關系計算出模數和分度圓直徑。在上述齒廓邊緣點到安裝孔中心點距離值的曲線分布圖以分度圓半徑為高度繪制一條直線,利用交點信息可以得到分度圓與齒廓邊緣點曲線的交點坐標,根據交點坐標通過公式計算出單個齒距偏差、k個齒距累計偏差、齒距累計總偏差。上述編程過程對部分學生來說可能較為困難,可以通過小組合作以及教師指導等方式完成程序編程,最終實現(xiàn)齒輪齒距偏差參數的測量。齒距偏差測量示意圖見圖4。
圖4 齒距偏差測量示意圖
采用理實一體化的教學方式教授《機器視覺》這門課程,讓機械專業(yè)研究生能夠更好地理解課程內涵,提高了學習研究的興趣,鍛煉了實踐能力和創(chuàng)新意識。從近幾屆研究生教學評價來看效果較好,后續(xù)會增加缺陷檢測等案例,讓學生深層次地掌握機器視覺的專業(yè)知識并初步具備開發(fā)工程應用案例的能力。