Python 如何读取图像数据?

Python 如何读取图像数据?,python,image-processing,Python,Image Processing,我想创建一个应用程序,它只接收黑白分幅的图像。白色瓷砖意味着你可以搬进去,而黑色瓷砖意味着你不能搬进去(可能是墙) 在这幅图中,我想定义一个起点和一个目标点(可能有不同的颜色,红色和黄色),这样我就可以研究寻路问题 如何读取图像并处理其中的信息 可能是这样的: 在这里,我能够定义图像中的墙、起点、目标点,并且我想读取它的数据。如何在python中做到这一点?您可以使用PIL库中的图像模块(需要安装),然后执行以下操作: from PIL import Image img = Image.open

我想创建一个应用程序,它只接收黑白分幅的图像。白色瓷砖意味着你可以搬进去,而黑色瓷砖意味着你不能搬进去(可能是墙)

在这幅图中,我想定义一个起点和一个目标点(可能有不同的颜色,红色和黄色),这样我就可以研究寻路问题

如何读取图像并处理其中的信息

可能是这样的:


在这里,我能够定义图像中的墙、起点、目标点,并且我想读取它的数据。如何在python中做到这一点?

您可以使用PIL库中的图像模块(需要安装),然后执行以下操作:

from PIL import Image
img = Image.open("PATH TO IMAGE", "MODE (probably 'r')")
pixel = image.getpixel((x,y))

x、 y是像素坐标,您可以获得该像素的颜色。

您可以使用PIL库中的图像模块(需要安装),然后执行以下操作:

from PIL import Image
img = Image.open("PATH TO IMAGE", "MODE (probably 'r')")
pixel = image.getpixel((x,y))

x、 y是像素坐标,您可以获得该像素的颜色。

您可以使用PIL库中的图像模块(需要安装),然后执行以下操作:

from PIL import Image
img = Image.open("PATH TO IMAGE", "MODE (probably 'r')")
pixel = image.getpixel((x,y))

x、 y是像素坐标,您可以获得该像素的颜色。

您可以使用PIL库中的图像模块(需要安装),然后执行以下操作:

from PIL import Image
img = Image.open("PATH TO IMAGE", "MODE (probably 'r')")
pixel = image.getpixel((x,y))
x、 y是像素坐标,您可以获得该像素的颜色。

您可以使用,它附带了许多:

来自scipy导入杂项
img=misc.imread(“lena.bmp”)
您可以轻松访问像素,例如第10行和第15列:

print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0
(在本例中,我使用的是来自的“Lena”测试图像。)


根据图像格式,您可能希望将其从RGB彩色图像转换为灰度:

img = img.mean(axis = 2)
print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0

如果需要将
uint8
像素值缩放到范围[0..1]:

img = (img / 255).round()
print img[10, 15], img[10, 6]
输出:

[188 101  71]
120.0
0.0 1.0
您可以使用,它附带了许多:

来自scipy导入杂项
img=misc.imread(“lena.bmp”)
您可以轻松访问像素,例如第10行和第15列:

print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0
(在本例中,我使用的是来自的“Lena”测试图像。)


根据图像格式,您可能希望将其从RGB彩色图像转换为灰度:

img = img.mean(axis = 2)
print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0

如果需要将
uint8
像素值缩放到范围[0..1]:

img = (img / 255).round()
print img[10, 15], img[10, 6]
输出:

[188 101  71]
120.0
0.0 1.0
您可以使用,它附带了许多:

来自scipy导入杂项
img=misc.imread(“lena.bmp”)
您可以轻松访问像素,例如第10行和第15列:

print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0
(在本例中,我使用的是来自的“Lena”测试图像。)


根据图像格式,您可能希望将其从RGB彩色图像转换为灰度:

img = img.mean(axis = 2)
print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0

如果需要将
uint8
像素值缩放到范围[0..1]:

img = (img / 255).round()
print img[10, 15], img[10, 6]
输出:

[188 101  71]
120.0
0.0 1.0
您可以使用,它附带了许多:

来自scipy导入杂项
img=misc.imread(“lena.bmp”)
您可以轻松访问像素,例如第10行和第15列:

print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0
(在本例中,我使用的是来自的“Lena”测试图像。)


根据图像格式,您可能希望将其从RGB彩色图像转换为灰度:

img = img.mean(axis = 2)
print img[10, 15]
输出:

[188 101  71]
120.0
0.0 1.0

如果需要将
uint8
像素值缩放到范围[0..1]:

img = (img / 255).round()
print img[10, 15], img[10, 6]
输出:

[188 101  71]
120.0
0.0 1.0

可以将imagine编码为文本文件吗?如果你不阅读和处理一个实际的图像文件,你会省去很多麻烦。你是说用1和0?是 啊这样我想我知道怎么做。但是我想用图像。画我的全新迷宫,让它自己解决,你明白了吗?你为什么不使用pygame或类似于“画”这些瓷砖的东西,然后像那样解决它们,你可以从所有白色瓷砖开始,然后单击你想要成为实心的瓷砖,然后解决这确实是一个解决方案。你知道有什么链接可以引导我通过这个吗?Pygame是一个巨大的库。您还可以使用PiL(Python图像库)加载图像并读取单个像素。imagine可以改为编码为文本文件吗?如果你不阅读和处理一个实际的图像文件,你会省去很多麻烦。你是说用1和0?是 啊这样我想我知道怎么做。但是我想用图像。画我的全新迷宫,让它自己解决,你明白了吗?你为什么不使用pygame或类似于“画”这些瓷砖的东西,然后像那样解决它们,你可以从所有白色瓷砖开始,然后单击你想要成为实心的瓷砖,然后解决这确实是一个解决方案。你知道有什么链接可以引导我通过这个吗?Pygame是一个巨大的库。您还可以使用PiL(Python图像库)加载图像并读取单个像素。imagine可以改为编码为文本文件吗?如果你不阅读和处理一个实际的图像文件,你会省去很多麻烦。你是说用1和0?是 啊这样我想我知道怎么做。但是我想用图像。画我的全新迷宫,让它自己解决,你明白了吗?你为什么不使用pygame或类似于“画”这些瓷砖的东西,然后像那样解决它们,你可以从所有白色瓷砖开始,然后单击你想要成为实心的瓷砖,然后解决这确实是一个解决方案。你知道有什么链接可以引导我通过这个吗?Pygame是一个巨大的库。您还可以使用PiL(Python图像库)加载图像并读取单个像素。imagine可以改为编码为文本文件吗?如果你不阅读和处理一个实际的图像文件,你会省去很多麻烦。你是说用1和0?是 啊这样我想我知道怎么做。但是我想用图像。画出我的新迷宫,让它自己解决,你明白了吗?你为什么不使用pygame或类似于“画”这些瓷砖的东西,然后像那样解决它们,你可以从所有的白色瓷砖开始