首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于去除水印的OpenCV

用于去除水印的OpenCV
EN

Stack Overflow用户
提问于 2021-10-13 07:54:35
回答 1查看 267关注 0票数 1

我正在尝试cv2.inpaint,如果您自己添加水印,然后使用cv2.inpaint,结果是完美的。

但是,如果我像下面这样使用网络图像:

源图像

水印图像

结果很糟糕。

这是代码

代码语言:javascript
运行
复制
zhihuimage = cv2.imread('../input/zhihumask/OpenCV_11.jpg')
zhihuwatermask = cv2.imread('../input/zhihumask/OpenCV_22.jpg')
# remove watermark with mark
zhihuwatermask = cv2.cvtColor(zhihuwatermask, cv2.COLOR_BGR2GRAY)
zhihuoutput = cv2.inpaint(zhihuimage, zhihuwatermask,3, flags= cv2.INPAINT_NS)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-13 17:00:54

似乎水印掩码和图像中的水印是不对齐的,您可以扩大掩模以补偿小错误对齐。

适当删除水印的扩展代码:

代码语言:javascript
运行
复制
zhihuimage = cv2.imread('../input/zhihumask/OpenCV_11.jpg')
zhihuwatermask = cv2.imread('../input/zhihumask/OpenCV_22.jpg',cv2.IMREAD_GRAYSCALE)
# remove watermark with mark
dilatekernel = np.ones((5, 5), 'uint8')
zhihuwatermask = cv2.dilate(zhihuwatermask, dilatekernel)
zhihuoutput = cv2.inpaint(zhihuimage, zhihuwatermask, 3, flags=cv2.INPAINT_NS)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69551664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档