c++ opencv实现区域填充_帮你解锁一个新技能,opencv完美媲美PS,图片PS,我们代码实现...

本文介绍了如何使用OpenCV的cv2.inpaint函数进行图片修复,包括两种算法:基于快速行进方法的图像修复技术和基于流体动力学的图像修复。通过设置不同的标志cv2.INPAINT_TELEA和cv2.INPAINT_NS,可以实现类似PS的图片修复效果。提供了一个代码实现示例,展示了如何读取图片、转换为灰度图并进行修复,最后展示修复后的图片。
摘要由CSDN通过智能技术生成

很多时候,我们相中了一张图片,怎奈图片上面有水印,不会PS的我们该如何来处理图片,这里小编介绍一下一下opencv的cv2.inpaint的图片修复函数,使用此cv2.inpaint函数,可以完美匹配PS。

OpenCV提供了两种算法。两者都可以通过相同的函数访问,cv2.inpaint()

v2-3b52dfd05e5ebceca93ff23e2cf35340_b.jpg

图片修复
opencv图片修复算法

第一种算法基于Alexandru Telea于2004年发表的“基于快速行进方法的图像修复技术”。它基于快速行进方法。考虑图像中要修复的区域。算法从该区域的边界开始,然后进入区域内,逐渐填充边界中的所有内容。它需要在邻近的像素周围的一个小邻域进行修复。该像素由邻居中所有已知像素的归一化加权和代替。选择权重是一个重要的问题。对于靠近该点的那些像素,靠近边界的法线和位于边界轮廓上的像素,给予更多的权重。一旦像素被修复,它将使用快速行进方法移动到下一个最近的像素。 FMM确保首先修复已知像素附近的像素,这样它就像手动启发式操作一样工作。使用标志cv2.INPAINT_TELEA启用此算法。

第二种算法基于Bertalmio,Marcelo,Andrea L. Bertozzi和Guillermo Sapiro于2001年撰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值