曹麗芳 , 黃志輝 , 張 元 , 鄒 杰 , 彭辰晨 , 焦 祥
(無錫職業(yè)技術學院,江蘇 無錫 214121)
機械零件是機械系統(tǒng)的重要組成部分,零件的好壞關系到整個機械系統(tǒng)的質量。在零件的生產過程中,零件尺寸的傳統(tǒng)人工測量技術往往是利用游標卡尺、螺旋測微器等傳統(tǒng)測量工具和機械裝置、光學儀器等對零件進行接觸式測量[1-2]。傳統(tǒng)的尺寸測量技術雖然能夠滿足一定精度的尺寸測量需求,但是隨著我國制造業(yè)的高速發(fā)展,傳統(tǒng)測量技術存在著測量精度不足、生產效率較低、加工系統(tǒng)柔性較差、零件生產成本較高且易導致零件受損等缺點,已經難以滿足現代化機械制造業(yè)的生產需求。在這樣的背景下,基于機器視覺的零件尺寸測量技術越發(fā)引起人們的興趣和重視,因其非接觸式、低損傷、高效清潔、精密智能等優(yōu)點逐漸成為零件尺寸測量界的熱門研究對象[3-6]。
課題組以尼龍材質注塑成型、后期經銑床加工制成的某連接塊作為研究對象,選用MATLAB軟件作為開發(fā)軟件,設計了一個基于機器視覺技術的測量該零件上表面面積、外輪廓周長及加工孔半徑的尺寸測量系統(tǒng)。
課題組選擇JAI GO-5000C-PGE工業(yè)相機、KOWA LM8HC工業(yè)鏡頭與JD15三腳架作為本實驗采集圖像的硬件工具,以尼龍材質注塑成型、后期經銑床加工制成的某連接塊作為研究對象;將AUTO CAD做出的10 mm×10 mm藍色方塊以PDF文件格式導出,并用300 g銅版紙1∶1彩色打印出來的藍色紙板作為本次實驗用的標板;以黑色不反光幕布作為拍攝背景,并通過墊片將藍色標板放置于與被拍攝目標表面同一平面的位置;以LED白色光源對目標連接塊零件與藍色標板進行低角度照射,盡可能消除外界光線的干擾。做好以上圖像采集系統(tǒng)的準備工作,方可采集到圖像質量較好的實驗圖像,如圖1所示。
圖1 采集的連接塊與標板圖像
課題組選用美國M a t h Wo r k s公司出品的MATLAB軟件作為機器視覺測量系統(tǒng)的圖像處理及算法設計軟件。該軟件自研發(fā)成功至今已有近50年的歷史,多年來,經過MATLAB軟件研發(fā)人員不斷的完善和升級,該軟件早已成為國際知名的標準計算軟件且在全世界有著非常廣泛的應用。之所以選用MATLAB作為本課題的圖像處理及算法設計軟件,更是因為MATLAB擁有相當精致便捷的用戶界面,能夠完成對圖像的大部分處理分析工作,且具有非常成熟的算法函數庫供用戶調用。
基于機器視覺的零件尺寸測量系統(tǒng)對圖像進行了諸多圖像處理分析以及尺寸算法的設計,例如利用最大類間方差法(OTSU)分割圖像、Roberts算子邊界提取確定測量邊界、自適應濾波法消除噪聲、圖像腐蝕與膨脹進行邊界銳化。還可以利用不同顏色填充目標區(qū)域,求取區(qū)域內面積像素值大小以及其邊界周長像素值大小,確定目標區(qū)域的質心位置并標記,利用標板進行比例換算將圖像中的像素尺寸轉換成物理空間尺寸,利用交互式分割法提取部分區(qū)域等等[6-8]。
課題組選用直方圖閾值法分割連接塊區(qū)域與其他區(qū)域,首先將原圖像進行灰度化處理(運用rgb2gray函數),然后得出灰度圖像并輸出對應的灰度直方圖,直方圖顯示只有兩個波峰,一處代表著拍攝背景,另一處代表著連接塊區(qū)域。當將灰度圖轉化為二值圖像(運用im2bw函數)時,算法將標板區(qū)域默認為拍攝背景,從而達到了將連接塊零件從原圖中以二值圖的形式分割出來的目的。以上算法輸出的圖像如圖2所示。
圖2 連接塊從原圖中分割出來
觀察從原圖中分割出的連接塊二值圖可以發(fā)現,可能由于圖像噪聲的干擾導致連接塊外側邊緣與孔的邊緣都呈微小鋸齒狀,不光滑的邊緣對后期的像素值計算精度有不良的影響。課題組利用Roberts算子對連接塊區(qū)域的邊緣進行提取,接著利用5×5平滑濾波器(運用fspecial函數)消除提取的邊緣圖像的噪聲。然而平滑濾波處理在消除噪聲的同時也將一部分邊緣特征模糊了,因此,對連接塊邊緣繼續(xù)開運算(運用imopen函數)銳化處理,使得邊緣更加明顯。以上算法輸出的圖像如圖3所示。得到清晰的連接塊邊緣圖像后,參考計算標板相關尺寸像素值的方法,可以求得連接塊的周長與面積對應的像素值大小,也能成功標定連接塊質心的位置。然而,課題組設計機器視覺測量系統(tǒng)的目的是測量出目標對象的實際物理空間尺寸,因此需對像素值進行換算,將其轉變成所需要的物理空間尺寸。此時,標板的作用就顯得至關重要[9-10]。由于拍攝的標板與連接塊待測表面在同一水平面上,所以二者之間的標定系數是一致的??捎霉剑?)表示:
圖3 對連接塊區(qū)域進一步處理
式中,k、D、d分別指機器視覺測量系統(tǒng)的標定系數、標板的實際尺寸大?。▎挝唬簃m)以及標板尺寸的像素值大小,k1、D1、d1則分別表示連接塊的標定系數、連接塊的實際尺寸大?。▎挝唬簃m)以及連接塊尺寸的像素值大小。由公式(1)可以推算出連接塊的實際尺寸以上算法輸出的圖像與測量結果如圖4所示,圖a與圖b的上一行數值分別表示的是連接塊表面面積的像素值與實際面積尺寸值,下一行分別表示的是連接塊表面的周長(不包括孔的邊緣周長)像素值與實際周長尺寸值。
圖4 計算連接塊尺寸大小
測量加工孔半徑的算法是先通過機器視覺計算圓孔的實際面積尺寸,再根據圓面積計算函數S圓=r2·π反推得計算圓的半徑r:
首先,計算圓孔區(qū)域面積的像素值大小,將圓孔區(qū)域從原圖中分割出來。以黑色圓孔部分為分割目標,以連接塊白色表面為背景,利用交互式分割法截取圓孔所在的區(qū)域,如圖5所示。
圖5 交互式分割法截取孔
其次,利用直方圖閾值法對分割出孔區(qū)域的圖像進行分割,單獨提取出圓孔區(qū)域,圓孔區(qū)域為黑色,別處為白色。對分割出的圓孔進行Roberts邊緣檢測,并對其進行5×5平滑濾波處理以及數學形態(tài)學的開啟運算,得到清晰的圓孔輪廓圖。根據得到的圓孔輪廓圖,將其內部以白色填充,得到的結果如圖6所示。
圖6 對圓孔圖像的處理
再次,將圓孔的輪廓標記為白色,內部區(qū)域標記為淺藍色,從而計算內部淺藍色區(qū)域即圓孔面積的像素值大小。根據上文所述標板的作用,將圓孔面積的像素值大小轉換成圓孔的實際面積尺寸。
最后,根據公式(2)可以將計算的圓孔面積的像素值大小轉換為圓孔半徑的實際值大小。得到的結果如圖7所示,上一行數值表示的是圓孔的面積尺寸測量值,下一行數值表示的是圓孔的半徑尺寸測量值。
圖7 計算圓孔的面積及半徑
本文詳細介紹了基于機器視覺的零件尺寸測量系統(tǒng)需要運用的圖像處理方法及原理、測量算法設計及實際操作。通過計算機圖像處理,僅能識別計算出圖像的像素值大小,因此需要利用標板給予標定系數,將圖像尺寸的像素值大小轉換成物理空間的實際測量尺寸。