当前位置: 首页 > 面试题库 >

如何在Python中读取给定像素的RGB值?

殷烨
2023-03-14
问题内容

如果使用打开图像open("image.jpg"),假设我具有像素的坐标,如何获得像素的RGB值?

那么,我该怎么做呢?从空白图形开始,“写入”具有一定RGB值的像素?

如果我不必下载任何其他库,我会希望。


问题答案:

最好使用Python图像库来执行此操作,恐怕这是单独下载的。

执行所需操作的最简单方法是通过Image对象上的load()方法,该方法返回一个像素访问对象,您可以像数组一样对其进行操作:

from PIL import Image

im = Image.open('dead_parrot.jpg') # Can be many different formats.
pix = im.load()
print im.size  # Get the width and hight of the image for iterating over
print pix[x,y]  # Get the RGBA Value of the a pixel of an image
pix[x,y] = value  # Set the RGBA Value of the image (tuple)
im.save('alive_parrot.png')  # Save the modified pixels as .png

或者,查看ImageDraw,它提供了更丰富的API用于创建图像。



 类似资料:
  • 我正在尝试将此java代码转换为python: 我在python中尝试过这个: 然而问题是我在python中得到不同的值。 为什么java返回负整数值,我如何在python中获得相同的结果?

  • 问题内容: 我正在使用PIL。如何将图片的EXIF数据转换为字典? 问题答案: 您可以使用PIL映像的受保护方法。 这应该给您一个由EXIF数字标签索引的字典。如果您希望字典由实际的EXIF标记名称字符串索引,请尝试以下操作:

  • 问题内容: 我正在做一些图像处理,我想分别读取JPEG和PNG图像中的每个像素值。 在我的部署方案中,使用第3方库对我来说很尴尬(因为我对目标计算机的访问受到限制),但是我假设没有用于读取JPEG / PNG的标准C或C ++库… 因此,如果您知道 不 使用库的方法,那就太好了,如果没有,那么仍然欢迎回答! 问题答案: C标准中没有标准库可以读取文件格式。 但是,大多数程序,尤其是在Linux平台

  • 我按照此链接处的代码读取bmp文件中的像素值,以便能够读取像素的RGB值,当我将整个图像作为一种颜色并读取随机像素值时,它们是正确的。在此之后,我尝试制作它,以便函数也会尝试查找有多少独特的颜色,所以我添加了一个不同颜色的框到图像中,但函数仍然只能找到一种颜色。我想知道我是否不知何故没有查看BMP中包含的所有字节,但我不确定这会是怎样的,因为我是新尝试这种东西的。 为了确保代码没有找到不同颜色的像

  • 问题内容: 我试图用来读取RGB图像并将其转换为灰度。 在matlab中,我使用以下代码: 在matplotlib教程中,他们没有介绍。他们只是读了图像 然后将它们切成薄片,但这与根据我的理解将RGB转换为灰度不是同一回事。 我发现很难相信numpy或matplotlib没有将rgb转换为灰色的内置函数。这不是图像处理中的常见操作吗? 我写了一个非常简单的函数,可以在5分钟内使用导入的图像。这是非

  • 问题内容: 当我们处理本地文件时,我想做的事情很简单,但是当我尝试使用远程URL时,问题就来了。 基本上,我试图从URL提取的文件中创建一个PIL图像对象。当然,我总是可以只获取URL并将其存储在临时文件中,然后将其打开到图像对象中,但这感觉效率很低。 这是我所拥有的: 它抱怨说不可用,所以我尝试了这个: 但这也不起作用。有没有更好的方法可以执行此操作,还是可以将这种方式写入临时文件? 问题答案: