【发布时间】:2018-03-14 08:21:52
【问题描述】:
我正在阅读一张图片(图片尺寸不是 224*224)并且是这种类型:
def fetch_from_s3(client, image_s3url):
bucket, key = image_s3url.split('/',2)[-1].split('/',1)
result = client.get_object(Bucket=bucket, Key=key)
return result['Body'].read()
img =fetch_from_s3(client, image_s3url)
#
print(img)
>>
'\xff\xd8\xff\xdb\x00C\x00\....'
我需要什么:将其转换为 224*224 图像,然后转换为 numpy 数组。
我有一个耗时的方法:
- 另存为jpg文件
- 将jpg转成224*224,再转成numpy数组
- 删除这个jpg文件
由于我要处理数百万张图像,我希望找到一种方法来跳过第 1 步和第 3 步,因为它们需要很多额外的时间。
有没有办法直接将任意二进制图像文件转换为代表 224*224 图像的 numpy 数组?
【问题讨论】:
-
有依赖于操作系统的工具来调整文件大小;我怀疑对您来说最好的方法是使用其中一种转换输入目录;使用您的操作系统名称作为参数之一进行搜索。
标签: python numpy amazon-s3 amazon-ec2