gpt4 book ai didi

Python:图像显示中的像素值?

转载 作者:太空宇宙 更新时间:2023-11-03 18:45:02 26 4
gpt4 key购买 nike

使用任何 numpy、scikit-image 库,我可以轻松加载图像并将其显示为 ndarray。但是,我想要某种显示,可以在图像周围移动光标,并查看当前像素的索引及其灰度(或 RGB)值,例如: (213,47: 178) 或 ( 213,47: 122,10,205) - 这些值当然会随着光标移动而不断变化。

有没有简单的方法可以做到这一点? Oh:我使用的是Linux,但我的学生将使用Windows,所以我希望有一个跨平台的解决方案。

最佳答案

我使用 tkinter 来显示,使用 PIL 来读取任何图像类型。这是一个非常慢的解决方案。

def pil2tkinter_image(img_path, master = None, *args, **kw):
import tkinter, PIL.Image
img = PIL.Image.open(img_path)
x0, y0, width, height = img.getbbox()
l = []
for y in range(y0, height):
l.append('{')
for x in range(x0, width):
l.append('#%02X%02X%02X' % img.getpixel((x, y))[:3])
l.append('}')
data = ' '.join(l) # slow part
pi = tkinter.PhotoImage(master = master, *args, **kw)
pi.put(data, (0,0))
return pi

函数 pil2tkinter_image 获取任何类型图像(png、bmp、jpg、gif)的路径,并从中创建 tkinter PhotoImage。

您可以将此图像嵌入到 tkinter Widget 中并使用鼠标事件读取像素值。

关于Python:图像显示中的像素值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19720370/

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