1. 引言
在数字图像的获取、处理、压缩、传输和解压缩过程中,很多原因都可能造成信息缺损,所谓图像修复是对图像上信息缺损区域进行填充的过程,其目的是恢复信息的完整性,尽量使观察者无法察觉图像曾经缺损或已被修复。图像修复与降质图像恢复有本质区别,主要过程是由已知推导未知。这一技术最初是被用来对中世纪的美术作品进行修复,为修补古老的艺术作品提供了安全便捷的途径;随着图像修复技术的发展,这项技术还在许多实际应用中为了某种特殊目的移除数字图像上的目标或遮挡物并填充移除后留下的缺损区域;有时为了提高图像质量,图像修复还与图像压缩、去噪、超分辨处理以及目标检测等结合使用。
Bertalmio等 [1] 在2000年的一次学术会议上,首次提出图像修复技术这个术语,他们的研究使得图像修复的研究和应用达到一个飞跃。随着技术的发展,越来越多的领域期望能够对数字图像进行一些修改,并且达到人眼察觉不出来的效果。因此,图像修复技术成为计算机图形学和机器视觉中的一个研究热点,在文物保护、多余目标物体剔除(如视频图像中删除部分人物、文字、小标题等)、影视特技制作、图像缩放、图像的有损压缩、视频通信的错误隐匿等方面有着重大的应用价值 [1] 。用户只需选择要修复区域,计算机便自动完成余下的工作,从而显著减少人工处理的时间和精力。有关图像修复的相关工作可参考文献 [2] ,在此不加赘述。
本文主要内容安排如下:第二节介绍张量投票用于图像修复的具体过程;第三节是实验结果示例;最后是结束语。
2. 方法描述
Jiaya Jia和Chi-Keung Tang在文献 [1] [3] 中应用张量投票算法进行自然景观图像的目标移除和图像修复工作,取得了成功。由于没有加入任何先验信息和模型,只是应用了连续律,所以相对于人眼视觉恢复的效果还有一定局限。这一方法的最大优点体现在对图像中轮廓曲线的修复上发挥了张量投票的优势,甚至可以修复主观轮廓。
从图像处理角度来看,图像修复就是根据待修补区域周围的信息,将图像填充到待修补区域中。实际的做法是通过缺损区域周边信息填充待修补区域的问题对大多数的图像修复问题,数据模型具有以下形式 [4] :
(1)
式中,u0为所获得的观察图像;u为原始图像;k为退化函数;n为加性白噪声;“*”表示卷积,Ω表示整个图像区域;
表示信息丢失的待修补区域;Ω\D表示没有丢失信息的区域;u0为Ω\D上可利用的图像部分;u为需要复原的目标图像。
假设n为高斯噪声,那么关于数据模型的能量函数E,常用最小均方误差定义 [4]
(2)
大多数图像修复算法都是在最小化式(2)的能量函数模型的意义下进行图像修复的。
张量投票法先是将图像的色彩信息和纹理信息转换成自适应性N-D张量,然后是个投票过程,用来推断缺损像素点在N-D空间中最优的色彩值。N-D张量投票可以构造粗糙纹理和规则纹理。算法主要分两步:一是将输入图像进行基于纹理的分割,并通过二维张量投票连接被分割开的曲线来生成图像的完整分割;二是利用N-D张量投票合成丢失的色彩及纹理信息。算法具体流程如图1所示。其中,基于纹理的图像分割和基于统计特征的区域合并属于常规的图像处理方法 [1] ;完成之后就要进行曲线连接,边界曲线的连接首先通过二维张量投票增强特征点的显著性,同时计算出各点的法向矢量,而最佳曲线点
由式(3)所示的原则选出:
(3)
即沿某一方向(上式中设为
方向,
代表该方向的第
个点)搜索特征值之差为局部极大值的点作为最佳曲线点;
表示该点的位置矢量;
为该方向上的采样密度。当最佳曲线点的集合
确定后,采用B-Spline曲线对这些点进行连接形成完整的边界曲线。如果缺失区域较大,则采用高斯金字塔结构在相继的多个尺度上进行连接。
一般情况下,缺损区会有多条曲线需要连接。因此须设置连接顺序:先根据相似性程度对所有待连接点对进行排序;然后对所有点对进行处理,如果该点对相邻区域已经被连接,则忽略过去,否则在该点对连线不与其他任何已有曲线相交的情况下将其连接;处理完所有点对之后,检测是否仍存在非封闭区域,如果存在,则推导新的曲线将缺口连接。
自适应尺度选择根据下式计算图像各点的结构张量:
(4)
式中,
表示高斯微分算子,I表示像素灰度,高斯微分算子的尺度可置零以简化计算,因为张量投票对窗口中心及边界元素是同样对待的。当尺度参数从1变化到图像的最大分辨率时,依次计算各点结构张量的迹
,当
时,说明
为局部极值,选作最佳尺度。
一旦确定了图像的完整分割和最佳尺度,就可以根据图像中已有的颜色和纹理信息对缺失部分的数据进行合成。这里依据纹理数据之间的Markov特性 [5] 使用N-D张量对图像中的像素进行编码,N代表邻域尺度的大小,每个像素都被编码成一个N-D的棒形张量。在像素a上给定一个以为a中心的n × n的模板窗口,通过产生一个维数为N的特征向量,可以把图转变成一个棒形张量,这里N = n × n + 1;如果输入为彩色图像,则要转换为灰度图像,相应的灰度等级要与颜色深度相对应。
编码之后就是在像素点的分割区域内,利用颜色和纹理特征的局部相关性,通过N-D张量投票在N-D空间进行投票,取对该点投票显要性值最大的点的灰度值对缺失部分的填充,从而实现图像修复。其中,投票显要性的计算公式为:
(5)
式中,
、
分别为张量投票之后的最大和次大特征值,
为投票者和接收者之间的矢量角。
上述方法还可扩展应用于三维遥感图像,不同之处有:1) 数据表示需对每点增加深度信息并进行数据重采样;2) 边界曲线连接扩展到三维,需采用三维曲线检测算法检测三维表面的不连续点;3) 需对缺失区域构建网格并进行网格分割,最后在每个网格面片上进行修复。
除了上述方法之外,还有人应用张量投票进行自适应图像修复 [5] :对于小区域修复问题,在人工标记修复区域的基础上,先应用张量投票计算待修复区域的优先级,然后再进行逐级修复;对于大范围修复问题,先应用张量投票进行结构修复,然后再次应用张量投票对结构内部用类似小区域修复的方法进行纹理填充,最后输出修复图像。具体计算流程分别如图2和图3所示。
其中,张量投票方法确定的修复优先级计算公式为:
(6)
即为其张量矩阵分解后圆形分量和棒形分量的模。
自适应修复的过程是通过选择一定大小的方形邻域窗口,计算其中有效像素点、缺失或噪声像素点的比例来进行的:如果有效像素点占比例较大,则用该窗口平均颜色信息修复缺失点;反之,如果缺失或噪声像素点的比例较大,则用全局平均颜色信息来修复受损点;如果两者的比例均小于设定阈值,则通过增大窗口大小,直到重新计算的窗口内两者的比例满足前面的比例要求或者窗口大小超过一定限度(实际运行过程中取经验值21 × 21)为止。
对于大区域缺失图像的修复,算法包括结构修复和纹理修复两大主要步骤。其中,结构修复算法是从已经区域中的边缘结构特征,用张量投票方法推测未知区域的边缘结构。修复后完整的结构又可用于

Figure 2. The flowchart for completing small areas
图2. 张量投票自适应修复小区域的计算流程
纹理修复中的优先权计算。在纹理修复时,具有最高优先权的图像首先得到修复,即优先修复具有明显结构和纹理特征的缺失数据。
图3中,第一次张量投票是在边缘图基础上进行的,其特征推测实际上发挥的是张量投票在边界修复方面的作用;接下来第一次应用张量投票确定修复优先级与小尺度的情况有所不同,部分采用了Criminisi算法中的优先级计算方法,在其基础上增加结构项
,将Criminisi算法中的优先级作为纹理项并乘上加权系数
,两者之和作为像素点的修复优先级;然后按照各像素点优先级从大到小的顺序,逐次遍历图像,在已知区域搜索以RGB空间的欧式距离为匹配标准的匹配图像块,并替换待修复区域、更新优先级函数,直至所有目标区域修复完成。实验结果表明,这一算法的效果优于基于PDE的方法和Criminisi算法。
许毅平在其博士论文中应用张量修复和辐射校正完成了高光谱图像的自适应阴影去除方法 [6] 。该方法通过张量投票获得阴影区域的预修复图像,然后推测阴影区域的光照和亮度统计特性,再利用辐射传输模型对阴影区进行自适应局部增强处理,实现对阴影区域的信息修复。基于张量投票的预修复主要包括阴影区张量投票预修复和阴影区图像增强两个主要阶段,其中预修复的纹理修复过程与文献 [5] 相同,只是张量投票方法在此处进行预修复之后,需对预修复图像进行灰度统计,获得阴影区域的灰度动态范围,最后利用辐射传输模型通过图像增强算法对阴影区域进行增强处理,获得最终的去阴影图像。
基于张量投票的图像修复方法还可用于空域信息隐藏 [7] ,即针对视频传输过程中的误码问题,首先根据边缘点数目对丢失宏块进行分类,分为平坦块、边缘块和纹理块,其中平坦块和边缘块分别用双线性插值和方向性插值来修复;而纹理块则采用张量投票方法进行修复,用棒形和圆形分量的强度分别表示此处曲线和交汇点结构的显著性,并通过局部极值搜索确定纹理块中的曲线和交汇点,然后进一步细分为小块,调用方向性插值来填充修复。
3. 实验结果示例
图4~图5给出了应用文献 [3] 中方法去除一些二维图像中的遮挡物的示例。图4是对海滩(beach)图像的处理结果,其中图4(a)为原始图像,在此想去除的部分是其中的高椰子树,如图4(b)所示对其进行标识之后,去除并修复的结果如图4(c)所示。图5是对路标(sign post)图像的修复结果,其中图5(a)为包含路标的原始图像,图5(b)为移除图中路标之后的修复结果。
4. 结束语
图像修复的创始人Bertalmio等 [1] 指出,图像修复是一个主观的过程,依赖于人眼对图像的感知理解,必须遵循一定的原则,这些原则可以概括为以下三个方面:
1) 整体性,即图像的整体决定如何修复受损区域,因为图像修复的目的就是恢复图像的完整性;

Figure 3. The flowchart for completing large areas
图3. 张量投票自适应修复大区域的计算流程
(a) (b)
(c)
Figure 4. Image inpainting for beach: (a) Original image; (b) Identified image; (c) Completed image
图4. Beach图像修复结果:(a) 原始图像;(b) 标识图像;(c) 修复图像
(a) (b) (c)
Figure 5. Image inpainting for sign post: (a) Original image; (b) Identified image; (c) Completed image
图5. Sign post图像修复结果:(a) 原始图像;(b) 标识图像;(c) 修复图像
2) 邻域一致性,即待修复区域周围的结构信息必须延伸至该区域内部,修复区域中像素的灰度或颜色信息必须与周围的颜色相协调;
3) 细节的吻合性,即细节信息的描绘要与图像的整体一致。
上述原则虽然概括得很好,但当Bertalmio等引入PDE进行图像修复时,发现这些原则在实际中很难操作。于是Tony Chan等人针对非纹理图像开创性地提出局部修复的概念,他们从数学上的香农定理和视觉上的局部推断、模式识别与尺度影响等方面,阐述了局部性是降低修复问题复杂性和开展低层视觉修复研究的一条有效途径。他们认为局部性、边缘的修复和对噪声的鲁棒性是修复的重要方面。从这一角度分析,张量投票方法与这些标准最为吻合。