我想创建一个只接收黑白图块的应用程序。白色瓷砖意味着您可以移动的空间,而黑色瓷砖将是您无法移动的空间(可能是墙)
在这张图片中,我想定义一个起点和一个目标点(可能有不同的颜色,红色和黄色),所以我可以研究寻路问题
如何阅读图像并处理其中的信息?
就像那样:
我可以在图片中定义墙壁,起点,目标点,并且我想要阅读它的数据。我怎么能在python中做到这一点?
答案 0 :(得分:3)
您可以使用许多SciPy library附带的image processing tools:
from scipy import misc
img = misc.imread("lena.bmp")
您可以轻松访问像素,例如在第10行和第15行:
print img[10, 15]
输出:
[188 101 71]
(在本例中,我使用" Lena"来自here的测试图像。)
根据图像格式,您可能希望将其从RGB彩色图像转换为灰度图像:
img = img.mean(axis = 2)
print img[10, 15]
输出:
120.0
如果您需要将uint8
像素值缩放到范围[0..1]:
img = (img / 255).round()
print img[10, 15], img[10, 6]
输出:
0.0 1.0
答案 1 :(得分:0)
您可以使用PIL库中的Image模块(您需要安装),然后执行以下操作:
from PIL import Image
img = Image.open("PATH TO IMAGE", "MODE (probably 'r')")
pixel = image.getpixel((x,y))
x,y是像素坐标,您可以获得该像素的颜色。