我想将目录“ x.png”中的图像编码为String
或Array{UInt8, 1}
。
我正在用Julia编写代码以使用protobufs序列化图像。它要求图像经过编码 字符串格式。
在Python中,操作如下。我正在寻找朱莉娅的类似功能。
from PIL import Image
img = Image.load('x.png')
import io
output = io.BytesIO()
img.save(output, 'PNG')
img_string_data = output.getvalue()
output.close()
输出可能是String
对象或Array{UInt8, 1}
答案 0 :(得分:2)
在Julia中,您可以通过编写以下内容来实现:
img_string_data = read("x.png")
img_string_data
现在是Vector{UInt8}
。您还可以编写read("x.png", String)
来获得String
(尽管它可能主要包含无效字符,但它没什么用)。
Julia解决方案和您的Python解决方案之间有一个区别。 Julia方法将在img_string_data
中存储与"x.png"
在二进制级别上保持的内容相同的内容,而您的Python解决方案将存储相同的图像,但是在二进制级别上可能会有所不同(即PIL
可能会有所不同字节)。