快速数字图像修复技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
快速数字图像修复技术
摘要:我们提出了一个非常简单的修复算法来重建图像中小部分的丢失和损坏图像,该算法与目前产生同等效果的方法相比,速度要快两到三个数量级。
关键词:图像修复;图像恢复
1引言
重建图像丢失或损坏的部分,是一种古老的做法,广泛用于艺术品恢复。又称修复或修饰,这是通过对原始图像不熟悉的观察员以一种非非检测的方式来填补丢失图像或修改损坏的图像[2]。图像修复技术应用广泛,从修复照片、电影和绘画,到除遮挡,如图像上的文字,字幕,邮票和宣传。此外,修复也可以被用来产生特殊效果。
传统上,熟练的艺术家手动进行图像修复。但考虑到其应用范围,将修复作为诸如流行的Photoshop图像处理工具的标准功能是可取的。最近,Bertalmio等人[2]介绍了静止图像的数字修复技术产生了非常可观的成果。然而,他们的算法,通常在目前的个人计算机上修复几个相对较小的地区需要数分钟。这样的时间在互动环节是不可接受的,这促使我们设计一个更快,更简便,能够在短短的几秒钟产生类似效果的算法。
我们的算法产生的结果能与文献[2,4,5]中的结果相媲美,但速度上却快两到三个数量级。我们通过恢复照片、恢复破坏图像和文字去除的实例来说明我们方法的有效性。图1(左)展示了一幅著名的亚伯拉罕林肯在1865年拍摄的有裂痕的照片。其右侧显示的图像是在450兆赫奔腾III电脑上我们的算法在0.61秒内获得结果。
2 先前及相关文献
Bertalmio等[2]率先推出基于偏微分方程(PDE)的数字图像修复算法。用户提供的掩码指定输入图像被修饰的部分,该算法将输入的图像视为三个独立的通道(R,G和B)。对于每个通道而言,它通过沿着水平线传播来自掩码区域外的信息来填补待修复区域(等照度线)。等照度线方向通过计算沿修复轮廓在每个像素上的离散梯度向量(它提供了最大的空间变化的方向)和90度旋转产生的向量而获得。这目的是在保留了边缘的同时传播信息。用一个二维拉普拉斯[8]来巨擘估计色彩平滑变量,这种变量是沿着等照度线方向传播[2]。修复过程中的每几个步骤后,该算法进行数次扩散迭代来平滑修复区。使用各向异性扩散[13],以保留整个修复区边界。
受Bertalmio等人研究的启发,陈和沈提出两个图像修复算法[4,5]。总变分(TV)修复模型[4]采用了欧拉 - 拉格朗日方程,在修复区域以内,模型简单采用与等照度线对比基础上的各向异性扩散[13]。这个模型是专为修复小的地区,虽然它在消除噪波效果良好,但它不能
连接破碎边缘(嵌入一个统一的背景的单线)[4]。曲率驱动扩散(CDD)模型[5]扩展了TV算法,在确定扩散过程“强度”的时候考虑了等照度线的几何信息,从而修复较大的区域。CDD 可以连接一些破碎的边缘,但由此产生的插值细分通常看起来模糊。
虽然基于非线性偏微分方程的图像复原方法系统地保留边缘方面很有潜力,一般严重提出的问题是修复问题,而快速的数值计算是难以实现的[5]。同样很难找到适当的修复数学模型[5]。尽管他们的高质量,通过对[2](转载)中提出的结果进行仔细检查发现,通常不能保留图像的尖锐边缘。例如,重建区域,穿过大众甲壳虫挡风玻璃附近的遮盖出现模糊破碎的边缘(图6(顶部)[2])。Hirani和Totsuke[11]结合全局频率和局部空间信息来去除噪波,同时使用它来制作后期特效镜头。这种技术可以产生非常好的效果,但需要样本子图像,其内容是要修复区域的翻译版本。数字化技术用于划伤照片的自动恢复[10],数字化电影 [1]划痕去除、照片修饰[7]和线和装饰移除[6,14]也开始出现商业产品。
3 修复算法
图像可能包含与任意空间不连续的纹理,但采样定理[8]约束可自动恢复空间频率的内容。因此,对于丢失或损坏的区域的情况,只希望能够产生合理的,而不是一个确切的重建。因此,为了修复模式对大量的图片来说都相当成功,那么待修复区域必须局部比较小。由于该地区变得更小,可用更简单的模型来近似局部估计由更复杂模型生成的结果。我们的算法设计中另一个重要的观察是人类的视觉系统,在不相关的高对比度边缘[9]区域可以容忍模糊的存在。
因此,让Ω指代很小的待修复区域,∂Ω指代其边界。由于Ω小,修复步骤可以通过从边界向待修复区域传播信息各向同性的扩散过程进行近似。略有改善算法重新连接边缘,达到其边界(例如,使用[12]中描述的类似的方法),从带修复区域删除新的边缘像素(因此将带修复区域分成一些较小的次区域),然后执行前述的扩散过程。
该算法的最简单的版本,包括Ω初始化,清除它的颜色信息,并用扩散内核多次卷积待修复区域。∂Ω是单像素厚的边界,如果域内在先前的迭代中,没有像素通过一个确定的阈值改变自身的值,则迭代次数是每个修复区域通过检查单独控制。否则,用户可以指定的迭代次数。由于扩散过程是迭代,修复从∂Ω进展到Ω。
用高斯内核卷积图像(即计算相邻像素的加权平均数),相当于各向同性扩散(线性热传导方程)。我们的算法使用加权平均的内核,只考虑相邻像素的贡献(即内核中心为零)。图2显示了伪码算法和两个扩散内核。本文中所有重建图像是通过该算法获得,或者是该算法经过轻微的变化获得,将在3.1节解释。
3.1保留边缘
当Ω跨越高对比度边缘的边界时(图3(前左)),该算法最简单版本,会带来附加效果(明显的模糊)。在实践中,只有在Ω和高对比度边缘的相交处,需要各向异性扩散,这些区域通常只占整个区域内很小比例。
创建指定待修复区域的遮盖是修复过程中最耗时的步骤,需用户干预。由于我们的算法可以在短短几秒钟内修复图像,它可用于遮盖互动创建。我们利用这个互动通过扩散障碍进行边界重联,这是Ω内扩散过程的边界。这完成一个边界重建和各向异性扩散类似的的结果,但没有相关的开销。在实践中,扩散屏障是两个像素宽的线段。当扩散过程中达到一个障碍,达到像素进行颜色设定,进程终止。图3进行了说明,图3中(左后方)明显的交叉线代表修复区域。简单扩散修复算法在Ω和高对比度边缘之间的相交处产生模糊点(参见图3中的小圆圈(前左))。通过适当增加扩散屏障(整个遮盖线段图3(右后)),用户停止遮盖两边混合信息的扩散过程。由此产生的直线如图3(前右)所示。
4结果
我们已经在C + +中实施了图2描述的算法,并尝试了两种不同的扩散内核。在这两种情况下的结果相似。文中所有的图片都使用128 MB的内存运行Windows98450兆赫奔腾III电脑和使用图2所示的最左边内核生成。在图5,8,9和10所示的结果是使用无扩散障碍最简单的版本的算法得到。对于图1,使用了遮盖,两个扩散障碍(图4)。三个女孩的例子,使用了四个扩散障碍,以及有遮盖穿过高对比度边缘的区域(图6(右))。在所有情况下,都用100扩散迭代。
所有修复和线装饰删除系统需要手动遮盖。鉴于有一套功能的绘图系统,创建一个遮盖所需的时间,只依赖于可用的功能,也不受所使用修复算法的影响。对于交互式应用程序,在同一系统中拥有屏蔽功能和修复算法是可取的,以避免在不同的环境之间切换。在我们目前的原型中,我们已经实现了一个简单的绘图系统以及导入和导出JPEG文件的功能。
恢复林肯的画像和三个女孩的图片(图4和6(右),分别)使用的遮盖,是我们的绘画系统创建的。在新奥尔良的例子(图5)所使用的遮盖,通过使用Photoshop中选择颜色范围功能选择“红色”可即刻获得。由此产生的图像被保存和导入到我们的系统。与图8,9和10使用的遮盖的图片是包含这些图片中所显示的相应文字和涂鸦的JPEG图像。
修复成本随着修复区域的大小呈线性增长,算法是缓存密集。例如林肯的画像,我们的算法修复时间是0.61秒。[2]中使用的图5和图6(左),是从Bertalmio的网站获得的[3]。对于在图6中的例子,Bertalmio等报道的修复时间约7分钟(一个颜色通道),使用两个级别的