我想挑战一下我的计算机视觉和图像处理技能,于是想从一个小项目开始。我遇到了一个项目,希望从图片中删除隐藏的标记。这里的“隐藏”指的是水印,在RGB空间中不易看到,但当你转换为HSV或其他空间时,标记就会变得可见。
以下是一个示例:
BGR空间:
HSV空间:
我尝试了不同的方法,但都没有实现可以去除图像中的水印的解决方案。我在这里发布这个问题,以获得解决这个问题的不同思路。
我尝试过的方法:
我已经尝试了各种方法,但都没有成功,分享代码可能并不能帮助到您。不必提供代码,伪代码、思路或任何线索都将受到赞赏。
- 我注意到隐藏的标记都是类似于RGB(90,94,105)的颜色。当我分别显示R、G和B通道时,我发现水印只在B通道中可见。我想如果在B通道中调整/删除标记,然后再合并图像,可能会得到更好的结果。
代码:
b,g,r = cv2.split(img)
b = b//2;
r = cv2.merge((r,g,b))
cv2.imshow("image",r)
问题:这并没有解决问题,虽然颜色变得更暗淡了,但是图像颜色也受到了影响。
我尝试调整B通道看看能否实现一些东西。
我还注意到,如果将图像转换为LUV空间,则标记可在V空间中可见。