所以,我试图将黑白图像转换为相应的矩阵。我已经使用该建议转换为此答案中给出的矩阵表示。
How to see the whole matrix of an image in python?
我得到的相应json文件主要由[1.0, 1.0, 1.0]
组成。由于大部分论文是白色的,我假设[1.0, 1.0, 1.0]
代表白色。但是怎么样呢?白色由[255, 255, 255]
表示。那究竟发生了什么?
答案 0 :(得分:1)
这是一张RGB图像。最简单的方法是使用PIL.Image模块和numpy
from PIL import Image
import numpy as np
img = Image.open(PATH_TO_IMAGE)
img_as_matrix = np.array(img)
np.savetxt('imagematrix.txt', img_as_mtrix, delimiter=" ", fmt="%s")
答案 1 :(得分:1)
从the docu暗示,MxNx3维度的结果意味着RGB编码。剩下要做的唯一事情是将他们的表示(float[0..1]
)变成你想要的那个(int[0..255]
):
with open('your_image.png', 'r') as img:
image_as_floats = json.load(img)
image_as_ints = [[int(r*255), int(g*255), int(b*255)] for r, g, b, in image_as_floats]
with open('your_image_2.png', 'w') as img:
img.write(json.dumps(img))