【发布时间】:2019-03-13 22:19:48
【问题描述】:
我的函数的工作流程如下:
- 通过 python 获取请求检索 jpg
- 在磁盘上将图像保存为 png(即使下载为 jpg)
- 使用 imageio 读取磁盘映像并将其转换为 numpy 数组
- 使用数组
这就是我要做的保存:
response = requests.get(urlstring, params=params)
if response.status_code == 200:
with open('PATH%d.png' % imagenumber, 'wb') as output:
output.write(response.content)
这就是我将 png 加载并转换为 np.array 的操作
imagearray = im.imread('PATH%d.png' % imagenumber)
由于我不需要永久存储我下载的内容,因此我尝试修改我的函数,以便直接将 response.content 转换为 Numpy 数组。不幸的是,每个类似 imageio 的库都以相同的方式从磁盘读取 uri 并将其转换为 np.array。
我试过了,但显然它不起作用,因为它需要一个 uri 输入
response = requests.get(urlstring, params=params)
imagearray = im.imread(response.content))
有什么办法可以解决这个问题吗?如何在 np.array 中转换我的 response.content?
【问题讨论】:
-
将其保存为 .png 不会使其成为 PNG 文件...
-
@Benjamin 我知道,但实际上这不是问题。我只是按照我用来下载图像的 API 的说明进行操作;他们使用 png 格式下载,即使他们为我特别需要的图像发送 jpg。
标签: arrays python-3.x numpy python-requests python-imageio