曹齊 湯汶 朱耀麟



摘要:圖像修復技術在圖像處理中有著非常重要的作用,它在圖像拼接,圖像編輯和目標移除等方面有著廣泛的應用。針對原始Criminisi算法中圖像修復之后出現圖像修復效果不佳的問題提出了一種改進的Criminisi算法。改進算法針對原始Criminisi算法中修復塊大小固定,提出一種利用峰值信噪比來尋找最佳修復塊。通過大量實驗驗證,改進的算法能夠有效解決圖像修復中的連續性問題,提高修復的質量與效率。
關鍵詞: 圖像修復; Criminisi算法; 目標移除; 最佳修復塊; 峰值信噪比
中圖分類號:TP391? ? ? ? 文獻標識碼:A? ? ? ? 文章編號:1009-3044(2019)02-0160-03
An Improved Criminisi Repair Algorithm for Matched Blocks
CAO Qi1, TANG Wen1,2, ZHU Yao-lin1
(1. Xi'an Polytechnic University , Xi'an 710600, China;? 2. Bournemouth University, UK)
Abstract:Image restoration technology plays a very important role in image processing. It has a wide range of applications in image mosaic, image editing and object removal. An improved Criminisi algorithm is proposed to solve the problem of poor image restoration effect after image restoration in the original Criminisi algorithm. Aiming at the fixed size of the repair block in the original Criminisi algorithm, the improved algorithm proposes a peak signal-to-noise ratio (PSNR) to find the best repair block. Experiments show that the improved algorithm can effectively solve the continuity problem in image restoration and improve the quality and efficiency of image restoration.
Key words:image restoration; criminisi algorithm; object removal; best repair block; peak signal-to-noise ratio
圖像修復[1]是基于圖像中完整信息還原圖像中缺失部分。圖像修復的方法可分為兩類:基于結構的圖像修復技術和是基于樣本塊匹配的紋理合成技術。
基于結構的圖像修復技術是利用偏微分方程(partial differential equation,PDE)[2]核心思想是利用待修復區域的邊緣信息來確定擴散信息和方向,從區域邊界各向異性的向邊界內擴散。Bertalmio等[3]提出將圖像用作具有不同基本特征的兩個函數的組合,提出了具有相應值填充算法的重構函數。Shen等[4]提出了總體變差(TV)模型和曲率推動擴散模型(CDD)。基于結構的圖像修復技術用于修復破損區域較小的圖像。
基于樣本塊的紋理合成技術在2004年由Criminisi等[5]提出,是一種修復大區域破損圖像的經典算法。針對Criminisi算法中優先權的計算方式不合理問題,池悅[6]等在置信度中引入指數,李愛菊[7]等在優先權公式中增重了數據項的占比,張申華[8]等在數據項中加入曲率和梯度來改進優先權的計算方式。Criminisi算法中修復塊的大小是固定的,汪方正等[9]根據圖像區域紋理結構信息自適應改變模板塊的尺寸。Criminisi算法中搜索方式是全局搜索會占用較長時間,李尊等[10]采用蝙蝠算法進行最佳模塊搜索。Criminisi算法中待修復區域由人為主觀確定,李尊等[11]用腐蝕和膨脹算子對待修復區域邊緣進行處理,減少錯誤信息的累積。劉奎等[12]將結構張量應用于圖像修復中,增強圖像的結構信息。
Criminisi算法是基于樣本的紋理合成技術,原始算法中修復塊是固定的。因此,本文在經典Criminisi算法的基礎上根據峰值信噪比確定最佳修復塊,獲得最佳的修復效果。實驗結果表明,本文改進算法可提高圖像的修復質量。
1 Criminisi算法介紹
圖1是Criminisi算法的原理圖,其中[I]是待修復的破損圖像,[Ω]是破損區域,[Φ]是樣本區域,[?Ω]表示破損區域和樣本區域的邊緣,藍色方塊中黑點[P]是待修復塊的中心點,[φp]是以[P]為中心點大小是[9*9]的待修復塊,[np]為[P]法線方向,[?I⊥p]為[P]等照度線方向。
Criminisi算法的核心思想是:計算修復塊的優先權,根據優先權決定修復區域,根據SSD準則尋找最佳匹配塊并進行填充,最后更新置信度,直至待修復區域修復完成。Criminisi算法有以下三個步驟:
1.1 優先權計算
修復塊的優先權計算公式如下: