image inpainting 图像修改
这篇博客将介绍如何通过OpenCV中图像修复的技术——cv2.inpaint() 去除旧照片中的小噪音、笔划等。并提供一个可交互式的程序,利用OpenCV的快速行进和流体力学俩种修复算法对自己的图片进行修复。
大多数人家里都会有一些旧的老化照片,上面有一些黑点、笔划等。如何复原呢?
在绘制工具中擦除:将简单地用无用的白色结构替换黑色结构,效果并不理想。OpenCV中图像修复的技术——基本思想很简单:用相邻像素替换这些坏标记,使其看起来像邻居。
-
cv2.INPAINT_TELEA(Fast Marching Method 快速行进算法)
-
cv2.INPAINT_NS(Fluid Dynamics Method 流体力学算法)
-
OpenCV未实现的:Content-Aware Fill 内容感知填充算法,这是Adobe Photoshop中使用的一种高级修复技术。
cv2.inpaint() 优点:修复效果更加自然;
缺点:修复时需要提供原图以及mask图(与原图一致只有被污染的像素区域有值);

超级会员免费看
本文介绍了如何使用OpenCV中的cv2.inpaint()函数去除旧照片中的瑕疵,包括快速行进算法(cv2.INPAINT_TELEA)和流体力学算法(cv2.INPAINT_NS)。通过实例展示了这两种修复方法的效果,并提供了源码参考。
订阅专栏 解锁全文
6808

被折叠的 条评论
为什么被折叠?



