我已经将图像myImage
转换为灰度并将其加载到numpy数组中。
作为参考,myImage.shape
返回(184L, 184L)
在myImage
完全是白色的情况下。也就是说,所有像素值255
。如何将白色像素替换为黑色像素0
?
它可能是 1 个、2 个或 10 个黑色像素替换。我只需要黑色像素的数量不为零。
根据您的评论:我想取第一个白色像素(255(并将其更改为黑色像素(0(,您可以使用:
myImage[0,0] = 0
最小示例:
myImage = np.ones((5,5))*255
>>> myImage
array([[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.]])
myImage[0,0] = 0
>>> myImage
array([[ 0., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.],
[255., 255., 255., 255., 255.]])
更一般的东西
import numpy as np
image = np.ones((5,5))*255
old_val = 255
new_val = 0
image[image==old_val]=new_val