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