Inpaint
定义
Inpaint 指在数字图像中填补缺失或被破坏的像素区域,并且要使修补痕迹难以被普通观察者识别出来[4]。它的输入通常包括一张待修复图像和一张掩膜(mask),掩膜中非零像素标出需要重建的位置,算法只对这些位置做处理[3]。修补所需的信息来自图像其余完好的部分,通过向缺失区域传递结构、纹理或语义信息来完成填充[5]。
它与一般的滤波或降噪不同,后者针对全图的噪声做整体改善,而图像修复只针对局部空洞,并要求结果在视觉上与周围内容保持一致[6]。狭义的图像修复针对单幅静态图像,与之并列的还有需要考虑帧间时间一致性的视频修复[7]。
原理
传统方法可分为两类思路。一类基于偏微分方程与扩散,把空洞周边的像素值沿等照度线方向逐步向内传播,使边界两侧的亮度轮廓能够平滑衔接[5]。Bertalmio 等人在 2000 年提出的模型即属此类,其做法是模拟修复师从边缘向中心补全线条的过程[1]。另一类基于纹理合成,在图像的其余部位搜索与空洞边缘相似的图像块,把最匹配的块复制进空洞,从而避免像素级扩散造成的模糊[5]。
在基于纹理合成的方法中,一种常见的做法是把问题写成优化形式:在已知区域像素保持不变的前提下求解缺失区域,使填补结果与周围邻域的匹配误差最小。其简化表述可写作 $\min_{x} \sum_{p \in \Omega} \lVert \phi(x)_p - \phi(x)_{p+\delta} \rVert^2$,其中 $\Omega$ 为缺失区域,$\phi(\cdot)$ 表示提取邻域块特征的算子[8]。
深度学习把修复转化为条件生成问题。生成对抗网络通常由一个修复网络和一个判别网络组成,前者负责生成缺失内容,后者负责判断结果是否与真实图像一致,两者交替训练以提升结果的自然度[9]。近年来的扩散模型则在潜空间中反复去噪,结合掩膜之外的上文信息在选区内生成新内容[10]。
flowchart LR
A[输入图像] --> B[生成修复掩膜]
B --> C{技术路线}
C -->|扩散与偏微分方程| D[沿等照度线向内传播]
C -->|图像块合成| E[搜索相似纹理块并粘贴]
C -->|生成模型| F[依上下文在选区生成内容]
D --> G[边缘融合与输出]
E --> G
F --> G
发展历程
图像修复在艺术领域有很长历史。文艺复兴以来的绘画修复工作即使用这一名称,修复师以手工方式补全画作的缺损部位[11]。20 世纪末,研究者把这一概念借用到图像处理中,用以指代对数字图像缺失信息的重建[8]。
2000 年,Bertalmio、Sapiro、Caselles 与 Ballester 在计算机图形学会议 SIGGRAPH 上发表论文,提出面向静态数字图像的修复算法,并明确把博物馆修复师的术语引入了这一领域[1]。此后基于偏微分方程的方法继续发展,2001 年出现了借助流体力学方程描述修复过程的做法,2004 年 Telea 提出基于快速行进法的算法,因其速度较快而被广泛采用[12]。
2009 年前后,图像块搜索类方法取得进展,PatchMatch 一类算法加速了相似块的匹配搜索,并被用于图像编辑软件的填充功能[9]。2016 年起,基于深度网络与对抗训练的方法逐步成为主流,处理大面积缺失和语义合理性的能力明显增强[13]。2021 年提出的 LaMa 使用快速傅里叶卷积扩大感受野,在大面积掩膜与高分辨率图像上改善了效果并降低了计算成本[14]。
2022 年以后,扩散模型成为修复的重要路线,可在文本或参考图引导下于选区内生成原图中并不存在的内容,应用范围也从修补扩展为图像编辑[10]。
应用
早期最典型的用途是修复扫描照片上的灰尘、划痕与折痕,以及修补老化的胶片[3]。在数字文博领域,该技术被用于珍贵书画与艺术品的数字化复原[4]。
在图像编辑与影视特效中,修复用于移除画面里不需要的物体、叠加的文字字幕、日期戳记与麦克风线缆等元素[1]。数字图像修复也用于视频监控场景中对特定人物的遮挡处理,但由于计算量较大,在普通硬件上很少用于实时处理[7]。
专用场景还包括深度图修补、遥感影像修复与医学影像修复。深度图常因遮挡或过曝过暗而产生缺失,遥感影像受传感器故障、噪声和云层影响需要补全,医学影像也会用到类似的缺失区域重建方法[6]。电商与广告领域的参考图修复则被用于在保留商品细节的前提下替换人物图像中的指定区域[15]。
工程实现上,OpenCV 等计算机视觉库提供了修复函数,内置基于 Navier-Stokes 方程与 Telea 快速行进法的两种算法,便于在去划痕、去物体等任务中直接调用[3]。亦有开源项目借助 WebGPU 与 WebAssembly 把修复与放大功能放到浏览器端运行[16]。
局限
修复结果并不唯一。同一处缺失可能对应多种合理补全,具体选择取决于对图像内容的理解,因此难以用统一标准判定最优解[17]。传统基于扩散的方法在平坦区域表现较好,但面对纹理丰富或结构复杂的区域容易出现模糊与涂抹感[5]。
大面积缺失、复杂几何结构和高分辨率图像仍是难点。相关研究指出,一个重要原因是修复网络与损失函数的有效感受野不足,模型难以利用远离空洞的上下文信息[14]。图像块合成类方法在处理透视关系时存在困难,需要手动设定邻域或块的大小,弯曲边界的物体也可能修补不当[8]。
生成类方法存在细节失真风险。去噪过程可能把内容平均化或产生幻觉,导致纹理、形状和品牌文字与原物不一致;若掩膜本身不准,遗漏的区域会暴露原有内容,选区过大则可能误改应当保留的部分[15]。生成区域与原始像素之间的拼接缝隙在衣领、下摆等转折处尤为明显,边缘融合仍是影响真实感的环节[10]。
综合性的综述也指出,现有方法在跨场景泛化能力与评价指标的一致性上仍有欠缺,修复结果与人类视觉感知的对齐尚待改进[18]。
参见
参考资料
- acm.org 上的网页 [引用日期2026-10-29]
- Inpainting and the fundamental problem of image processing [引用日期2026-10-29]
- OpenCV: 图像修复 [引用日期2026-10-29]
- An image inpainting method [引用日期2026-10-29]
- Inpainting [引用日期2026-10-29]
- Image Inpainting - Chapters and Articles [引用日期2026-10-29]
- Image Inpainting - Chapters and Articles [引用日期2026-10-29]
- survey(PDF) [引用日期2026-10-29]
- CAA-PRMI专委会通讯2018年第1期(总第1期)-定稿版(PDF) [引用日期2026-10-29]
- 图像修复与局部重绘 (Image Inpainting) [引用日期2026-10-29]
- 图像修补方法的研究-手机知网 [引用日期2026-10-29]
- 立方智算 [引用日期2026-10-29]
- S1077314220301661 [引用日期2026-10-29]
- huggingface.co 上的网页 [引用日期2026-10-29]
- zhihu.com 上的网页 [引用日期2026-10-29]
- Inpaint-Web:纯浏览器端实现的开源图像处理工具 [引用日期2026-10-29]
- The term inpainting was invented by art restoration workers [引用日期2026-10-29]
- Image Inpainting in 30 Years: A Survey [引用日期2026-10-29]