劉永 王生懷 王宸 陳誠 袁海兵 李捷
(湖北汽車工業(yè)學(xué)院機(jī)械工程學(xué)院 湖北十堰 442002)
隨著計算機(jī)技術(shù)和光電技術(shù)的進(jìn)步,機(jī)器視覺技術(shù)取得了較大的發(fā)展,并在汽車、機(jī)械、煤炭和冶金等行業(yè)有著廣泛應(yīng)用。為了確保機(jī)械加工完成的零件質(zhì)量符合要求,需要對零件基本尺寸以及表面缺陷等特征進(jìn)行檢測。通過視覺設(shè)備對被測零件圖像進(jìn)行采集并傳輸?shù)接嬎銠C(jī)中的視覺工程應(yīng)用軟件中,設(shè)計相關(guān)算法完成零件尺寸測量或表面缺陷檢測。傳統(tǒng)的零件尺寸測量器具有游標(biāo)卡尺、卡規(guī)、螺旋測微儀和三坐標(biāo)測量儀等,這些測量器具或多或少存在著效率和精度低、工人勞動強度高、不適合大批量測量等問題。傳統(tǒng)的零件表面缺陷檢測方式主要通過人工完成,效率較低,容易受到測量人員主觀因素的影響。《機(jī)器視覺》是一門多學(xué)科交叉融合課程[1-2],包含機(jī)械設(shè)計、軟件工程、光學(xué)和圖像處理等課程的核心內(nèi)容。對機(jī)械專業(yè)的碩士研究生來說,本科階段并未學(xué)習(xí)過相關(guān)的專業(yè)核心課程,且這些課程內(nèi)容較為抽象,采用傳統(tǒng)的教學(xué)方法難以讓學(xué)生在短時間內(nèi)理解,學(xué)生學(xué)習(xí)興趣不高,容易使學(xué)生產(chǎn)生厭學(xué)心理。
目前,機(jī)器視覺技術(shù)在各行各業(yè)中有著廣泛應(yīng)用,人才需求量巨大,機(jī)器視覺人才有著廣闊的就業(yè)前景。如何培養(yǎng)出具備高水平、高素質(zhì)且滿足市場需求的機(jī)器視覺人才是一個有研究價值的課題。該文以齒輪齒距偏差測量為例,闡述了理實一體化的教學(xué)方法實施過程,避免了傳統(tǒng)課堂教師講、學(xué)生聽的教學(xué)模式,提高了學(xué)生的學(xué)習(xí)興趣,使專業(yè)知識更加容易理解,取得了較好的教學(xué)效果。
《機(jī)器視覺》課程是一門多學(xué)科交叉融合的課程,包括測量系統(tǒng)硬件部分的選型、相機(jī)成像原理、數(shù)字圖像處理技術(shù)和軟件編程等內(nèi)容。機(jī)器視覺技術(shù)不僅可以對零件基本尺寸進(jìn)行測量,也可以對零件表面缺陷進(jìn)行檢測[3],應(yīng)用非常廣泛。對本科為計算機(jī)和通信專業(yè)的研究生來說,本科階段學(xué)習(xí)了一些核心課程,有一定的基礎(chǔ),學(xué)習(xí)起來比較輕松。但對本科是機(jī)械專業(yè)的研究生來說,本科階段并沒有接觸過機(jī)器視覺相關(guān)課程的核心內(nèi)容,基礎(chǔ)較為薄弱,學(xué)習(xí)起來存在一定困難。在傳統(tǒng)的教學(xué)模式中主要以教師講、學(xué)生聽,教師講解的內(nèi)容主要有:測量系統(tǒng)的硬件構(gòu)成,包括各個硬件的工作原理;采集零件圖像后圖像的預(yù)處理方法和原理;對零件尺寸進(jìn)行測量設(shè)計的相關(guān)算法;表面缺陷檢測的原理及相關(guān)算法等。教授過程中列舉教材中實例,如圓直徑測量、矩形邊長測量、車道線檢測和人臉識別等。教學(xué)過程中學(xué)生以聽為主,缺乏動手實踐的機(jī)會。且由于知識產(chǎn)權(quán)等原因,書中的實例很難在課堂上進(jìn)行復(fù)現(xiàn),學(xué)生參與感不強,無法真正理解各部分內(nèi)容和原理,學(xué)生學(xué)習(xí)的欲望較低,最后導(dǎo)致學(xué)生對這門課程喪失興趣。因此,授課教師需要自行開發(fā)一套視覺檢測系統(tǒng)[4-6],首先在課堂上介紹測量系統(tǒng)硬件部分的原理及選型。其次介紹一些專業(yè)的視覺工程應(yīng)用軟件,如OpenCV和Halcon 等,這些軟件需要和硬件設(shè)備兼容,由于課堂條件限制,可以選擇使用MATLAB軟件對圖像進(jìn)行處理,并設(shè)計算法完成檢測。接著可以將采集到的零件圖像發(fā)給學(xué)生,讓學(xué)生在攜帶的筆記本電腦中安裝MATLAB軟件并導(dǎo)入圖像。最后讓學(xué)生自行完成檢測算法并得出檢測結(jié)果。這樣可以讓學(xué)生體驗整個檢測過程,增強了參與感,能夠真正地理解機(jī)器視覺檢測的原理,做到了將理論和實踐相結(jié)合,從而激發(fā)出學(xué)生濃厚的學(xué)習(xí)興趣,有效提高了教學(xué)效果。該文以作者指導(dǎo)的碩士研究生設(shè)計的齒輪齒距偏差參數(shù)視覺測量方法為例,闡述了教學(xué)設(shè)計的實施過程。
圖1是購買的某公司視覺檢測實驗設(shè)備原理圖。

圖1 視覺檢測實驗設(shè)備原理圖
硬件部分講解在實驗室完成,對著實驗設(shè)備講解各個部分的工作原理。講解相機(jī)和鏡頭時,介紹CCD相機(jī)和CMOS相機(jī)各自存在的優(yōu)缺點,鏡頭的成像原理,畸變產(chǎn)生的原因及焦距、成像尺寸、分辨率、光圈(通光量)、工作距離、視角等參數(shù)的含義和相互關(guān)系。相機(jī)通過螺栓安裝在支架上,位置和高度可通過滑軌和手輪進(jìn)行調(diào)節(jié),支架可移動。講解光源時介紹環(huán)形光源的優(yōu)點,分析視覺測量系統(tǒng)中常見的3種光照方式以及優(yōu)缺點。環(huán)形光源的高度和亮度也是可以調(diào)節(jié)的。讓學(xué)生動手調(diào)節(jié)鏡頭的位置、焦距及光源的亮度,使其能清楚地感受到各個因素對齒輪圖像清晰度的影響,獲取清楚的齒輪圖像是后續(xù)準(zhǔn)確測量齒輪參數(shù)的前提條件。講解工作臺時,介紹工作臺由步進(jìn)電機(jī)帶動旋轉(zhuǎn)的工作原理,步進(jìn)電機(jī)經(jīng)過細(xì)分驅(qū)動器可以細(xì)分步距角,步距角大小可以調(diào)節(jié),讓學(xué)生多次調(diào)整工作臺旋轉(zhuǎn)角度,參考相機(jī)視野水平線,保證齒輪中心與相機(jī)中心重合。講解圖像采集卡時可以打開機(jī)箱讓學(xué)生近距離觀察其形狀和連接方式,選擇圖像采集卡時需要考慮與相機(jī)之間的匹配度。當(dāng)選擇連續(xù)采集模式時,需要圖像采集卡的存儲空間足夠大,也可以選擇能對圖像進(jìn)行壓縮的圖像采集卡。工作臺安裝有傳感器,當(dāng)零件轉(zhuǎn)動經(jīng)過傳感器時,給出電信號觸發(fā)相機(jī)進(jìn)行圖像采集,在生產(chǎn)線上可以實現(xiàn)自動采集。使用OpenCV軟件給學(xué)生演示整個測量過程并讓學(xué)生自己操作測量軟件,讓其直觀地感受整個操作流程和測量方法。最后給學(xué)生介紹測量系統(tǒng)在生產(chǎn)線上的應(yīng)用,使用分揀機(jī)構(gòu)將不合格的齒輪進(jìn)行剔除,將合格的齒輪傳送到下一個工位,可以加強學(xué)生對測量系統(tǒng)實際應(yīng)用的理解。
被測齒輪實物圖如圖2所示。

圖2 被測齒輪實物圖
講解測量系統(tǒng)的常用的標(biāo)定元件:量塊、圓形標(biāo)定板及棋盤格標(biāo)定板,讓學(xué)生了解各種標(biāo)定元件的材質(zhì)、精度和使用方法。選擇長度尺寸和齒輪大小接近的標(biāo)定板進(jìn)行標(biāo)定,在測量之前讓學(xué)生拍攝20張棋盤格標(biāo)定板圖像,將其導(dǎo)入MATLAB 圖像處理工具箱中對相機(jī)參數(shù)屬性進(jìn)行標(biāo)定,并調(diào)用相關(guān)函數(shù)對圖像進(jìn)行矯正,消除畸變的影響,讓學(xué)生直觀地感受鏡頭畸變對圖像產(chǎn)生影響。矯正完圖像后向?qū)W生展示像素當(dāng)量的標(biāo)定過程,選擇圓形標(biāo)定板對像素當(dāng)量進(jìn)行標(biāo)定,選擇圓形標(biāo)定板4個頂點和中心點共5個圓點,提取5個圓點的亞像素邊緣,利用最小二乘法擬合得到5 個圓直徑值,計算得到5個像素當(dāng)量,最后求其均值得到最終的像素當(dāng)量,讓學(xué)生了解實際尺寸和像素尺寸的比例關(guān)系。在測量之前驗證測量系統(tǒng)的重復(fù)性精度,使用標(biāo)定像素當(dāng)量的5個圓點的圓心坐標(biāo),進(jìn)行10次測量,采用貝塞爾公式得到其標(biāo)準(zhǔn)差和不確定度,通過標(biāo)準(zhǔn)差和不確定度讓學(xué)生直觀地了解測量系統(tǒng)的穩(wěn)定性。
圖像的預(yù)處理和參數(shù)測量算法使用MATLAB 軟件完成。在課堂上先給學(xué)生講解各種預(yù)處理方法的原理,講解完成后讓學(xué)生在課堂上練習(xí),理論和實操相結(jié)合,使學(xué)生對整個課程產(chǎn)生濃厚的興趣,提高其學(xué)習(xí)積極性。圖像的預(yù)處理包括灰度化、濾波去噪、二值化、形態(tài)學(xué)處理和邊緣檢測等。首先選擇灰度轉(zhuǎn)換函數(shù)將采集到的RGB圖像轉(zhuǎn)換為灰度圖,其次讓學(xué)生選擇中值濾波、高斯濾波和均值濾波對圖像濾除噪聲,對比各種濾波方式的效果。接著采用Otsu算法對閾值進(jìn)行選取,將圖像轉(zhuǎn)換為二值圖像。然后讓學(xué)生選擇Canny算子、Robert 算子、Log 算子和Prewitt 算子等像素級邊緣檢測算子和Zernike 矩亞像素級邊緣檢測算子提取齒輪輪廓邊緣,比較像素級和亞像素級邊緣檢測算子檢測效果的不同,讓學(xué)生直觀地感受像素和亞像素之間的區(qū)別。最后調(diào)用邊界跟蹤函數(shù)獲取齒輪輪廓邊緣點坐標(biāo),為后續(xù)設(shè)計算法測量相關(guān)參數(shù)做好了準(zhǔn)備。邊界跟蹤圖像見圖3。

圖3 邊界跟蹤圖像
講解測量算法之前將學(xué)生分為若干組,提示編程思路后讓每組學(xué)生在下次上課時展示自己的測量結(jié)果并進(jìn)行討論。齒輪中心點是測量其他參數(shù)的基準(zhǔn),選擇Hough變換和最小二乘法對齒輪中心點坐標(biāo)和中心孔半徑進(jìn)行測量,讓學(xué)生對比兩種方法的準(zhǔn)確性。計算所有齒廓邊緣點到安裝孔中心點的距離值,分別提取其中最大、最小各50個值,計算其平均值得到齒頂、齒根圓半徑。測量齒數(shù)時繪制齒廓邊緣點到安裝孔中心點距離值的曲線分布圖,選取齒頂圓與齒根圓半徑值之和的均值,在曲線圖中對應(yīng)高度繪制一條直線,由于一個齒廓與直線存在兩個交點,所以統(tǒng)計交點的個數(shù)即可得到齒數(shù)。根據(jù)模數(shù)、齒數(shù)和齒頂圓半徑之間的關(guān)系計算出模數(shù)和分度圓直徑。在上述齒廓邊緣點到安裝孔中心點距離值的曲線分布圖以分度圓半徑為高度繪制一條直線,利用交點信息可以得到分度圓與齒廓邊緣點曲線的交點坐標(biāo),根據(jù)交點坐標(biāo)通過公式計算出單個齒距偏差、k個齒距累計偏差、齒距累計總偏差。上述編程過程對部分學(xué)生來說可能較為困難,可以通過小組合作以及教師指導(dǎo)等方式完成程序編程,最終實現(xiàn)齒輪齒距偏差參數(shù)的測量。齒距偏差測量示意圖見圖4。

圖4 齒距偏差測量示意圖
采用理實一體化的教學(xué)方式教授《機(jī)器視覺》這門課程,讓機(jī)械專業(yè)研究生能夠更好地理解課程內(nèi)涵,提高了學(xué)習(xí)研究的興趣,鍛煉了實踐能力和創(chuàng)新意識。從近幾屆研究生教學(xué)評價來看效果較好,后續(xù)會增加缺陷檢測等案例,讓學(xué)生深層次地掌握機(jī)器視覺的專業(yè)知識并初步具備開發(fā)工程應(yīng)用案例的能力。