使用 OpenCV 去除部分图像
Removing parts of the image with OpenCV
我有一张图片,我想用 OpenCV 简单地删除(或屏蔽)它的一部分。这是我的原始图片:
我想通过这个图像蒙版删除其中心的圆圈:
我在我的代码中使用这个命令,从我阅读的教程中应该可以工作并在我的原始图像的中心涂黑一个圆圈:
img = cv2.bitwise_not(imgOriginal,imgOriginal,mask=imgMask)
但我得到的结果是下图,实际上它并没有去除遮罩部分,只是颠倒了黑色和白色:
如果您能帮助我找到一种方法来正确屏蔽(或删除)我想要的部分,我将不胜感激。
谢谢
尝试使用蒙版将像素设置为背景色,如下所示:
img.setTo(Scalar::all(0),mask);
试试这个:
//given source, mask and destination Mat images with same size
cv::subtract(img, mask, dst);
我有一张图片,我想用 OpenCV 简单地删除(或屏蔽)它的一部分。这是我的原始图片:
我想通过这个图像蒙版删除其中心的圆圈:
我在我的代码中使用这个命令,从我阅读的教程中应该可以工作并在我的原始图像的中心涂黑一个圆圈:
img = cv2.bitwise_not(imgOriginal,imgOriginal,mask=imgMask)
但我得到的结果是下图,实际上它并没有去除遮罩部分,只是颠倒了黑色和白色:
如果您能帮助我找到一种方法来正确屏蔽(或删除)我想要的部分,我将不胜感激。
谢谢
尝试使用蒙版将像素设置为背景色,如下所示:
img.setTo(Scalar::all(0),mask);
试试这个:
//given source, mask and destination Mat images with same size
cv::subtract(img, mask, dst);