何雨陽 魏鴻磊 岳彩睿 翟先一 馬 驥
(大連工業大學機械工程與自動化學院,遼寧 大連 116034)
砂輪修整機通常使用質地較硬的材料作為修整工具,對待修整砂輪的表面形狀進行修整[1-2]。由于加工時存在潤滑油飛濺、光線變化等影響,傳統砂輪修整機多不配備過程檢測系統,無法監控工作狀態,設備的實時性較差[3],出現加工失誤后無法及時處理。為砂輪修整機配備輪廓檢測系統,可以在工作過程中對砂輪輪廓形狀進行實時提取,將檢測到的輪廓與當前狀態下的理想輪廓形狀進行對比,根據二者形狀的相似度判斷當前是否處于正確的工作狀態下。當實際輪廓與目標輪廓形狀不同時,找出修整過程中出現錯誤的位置,實現對砂輪修整機工作狀態的實時監控。配備監控系統可以增加設備應對突發狀況的能力,修整過程中出現錯誤可以及時做出調整,避免砂輪碰撞破損造成的損失且便于后續的修改調整,提升了砂輪修整機的經濟性和安全性[4-7]。針對以上問題,本文設計了一種用于砂輪修整過程中的砂輪輪廓形狀實時檢測系統。
近年來,隨著先進制造業和模具加工業的快速發展,砂輪修整機的工作效率及產品精度要求也在不斷提升。國內外對工作過程中的輪廓檢測方法進行了多方位的研究,常用的檢測方法有光學影像法[8]、PLC 控制器監控法[9-10]和機器視覺檢測法[11-12]等。卜泉林等[13]采用光學投影技術將影像輪廓與目標輪廓進行比對,檢測結果保證了較高的精度,但無法對圖像信息進行處理,不能實現在線反饋功能;譚廷武等[14]采用形狀復刻法,將砂輪的V 形尖端復刻于石墨板上,掃描石墨板形狀變化,模擬檢測輪廓形狀,測量精度可達4 μm,但需要對石墨板提供穩定電壓,不適用于大多環境;Lavrinenko V I 等[15]通過CCD 相機搭配機器視覺的圖像處理技術對砂輪輪廓進行檢測,精度可達3 μm,但需要相機多次采樣來提高精度,檢測過程的連貫性易出現問題。
綜上所述,砂輪形狀的檢測方法,目前還缺乏一種適用性廣、檢測精度高、處理時間短的自動化技術方案。本文提出一種基于機器視覺的砂輪輪廓邊緣提取方案,通過圖像預處理減少后續計算用時,搭配三次樣條插值函數保證輪廓完整度,使用亞像素邊緣提取得到高精度的完整砂輪輪廓圖像,實現對砂輪輪廓形狀的實時檢測。進行多次重復測試,與實際輪廓對比,驗證試驗的可行性。
試驗使用日本KANEHIRA 自動修整機作為砂輪修整設備,碳化硅砂輪作為修整工具,利用磨削修整法對待修整的金剛石砂輪進行磨削處理,修整機實物圖如圖1 所示。

圖1 砂輪修整機實物圖
設備原有的視覺系統僅用于校正砂輪與修整工具間的位置,無法對CCD 相機采集的圖像進行輪廓提取。因此本系統使用C#語言在Visual Studio 2022 的Windows.NET Framework 環境下設計了本套圖像處理方案,實現對砂輪輪廓形狀的實時檢測。
砂輪修整機工作原理如圖2 所示,修整過程按以下3 步進行:(1)金剛石砂輪主軸先沿X方向再沿Y方向進行移動,直至金剛石砂輪邊緣與碳化硅砂輪相接觸。(2)旋轉工作臺帶動碳化硅砂輪,按v方向進行往復旋轉運動,對金剛石砂輪輪廓進行磨削。(3)金剛石砂輪主軸帶動砂輪按u方向勻速旋轉,保證所有輪廓位置得到充分磨削。

圖2 砂輪修整機工作原理簡圖
本方案由圖像預處理、Canny 算子邊緣檢測、三次樣條插值函數補償、擬合法亞像素邊緣提取等4 部分組成。根據砂輪修整機是否開始工作,將圖像處理過程分為2 個階段。
(1)砂輪修整前:在良好環境下,使用Canny算子對砂輪原始圖像進行邊緣檢測;使用引導濾波算法,根據邊緣點信息進行背景模糊處理;根據背景分割圖像,設定剩余前景位置作為后續所有圖像的ROI 位置,完成圖像預處理。
(2)修整開始后:首先使用Canny 算子獲取粗略的邊緣輪廓曲線,再根據已有的邊緣曲線搭配三次樣條函數對缺失部分進行插值補償,得到完整邊緣圖像,最后使用邊緣像素點的灰度梯度幅值作為待擬合點進行高斯擬合,得到亞像素級邊緣圖像,整體方案流程如圖3 所示。

圖3 砂輪輪廓提取方案流程圖
1.2.1 圖像預處理
為排除背景部分噪聲點干擾,減少后續圖像處理用時,需要在修整工作開始前,對原始砂輪圖像進行預處理,由此選取出ROI 區域。
首先在良好環境下對原始砂輪圖像進行邊緣檢測,得到初始狀態下的輪廓圖像。然后根據圖像邊緣點信息,使用引導濾波算法[16]對背景部分進行統一模糊處理,并對前景區域進行細節增強,實現背景虛化的效果。由于引導濾波的核心思想是基于局部線性模型[17],且砂輪圖像內容較為單調,因此可以實現快速背景虛化的效果。最后根據得到的背景分割圖像,設置砂輪前景部分作為后續圖像處理的ROI 區域,過程如圖4 所示。

圖4 預處理部分砂輪圖像
由于修整過程中砂輪輪廓僅會向內收縮無法向外擴張,且砂輪位置不會發生改變,因此該區域內包含了所有砂輪信息,故設定預處理得到的ROI 位置作為后續所有圖像的ROI 位置,此后工作過程中相機采集到的所有砂輪圖像,均裁剪至僅剩余ROI位置后再進行圖像處理即可。通過預處理操作,縮減了后續圖像大小,排除了背景部分干擾,縮短后續圖像處理用時。
1.2.2 Canny 邊緣檢測
修整工作開始后,用CCD 相機獲取工作過程中的砂輪圖像,并在ROI 區域內進行輪廓提取。
使用Canny 算子對工作過程中的砂輪圖像在ROI 區域內進行邊緣檢測,實現對砂輪輪廓邊緣信息的初步檢測,結果如圖5 所示。

圖5 砂輪邊緣檢測結果
由于加工過程中存在光照變化、水漬污染等干擾因素,圖像處理效果不佳,此步的邊緣檢測方法僅能得到存在部分斷點的砂輪輪廓曲線。
1.2.3 三次樣條插值補償
通過Canny 算子得到的邊緣圖像存在部分斷點,會對檢測效果造成不良影響,因此需要進一步對輪廓缺失部分進行補償,增加輪廓的完整度和準確度。
上述得到的輪廓圖像斷點數量較少,而本文對補償結果的準確度要求較高,因此相比于k 近鄰算法和最小二乘法,采用計算速度較慢,但預測準確、生成數據光滑的三次樣條插值法,根據現有曲線對輪廓斷點處進行補償[18]。
設給定函數f(x) 在 [a,b]區間內x的節點為a=x0<x1<x2<···<xn=b,且yi=f(xi)。構建三次樣條函數S(x) 以分段多項式逼近f(x),用S(x)表示相鄰節點之間的函數,在每段區間 [xi,xi+1]內都有:
f(x),f′(x),f′′(x)在區間內連續,在此區間內S(x)可以表示為
S(x)存在4 個待定系數,n個區間需求4n個未知數,根據插值和微分的連續性可知,S(x)在xj處應滿足:
由此得到4n-2 個條件,再根據2 個邊界處條件a=x0,b=xn可知:
共得到4n個條件,求出所有待定系數,解出三次樣條函數S(x)。
本文將輪廓缺失處視為未知量,使用上述方法根據缺失部分兩側已有的輪廓曲線數據,構建三次樣條插值函數,對輪廓缺失部分進行補償,圖5 所示的補償結果如圖6 所示。由此可以得到完整的像素級砂輪輪廓邊緣曲線。

圖6 補全后像素級輪廓圖
1.2.4 亞像素邊緣檢測
為提高圖像邊緣精確度,使用基于擬合法的亞像素邊緣檢測法將輪廓信息精度提升至亞像素級。
上述方法得到了粗略輪廓信息,某處邊緣點的像素灰度值在梯度方向上分布如圖7a 所示,4 點、5 點之間灰度值變化最大,亞像素邊緣位置就在此區間內。利用差分法計算像素點位置梯度幅值[19],如圖7b 所示,再對像素點的梯度幅值進行最小二乘擬合,構建高斯函數曲線,高斯函數均值位置即可得到亞像素邊緣坐標[20],具體如下。

圖7 邊緣點灰度值和梯度幅值分布
使用像素點法線上的灰度梯度幅值作為高斯函數的待擬合點,高斯曲線表達式為
式中:μ為高斯曲線均值;σ為高斯函數的標準差。為得到高斯曲線頂點位置,對式(5)兩邊同時取對數:
式(6)結構如y=ax2+bx+c,為一元二次函數的形式,再用最小二乘擬合算法求待定參數a0、b0、c0。
將式(6)轉換為矩陣的形式:
矩陣可化簡為A=XB,矩陣B的最小二乘法解為B=(XTX)-1XTA,計算可知 μ、σ 與a0、b0、c0之間的關系如下:
由此便可得到高斯函數表達式,并計算出高斯曲線峰值位置xmax和高斯曲線的峰值ymax:
擬合后得到的高斯曲線極值點坐標為 (xmax,ymax),xmax為亞像素邊緣點與像素級邊緣點在法線方向上的距離,設像素級邊緣點N0坐標為 (x0,y0),法線方向與水平方向夾角為θ,如圖8 所示,計算出亞像素邊緣點N坐標 (xn,yn):

圖8 亞像素邊緣點求解
使用此方法對所有邊緣像素點進行擬合,以某一像素點為例,根據其梯度幅值得到高斯擬合曲線,如圖9 所示。虛線是根據像素點法線上的梯度值連接而成,實線為本文方法得到的高斯擬合曲線,根據其峰值點M,即可求得該像素點的亞像素邊緣坐標。通過此方法遍歷所有邊緣像素點,即可獲得高精度、高完整度的亞像素邊緣輪廓曲線。

圖9 高斯擬合曲線
針對所述方法,設計了3 組實驗。實驗一旨在檢驗該方法在理想邊緣圖像中對圓形和線形邊緣的定位精度;實驗二用于驗證該方法在實際工件檢測中對圓形和線形邊緣的定位效果;實驗三旨在測試該算法的執行效率。實驗使用Python3.7 和OpenCV4.5.3 進行,硬件環境為Windows 10 操作系統、主頻2.20GHz 的Corei7-8750H 處理器和16GB內存的筆記本電腦。
為驗證本文插值方法和亞像素邊緣提取法的精度,需要進行實驗,然而對砂輪實體進行高精度測量非常困難。在文獻[21]的啟發下進行仿真實驗。應用OpenCV 編程在圖1 上繪制已知坐標的砂輪輪廓模擬圖像(圖10)。

圖10 仿真圖像
2.1.1 像素邊緣檢測方法
使用本文提出的亞像素邊緣檢測方法和Canny算法對輪廓線進行邊緣提取,比較檢測到的輪廓坐標和實際輪廓坐標的差異,評估亞像素邊緣檢測法的誤差(表1)。

表1 亞像素坐標點檢測
根據表1 數據可知,相比于Canny 算法,本文算法的檢測結果與實際邊緣信息間的誤差較小,坐標信息更接近實際值。
2.1.2 插值方法實驗
再刪去圖中部分輪廓曲線,曲線和線段的表達式已經,如圖11 所示,使用本文1.2.3 方法對斷點部分進行插值補償,比較補全位置輪廓坐標與實際輪廓坐標間的差異,與文獻[21]補償方法對比,判斷本文插值補償法產生的誤差大小(表2)。

表2 插值坐標點檢測 mm

圖11 斷點仿真圖
根據表2 數據可知,相比于文獻[22]算法,本文插值算法產生的誤差較小,可以有效應用于砂輪邊緣檢測中。
砂輪修整機工作時處于復雜的工廠環境中,對輪廓檢測效果產生干擾主要是光照變化和水漬及油污干擾。對2 種干擾因素設置不同數值模擬工廠環境干擾情況,從輪廓完整度、邊緣準確度和圖像處理用時3 個量化指標對試驗進行衡量。
輪廓完整度:將像素坐標轉換為實際坐標后,測量當前輪廓長度與完整輪廓長度,二者之比即為此時圖像輪廓完整度。
邊緣準確度:將得到的輪廓圖像與實際輪廓圖像進行對比,選取最能體現邊緣信息準確性的多種性能指標作為評估參數來進行判斷。
圖像處理用時:原始圖像通過此方案處理后,獲得輪廓圖像所需的時間。
砂輪輪廓完整度越高,邊緣信息越準確,圖像處理用時越少,方案的可行性越高。
2.2.1 光照試驗
評判光量級的單位有2 個:光通量和照度,單位分別是Lumen 和Lux。1 Lumen 是光源與1 cm2的屏幕距離1 cm 時,1 CD 的光線產生的光通量;1 Lux 是1 Lumen 的光通量均勻分布在1 m2上產生的照度[23]。
當初始亮度為1 600 Lux 時,圖像處理效果最佳,設置不同光照強度下的砂輪圖像,如圖12 所示。使用本文算法進行輪廓完整度試驗,結果見表3。

表3 不同光照下的輪廓完整度

圖12 不同光照下的砂輪圖像
根據表3 數據可知:本系統在光照變化范圍-200~150 Lux 的情況下,可對輪廓缺失部分進行100%補償,超出此范圍后仍可對部分斷點區域進行補償,圖像處理用時在140 ms 左右。
對相同光照條件下的砂輪圖像,使用不同輪廓提取算法進行對比試驗。使用文獻[24]、文獻[25]、Canny 算法與本文算法依次進行輪廓完整度試驗,結果見表4。

表4 相同光照下不同方法間的輪廓完整度
根據表4 數據可知:相同光照條件下,相比于文獻[24]、[25]算法,本文算法在圖像完整度方面分別高出8.6%、12.3%,且圖像處理用時更短。
由表2 和表3 可知,光照不良的情況下,本系統提取到的輪廓具有較高完整度,圖像處理效率更高。
為進一步評價邊緣檢測效果的優劣,還需對輪廓信息的準確性進行評估。以良好環境下得到的實際輪廓邊緣為標準,選取4 種相似度評估指標:圖像通用質量指標(UQI)、像素值平方根誤差(RMSE)、結構相似度(SSIM)以及圖像峰值信噪比(PSNR)作為參數。UQI 根據相關性損失度、亮度失真率、對比度失真率3 個因素進行計算,值越大檢測質量越高;RMSE 測量出誤差的平均大小,值越小檢測效果越好;SSIM 用來衡量圖像間的相似度,值越大相似度越高;PSNR 越高,像素點位置信息與原圖像越接近。
選取相同光照的砂輪圖像,使用不同輪廓提取算法,進行輪廓信息準確度試驗,結果見表5。

表5 光照不良條件下的邊緣信息準確度
根據表5 可知:本系統在4 組評估參數中都有著最佳的檢測效果,相比于文獻[24]、[25],本文算法在圖像通用質量指標方面分別有14.5%和11.9%的提高,結構相似度方面分別有13.6%和16.2%的提高,其余參數也有著更優的檢測結果。
將表4 中不同算法得到的輪廓圖進行同一位置的局部放大展示,結果如圖13 所示。

圖13 輪廓局部放大圖
根據圖13 可知,通過本文算法得到的輪廓圖像信息最接近真實輪廓圖像。由表5 和圖13 可以看出,在光照不良的情況下,本系統得到的邊緣信息具有較高的準確度。
2.2.2 水漬覆蓋試驗
選取砂輪輪廓處附著不同大小水珠的砂輪圖像,比例尺標定后計算出被覆蓋的邊緣長度與邊緣總體長度,二者長度之比即為輪廓缺失比。選取不同輪廓缺失比的圖像使用本文算法進行輪廓完整度試驗,結果見表6。

表6 不同輪廓缺失比的輪廓完整度
根據表6 可知:本系統在輪廓缺失比低于25%的情況下,可對輪廓缺失部分進行100%補償,超出此范圍后仍可對部分斷點區域進行補償,圖像處理用時在160 ms 以內。
再選取相同輪廓缺失比的圖像,使用文獻[24]、[25]算法和Canny 算法與本文算法進行輪廓完整度試驗,結果見表7。

表7 相同輪廓缺失比不同方法的輪廓完整度
根據表7 可知:相同輪廓缺失比的情況下,相比于文獻[24-25]算法,本文算法在圖像完整度方面分別高出了5.9%、6.5%,圖像處理用時更短。
再選取相同輪廓缺失比的砂輪圖像,使用不同輪廓提取算法,進行輪廓信息準確度試驗,結果見表8。

表8 輪廓缺失條件下的邊緣信息準確度
根據表8 可知:本文算法在4 組評估參數中都有著最佳檢測效果,相比于文獻[24-25]算法,本文算法在圖像通用質量指標方面分別有著10.7%和13.2%的提高,在像素值平方根誤差方面分別降低了20.8%和14.7%,其余參數也有著更優的檢測結果。
由表6~表8 可知,砂輪部分輪廓被水漬覆蓋時,本系統得到的輪廓具有較高的完整度和準確度,圖像處理效率更高。
綜上所述,本文在6 種不同條件下進行試驗,根據得到的數據可知,在光照不良或水漬覆蓋的工業惡劣環境下,使用本系統得到的砂輪輪廓圖像完整度高、準確性強,且由于預處理操作以及曲線輪廓占比較小,使得圖像處理計算量得以減少,用時較短。可以使用此方法對修整過程中的砂輪提取出清晰完整的邊緣輪廓曲線,實現對砂輪輪廓狀態的實時檢測。
為實現砂輪輪廓形狀的在線檢測,本文首先根據基于邊緣提取的背景虛化方法,得到后續圖像處理的ROI 區域,再對惡劣環境下的砂輪進行輪廓提取,并用三次樣條插值函數補全斷點處的輪廓形狀,最后使用亞像素邊緣提取方法增加輪廓的準確度。
通過多次實驗數據可以得出,本文方法,可對光照變化范圍在-200~150 Lux、輪廓缺失比少于25%的輪廓曲線進行完全補償,單次圖像處理用時在160 ms 內,準確度檢測的UQI、RMSE、SSIM和PSNR 均值分別為0.550 0、7 803、7.24、0.037 0。相比于其他算法,本文得到的輪廓在圖像通用質量指標方面至少有10.7%的提升。砂輪修整后產生的磨削路徑整齊光滑,需要圖像處理的曲線邊緣位置較少,同時背景分割處理消除了許多噪聲點干擾,減少了圖像處理的計算量。因此本方法實現了修整過程中砂輪輪廓外形的高精度實時檢測,出現問題時可及時發現[26],提升了砂輪修整機的經濟性和安全性。