董軍
(200434 上海市 上海理工大學)
液位檢測技術在生物醫(yī)學、食品飲料、日化用品、石油探采方面承擔著重要的角色,為了保障產(chǎn)品質量和生產(chǎn)安全,生產(chǎn)過程中直接由人工監(jiān)控和干預的時代已經(jīng)遠去,傳統(tǒng)的液位測量技術已經(jīng)不能滿足現(xiàn)階段的試劑快速檢測的要求。
目前液位檢測方法主要有直接測量與間接測量,由于測量環(huán)境的復雜多變,在工業(yè)實踐中大多采用間接測量方法,也就是將液位信號轉化成其他相關信號進行測量,比如壓力信號測量、電學信號測量以及圖像法測量。將圖像法運用于試管試劑檢測之中,可以獲得較好的實時性及較高的精度,可以節(jié)約實驗人員的操作時間,同時避免取出測量操作時產(chǎn)生的實驗誤差。
2007 年,任明武[1]等通過將標尺插入河水中拍攝刻度圖像來檢測河流水位來解決水汛期堤壩防守看護的問題。其后,黃玲[2]等通過光學的原理,利用透明瓶子的光路折射在標尺上形成扭曲,得出瓶中液體的液位高度;姚坤[3]等通過閾值分割的方法將透明塑料瓶中的無色液體變得光亮,得出液體輪廓,從而算出液位高度。目前,對基于機器視覺的液位檢測方法的研究有了豐富的發(fā)展,2019 年華南理工大學的李博文[4]從取水杯上方拍攝水杯,利用Hough 圓變換的原理,檢測水杯內(nèi)液位高度,研究出了取水杯智能水位檢測系統(tǒng)。本文將數(shù)學形態(tài)學與LoG 邊緣檢測算法相結合,有效地去除了由于光照在玻璃試管上形成的光斑等噪聲,有助于角點檢測算法提取關鍵點用以計算液面高度。并通過實驗對該算法進行了有效性測試。
實驗中搭建的檢測系統(tǒng)硬件包括CCD 工業(yè)相機、LED 光源和用于圖像處理的計算機,以及固定試管的試管夾裝置。如圖1 所示。

圖1 實驗系統(tǒng)硬件結構圖Fig.1 Experimental hardware structure diagram
實驗中,由于試管架及CCD 工業(yè)相機位置固定,為了簡化工作過程,從采集的初步圖像中選取一片區(qū)域,這個圖像區(qū)域包括所要研究的所有信息,圈定該區(qū)域以便進一步處理。使用Rect函數(shù)構造一片矩形區(qū)域,讀取試管液面信息,去除不必要的干擾因素,減少處理時間,增加精度,簡化后續(xù)工作。
攝像機采集的原始試劑圖片是彩色圖像,但是彩色圖像包含的數(shù)據(jù)與信息量比較大,不方便下一步計算分析,而本實驗中,灰度圖像可以充分表現(xiàn)實驗所需要的特征,因此本文圖像處理的第1 步就是將RGB 圖像灰度化。
目前灰度化的方法主要有3 種,分別是最大值法、分量法以及加權平均法。最大值法是選取RGB 三個分量中最大的分量作為灰度圖的灰度值;分量法就是隨機選取某一個分量作為灰度值;加權平均法就是將3 個分量以不同的權值進行加權平均得到灰度值。前2 種方法都是選取其中一個分量,就會丟失其他2 個分量的信息,因此本文中選取的是加權平均法,其公式如下:

式中:R,G,B——圖像紅、綠、藍3 個方向的顏色像素大小。
如圖2 所示,進行灰度化處理后的圖像變得灰暗,試管輪廓邊緣變得更加明顯。

圖2 灰度化處理Fig.2 Graying processing result
廣義上的形態(tài)學是生物學的一類,研究內(nèi)容主要包括動植物的形態(tài)和結構。而我們在圖像處理中的形態(tài)學往往指的是數(shù)字形態(tài)學。數(shù)字形態(tài)學是基于形狀的一系列操作,膨脹與腐蝕就是最基本的形態(tài)學操作。在本實驗中,由于光照的影響,會在試管上留下光斑,影響關鍵信息的提取與計算[5],因此我們采用形態(tài)學操作來消除噪聲,求出圖像梯度。
2.3.1 膨脹
在圖像處理中,膨脹就是求得區(qū)域最大值的操作,從數(shù)學方法上講,就是將圖像某一區(qū)域的像素值矩陣與設立的掩碼做卷積,使圖像向外擴張,達到消除噪聲與區(qū)域連接的目的。其表達式如下:

2.3.2 腐蝕
腐蝕就是與膨脹相反的操作。求取區(qū)域的最小值賦值給該區(qū)域的像素值,以減小圖像里的高亮區(qū)域,消除其中的獨立點數(shù),使得圖像向內(nèi)收縮。其表達式如下:

2.3.3 開運算
在本文的實驗中,為了使得液位輪廓變得更加光滑,消除試管上的光斑噪聲點,我們結合膨脹以及腐蝕兩種基本操作,來實現(xiàn)更高級的形態(tài)學變化——開運算,其表達式如下:

式中:B——設置的掩碼,用其對圖像區(qū)域A 做開運算。
式(4)代表先用B 對A 腐蝕后膨脹。
圖像分別經(jīng)過膨脹、腐蝕、開運算之后,得到圖3 所示的圖像。在經(jīng)由開運算形態(tài)學操作之后,試管上的光斑得到明顯優(yōu)化,邊緣學習更加突出。因此,本算法采用開運算操作。

圖3 形態(tài)學操作結果Fig.3 Morphological operation results
圖像增強是圖像處理的重要組成部分。由于大部分試管都是玻璃制品,因此在運用視覺檢測時,常常產(chǎn)生局部光斑,而導致需要檢測的液位邊緣信息的丟失、模糊等情況,為了減少對后續(xù)處理的干擾,通過對拍攝的圖像進行增強操作。
Retinex 是一種建立在科學實驗和科學分析基礎上的圖像增強算法,其認為物體的顏色是由物體對不同光線的反射能力決定的,而不是由于外界光強的絕對值決定的。Retinex 算法經(jīng)歷不斷的發(fā)展,從單尺度、多尺度再到目前的彩色恢復多尺度,其具有增強色彩、高保真度以及顏色恒定等優(yōu)點。表達式如下:

式中:K——高斯中心環(huán)繞函數(shù)的個數(shù);S(x,y)——原始圖像;Fk(x,y)——中心環(huán)繞函數(shù);r(x,y)——輸出圖像;*——卷積符號。
對圖像進行增強之后得到圖4 所示的效果圖,從圖4 可以明顯看出,試管輪廓以及液面位置得到了明顯的加強,大大減弱了因為玻璃反光而造成的噪聲過多、干擾信息復雜的不利影響,其中圖4(c)、圖4(d)分別表示經(jīng)過處理后的灰度直方圖,其中可以看出,通過Retinex 算法改善了區(qū)域間灰度分布不均的現(xiàn)象,增加了灰度差異,強化了邊緣信息。
圖像邊緣是指圖像中像素變換突出的區(qū)域,其主要存在于提取目標與背景、區(qū)域與區(qū)域、目標與背景之間,是圖像分割、紋理特征提取的關鍵步驟,因此對于圖像中物體的邊緣檢測算法也是目前圖像處理算法研究的一門重要學科[6]。

圖4 圖像增強結果Fig.4 Image enhancement result
目前邊緣檢測的算法主要基于圖像強度的一階和二階導數(shù),主要方法有Canny 算子、Sobel算子、Laplacian 算子以及Scharr 濾波器。
傳統(tǒng)的Laplacian 算子數(shù)學表述如下:

其中f(x,y)在x,y 方向上的2 階微分離散表示形式是

用j-1 替換j 可得:

同理

二階算子具有旋轉不變性的優(yōu)點,因此對邊緣輪廓十分敏感。本次實驗中,采用的是LoG(Laplacian-of-Gaussian)邊緣檢測算法。包含了以下步驟:
(1)濾波:由于導數(shù)通常對噪聲非常敏感,因此必須采用高斯濾波來改善與噪聲有關的邊緣檢測器的性能。
(2)增強:增強算法可以將圖像灰度點附近區(qū)域像素值有顯著變化的點顯示出來。在程序中,可以利用計算梯度幅值的變化強弱來確定。具體步驟如下:

其中,

(3)檢測:為了判斷第(2)步中選出的像素點是否是需要尋找的邊緣輪廓,該方法利用判斷其是否是2 階微分的零交叉點來檢測。
本實驗采用4 種邊緣檢測算法分別對圖像進行操作處理,對這4 種算法的檢測結果如圖5 所示。可以明顯看出LoG 邊緣檢測算法對圖像的去噪能力強,保真程度高,邊緣銳化明顯。
由表1 所示,通過運行時間、噪聲去除效果以及細節(jié)保真程度三個方面對4 種邊緣檢測算法進行比較,結果可以明顯看出LoG 檢測算法可以有效地得出試管與液位的輪廓,并排除圖像中的干擾因素,考慮到時效性與準確性,選擇LoG 算法作為本文的邊緣檢測算法。

表1 邊緣檢測算法對比Tab.3 Edge detection algorithm comparison
上文算法對液面位置的精準檢測,可以利用角點檢測算法來定位關鍵點,然后得出液面高度。本文中采用的是Harris 角點檢測算法,是直接基于灰度圖像的角點提取算法,穩(wěn)定性高,尤其對L 型角點檢測精度高[7]。Harris 角點檢測算法結果如圖6 所示。

圖6 角點檢測結果Fig.6 Corner detection result
上述的算法檢測到了液面位置與試管處的角點以及試管瓶底處的拐點,由于實驗CCD 相機與目標的試管位置固定,因此在得出那個關鍵點的像素坐標之后,便可以通過計算得出實際液位高度。本實驗選用的型號是BFLY-PGE-50H5MCS 型工業(yè)相機、LM12HC 鏡頭,該設備可以采集的最大圖像分辨率為2 448×2 448 pixels,設定的測量距離為300 mm,因此該檢測系統(tǒng)的測量換算為0.08 mm/pixel。
利用檢測算法得出關鍵點P1(x1,y1),P2(x2,y2)和P3(x3,y3),利用排除算法,選取y 方向上跨度大、x 方向差值小的兩個點,因此排除了P3,選擇了P1與P2兩個點。液位高度計算如式(13)所示:

通過數(shù)學形態(tài)學處理過后,結合LoG 邊緣檢測算法可以有效地去除環(huán)境噪聲,提高檢測精度,更加準確有效地找到關鍵點,達到了期望的效果。可以幫助解決實驗室內(nèi)試劑檢測麻煩困難的窘境,提高科研人員的研發(fā)效率,具有很高的市場價值與前景。
當然本文算法也有一定的不足,在后面的角點檢測算法中,有角點檢測存在誤差以及運算速度相對較慢的缺點,對試管內(nèi)有色試劑時的檢測效果也是接下來需要研究的問題。