趙恒軍,牛艷霞
(1.河南工程學院 數(shù)理科學系,河南 鄭州451191;2.中原工學院 理學院,河南 鄭州 450007)
數(shù)字圖像修補近年來已經(jīng)成為數(shù)字圖像處理的研究熱點之一.圖像修補技術是針對圖像中遺失或者損壞的部分,利用未被損壞圖像的信息,按照一定的規(guī)則填補,使修補后的圖像接近或達到原圖的視覺效果.圖像修補的建模過程一般依賴于Helmholtz最佳猜測原理[1].但從數(shù)字角度來看,圖像修補是一個病態(tài)問題,因為沒有足夠的信息可以保證能唯一正確地恢復被損壞區(qū)域,所以圖像修補絕不是簡單的圖像插值問題.人們從視覺心理學角度進行分析,提出了各種假設限定來解決這個問題.Bertalmio,Sapiro,Caselles Balleste在文獻[2]中首先將數(shù)字圖像修補作為一個研究課題正式提出來.目前所出現(xiàn)的圖像修補方法主要有非線性濾波方法,貝葉斯方法,小波和譜分析方法以及主要基于紋理突襲的學習生長方法和統(tǒng)計方法.除了上述提到的經(jīng)典方法外,近年來很多研究人員將偏微分方程模型和變分模型用于圖像修補研究.
用變分和偏微分方程方法處理圖像使得能夠在連續(xù)域中分析圖像,從而簡化問題,否則只能依賴點陣和各向同性算子分析圖像.在連續(xù)域中,可以將偏微分方程看作是在無限小鄰域內(nèi)迭代的局部濾波器,利用對偏微分方程的這種解釋,可以將許多已知的迭代濾波器聯(lián)合并分類,從而推出新的基于偏微分方程的圖像修補模型.變分和偏微分方程方法的另一個優(yōu)點是能夠利用數(shù)值偏微分方程獲得快速、準確、穩(wěn)定的解.
圖像處理中的一些重要的偏微分方程大多和熱方程以及擴散強度相聯(lián)系,并且可以利用各種算子建立相應的偏微分方程,比如可以從演化方程(如經(jīng)典Snake模型[3])的導數(shù)中得到,也可以從求解變分問題中獲得,此時的基本思想是最小能量化泛函.
大量用于圖像處理的偏微分方程都是根據(jù)最小能量化泛函得到的,下邊先介紹一個關于變分法的經(jīng)典結果.
給定一個一維函數(shù)u(x)∶[0,1]→R,并且有邊界條件:u(0)=a,u(1)=b,這里又給定另一個函數(shù)F∶R2→R.定義能量模E:
此時的問題是:求使該能量模最小的u的取值.
根據(jù)微積分知識,可以得到:
(1)
該式是能量函數(shù)E(u)取得極值的必要條件,此即為一維變分問題的歐拉方程.
類似地,對于能量形式:
也可以得到其歐拉方程:
(2)
同樣,可得到二維問題的歐拉方程:給定二維函數(shù)u(x,y)∶Ω→R, Ω∈R2,以及其能量函數(shù)E,這里:
則其歐拉方程為:
(3)
例如,設F=ρ(|u|), 這里ρ(r)∶R→R是給定的函數(shù),u是u的梯度.即:
則其歐拉方程為:
即:
(4)
對于特殊情形ρ(r)=r2,因為ρ′(r)=2r,則此時(4)式即為div(u),即 △u=0,這里△表示拉普拉斯算子.
由以上可知, 根據(jù)最小化能量泛函的思想可以得到其歐拉方程,而此歐拉方程即為能量泛函取得最小值的必要條件.現(xiàn)在的問題是如何求出該歐拉方程的解,也就是如何去求解方程E′(u)=0,從而求得使能量泛函E(u)取得最小值時的u的取值.
對于如何求解該方程,一般情況下直接求解是很困難的,甚至可以說是不可能的.現(xiàn)在給出一個比較可行的求解歐拉方程的技巧.
不過在利用這種技巧前,常常需要解決一些問題.例如,這個偏微分方程的解是否唯一?它的解是否依賴于初值條件?當然,在能量非凸的情況下,這個解將會很大程度地地依賴于初值u0.
總之,基于偏微分方程的圖像修補可以看做是這樣一個過程:根據(jù)圖像修補模型(建立的能量泛函),可以得到其歐拉方程,再把該歐拉方程所對應的梯度下降流作用于需要修補的圖像(稱它為初始圖像u0),此時梯度下降流即為圖像修補方程,隨著時間參數(shù)的增長,圖像會一步步地被修補,當偏微分方程的解穩(wěn)定時的解就是修補后的圖像.
記D為待修補區(qū)域,E為待修補區(qū)域的外鄰域,一般為環(huán)狀,如圖1所示.
圖1 待修補區(qū)域及其外鄰域Fig.1 Being patched region and its outer neighborhood
記修補前E∪D區(qū)域內(nèi)的圖像值為u0,修補后E∪D區(qū)域內(nèi)的圖像值為u.
光滑的圖像修補模型為:
(5)
該圖像修補模型的幾何意義是:在修補的圖像中,使沿各水平線的梯度積分最小,所以趨向于得到光滑圖像,即該修補模型是為了使待修補區(qū)域及其邊界盡可能的光滑.
由以上介紹的變分問題的歐拉方程的知識可知,該模型的歐拉方程為:△u=0,其對應的梯度下降流(即圖像修補方程)為:
(6)
該方程是一個各向異性的擴散方程,擴散強度的大小依賴于各點的梯度,即等水平線的強度變化,而不依賴其他幾何信息.
設(i,j)為目標像素,時間層n=0,1,2…,則un(i,j)表示像素(i,j)在時間層n處的灰度值,uxx(i,j)表示(i,j)處對x的二階偏導數(shù).那么,該圖像修補方程離散化后為:
(7)
最終的算法步驟如下:
先將待修補圖像各像素點的灰度值讀取出來,判斷哪些是待修補區(qū)域,哪些是非修補區(qū)域.將待修補區(qū)域內(nèi)的像素點記為0,非修補區(qū)域內(nèi)的像素點記為1,再對待修補圖像中的像素點逐一進行判斷,如果當前像素點的標記為0,就將該點的灰度值按(7)中的第一式進行迭代;如果當前像素點的標記為1,就將該點的灰度值按(7)中的第二式進行迭代,這樣就更新了待修補圖像各像素點的灰度值.設定N及δ>0,當?shù)鶱次后,計算前后兩次迭代的圖像距離差,設新舊兩幅圖像分別為u和v,將新舊兩幅圖像的距離差定義為:
若距離差小于δ,則停止迭代;若距離差大于δ,則增大迭代次數(shù)N,繼續(xù)進行迭代.當前的迭代結果即為修補后圖像.
圖2是用光滑模型對圖像修補前后的對比.
圖2 修補前后圖像對比Fig.2 The comparison of the primal image and the patched image
本文基于偏微分方程方法建立了一個光滑圖像修補模型,利用該模型修補圖像的過程中,使沿各水平線的梯度積分最小,也即是使待修補區(qū)域及其邊界盡可能光滑,趨向于得到光滑圖像.從試驗的結果也可以看到,該光滑修補模型使修補后的圖像光滑,具有良好的修補效果.但此方法的不足之處是,若修補區(qū)域在邊緣處時,這種模型的修補結果就模糊了邊緣,使得修補的痕跡較為明顯,這是有待繼續(xù)改進的地方.
參考文獻:
[1] GEMAN S,GERMAN D. Stochastic relaxation, Gibbs distribution and the Bayesian restoration images[M]. IEEE Tran PAMI-616,1984.
[2] BERTALMIO M,MASELLES G D,BALLESTER C. Image inpainting. proceedings of the 27th international conference on computer graphics and interactive techniques(SIGGRAPH 2000)[M]. New Orleans, LA,ACM Press, New York, 2000.
[3] GOLDENBERG R, KIMMEL R, RUDZSKY M. Fast geodestic active contour[J]. IEEE Transactions on Image Processing, 2001, 10(10):1 467-1 475.