王彩峰 王妍力 王迎勛 王香 付海燕 范卉青
摘 要 隨著科學(xué)技術(shù)的發(fā)展,數(shù)字圖像處理影響著人們的生活。跟圖像相關(guān)的圖像修復(fù)也越來越重要。圖像修復(fù)標準可分為兩類,第一類是基于結(jié)構(gòu)的圖像修復(fù),第二類是基于紋理的圖像修復(fù)。文章主要介紹基于樣本的圖像修復(fù),以Criminisi算法為例。在MATLAB環(huán)境中用該方法來修復(fù)被損壞的圖像。然后對基于結(jié)構(gòu)和樣本的方法進行比較,還原度是有不同的。通過仿真可知基于樣本的Criminisi算法在圖像信息的還原上比結(jié)構(gòu)的還原效果要好。
關(guān)鍵詞 樣本;Criminisi算法;圖像修復(fù)
中圖分類號 TP3 文獻標識碼 A 文章編號 1674-6708(2018)208-0115-02
隨著人們對圖像質(zhì)量的要求越來越高和拍照技術(shù)的日益熟練,照片圖像修復(fù)的用處也越來越廣范[ 1 ]。近年來,圖像的保存方式也變得多種多樣,不再只是單一的紙張保存,也包括相機、MP3、照片、膠卷等各種媒介。圖像修復(fù)也越來越影響著人們的生活瑣事以及科學(xué)研究等。
圖像修復(fù)就是對損壞的圖像進行處理并把它的本來面貌還原的過程。圖像修復(fù)是一門關(guān)于圖像處理的重要課題。而對圖像修復(fù)效果良好的Criminisi算法是靠提取圖像的紋理特征進行信息匹配從而達到圖像修復(fù)的目的[ 2 ]。圖像修復(fù)技術(shù)屬于圖像復(fù)原的一部分研究內(nèi)容,是圖像處理的一個核心技術(shù)。該技術(shù)在老照片的修復(fù)、影視特技制作、數(shù)據(jù)壓縮、虛擬現(xiàn)實、多余物體剔除等許多領(lǐng)域都有著重大的應(yīng)用價值和應(yīng)用前景,并且圖像復(fù)原在太空、科學(xué)研究等領(lǐng)域具有非常大的用途。
1 圖像修復(fù)的原理
圖像修復(fù)技術(shù)的種類主要分為兩類:第一類是基于結(jié)構(gòu)的圖像修復(fù);第二類是基于紋理的圖像修復(fù)技術(shù)。最早提出的基于結(jié)構(gòu)的圖像復(fù)原技術(shù)是基于偏微分方程的圖像復(fù)原算法[3]。該修復(fù)算法主要有基于結(jié)構(gòu)的圖像修復(fù)、基于樣本的圖像修復(fù)。
基于樣本的圖像修復(fù)以Criminisi提出的criminisi算法最為核心,該算法在基于圖像的大小和紋理的基礎(chǔ)上,提出了這一按損壞區(qū)域的信息考慮函數(shù)優(yōu)先級的,進而對其修復(fù)的順序進行排序,并且依據(jù)破損區(qū)域的像素點找到在未損壞區(qū)域的像素與之信息相似的修復(fù)塊,最終用未損壞區(qū)域的信息匹配塊更新要修復(fù)的圖像信息并且持續(xù)幾次,直到整個圖像還原本來面貌。
從根本上來說,Criminisi算法是一種貪心算法,每次都以更新匹配到的最佳信息作為全局匹配信息。同時Criminisi的算法具體實現(xiàn)需要注意以下兩方面。
1)修復(fù)區(qū)域大小的選擇。
修復(fù)圖像的效果和速度與修復(fù)區(qū)域大小的選擇有一定的關(guān)系。當破損區(qū)域較大時,只需幾次選擇就能完成對破損區(qū)域的修復(fù),但該方法會造成很明顯的邊界紋理結(jié)構(gòu)塊。當選擇的修復(fù)區(qū)域較小時,圖像的紋理會保持一致,但容易出現(xiàn)區(qū)域效應(yīng),修復(fù)復(fù)雜度會增加。
2)優(yōu)先權(quán)的計算。
優(yōu)先權(quán)由置信度和數(shù)據(jù)項兩者組成。數(shù)據(jù)項中的數(shù)值可以通過使用不同的方法來得出。在本文中使用的是等參考線的方向。也就是說在匹配區(qū)域內(nèi)方向梯度最大的已知的信息點,即梯度的法線。但相對于計算梯度的值,我們通過差分計算方式來得出。依據(jù)這三種差分計算方式,可以知道在區(qū)域邊緣,只可以用前向差分方式或后向差分方式,而破損區(qū)域內(nèi)部,而用是中心差分公式(1)計算。
2 圖像修復(fù)的仿真
2.1 基于樣本的圖像修復(fù)
本文對Criminisi算法運行仿真分析。Criminisi算法的流程首先要輸入圖像確定待修復(fù)區(qū)域邊緣然后判斷區(qū)域是否為空,如果是則算法結(jié)束。如果否則計算邊緣像素的優(yōu)先權(quán),最大優(yōu)先權(quán)的目標塊最先修復(fù),然后找到與其信息匹配的匹配塊,再判斷兩個模塊內(nèi)對應(yīng)像素點差的平方和是否最小,即SSD是否最小,如果是最小則復(fù)制當前像素塊到待修復(fù)區(qū)域,最后更新邊緣,退出修復(fù)。
圖1為去除圖片中白色損壞線條的效果圖。從該仿真結(jié)果可以看出,Criminisi算法對于破損尺度較小的待修復(fù)區(qū)域的修復(fù)結(jié)果較好。
2.2 基于結(jié)構(gòu)和樣本的圖像修復(fù)的比較分析
為了驗證基于結(jié)構(gòu)的圖像修復(fù)和基于樣本的圖像修復(fù)在修復(fù)結(jié)果上的不同,所以特將同一受損的圖像用這兩種修復(fù)模型來修復(fù),如圖2所示。
從仿真結(jié)果來看,不管破損區(qū)域多小時,比如一點或筆畫的污損等,修復(fù)結(jié)果良好;破損區(qū)域面積較大時,比如去除多余目標,如圖1,Criminisi算法的修復(fù)效果理想,并且該算法可以明顯的去除不需要的目標。從圖2中最后的對比修復(fù)結(jié)果來看,Criminisi算法修復(fù)效果明顯優(yōu)于TV模型的修復(fù)效果。由此可見基于樣本的圖像修復(fù)無論是修復(fù)條件還是修復(fù)結(jié)果都是比較可靠的。
3 結(jié)論
圖像修復(fù)是將破損的區(qū)域還原如初使其圖像成為完整的圖像,圖像修復(fù)根據(jù)修復(fù)目的的不同而可以選擇不同的圖像修復(fù)模型,并且還原后跡象很淡使人靠肉眼觀察不出來。本文以TV模型為例來討論分析基于結(jié)構(gòu)的圖像修復(fù)技術(shù),但TV模型僅能修復(fù)損壞區(qū)域較小的圖像,對破損面積較大的區(qū)域則修復(fù)效果并不理想。基于紋理的圖像修復(fù)以Criminisi算法為主介紹該種圖像修復(fù)模型算法,該算法是一種貪心算法,它計算了每個修復(fù)塊的優(yōu)先級并確定其修復(fù)順序,具有較高優(yōu)先級的修復(fù)塊先得到修復(fù),這樣修復(fù)效果比較理想。并且對破損區(qū)域較大的修復(fù)塊也有好的修復(fù)效果。最后經(jīng)兩者的修復(fù)效果對比來看,基于樣本的Criminisi算法的修復(fù)效果優(yōu)于基于結(jié)構(gòu)的圖像修復(fù)。
參考文獻
[1]BERTALMIOM, SAPlROG CASELLESV, eta1. Image inpainting[C]. Proceedings of International Conference on Computer Graphics and Interactive Techniques[C]. New Orleans Louisiana USA, 2000,1: 417-424.
[2]Chan T, Shen J. Non-texture inpainting by curvature-driven diffusions (CDD). Journal of Visual Communication and Image Representation, 2001, 12(4): 436-449.
[3]CHANT F, KANGS H, SHENJ H. EulerS elastic and curvature based inpainting[J]. SIAM Journal ofApplied Mathematics, 2002, 63(2): 564-592.
[4]岡薩雷斯,等.數(shù)字圖像處理(MATLAB版)[M].北京:電子工業(yè)出版社,2005:123-133.