姜曉玉,花再軍
(1.南京理工大學 理學院,江蘇 南京 210014;2.河海大學 計算機與信息學院,江蘇 南京 210098)
水位試驗臺是檢驗水位計的設備,它依賴于高精度的銦鋼水位尺(以下簡稱水尺)。檢測過程中,檢測人員要頻繁的從水尺讀數,工作繁瑣且易出錯。從此工程背景出發,文中提出基于圖像處理的水尺讀取方法,給出了處理步驟、方法和處理結果,實現自動讀數。
本系統采用的攝像機分辨率為659×494像素,視野范圍近10 cm,相當于每像素分辨率為0.2 mm,每厘米有50像素。圖1(a)為攝像機采集的包含水位的水尺圖像,需要從圖像中分離出含水位線水管部分圖像,識別出水位線,然后在水尺上找到水位線位置附近兩條厘米刻度線,計算出水位的毫米位上的數值,最后結合系統中精度為3 mm的激光水位計的測量結果得出精確的水位。
水管、水尺和背景有著灰度差異,且水管和水尺的圖像具有垂直特性。將彩色圖像灰度化,依照投影算法[2]y(j)=,對灰度圖像做垂直投影,投影圖上出現較大突變,如圖1(b)所示。檢測此突變位置即可找到水管和水尺的邊界位置,分割結果如圖1(c)所示。
對分離出的水管部分圖像進行處理,定位水位線位置。水面是空氣和水的分界面,存在亮度的變化,且玻璃管具有較強的反光作用,導致水位面的圖像灰度較上下兩側的灰度小。采用算法對水管部分圖像進行水平投影計算,結果如圖2所示,觀察發現水位線的水平投影明顯小于兩側,以局部最小值作為水位線位。
定位水位線后,需要在水尺上確定水位線附近的兩條厘米刻度線的位置。因為每厘米大約相當于50像素,截取水尺圖像中水位線上下各70像素內子圖像區域作為后續處理的圖像,這樣保證區域內有至少2條厘米刻度線,并且相對于在整個圖像區域計算可減小后續處理的運算量,截取的水尺部分圖像如圖3(a)所示。

圖1 水尺圖像Fig.1 Images of watert ruler

圖2 水平投影結果Fig.2 The result of horizontal projection
圖像最基本的特征是邊緣,所謂邊緣是指其周圍像素灰度有階躍變化或屋頂狀變化的那些像素的集合,它存在于目標與背景、目標與目標、區域與區域、基元與基元之間。經典的、最簡單的邊緣檢測方法是對原始圖像按像素的某鄰域構造邊緣檢測算子,如Canny算子,Roberts算子,Sobel算子,Prewitt算子,Laplacian算子[3]等。Canny算子是一類具有優良性能的邊緣檢測算子,它在許多圖像處理領域得到廣泛應用。基本思想是:先對處理的圖像選擇一定的Guass濾波器進行平滑濾波,然后采用一種稱之為“非極值抑制”技術,得到最后所需的邊緣圖像[3]。我們用Canny算子對水尺區域進行邊緣檢測,檢測結果如圖3(b)所示,邊緣非常豐富。但刻度線具有水平特性,且刻度相對集中,根據這些特點對提取的邊緣結果用數學形態學作進一步處理,提取刻度線信息。

圖3 檢測結果Fig.3 The result of operatoration
數學形態學運算是針對二值圖像的圖像處理方法,近年來在數字圖像處理和模式識別領域中得到了廣泛的應用。數學形態學的基本運算包括膨脹、腐蝕、開運算、閉運算[4]。采用形態學方法,選取結構元素對邊緣二值圖像進行閉運算,圖像中刻度線將連為一體,與數字部分分隔開。再進行一次開運算,進行一定程度的濾波,去除一些小的孤立噪聲點。開運算結構元素選為
形態學處理結果如圖4(a)所示,此時刻度部分已經連成了一體。對結果進行標記[4],提取出連通最大的部分[5-6]—刻度區域,結果如圖4(b)所示。

圖4 形態學處理結果Fig.4 The result of morphologic process
厘米線是最長的刻度線,但由于光照,圖像斑點噪聲等原因造成了刻度線的部分斷裂和缺失。采用直接的投影方法可能不能找到厘米刻度線,刻度線除了長度特點外還具有象素位置偏左的特點。采用一種代權重的投影方法。依據圖像的特點,設定靠近左側的像素權重高于右側的像素。刻度二值圖像用 x(i,j)表示,其寬度為 w,高度為 h,權重為(w-j),算法如下:

該算法為一系列加減法運算,速度較快。處理后結果如圖5所示。

圖5 加權水平投影計算結果Fig.5 The result of weighted horizontal projection
由于在邊緣檢測中產生了雙邊緣現象,圖5中兩條厘米刻度線均出現了雙峰,需要進一步確定刻度線的準確位置。對上述檢測結果中的最大的4個峰檢測,鄰近的兩個峰代表了同一條厘米刻度線,兩者的中間位置認為就是厘米線的真正位置。后文將從測量誤差方面驗證這樣選取的合理性。
水位線上側厘米刻度線像素位置yH,下側厘米刻度線像素位置yL,水位線像素位置為yw,水位臺系統的激光水位計測得的水位為H厘米,激光水位計的測量誤差不超過0.3 cm。水尺測得的水位為L厘米。激光水位計測得的水位毫米位上的數值是不準確的,需經由水尺測量的結果來校正。水位校正過程如下:
水位的毫米數

激光水位計測得的水位H的整數部分Hint;激光水位計測得的水位H的小數部分Hfrac。
如果 Lfrac-Hfrac>0.5,則 L=Hint-1+Lfrac;
如果 0≤Lfrac-Hfrac<0.5,則 L=Hint+Lfrac;
如果 Hfrac-Lfrac>0.5,則 L=Hint+1+Lfrac;
如果 0≤Hfrac-Lfrac<0.5,則 L=Hint+Lfrac;

水位誤差小于0.4 mm,優于激光水位計的精度3 mm,且達到誤差小于0.5 mm的指標。
通過區域提取,邊緣檢測,形態學處理以及加權投影方法得到了水位的測量值,水位測量誤差<1 mm,可替代人工讀數。
[1]花再軍,黃鳳辰,陳釗.組態王在十米水位試驗臺中的應用[J].工業控制計算機,2011,24(9):24-25.HUA Zai-jun,HUANG Feng-chen,CHEN Zhao.The implementation of KingView software in ten-meter water-level testing and calibration platform[J].Industrial Control Computer,2011,24(9):24-25.
[2]全書海,薛志華,王琴,等.基于投影圖像分布特征的車牌定位算法研究與實現[J].武漢理工大學學報:交通科學與工程版,2005,29(6):879-882.QUAN Shu-hai,XUE Zhi-hua,WANG Qin,et al.Implementation and research of vehicle license plate locating method based on the distributed character of projection image[J].Journal of Wuhan University of Technology:Transportation Science&Engineering,2005,29(6):879-882.
[3]賈云得.機器視覺[M].北京:科學出版社,2000.
[4]岡薩雷斯.數字圖像處理[M].2版.阮秋琦譯.北京:電子工業出版社,2007.
[5]任明武,楊萬扣,王歡,等.一種基于圖像的水位自動測量新方法[J].計算機工程與應用,2007,43(22):204-206.REN Ming-wu,YANG Wan-kou,WANG Huan,et al.New algorithm of automatic water level measurement based on image processing[J].ComputerEngineeringand Applications,2007,43(22):204-206.
[6]劉治鋒.基于圖像的水位自動檢測研究[D].南京:南京理工大學,2004.