秦運柏, 徐汶菊, 朱 君
(廣西師范大學 電子工程學院, 廣西 桂林 541004)
激光光斑圖像[1]因為各種干擾,眼睛不能精確對其定位。借助物理手段可以比較精確地找到光斑的中心點,但費時費力,而且對物理器材的要求精準度很高。用軟件實現定位算法相對速率更快[2],精準度比較高[3-5]。在最小二乘原理[6]的基礎上,孔兵等2人提出了圓擬合算法[7],該算法可以在干擾很小的情況下對光斑中心進行較高精度的定位,還可以檢測出半徑大小。所以該算法不僅具有很快的計算速度, 而且具有很高的可操作性和實時性,但是在實際使用中對光斑圖像的質量要求比較高。吳澤楷等[8]提出了一種基于改進圓擬合算法的激光光斑檢測算法,該算法定位光斑中心雖然有很高的精度,但要經過多次迭代,需要的時間比較多。Chan等[4]提出了TV(total variation)修復算法的雛形,并與其他修復算法相比,TV修復實現較為簡單,能很好地修復圖像的局部模糊。在傳統的圓擬合激光光斑中心定位算法上其精度有一定的提高,但是卻限制了在實際測量中在噪聲干擾下的圓擬合算法的計算。
本文在傳統圓擬合算法[7-10]的基礎上做了改進。首先,光斑圖像通過預處理[11]去掉日常因素的干擾,再通過改進的TV濾波算法進行較好的濾波去噪,最后通過圓擬合算法進行精確定位。
在圓擬合算法中,最為經典的就是有利于最小二乘法對光斑的邊界點的坐標進行擬合,能更大程度地模擬激光光斑輪廓。
圓的標準方程為
(x-a)2+(y-b)2=r2
(1)
取殘差εi為
εi=(xi-a)2+(yi-b)2-r2
(2)
式中,i∈E,E為光斑圖像所有邊界點的集合;(xi,yi)為光斑圖像所有邊界點的坐標。
由此可得殘差平方和函數Q為
(3)

(4)
(5)
(6)
其中各參數可用下式表示:
(7)
式中I為集合。化簡整理有:
(8)
(9)
由上可推得參數a、b、r的表達式:
(10)
(11)
(12)
雖然圓擬合算法在計算光斑中心坐標的過程中很復雜,但是對光斑圖像的邊界點只循環計算1次,就可以得出它的各個參數值,包括光斑中心點的坐標和光斑的半徑,所以整個計算過程還是很快的。
Chan和Shen在2002年提出了基于TV修復算法的雛形[12]描述如下:通常在一個完全的圖像區域x=(x1,x2)∈Ω上定義了一個理想的圖像u0=u0(x)。但是,由于其他因素,其圖像采集、傳輸并不是完美的,其子集D?Ω,代表了D上的圖像信息缺失。令E=Dc=Ω/D,如圖1所示。

圖1 區域Ω示意圖
則定義修復函數為

(13)
且滿足噪聲約束:
(14)
其中, 外鄰域面積就是A(E),高斯白噪聲就存在陰影內的圖像內;u為圖像;σ2為白噪聲的標準方差;r為非負的實函數。
可尋找一個適合的函數r,來獲得圖像邊緣的處理的良好效果。在邊緣上,u是一個沖擊函數δ,因而要求函數r有限,即:

(15)
若函數r(s)展開,可獲得其形式:
r(s)=sa+低階展開項(S為總迭代次數)
(16)
式(15)要求s→時r(s)有限,因此a≤1。選取a=1,此時TV修復技術的模型就是公式(13)。把Lagrange乘子應用到公式(13)可得新的函數為
(17)
式中,λ為拉格朗日待定系數。
根據Euler-Lagrange方程,若Jλ(u)有最小的u,必有:
-
(18)
其中:

相對應的最速下降方程為
(19)
(20)
-
(21)

在圖像里去掉高斯白噪聲,由(20)式有
(22)
即為TV模型的圖像修復基本公式。

用下面的迭代公式替換原來的迭代公式:
最終算法步驟如圖2。

圖2 TV修復算法流程圖
在迭代初期,選用較大α值,以確保邊界信息可以充分擴散,然后在使用當前α值迭代至收斂時,逐步減小α值,使邊界有較好的修復效果。
(1) 讀取整個區域的圖像信息;
(2) 令α=5;
(3) 對Ω區域內的每個像素,按照(13)、(14)、(15)、(22)公式的順序進行迭代,更新每個像素值,當圖像更新值與原值的差值d小于閾值c時停止當前迭代,進入下一個循環;
(4) 令α=α/5,重復第3步驟。在經過4輪不同α值的循環后,當當圖像更新值與原值的差值a小于閾值y或總的迭代次數超過迭代上限(2 500次)時停止迭代;
(5) 最終的迭代結果即為修復結果。
本文的改進方案是在圓擬合的基礎上進行改進的,并結合了傳統的TV濾波原理,在圓擬合算法之前先對圖像進行預處理。改進方案的算法流程見圖3。

圖3 改進方案的算法流程
預處理用于隨機噪聲的影響,二值化分割用于凸顯光斑輪廓,濾波去噪進一步減弱圖像中的噪聲影響,然后圓擬合對光斑進行中心定位。該算法經過多次迭代提高了光斑坐標的精確度。
若一個白噪聲n(k)是高斯的,那么其所有的有限邊界分布是高斯的。日常圖像處理中,最為平常不過的就是帶有高斯分布的噪聲。故本文加入的噪聲類型就是高斯白噪聲。
為了驗證本文所采用的濾波方法的有效性,本文在Matlab2010上應用自適應TV修復技術的方式對加入高斯白噪聲的同一副光斑圖像進行濾波測試。對比了幾種濾波效果,有自適應TV修復技術、中值濾波(median filtering,MF)、均值濾波(averge filtering, VF)的比較,結果見圖4。
從實驗結果可以看出,當對被污染圖像進行濾波時,中值濾波和均值濾波輸出圖像的光斑邊緣開始模糊,并且出現了大量斑點,而且輪廓模糊,表明它們對被高斯白噪聲污染的圖像的濾波效果不夠理想; 而采用本文濾波算法對光斑圖像進行濾波,能有效地抑制光斑圖像的噪聲,同時還能較為有效地保留圖像邊緣細節,效果良好。

圖4 濾波效果比較
本文算法的核心在于先對光斑圖像濾波,然后進行圓擬合,最后計算光斑中心。采用Matlab進行實驗,可以對比計算出來的點中心坐標和原圖中心的坐標,從而可知定位光斑中心精度。
圖5是通過圓擬合法對圖4的一系列光斑進行圓擬合的效果圖。表1給出了利用圓擬合算法結合改進TV濾波方法進行中心定位的誤差,可以看到自適應TV修復技術提供了更為準確的中心坐標。實際上,平常對于光斑圖像的采集都是附帶有干擾和噪聲,用常見的濾波算法(如均值濾波和中值濾波)來操作光斑圖像必然會產生過大的誤差。這也是本文采用自適應的TV修復技術進行濾波的原因。

圖5 圓擬合效果
本文通過采集一組大小約為 300像素×400像素的光斑圖像 ,并對這組光斑圖像進行編號為1、2、3、4、5。這組圖像是具有相似形狀 、灰度值和中心位置的光斑,然后它們被加入高斯白噪聲,并被改進的自適應TV濾波算法進行濾波,最后被圓擬合算法進行中心定位。可以對比計算出來的點中心坐標和原圖中心的坐標,從而可知定位光斑中心精度,結果見表1。

表1 對TV濾波方法圖像進行中心定位的誤差 像素
從表1的數據可以看出,在光斑夾雜噪聲的情況下,光斑中心橫坐標誤差小于2個像素,而縱坐標誤差在1個像素之內,這說明本文的算法具有較高的精度。
均值濾波和中值濾波等雖然簡單明了、運算快,但是這些傳統的濾波算法適用的范圍過窄,只在少量噪聲的光斑圖像中才會凸顯傳統濾波算法的優勢,如果光斑圖像帶有大量的噪聲和干擾,則測出的光斑中心坐標誤差較大。自適應TV濾波對實際光斑的濾波效果更好,該算法結合圓擬合能取得較高的坐標精度,在有噪聲情況下本文算法的定位誤差在2個像素內,說明本文算法在實際應用過程中具有更強的抗干擾能力。
參考文獻(References)
[1] Lu Z W, Liu X Y, Wang X, et al. High-precision small-scale laser focal spot measurements[J]. Laser & Particle Beams, 2013, 31(1):177-183.
[2] 談凱德, 楊晶東, 薛皓天. 一種有效的激光光斑中心檢測算法研究[J]. 控制工程, 2016,23(11):1813-1819.
[3] 黃浩, 詹玲. 一種光斑中心定位算法的研究與實現 [J ]. 小型微型計算機系統 ,2005,26(7):22-26.
[4] 魏振忠, 高明, 張廣軍,等. 一種光斑圖像中心的亞像素提取方法[J]. 光電工程, 2009,36(7):7-12.
[5] 王麗麗,胡中文, 季杭馨. 基于高斯擬合的激光光斑中心定位算法[J]. 應用光學, 2012, 33(5):985-990.
[6] 陳明逵, 凌永祥. 計算方法( 工程類) [ M]. 西安: 西安交通大學出版社, 1992.
[7] 孔兵, 王昭, 譚玉山. 基于圓擬合的激光光斑中心檢測算法[J]. 紅外與激光工程, 2002, 31(3):275-279.
[8] 吳澤楷, 李恭強, 王文濤,等. 基于改進圓擬合算法的激光光斑中心檢測[J]. 激光與紅外, 2016, 46(3):346-350.
[9] Chan T F, Shen J. Mathematical models for local nontexture inpaintings[J]. Siam J Appl Math,2002,62:1019-1043.
[10] 穆娟. 利用圓擬合進行激光光斑中心檢測[J]. 艦船科學技術, 2016(24):127-129.
[11] 張艷玲, 劉桂雄, 曹東,等. 數學形態學的基本算法及在圖像預處理中應用[J]. 科學技術與工程, 2007, 7(3):356-359.
[12] Kenneth R Caslteman.數字圖像處理[ M].阮秋琦,譯.2版. 北京: 電子工業出版社, 2003.