基于對(duì)稱樣本塊的圖像修復(fù)方法
【專利摘要】一種基于對(duì)稱樣本塊的圖像修復(fù)方法;過程包括對(duì)原破損圖像的預(yù)處理、破損區(qū)域的分割和破損區(qū)域修復(fù)。對(duì)原破損圖像進(jìn)行預(yù)處理包括:對(duì)圖像進(jìn)行高斯平滑、圖像灰度化處理;而后進(jìn)入破損區(qū)域分割與破損區(qū)域修復(fù);破損區(qū)域修復(fù)是一個(gè)反復(fù)循環(huán)的過程,包括獲得破損區(qū)域的邊界點(diǎn)、獲取破損區(qū)域邊界上優(yōu)先權(quán)最高的點(diǎn)和最先修復(fù)的破損塊,以及選擇搜索最佳對(duì)稱樣本塊方法;選擇搜索最佳對(duì)稱樣本塊方法包括任意方向搜索對(duì)稱樣本塊或者八方向?qū)ふ覍?duì)稱樣本塊兩種方法,兩種方法都包括更新破損塊的像素、更新破損區(qū)域的面積和判斷破損區(qū)域的面積是否為零,是,修復(fù)結(jié)束;否,回到獲得破損區(qū)域的邊界點(diǎn)重復(fù)循環(huán)。修復(fù)實(shí)驗(yàn)說明了本發(fā)明方法的有效性。
【專利說明】基于對(duì)稱樣本塊的圖像修復(fù)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)字圖像處理與數(shù)字圖像修復(fù)領(lǐng)域,具體涉及基于對(duì)稱樣本塊的圖像修復(fù)方法。
【背景技術(shù)】
[0002]自從2000年“圖像修復(fù)”概念引入數(shù)字圖像處理后,短短十多年,數(shù)字圖像修復(fù)得到廣泛的應(yīng)用,主要包括:古畫數(shù)字復(fù)原、恢復(fù)破損的照片和影片、圖像中的文字和對(duì)象移除等。所謂數(shù)字圖像修復(fù)就是對(duì)圖像上缺損區(qū)域進(jìn)行信息填充的過程,其目的就是為了對(duì)有缺損的圖像進(jìn)行恢復(fù),并且視覺上無法察覺到圖像曾經(jīng)缺損或已被修復(fù)的效果。圖像修復(fù)技術(shù)中,一類是基于偏微分方程的修復(fù)算法或者基于幾何圖像模型的變分修復(fù)技術(shù),利用待修補(bǔ)區(qū)域的邊緣信息,修復(fù)小尺度缺損問題。另一類是用于填充圖像中的大塊丟失信息的圖像補(bǔ)全技術(shù),包含兩種方法:一種是基于分解的方法,將圖像分解為結(jié)構(gòu)和紋理部分,其中結(jié)構(gòu)部分用圖像修復(fù)算法修復(fù),紋理部分用紋理合成的方法填充。還有一種是基于塊的紋理合成技術(shù)填充丟失的信息,它是從待修補(bǔ)區(qū)域邊界上選取一個(gè)像素點(diǎn),并以該點(diǎn)為中心,根據(jù)圖像的紋理特征,選取大小合適的紋理塊,然后在待修復(fù)塊的周圍尋找與之最相似的紋理匹配塊來代替。然而圖像修復(fù)仍然是一件困難的事情。
[0003]現(xiàn)有的數(shù)字圖像修復(fù)技術(shù)還不能有效修復(fù)大量的對(duì)稱圖像,如唐卡圖像、壁畫等,很多圖像有一定的對(duì)稱結(jié)構(gòu),圖像中一些關(guān)鍵塊的缺損,如一幅唐卡中釋迦摩尼佛的一邊耳部丟失,若僅利用該圖像中耳部周圍信息修復(fù),則無法得到所需要的結(jié)果。
【發(fā)明內(nèi)容】
[0004]為了利用被修復(fù)圖像中所具備的對(duì)稱信息,來修復(fù)破損區(qū)域,本發(fā)明提供一種基于對(duì)稱樣本塊的圖像修復(fù)方法,它是利用破損區(qū)域在圖像上某一對(duì)稱方向的信息填充破損區(qū)域的一種有效的數(shù)字化圖像修復(fù)方法。
[0005]為了實(shí)現(xiàn)本發(fā)明目的,本發(fā)明采取的技術(shù)方案為:一種基于對(duì)稱樣本塊的圖像修復(fù)方法,包括對(duì)原破損圖像進(jìn)行預(yù)處理、破損區(qū)域分割與破損區(qū)域修復(fù),具體步驟如下:
[0006]a.對(duì)原破損圖像進(jìn)行預(yù)處理
[0007]a.1對(duì)圖像進(jìn)行高斯平滑
[0008]因?yàn)楦咚蛊交瑢?duì)邊緣保持較好,通常用如下5X5或3X3的高斯平滑模板掩模圖像:
'1 4 7 4 1'
4 16 26 丨6 4[I 2 Γ
[0009]—X 7 26 41 26 7 —x 2 4 2
27316
4 16 26 16 412 I
I 4 7 4 1_
[0010]a.2圖像灰度化處理
[0011]采用平均值法將彩色圖像灰度化,即求出圖像每個(gè)像素點(diǎn)的R、G、B三個(gè)分量像素值的平均值,并生成其灰度圖像;
[0012]b.破損區(qū)域分割
[0013]常用的圖像分割方法包括閾值分割法、邊界分割法和區(qū)域增長法等分割方法;本發(fā)明采用區(qū)域增長的分割方法,其過程為:
[0014]b.1.采用人機(jī)交互的方法,在被修復(fù)圖像的破損區(qū)內(nèi)任意選取一點(diǎn)作為種子點(diǎn)坐標(biāo)(Xr, yr),并在灰度圖像上記錄下其像素值Pr(Xr,Yr);
[0015]b.2.創(chuàng)建與原圖同樣大小的一個(gè)二值模板圖像mask,將模板圖像mask中像素值pr(xr, yr)設(shè)為I,其余像素設(shè)置為O ;
[0016]b.3.在灰度圖像上通過算法1,得出模板圖像mask里像素值為I的點(diǎn)集合,就對(duì)應(yīng)原圖像的破損區(qū)域,也就是分割出了原圖像的破損區(qū)域;
[0017]算法I包括的步驟:
[0018](I)創(chuàng)建一個(gè)堆棧;
[0019](2)獲取種子點(diǎn)(xr, yr)及其像素值Pr (xr, yr);
[0020](3)以種子點(diǎn)(xr, yr)為中心,計(jì)算其像素值P1Xxr, yr)與八鄰域像素值Pi (Xi, y)之差,如果 Pr(XrJr)-Pi(XiJi) I <M,(i = 1,2,3,4,5,6,7,8),M 的取值根據(jù)實(shí)驗(yàn)確定,一般取10,并且mask相對(duì)應(yīng)位置上像素值為O時(shí),則將點(diǎn)(Xi,yi)壓入堆棧,mask相應(yīng)位置上的像素值設(shè)為I ;
[0021](4)判斷堆棧是否為空,如果不為空則從堆棧中取出一個(gè)像素,把它當(dāng)作點(diǎn)(Xr,y山轉(zhuǎn)回步驟(3),否則轉(zhuǎn)向步驟(5);
[0022](5)結(jié)束;
[0023]c.破損區(qū)域修復(fù)
[0024]c.1獲得破損區(qū)域的邊界點(diǎn)
[0025]c.1.1創(chuàng)建一個(gè)隊(duì)列,用來存儲(chǔ)破損區(qū)域邊界點(diǎn);
[0026]c.1.2獲得破損區(qū)域邊界點(diǎn):對(duì)二值模板圖像mask,其中像素值為I的區(qū)域?yàn)樵瓐D破損區(qū)域,遍歷整幅mask圖像,如果像素點(diǎn)的像素值為1,并且它八個(gè)相鄰像素值至少有一個(gè)是0,就將像素值為I的像素點(diǎn)存入隊(duì)列中,最后得到的隊(duì)列就是破損區(qū)域的邊界點(diǎn);
[0027]c.2獲取破損區(qū)域邊界上優(yōu)先權(quán)最高的點(diǎn)和最先修復(fù)的破損塊
[0028]圖2所示為邊界上優(yōu)先權(quán)最高點(diǎn)和最先修復(fù)的破損塊計(jì)算示意圖,I代表全圖,Ω表示破損區(qū)域,δ Ω表示破損區(qū)域Ω的邊界,Φ表示圖像未破損的部分,P表示破損區(qū)域邊界δ Ω上的點(diǎn),ηρ是點(diǎn)P處的單位法向量,V/p表示P點(diǎn)的等照線方向,Ψρ是邊界上以P點(diǎn)為中心、包含了 Ω內(nèi)的點(diǎn)和Φ內(nèi)點(diǎn)的破損塊;破損區(qū)域邊界上優(yōu)先權(quán)最高的點(diǎn)和以該點(diǎn)為中心的最先修復(fù)破損塊計(jì)算過程如下:
[0029]c.2.1計(jì)算邊界上點(diǎn)P的優(yōu)先權(quán),由式⑴計(jì)算,
[0030]P(p) = C(p)D(p) (I)
[0031]式⑴中:C(p)表示P點(diǎn)的置信因子,D(p)表示P點(diǎn)的數(shù)據(jù)因子,C(p)由式(2)計(jì)算,
【權(quán)利要求】
1.一種基于對(duì)稱樣本塊的圖像修復(fù)方法,其特征在于包括對(duì)原破損圖像進(jìn)行預(yù)處理、破損區(qū)域分割與破損區(qū)域修復(fù),具體步驟如下: a.對(duì)原破損圖像進(jìn)行預(yù)處理 a.1對(duì)圖像進(jìn)行高斯平滑 用如下5X5或3X3的高斯平滑模板掩模圖像:
a.2圖像灰度化處理 采用平均值法將彩色圖像灰度化,即求出圖像每個(gè)像素點(diǎn)的R、G、B三個(gè)分量像素值的平均值,并生成其灰度圖像; b.破損區(qū)域分割 采用區(qū)域增長的分割方法,其過程為: b.1.采用人機(jī)交互的方法,在被修復(fù)圖像的破損區(qū)內(nèi)任意選取一點(diǎn)作為種子點(diǎn)坐標(biāo)(xr, yr),并在灰度圖像上記錄下其像素值PrUr,yr); b.2.創(chuàng)建與原圖同樣大小的一個(gè)二值模板圖像mask,將模板圖像mask中像素值Pr (xr, yr)設(shè)為I,其余像素設(shè)置為O ; b.3.在灰度圖像上通過算法1,得出模板圖像mask里像素值為I的點(diǎn)集合,就對(duì)應(yīng)原圖像的破損區(qū)域,也就是分割出了原圖像的破損區(qū)域;算法I包括步驟:(1)創(chuàng)建一個(gè)堆棧; (2)獲取種子點(diǎn)(XmL)及其像素值; (3)以種子點(diǎn)(X^r)為中心,計(jì)算其像素值Pr(X^r)與八鄰域像素值PiUi, Yi)之差,如果 I Pr (xr, yr) -Pi (Xi, Yi) I < M, (i = I, 2,3,4,5,6,7,8), M 的取值根據(jù)實(shí)驗(yàn)確定,一般取.10,并且mask相對(duì)應(yīng)位置上像素值為O時(shí),則將點(diǎn)(Xi, Yi)壓入堆棧,mask相應(yīng)位置上的像素值設(shè)為I ; (4)判斷堆棧是否為空,如果不為空則從堆棧中取出一個(gè)像素,把它當(dāng)作點(diǎn)(?轉(zhuǎn)回步驟(3),否則轉(zhuǎn)向步驟(5); (5)結(jié)束; c.破損區(qū)域修復(fù) c.1獲得破損區(qū)域的邊界點(diǎn) C.1.1創(chuàng)建一個(gè)隊(duì)列,用來存儲(chǔ)破損區(qū)域邊界點(diǎn); c.1.2獲得破損區(qū)域邊界點(diǎn):對(duì)二值模板圖像mask,其中像素值為I的區(qū)域?yàn)樵瓐D破損區(qū)域,遍歷整幅mask圖像,如果像素點(diǎn)的像素值為I,并且它八個(gè)相鄰像素值至少有一個(gè)是.0,就將像素值為I的像素點(diǎn)存入隊(duì)列中,最后得到的隊(duì)列就是破損區(qū)域的邊界點(diǎn);c.2獲取破損區(qū)域邊界上優(yōu)先權(quán)最高的點(diǎn)和最先修復(fù)的破損塊I代表全圖,Ω表示破損區(qū)域,δ Ω表示破損區(qū)域Ω的邊界,Φ表示圖像未破損的部分,P表示破損區(qū)域邊界δ Ω上的點(diǎn),ηρ是點(diǎn)P處的單位法向量,▽/,!表示P點(diǎn)的等照線方向,Ψρ是邊界上以P點(diǎn)為中心、包含了 Ω內(nèi)的點(diǎn)和Φ內(nèi)點(diǎn)的破損塊;破損區(qū)域邊界上優(yōu)先權(quán)最高的點(diǎn)和以該點(diǎn)為中心的最先修復(fù)破損塊計(jì)算過程如下:c.2.1計(jì)算邊界上點(diǎn)P的優(yōu)先權(quán),由式(I)計(jì)算, P(p)=C(p)D(p) (I) 式⑴中:C(p)表示P點(diǎn)的置信因子,D(p)表示P點(diǎn)的數(shù)據(jù)因子,C(p)由式⑵計(jì)算,
式⑵中:I Ψρ|是ψρ的面積,圖像中所有點(diǎn)的置信因子按照式(3)初始化,
式⑴中D(P)通過式(4)計(jì)算,
其中α是歸一化因子,是圖像灰度級(jí)的最大值; c.2.2計(jì)算邊界上所有點(diǎn)的優(yōu)先權(quán),并比較值的大小從而獲得優(yōu)先權(quán)最高的點(diǎn),記為Po ; c.2.3獲取以Ptl為中心的最先修復(fù)的塊Ψρα,這個(gè)塊Ψρ。的大小根據(jù)破損區(qū)域周圍的紋理結(jié)構(gòu),選擇與紋理結(jié)構(gòu)大小相當(dāng)?shù)膲K,采用人機(jī)交互的方式,塊的邊長是3到99之間的奇數(shù),即3X3到99X99大小的塊;而后進(jìn)入步驟c.3;如果圖像具有左右、上下、右上與左下、左上與右下的八方向?qū)ΨQ的情況之一,選擇基于八方向的對(duì)稱樣本塊修復(fù)方法,否則選擇在任意方向搜索對(duì)稱樣本塊的修復(fù)方法; c.3在任意方向搜索最佳對(duì)稱樣本塊或者在八方向?qū)ふ易罴褜?duì)稱樣本塊的圖像修復(fù) c.3.1在任意方向?qū)ふ易罴褜?duì)稱樣本塊 c.3.1.1在1-Ω中以任意點(diǎn)P1為中心的樣本塊xFp1的選取 Po是最先修復(fù)塊的中心點(diǎn),P1是待尋找樣本塊的中心點(diǎn),獲得P1和P。連線與水平方向夾角Θ,利用式(5)獲得P1旋轉(zhuǎn)到與Ptl同一水平線位置上P2的坐標(biāo):
式(5)中:X0、X1和X2分別是Po、P1和p2的橫坐標(biāo),y0> Y1和I2分別是Po、P1和P2的縱坐標(biāo); 獲得以P2為中心、大小與相同并與Ψρο成水平對(duì)稱的樣本塊以3X3為例,破損塊與樣本塊的對(duì)應(yīng)關(guān)系如圖4與圖5所示,圖4是破損塊Ψιν圖5表示的水平對(duì)稱樣本塊Ψρ2,其中數(shù)字表示兩個(gè)塊對(duì)稱位置;再利用式(6)獲得樣本塊Ψρ2反方向旋轉(zhuǎn)Θ角的位置:
式(6)中:(x,y)表示反向旋轉(zhuǎn)之前中任意點(diǎn)的坐標(biāo),(X’,y’ )表;」旋轉(zhuǎn)Θ角后的Ψ/,中對(duì)應(yīng)點(diǎn)的坐標(biāo);Ψρ2旋轉(zhuǎn)后,與點(diǎn)的對(duì)應(yīng)關(guān)系和與Ψ〃υ的對(duì)應(yīng)關(guān)系相向,即得到以P1為中心的對(duì)稱樣本塊; c.3.1.2在1-Ω搜索Ψρ。的最佳對(duì)稱樣本塊,由式(7)計(jì)算,
式(7)中:Ψ#表示最佳對(duì)稱樣本塊,Ψ&是以P1為中心的樣本塊,成HY1)表示最先待修復(fù)塊^。與對(duì)稱樣本塊xIV1之間的相似性度量,用式(8)計(jì)算,
式(8)中:xu表示Ψρ。中點(diǎn)的像素值,yu表示xIV1中點(diǎn)的像素值,塊的大小決定m的值,若選擇塊的大小為3X 3,則m的值為3 ; c.3.1.3破損塊的更新 c.3.1.3.1按照?qǐng)D4與圖5中的對(duì)應(yīng)關(guān)系,將破損塊4\,中的破損像素值用最佳對(duì)稱樣本塊Ψ多中的對(duì)應(yīng)像素值替換; c.3.1.3.2更新上一步填充像素點(diǎn)的置信因子,由式(9)計(jì)算, C(p) = C(p) Vpe^pnQ (9) 同時(shí)將原破損圖像填充點(diǎn)位置上mask里對(duì)應(yīng)點(diǎn)的像素值更新為O ;c.3.1.4更新破損區(qū)域的面積,即計(jì)算填充后破損區(qū)域內(nèi)的像素?cái)?shù)每填充一次后要重新計(jì)算破損區(qū)域的面積,即統(tǒng)計(jì)填充后破損區(qū)域的像素個(gè)數(shù),以便判斷修復(fù)過程是否結(jié)束;如果破損區(qū)域面積為零則修復(fù)完成,否則重復(fù)做步驟c.1、步驟c.2和步驟c.3.1 ; c.3.2在八方向?qū)ふ易罴褜?duì)稱樣本塊 八個(gè)箭頭表示以P為中心的破損塊Ψρ的八個(gè)方向,從這八個(gè)方向?qū)ふ覍?duì)稱樣本塊,每個(gè)方向都找出一個(gè)對(duì)稱相似樣本塊,再從其中找出最佳的對(duì)稱樣本塊,是Ψρ的最佳對(duì)稱樣本塊;計(jì)算步驟如下: c.3.2.1在八個(gè)方向?qū)ふ蚁嗨茖?duì)稱樣本塊 從八個(gè)方向找到對(duì)稱相似樣本塊叫,(i=l,2,3,4,5,6,7,8)由式(10)計(jì)算: Wqi =Mgmndi(xVp^Vqi) (i = 1,2,3,4,5,6,7,8) (10) 式(10)中:表示的相似度量,下標(biāo)1、2、3、4、5、6、7和8分別表示左、左上、上、右上、右、右下、下、左下方向;1、2、3和4四個(gè)方向的對(duì)稱相似度量用式(11)計(jì)算,5、6、7和8四個(gè)方向的對(duì)稱相似度量用式(12)計(jì)算:
式(11)、(12)中=Xij表示ψρ中點(diǎn)的像素值,yij表示H%X々=1,2,3,4,5,6,7,8)中點(diǎn)的像素值; C.3.2.2最佳對(duì)稱樣本塊的計(jì)算 從八個(gè)對(duì)稱相似樣本塊中尋找最佳相似對(duì)稱樣本塊,根據(jù)式(13)計(jì)算:
C.3.2.3更新破損塊的破損像素 c.3.2.3.1按照下述的規(guī)則用Ψ,中的像素值更新Ψρ中破損像素點(diǎn),當(dāng)像素點(diǎn)在Ψρ中的掃描順序是從左到右、從上到下時(shí),相對(duì)應(yīng)的Ψ,中的掃描順序?yàn)?當(dāng)最佳對(duì)稱樣本塊所在的方向是I或5時(shí),則最佳對(duì)稱樣本塊內(nèi)像素點(diǎn)掃描順序是從右到左、從上到下;當(dāng)最佳對(duì)稱樣本塊所在的方向是2或6時(shí),則最佳對(duì)稱樣本塊內(nèi)像素點(diǎn)掃描順序是從下到上、從右到左;當(dāng)最佳對(duì)稱樣本塊所在的方向是3或7時(shí),則最佳對(duì)稱樣本塊內(nèi)像素點(diǎn)掃描順序是從左到右、從下到上;當(dāng)最佳對(duì)稱樣本塊所在的方向是4或8時(shí),則最佳對(duì)稱樣本塊內(nèi)像素點(diǎn)掃描順序是從上到下、從左到右;并將Ψρ中破損像素點(diǎn)用Ψ,中對(duì)應(yīng)的像素值填充;以塊大小3X3為例,最佳樣本塊在左方向時(shí),圖7描述了破損塊像素更新的過程,其中a表不破損塊Ψρ,?3表不最佳對(duì)稱樣本塊Wq,a、b中的數(shù)字表不掃描順序,數(shù)字相同表不相對(duì)應(yīng)的像素點(diǎn),如果Ψρ中4屬于破損像素,就用Ψ,中位置4的像素值填充; c.3.2.3.2更新上一步填充像素點(diǎn)的置信因子,由式(9)計(jì)算;同時(shí)將圖像填充點(diǎn)位置上mask里對(duì)應(yīng)點(diǎn)的像素值更新為O ;c.3.2.4更新破損區(qū)域的面積,如果破損區(qū)域面積為零則修復(fù)完成,否則重復(fù)做步驟c.1、步驟c.2和步驟c.3.2。
2.如權(quán)利要求1所述的一種基于對(duì)稱樣本塊的圖像修復(fù)方法,其特征在于步驟c.2.3中,選擇9X9、11X11到33X33的塊。
【文檔編號(hào)】G06T5/00GK104200444SQ201410498115
【公開日】2014年12月10日 申請(qǐng)日期:2014年9月25日 優(yōu)先權(quán)日:2014年9月25日
【發(fā)明者】王維蘭, 賈艷軍 申請(qǐng)人:西北民族大學(xué)