因此,我尝试使用不同的灰色阴影来填充图像的不同区域。
这是我的输入图像:
1
因此,这是我的代码,用于用灰色阴影填充其中一个区域:
image = cv.imread('img.jpg', 0)
height, width = image.shape[:2]
for i in range(height):
for j in range(width):
if image[i][j] == 255:
cv.floodFill(image, None, (i, j), 90)
cv.imwrite('test1.jpg', image)
break
else:
continue
break
之后,我得到:
2
而且,如果我尝试再次加载新图像并遍历像素,则在上一个示例中用于开始填充的相同像素仍然具有255而不是90的值。
那个怎么样?我在这里想念什么?
谢谢你们!
最佳答案
floodFill()
和需要注意一点的其他函数希望它们位于x, y
坐标中。您发送的是row, col
坐标(即y, x
),因此floodfill()
所处的区域不同于您实际检测到的白色区域。
关于arrays - 为什么像素值保持不变?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52571629/