【发布时间】:2018-06-27 05:53:05
【问题描述】:
这里有一张图片:
然后我使用下面的代码生成了阈值图像。
img = cv2.imread('Image_Original.jpg')
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_gr = np.array([40,0,0])
upper_gr = np.array([90,255,255])
mask = cv2.inRange(hsv,lower_gr,upper_gr)
mask=~mask
res = cv2.bitwise_and(img,img,mask = ~mask)
cv2.imshow('Masked',mask)
cv2.imshow('Result',res)
然后是以下图片(蒙版):
和(结果):
现在我想要通过将黑色像素设为零来移除黑色像素(仅来自原始图像),并且我只想提取大小为 32x32px 或更大的补丁。
【问题讨论】:
-
不清楚您要做什么。通过将黑色像素设置为零来删除它们 - 只会让它们保持黑色(黑色为零)。你追求什么样的 32x32 补丁?你能举个例子吗?您是否试图在从原始叶子图像中分割出来的“点”周围进行裁剪?
-
你可以看到不同大小的图像中有棕色的补丁,我想要的只是将它们提取到较新的图像中,并将其他所有内容都设为0
-
@ParasKumarLangyan 所以你希望每个棕色补丁都调整为 32x32 大小的路径,是这样吗?
-
@JeruLuke 我想要的只是大小为 32x32 或更大的补丁。其余的应改为黑色
标签: python-3.x opencv machine-learning image-segmentation