gpt4 book ai didi

python - 从 python 的图像模块访问图像坐标或作为 numpy 数组访问图像坐标并存储它有什么区别?

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

我已经使用 Image 模块在 python 中读取了图像并将其转换为 numpy 数组,如下所示...

       im=Image.open(infile)

imdata = scipy.misc.fromimage(im)

im.getPixel(x,y)

第一个问题是x是否属于行号,y是否属于列号。它的视觉顺序是否与我们在屏幕上看到的顺序相同,或者是否按照保存到磁盘或其他位置的顺序?

在将其用作 numpy 数组时访问像素值时它是如何工作的。它提供与 im.getPixel() 相同的像素还是不同的像素位置?

第三个问题是,在将此图像保存到磁盘(例如作为 PNG)时...访问和写入文件的顺序应该是什么?

非常感谢。

谢谢

最佳答案

来自图像

docs声明返回的 numpy 数组的维度为 [width, height, nr_channels],其中 nr_channels 是存储在第三维中的不同颜色带/ channel ,例如,灰度图像为 MxN,RGB 图像为 MxNx3,RGBA 图像为 MxNx4

因此,要从数组中获取“像素”x、y(实际上是行 x、高度 y)

pix = a[x,y,:] 

例如

r,g,b = pix[:3]

im.getPixel
从同一位置 (x,y) 获取像素,但作为元组,例如(r,g,b) 如果图像具有 RGB 波段。 Note这种方法相当慢;如果您需要从 Python 处理图像的较大部分,您可以使用像素访问对象(通过 im.load() 重试),或 im.getdata() 方法。

关于python - 从 python 的图像模块访问图像坐标或作为 numpy 数组访问图像坐标并存储它有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7638443/

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