張建偉, 張光龍, 周 敬
(成都大學 信息科學與工程學院, 四川 成都 610106)
金屬殼體作為密封制品在食品、化工與醫療行業得到廣泛的應用.金屬殼體材料的生產過程需要極為嚴格的控制和監測,由于不同行業對殼體金屬材料要求各異,同時不同金屬材料對溫度的適應力及對大氣壓的耐受力有著不同等級的要求,所以殼體厚度直接影響了制品的質量及生產成本.金屬殼體大多數的貯藏環境需要抽真空,由于不同材質和厚度的材料抗壓能力不同,因此金屬殼體設計過程中有一個關鍵的實驗就是對抽真空的殼體長時間形變監測,形變監測過程通常由人工長時間多次數的記錄和分析來完成.視覺測量作為一種非接觸式測量方法,具有結構簡單、測量方便等優點[1].隨著智能制造的不斷發展,視覺測量技術在工業、航天及人工智能等領域得到了廣泛應用.在復雜環境中要對關鍵設備進行形變的測量確實比較困難,但在工業生產中智能視覺檢測已經不可或缺[2].為了使監測更智能與高效,本研究提出了基于三角法的視覺測量技術來實現形變數據的實時監測.本研究方法可在長時間無人值守的情況下對物體形變進行實時監測,在保證設備裝置的安全性和可靠性的同時獲取準確的數據信息.同時,實驗仿真數據表明,在特定場所中金屬殼體形變測量的測量精度高于人工測量精度.
本研究的形變測量算法采用中值濾波,中值濾波最大的優點就是不改變圖像的細節結構的同時還可以去除圖像的噪點.
中值濾波方法的原理如下:針對待處理的當前像素,選擇一個由其鄰近的若干個像素組成的模板,對模板的像素由小到大進行排序,再用模板的中值替代原像素的值.
對于二維圖像3×3的中值濾波的公式如下,
g(x,y)=med{f(x-1,y-1),f(x,y-1),
f(x+1,y-1),f(x-1,y),f(x,y),
f(x+1,y),f(x-1,y+1),
f(x,y+1),f(x+1,y+1)}
(1)
式中,f(x±1,y±1)是像素f(x,y)的鄰近像素,med是取所有值的中值.
數字圖像是由有限數量的元素組成的,每個元素都有一個特殊的位置和數值.組成數字圖像的基本單位是像素,即,數字圖像是像素的集合[3].模板匹配算法實際上是通過滑窗的方式將模板與原圖的子圖進行對比來尋找模板與子圖的相似性.假如存在模板T(W×M),將其疊放在原圖S(H×N)上平移,則稱原圖為被搜素圖,而在被搜索圖上模板覆蓋的那塊區域稱為子圖Sij,(i,j)為子圖左上角在被搜索圖S上的坐標[4],搜索范圍為,
1≤i≤W-M,1≤j≤H-N
(2)
算法通過比較T和Sij的相似性,完成模板匹配過程.
對于模板T和子圖Sij的匹配程度,本研究采用歐式距離相似性函數[5]來衡量,
(3)
將式(1)右邊展開得,
(4)
式中,Sij為子圖,T為模板.第1項和第3項在選定模板之后就是定值.相似度其實只取決于第2項,對于歐式距離而言,值越大相似性越低,即第2項值越小越相似.將中間項歸一化為,
(5)
當R(i,j)=1時,表示模板與子圖完全相等.
為了進一步提高定位精度,本研究進一步通過匹配的相關系數進行高斯曲面擬合[6],并求其極值來達到亞像素精度.
本研究的高精度視覺形變測量是采用單目相機三角測距結合圖像匹配算法實現的.單目測距原理示意圖如圖1所示.

圖1單目測距原理圖
測量算法的原理是:利用小孔成像模型,從相似三角形之間的關系獲取相機焦距f,再計算物體到相機的距離[7].假設有一個寬度為W的目標或物體,本研究將這個目標放在距離相機為D的位置,用相機對物體進行拍照并測量物體的像素寬度P,這樣就得出相機焦距的公式,
F=(P*D)/W
(6)
相機移動后,需獲取新距離D′,由式(6)可得,
D′=(W*F)/P
(7)
最后,根據相似三角形的原理計算出相應的位移量.
因為單金屬表面的紋理較少,算法無法提取有效特征進行配準和測量.為了實現智能的金屬殼體形變的高精度測量,本研究先在金屬殼外壁貼上特征標識,然后采用高分辨率工業面陣相機進行標識圖像的數據采集.
采集到數據后的圖像測量算法是本研究系統的核心.算法首先對圖像使用中值濾波降噪,以減少噪聲對圖像的干擾,然后利用模板匹配對標識進行配準,尋找到匹配的最優亞像素位置.亞像素位置的像素坐標在電荷耦合器件(Charge-coupled device,CCD)上的物理坐標配合三角測量,完成形變變化量的解算,最終算法將測量結果進行趨勢分析和輸出顯示.其中,形變測量采用的三角法是基于單目成像測距原理實現的.算法流程如圖2所示.

圖2形變測量算法流程圖
本研究的金屬外殼形變測量系統以工業相機為核心,再加上光源、標識、顯示器、前端處理器及服務器等外圍設備.該工業相機與傳統的網絡攝像機圖像處理平臺[8]類似,可以通過網絡進行數據傳輸.測量系統的框圖如圖3所示.
在實際系統設計時需要對一個金屬殼外壁的中心區域進行形變實時測量,由于該區域本身的紋理較少且反光嚴重,對提取和測量形成干擾,不易直接采集特征,給高精度的測量造成障礙.因此,為了保證提取質量和測量精度,本研究在金屬殼外壁中心區域增加標識特征,其重要目的在于增強目標的特征并提高特征提取精度.常見的標識有圓形、同心圓或十字形等,如圖4所示.

圖3形變測量系統框圖

圖4常見標識類型
為了確保在不同環境光照狀態下對標識有清晰的成像,本研究對被測設備表面進行打光.在固定光源的情況下,本研究通過觸發CCD相機獲取標識特征數據信息,并采用上述高精度模板匹配方法在連續幀中配準特征位置.當標識特征未發生變化時,則說明金屬殼外壁無形變產生.當標識特征發生變化時,則證明金屬殼外壁發生了形變.形變測量示意圖如圖5所示.圖6為所采用的標識在CCD中的成像示意圖.

圖5形變測量示意圖

圖6標識在CCD中的成像示意圖
在CCD中標識的像素位移可以通過式(3)與式(4)的模板匹配計算得到,再根據單目測距原理及三角測量法的原理推導出形變測量關系.標識在CCD中的像素位置變化可以通過三角測量法轉化為實際空間的物理位移變化.形變測量原理圖如圖7所示.

圖7形變測量原理示意圖
根據相似三角形原理可以得到,
(8)
式中,L1為焦距,L2為物距,M為物體高度,θ為45°.
形變測量系統的工作流程如圖8所示.系統首先通過套接字創建網絡通信接口,然后初始化工業相機,開始連續采集金屬殼體相關變形的數據信息.如果采集時間超時,則通知后臺服務器工位異常.如果采集正常,則進行實時形變測量和數據分析.最后,系統將該工位的計算數據和結果傳輸給后臺的服務器,以便后期進行追溯和分析.
圖8形變測量系統流程圖
在2.5 GHz Inter i5-7300處理器及8 GiB內存的Windows 10系統下,本研究利用Visual Studio 2016和OpenCv 3.1.0軟件配置環境對形變測量算法進行實際驗證.為了方便產生形變,由于較厚金屬不便于快速實驗,因此,本研究的實驗采用較薄的鋁制殼體.
圖9為形變測量原始圖.本研究通過按壓金屬殼體表面引起形變,同時利用單目相機獲取圖像數據結合形變測量算法進行處理,得出結果并顯示.為了提高測量精度,本研究通過粘貼標簽來降低反光且增加紋理特征,降低測量誤差.測量結果如圖10所示.

圖9形變測量原始圖

圖10形變測量結果圖
在實驗中,為了對比實際形變測量結果的誤差,本研究采用了高精度紅外激光距離測量儀對同一位置進行同步測量來作為實際形變值.該測量儀的精度為5 μm,因此可以用于驗證該視覺測量的精度[9].同時,本研究將高精度測量設備的激光測量點對準標識中心,當垂直向下按壓金屬殼體引起形變.為了保證測量算法和高精度測量設備讀數的一致性,本研究同時對兩處的測量數據進行記錄,隨機選取其中的8組形變測量數據如表1與表2所示.
表1與表2中,高精度測量儀的數據為實際值,本研究的算法值為測量值,絕對誤差和相對誤差均由以上數據得出.從表1可知,基于視覺的形變測量算法的均方根誤差為0.016 mm,平均誤差為0.014 mm,最大相對誤差在2%左右.從表2可知,均方根誤差為0.026 mm,平均誤差為0.023 mm,最大相對誤差不大于4%.

表1 形變測量數據1

表2 形變測量數據2
另外,本研究也將測量到的數據提取出來進行形變量分析,如圖11所示.圖11為采集點和形變量的關系圖,分析采集數據的主要方法是函數擬合法.

圖11形變量分析
由圖11(a)和圖11(b)不難看出,擬合后的函數近似線性函數,如果該函數結合材料力學相關理論則有助于獲取更進一步的實驗結論.
工業產品的形變測量在其生產過程中至關重要,本研究采用基于視覺的形變測量算法,將測量誤差控制在4%左右,精度在0.03 mm以內,優于人工的0.05 mm.同時,該系統可實現無人參與的實時監測和數據分析,極大地提高了金屬殼制品研究過程中數據分析和開發的效率.