小编典典
我用OpenCV解决了你的问题
[分水岭](http://docs.opencv.org/3.1.0/d7/d1b/group\uu imgproc\uu misc.html\ga3267243e4d3f95165d55a618c65ac6e1
“分水岭”算法。你可以找到分水岭的理论和例子
这里.
首先,我选择了几个点(标记)来指示对象I的位置
想保留,背景在哪里。此步骤是手动的,可以改变
从一张图片到另一张图片。而且,它需要一些重复,直到你得到正确的答案
期望的结果。我建议使用一个工具来获得像素坐标。然后我
创建了一个零的空整数数组,大小与汽车图像相同。以及
然后我将一些值(1:background,[255192128,64]:car\u parts)赋给
标记位置的像素。
注意:当我下载你的图片时,我不得不裁剪它以得到一个
那辆车。裁剪后,图像的大小为400x601。这可能不是什么
你拥有的图像的大小,所以标记将被关闭。
之后我使用了分水岭算法。第一个输入是图像,第二个输入是
输入是标记图像(除标记位置外,所有位置均为零)。这个
结果如下图所示。
我将值大于1的所有像素设置为255(汽车),其余的设置为255
(背景)归零。然后我用一个3x3的内核将得到的图像放大到
避免丢失有关汽车轮廓的信息。最后,我用了
放大图像作为原始图像的遮罩,使用cv2.bitwise和()函数,
这是我的密码:
import cv2</