凌銘杰
(中央民族大學理學院 北京 100081)
機器視覺主要用機器來模擬人的視覺功能,從客觀事物的圖像中提取信息,進行處理并加以理解,最終用于實際檢測、測量和控制,是一種無接觸的自動檢測技術,是實現(xiàn)智能化和精密控制的有效手段,具有安全可靠,光譜響應范圍寬,可在惡劣環(huán)境下連續(xù)工作和生產(chǎn)效率高等突出優(yōu)點[1,2].機器視覺的核心是圖像分析和處理算法.德國MVTec公司開發(fā)的圖像分析和處理軟件HALCON是世界公認具有最佳效能的機器視覺軟件,它發(fā)源自學術界, 由1 000多個各自獨立的函數(shù), 以及底層的數(shù)據(jù)管理核心組成,廣泛應用在工業(yè)、科學研究、軍用、民用等領域[3].
在2019版人教版高中物理選擇性必修1中,測量玻璃的折射率實驗使用的是插針法,該方法步驟較為繁瑣,依靠人眼的觀察造成的人為誤差較大.在測量玻璃磚的折射率實驗教學中引入現(xiàn)代機器視覺技術,使用HALCON圖像分析處理軟件可以實現(xiàn)快速和非接觸式測量,提高速度和精確度,同時向學生演示機器視覺中圖像處理和分析的原理并講解相關的光學知識,擴展學生的視野.
HALCON可以把像素的顏色、亮度等信息轉變成數(shù)字信號,并對這些信號進行各種運算,根據(jù)長度、寬度、面積、位置等特征來抽取目標.再根據(jù)預設的允許度和其他條件輸出結果,包括尺寸、角度、坐標、個數(shù)、合格/不合格、有/無等,實現(xiàn)自動識別功能.圖像處理的主要流程如圖1所示.
圖1 HALCON處理基本流程
(1)從相機中采集圖像.
(2)圖像的顏色信息由紅、綠、藍3種顏色組合而成,將圖像的顏色、亮度等信息轉化成數(shù)值為0~255的紅、綠、藍或其他通道灰度值圖像,越亮的像素點灰度值越大.
(3)通過濾波算法消除噪聲或者通過函數(shù)變換提高對比度,這類似于相機軟件的濾鏡功能.預處理步驟可以根據(jù)實際情況取舍.
(4)選擇灰度值的閾值區(qū)間,分割出感興趣的區(qū)域.
(5)對感興趣區(qū)域進行開運算或閑運算等形態(tài)學處理,分割成若干個小區(qū)域.
(6)根據(jù)面積、寬度、高度、曲率等特征從若干個小區(qū)域中選擇需要輸出的區(qū)域.
(7)輸出圖像處理結果.
(1)在一張空白的紙張上任意畫出一條直線,將玻璃的邊界對準直線,選擇適宜的入射角度和位置.
(2)使手機鏡頭垂直玻璃的入射邊界,在黑暗的環(huán)境下拍照以避免其他光源的干擾.
(3)使用HALCON圖像處理軟件處理所采集的圖片,并輸出測量結果.
需要注意的是在整個實驗過程中所有實驗器材位置變化不能太大,也可以將所有器材固定.
3.1.1 讀取相機原圖并轉化為灰度值圖像
首先讀取圖片,如圖2(a).再將圖片轉換為灰度圖像,得到圖2(b).圖中入射光線非常明亮而其他區(qū)域較暗.按住CTRL鍵并將鼠標移到入射光線可以查看其灰度值達到最大值255.
(a)相機采集原圖
3.1.2 閾值分割
該實驗中圖像噪聲較少,對比度高所以沒有進行預處理.先截取入射光線可能出現(xiàn)的范圍的圖像,再對所截取的圖像閾值處理提取感興趣區(qū)域.因為入射光線灰度值很高,所以閾值區(qū)間選為245~255,可以得到圖3所示狀態(tài).其中紅色部分即為符合閾值的感興趣區(qū)域.
圖3 感興趣區(qū)域
3.1.3 形態(tài)學處理和提取特征
閾值分割出的感興趣區(qū)域不僅包括入射光線,還包括其他的干擾點,并且區(qū)域內部有空洞.對感興趣區(qū)域進行閉運算形態(tài)學處理,填充內部空洞并分割出幾個不同大小和形狀的小區(qū)域.這些小區(qū)域可以用不同顏色區(qū)分,將背景去掉后可以很容易區(qū)分.從中提出面積最大且長度最長的區(qū)域即是入射光線.形態(tài)學處理和特征提取如圖4所示.
(a)形態(tài)學處理得出幾個小區(qū)域
3.1.4 輸出入射光線所在直線
提取出入射光線的區(qū)域后,利用算子畫出該區(qū)域對應的最小矩形即入射光線所在直線,并將該直線在灰度圖中顯示,如圖5所示.識別入射光線的相關代碼如圖6所示.
圖5 入射光線所在直線
圖6 識別入射光線的代碼
識別入射面和折射光線的步驟與識別入射光線步驟類似,在代碼參數(shù)設置上會有所差異,這里就不再贅述.
如圖7所示,識別出了入射光線、入射面和折射光線后計算并輸出入射角、折射角和折射率.由運行程序得出矩形玻璃入射角為57.752 9°,折射角為34.312 8°,折射率為1.500 33,保留兩位小數(shù)為1.50.
圖7 矩形玻璃的檢測結果
再用相同的程序代碼檢測半圓形玻璃的折射率,得出半圓形玻璃的入射角為59.797 5°,折射角為35.115 7°,折射率為1.502 45,保留兩位小數(shù)為1.50,檢測結果如圖8所示.
圖8 半圓形玻璃的檢測結果
普通玻璃的折射率為1.5~1.8,筆者也使用激光筆以人工測量方法多次測量了該玻璃的折射率,得出的平均折射率為1.50,如表1所示.該程序的檢測結果也為1.50,因此該實驗應該是可靠的.
表1 人工測得玻璃磚的折射率
將此代碼和硬件做一些改進,就能實現(xiàn)從相機中實時采集圖像并處理,可替代人工快速準確地識別玻璃的折射率是否合格.通過該程序測量玻璃折射率不僅提高了課堂效率,還讓學生在學習課本上光學知識的同時知道了現(xiàn)代機器視覺技術是如何處理和分析圖片中的光學信息,以及光學知識在工業(yè)生產(chǎn)中的應用和科學知識給社會帶來的變革.物理學的發(fā)展和社會、技術、環(huán)境的發(fā)展是息息相關的,在教學過程中特別是物理實驗中引入現(xiàn)代技術輔助教學是教育時代性的體現(xiàn),也是提高學生和老師STSE素養(yǎng)的重要途經(jīng).