0

我在图像中找到了特定的轮廓。我创建了一个蒙版,除了轮廓的边界点外,整个图像都是黑色的。轮廓已完美映射。单击此处查看创建的轮廓的图片。

现在我想去我的原始图像并获取原始图像的这个轮廓内所有点的平均像素强度值。当我使用 cv.mean() 函数时,我是否只获得掩码指定的点的平均值,即只是边界点或掩码内的所有点?

4

1 回答 1

2

最简单的方法是在图像中挑选出与蒙版为白色的位置相对应的像素。如果您想要边界上的像素,请使用已显示的蒙版。如果你想在边界上(和上)像素;将其绘制为填充轮廓(thickness=-1)。这是一个例子:

img = cv2.imread('image.jpg')
mask = cv2.imread('mask.png', 0)
locs = np.where(mask == 255)
pixels = img[locs]
print(np.mean(pixels))
于 2019-10-22T23:40:35.390 回答