gpt4 book ai didi

python - 查找 numpy 数组中值的位置

转载 作者:行者123 更新时间:2023-12-01 02:36:27 24 4
gpt4 key购买 nike

我正在尝试找到名为 ImageArray 的数组中的位置

from PIL import Image, ImageFilter
import numpy as np

ImageLocation = Image.open("images/numbers/0.1.png")

#Creates an Array [3d] of the image for the colours
ImageArray = np.asarray(ImageLocation)
ArrayRGB = ImageArray[:,:,:3]
#Removes the Alpha Value from the output

print(ArrayRGB)
#RGB is output

print(round(np.mean(ArrayRGB),2))
ColourMean = np.mean(ArrayRGB)
#Outputs the mean of all the values for RGB in each pixel

此代码单独搜索数组中的每个点,如果它高于平均值,则如果小于 0,则应该变为 255。如何找到数组中的位置,以便编辑其值。

for Row in ArrayRGB:
for PixelRGB in Row:
#Looks at each pixel individually
print(PixelRGB)
if(PixelRGB > ColourMean):
PixelRGB[PositionPixel] = 255
elif(PixelRGB < ColourMean):
PixelRGB[PositionPixel] = 0

最佳答案

作为示例,让我们考虑这个数组:

>>> import numpy as np
>>> a
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])

现在,让我们对其应用转换:

>>> np.where(a>a.mean(), 255, 0)
array([[ 0, 0, 0],
[ 0, 0, 255],
[255, 255, 255]])

np.where 的一般形式是 np.where(condition, x, y)。只要 condition 为 true,它就会返回 x。只要 condition 为 false,它就会返回 y

关于python - 查找 numpy 数组中值的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46165393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com