如何使用带有 numpy.load() 的图像 jpg
How to use image jpg with numpy.load()
我尝试使用 colab 实现 this code:
x = np.load('data_sample.npy',allow_pickle=True)
stacked_x = np.concatenate([x,x,x],1)
stacked_x.shape
但我的样本是 jpg 格式的图像,所以我无法将这些图像转换为 .npy 以使用它。
实际上,我试过这个代码:
import numpy as np
array = np.asarray('image.JPG')
print(array.tobytes())
print(array)
x = np.load(array,allow_pickle=True)
stacked_x = np.concatenate([x,x,x],1)
stacked_x.shape
print(x)
但我得到了:
当我使用此代码时:
x = np.load(array.tobytes(),allow_pickle=True)
我得到了:
所以,有什么解决这个问题的建议,准确地将 .jpg 转换为 .npy?
看看你的代码做了什么:
In [57]: np.asarray('image.JPG')
Out[57]: array('image.JPG', dtype='<U9')
In [58]: np.asarray('image.JPG').tobytes()
Out[58]: b'i\x00\x00\x00m\x00\x00\x00a\x00\x00\x00g\x00\x00\x00e\x00\x00\x00.\x00\x00\x00J\x00\x00\x00P\x00\x00\x00G\x00\x00\x00'
那只是在玩弦。它没有对名为“image.JPG”的文件执行任何操作。您需要使用某种 image
处理包来首先加载文件,将其从压缩格式转换为 3d 数组。
np.load
用于加载由 np.save('file.npy')
创建的文件。将 array
变量作为文件名是没有意义的。它不会加载 jpg
文件。
np.load('file.npy',allow_pickle=True)
我尝试使用 colab 实现 this code:
x = np.load('data_sample.npy',allow_pickle=True)
stacked_x = np.concatenate([x,x,x],1)
stacked_x.shape
但我的样本是 jpg 格式的图像,所以我无法将这些图像转换为 .npy 以使用它。
实际上,我试过这个代码:
import numpy as np
array = np.asarray('image.JPG')
print(array.tobytes())
print(array)
x = np.load(array,allow_pickle=True)
stacked_x = np.concatenate([x,x,x],1)
stacked_x.shape
print(x)
但我得到了:
当我使用此代码时:
x = np.load(array.tobytes(),allow_pickle=True)
我得到了:
所以,有什么解决这个问题的建议,准确地将 .jpg 转换为 .npy?
看看你的代码做了什么:
In [57]: np.asarray('image.JPG')
Out[57]: array('image.JPG', dtype='<U9')
In [58]: np.asarray('image.JPG').tobytes()
Out[58]: b'i\x00\x00\x00m\x00\x00\x00a\x00\x00\x00g\x00\x00\x00e\x00\x00\x00.\x00\x00\x00J\x00\x00\x00P\x00\x00\x00G\x00\x00\x00'
那只是在玩弦。它没有对名为“image.JPG”的文件执行任何操作。您需要使用某种 image
处理包来首先加载文件,将其从压缩格式转换为 3d 数组。
np.load
用于加载由 np.save('file.npy')
创建的文件。将 array
变量作为文件名是没有意义的。它不会加载 jpg
文件。
np.load('file.npy',allow_pickle=True)