改进匹配块的Criminisi修复算法

2019-03-15 13:31曹齐汤汶朱耀麟
电脑知识与技术 2019年2期

曹齐 汤汶 朱耀麟

摘要:图像修复技术在图像处理中有着非常重要的作用,它在图像拼接,图像编辑和目标移除等方面有着广泛的应用。针对原始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 优先权计算

修复块的优先权计算公式如下: