孫紹祖, 劉今越, 史寶軍
(河北工業大學 機械工程學院,天津 300401)
石化爆燃環境中存在有大量的氣壓表、溫度表、油溫表等指針式儀表[1],傳統的儀表檢測靠人工進行識別,危化品生產儲運場儀表數量多、環境復雜,人工識別工作量大、成本高、易發生誤讀誤記,存在較大安全隱患。近年來,隨著機器人智能化水平的不斷提高,大量智能機器人被應用于變電站、煤礦、石化爆燃環境下的巡檢作業[2~4],進行指針式儀表識別,許多學者對此進行了大量研究。文獻[5]提出基于雙目立體視覺的指針式儀表判讀算法,用于校正指針式儀表中指針針尖在圖像上的位置。文獻[6]提出一種基于直線橢圓檢測器的指針儀表自動識別策略,對刻度不均勻的指針式儀表識別有很好的啟發作用。文獻[7]引入一種二進制描述器進行指針區域獲取,之后基于圓的區域累積直方圖(circle-based regional cumulative histogram,CRH)精確提取指針。目前,儀表識別方面的研究,多是基于相機固定的情況下對獲取的儀表圖像進行識別檢測,而在石化爆燃等高危復雜環境下,機器人運動或不可避免的振動,都會導致拍攝目標與相機的相對位移,從而產生圖像運動模糊退化,對讀數識別產生很大干擾。
本文提出基于圖像分塊結合邊緣檢測的模糊參數估計方法,并通過實驗驗證了提出方法對模糊參數估計的準確性。基于估計出的點擴散函數(point spread function,PSF),采用維納濾波完成運動模糊儀表圖像復原,對復原圖像再處理后,通過Hough變換完成儀表識別。
對模糊圖像[8]進行復原的關鍵是建立圖像的退化模型,在考慮噪聲的情況下,圖像的退化模型可近似用統一的線性模型表示為
g(x,y)=f(x,y)*h(x,y)+n(x,y)
(1)
式中g(x,y)為退化圖像;h(x,y)為退化函數;f(x,y)為原始圖像;n(x,y)為隨機噪聲函數;*為卷積。
對式(1)進行傅里葉變換則有
G(u,v)=F(u,v)H(u,v)+N(u,v)
(2)
式中G(u,v),F(u,v),H(u,v),N(u,v)分別為式(1)各函數的傅里葉形式。原圖像f(x,y)通過退化函數PSF影響退化后的圖像為g(x,y),求解PSF是復原模糊圖像的核心問題。
由于變速與非直線運動時都可分解為各段的勻速直線運動,所以,研究勻速直線運動產生的運動模糊具有普遍意義[9],PSF由下式表示

(3)
式中θ為物體運動方向與水平方向之間的夾角,稱為運動模糊角度,L為運動方向上像素移動的距離,稱為運動模糊尺度。得知模糊角度θ與模糊尺度L,便可求解PSF,進而進行運動模糊圖像復原。
1.2.1 圖像灰度化
圖像的閾值分割、特征提取等都是以圖像的灰度值作為輸入量進行計算的[10]。本文通過加權平均法對圖像進行灰度處理,如式(4)所示
g=0.229R+0.587G+0.114B
(4)
式中g為灰度值,R為紅色光譜分量,G為綠色光譜分量,B為藍色光譜分量。
1.2.2 圖像去噪
本文實驗采用高斯噪聲進行模擬,由于高斯濾波對處理高斯噪聲十分有效,且去除噪聲的同時能保留圖像原有的特征,因此本文選擇高斯濾波進行圖像去噪。圖1(a)是對模糊儀表圖像添加均值為0,方差為0.002的高斯噪聲的運動模糊儀表圖像,利用5×5的模板進行高斯濾波后的圖像如圖1(b)所示。

圖1 高斯濾波效果
1.3.1 邊緣檢測與圖像分塊
運動模糊圖像中有很多區域是單一色調,灰度值差異不大,受退化函數影響后造成的像素疊加在視覺上并不明顯,對全局圖像進行模糊參數估計時,造成估計結果不準確。本文提出改進的PSF參數估計方法,在參數估計之前,對圖像運用Canny[11,12]算法進行邊緣檢測,之后進行圖像分塊,篩選出邊緣信息較多的圖像塊,選擇這些圖像塊的原因是其邊緣處灰度值變換劇烈,像素疊加后模糊效果明顯,對這些區域進行模糊參數估計結果更加準確。對圖1(b)進行邊緣檢測與圖像分塊后如圖2所示。

圖2 邊緣檢測與圖像分塊
1.3.2 運動模糊圖像的倒頻譜分析
本文首先將退化圖像進行二維傅里葉變換,之后取對數,再進行逆傅里葉變換得到退化圖像的倒頻譜,分離出退化圖像的模糊信息。
圖像g(x,y)的倒頻譜定義如下
Gg(p,q)=F-1{log|G(u,v)|}
(5)
式中F-1為傅里葉逆變換,Gg(p,q)為運動模糊圖像的倒頻譜。在實際的圖像處理中,圖像的倒頻譜一般表示為
Gg(p,q)=F-1{[1+log|G(u,v)|]}
(6)
在不考慮噪聲的情況下,式(1)的倒頻譜可表示為
Gg(p,q)=Gf(p,q)+Gh(p,q)
(7)
式中Gf(p,q)為原始圖像倒頻譜,Gh(p,q)為退化函數倒頻譜。由式(7)可看出,空間域的卷積運算在倒譜域轉變為加法運算,有利于分離模糊圖像的模糊信息。圖3(a)與圖3(b)分別為運動模糊圖像圖1(b)的頻譜圖與倒頻譜圖。

圖3 運動模糊圖像頻譜圖與倒頻譜圖
圖3(a)與圖3(b)對比可以看出,圖1(b)頻譜圖中心出現十分明顯的十字亮線,原因是頻譜圖中心化過程中圖像邊緣存在一定的截斷,破壞了周邊的卷積關系,使退化過程不是一個完全卷積。倒頻譜可有效減弱十字亮線的干擾,倒頻譜中條紋的方向就是運動模糊圖像的運動模糊角度。
1.3.3 運動模糊角度估計
Radon變換是指圖像在某一指定角度射線方向上投影的變換,通過Radon變換可以計算圖像在任意方向上的投影[13]。函數f(x,y)沿任意角度θ的Radon變換定義為

(8)
其中

(9)
首先采用Canny算法對圖像倒頻譜進行邊緣檢測,圖4是對圖3(b)運動模糊圖像倒頻譜圖進行Canny邊緣檢測的結果。對Canny邊緣檢測后的倒頻譜圖進行1~180 °的Radon變換, 得到180列矩陣,矩陣中各列的值表示圖像在某個方向上沿一族直線積分所得的投影值。通過找到矩陣中的最大值所在的列,便可得到運動模糊角度。

圖4 倒頻譜Canny邊緣檢測
1.3.4 運動模糊尺度估計
在求解出運動模糊角度的基礎上,首先根據模糊角度將模糊圖像旋轉到水平方向后,再根據倒頻譜低幅值體現的模糊圖像特性,計算出對稱兩個負峰值之間的距離,負峰值間距離的1/2即為運動模糊尺度。設第一個負峰值點Cg(p1,q1)和第二個負峰值點Cg(p2,q2),則兩個負峰值之間的距離為
(10)
圖像的運動模糊尺度為
(11)
1.3.5 模糊參數估計實驗
選取分辨率為340×340的指針式儀表圖像,人工添加模糊角度與模糊長度以及均值為0,方差為0.002的高斯噪聲,分別用頻譜法與本文算法進行模糊參數估計,通過與真實值對比,驗證算法的有效性。模糊角度與模糊尺度估計的實驗結果分別如表1和表2所示,兩種算法的誤差效果比較如表3所示。

表1 模糊角度估計

表2 模糊尺度估計

表3 兩種算法效果比較
從實驗結果可以看出,本文算法估計的運動模糊角度平均誤差為0.46°,估計運動模糊尺度平均誤差為0.61像素,運動模糊角度估計誤差在2°以下,模糊尺度估計誤差在2像素以內,具有更高的模糊參數估計精度與穩定性。
估計出PSF參數后,本文采用維納濾波對運動模糊圖像進行復原,維納濾波以復原圖像(x,y)和原始圖像f(x,y)的均方誤差最小為原則進行圖像復原。誤差量的表達式如下
e2=E{(f(x,y)-(x,y))2}
(12)
式中E{·}為參數的期望值。維納濾波在頻率域中表示為
(13)
式中Sn(u,v)=|N(u,v)|2為噪聲的功率譜,Sf(u,v)=|F(u,v)|2為原始圖像的功率譜,Sn(u,v)/Sf(u,v)用常數K表示為
(14)
K取值范圍為0~1。對圖1(b)(模糊尺度為20像素,模糊角度為60°,高斯噪聲為0.002)進行維納濾波復原,分別取不同K值,直觀復原效果如圖5所示。可見,K值取0.01時復原效果最好,此時圖像峰值信噪比(peak signal to noise ratio,PSNR)最高,為21.765 6。

圖5 不同K值維納濾波復原效果對比
本文采用最大類間方差(OSTU)算法進行圖像分割,利用類別方差作為判據,能夠自適應確定圖像的全局最佳閾值,使前景與背景被錯誤分割的概率最小[14]。圖5(c) 二值化后結果如圖6(a)所示。對儀表圖像進行圖像細化(又稱為圖像骨架化)[15],以大大降低表盤及指針提取特征的難度。對二值化的儀表圖像進行形態學細化后如圖6(b)所示。

圖6 儀表表盤與指針檢測
本文通過Hough變換檢測圖像中表盤所在的圓,將圖像空間中的邊緣點映射到參數空間中,對在參數空間中獲得的所有坐標點對應的累加值進行累加統計,進而檢測出圓心的位置及圓的大小[16]。表盤檢測結果如圖6(c)所示。儀表指針檢測可通過Hough直線檢測實現,將圖像坐標系內經過一點的直線信息轉換為該直線法線在極坐標空間中的信息。指針檢測結果如圖6(d)所示。
檢測出表盤及指針后,可通過角度比例關系得到儀表的讀數
(15)
式中β為指針偏轉角度,βA為起始刻度的角度,βB為終止刻度的角度,T為儀表量程。
統計10組不同示數的產生運動模糊的儀表圖像,用本文算法進行儀表識別讀數,實驗結果如表4所示。

表4 儀表讀數實驗結果
1)提出一種圖像分塊結合Canny邊緣檢測、改進的模糊圖像PSF的模糊參數估計方法,并采用維納濾波實現圖像復原。
2)通過對儀表圖像進行二值化與圖像細化再處理,采用Hough變換實現儀表表盤及指針提取,并基于角度與量程信息完成自動讀數。
3)典型實驗結果表明:本文方法可以提高PSF參數估計的準確率,對運動模糊儀表圖像具有較高的識別精度。運動模糊角度估計誤差在2°以下,模糊尺度估計誤差在2像素以內;平均絕對誤差為0.007,最大誤差為0.02。