如何在Julia中将图像写入字符串?

时间:2019-05-10 01:31:31

标签: string image encoding julia

我想将目录“ x.png”中的图像编码为StringArray{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}

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可能会有所不同字节)。