如何将 .npy 文件存储为包含图像的文件夹
How to store .npy file as a folder containing images
我正在使用 GRAD-CAM 模块,该模块首先将文件夹中的图像转换为数组 X,然后在对 .npy 文件执行操作之后。但我想让这个数组以图像格式恢复并存储在一个文件夹中。我该如何继续?
dir_path = '/content/drive/MyDrive/Datasets/ircad/raw/Original_sliced_train/'
files = os.listdir(dir_path)
N = len(files)
X = np.empty((N, H, W, 3))
for i, file in enumerate(files):
x = image.load_img(dir_path + file, target_size=(H, W))
X[i] = image.img_to_array(x)
X = preprocess_input(X)
top = np.argmax(model.predict(X), 1)
gradcam = np.empty((X.shape[:-1]))
batch_size = 32
for i in range((N + batch_size - 1) // batch_size):
start = i * batch_size
end = min((i+1) * batch_size, N)
gradcam[start:end] = grad_cam_batch(model, X[start:end], top[start:end], 'block5_conv3')
gradcam.tofile('gradcam.npy')
如果我没理解错的话,您想将 gradcam 的输出保存为图像而不是 .npy,对吗?
在这种情况下,您可以将最后一行代码替换为 cv2.imwrite("gradcam.png",gradcam)
,但您必须 import cv2
.
我正在使用 GRAD-CAM 模块,该模块首先将文件夹中的图像转换为数组 X,然后在对 .npy 文件执行操作之后。但我想让这个数组以图像格式恢复并存储在一个文件夹中。我该如何继续?
dir_path = '/content/drive/MyDrive/Datasets/ircad/raw/Original_sliced_train/'
files = os.listdir(dir_path)
N = len(files)
X = np.empty((N, H, W, 3))
for i, file in enumerate(files):
x = image.load_img(dir_path + file, target_size=(H, W))
X[i] = image.img_to_array(x)
X = preprocess_input(X)
top = np.argmax(model.predict(X), 1)
gradcam = np.empty((X.shape[:-1]))
batch_size = 32
for i in range((N + batch_size - 1) // batch_size):
start = i * batch_size
end = min((i+1) * batch_size, N)
gradcam[start:end] = grad_cam_batch(model, X[start:end], top[start:end], 'block5_conv3')
gradcam.tofile('gradcam.npy')
如果我没理解错的话,您想将 gradcam 的输出保存为图像而不是 .npy,对吗?
在这种情况下,您可以将最后一行代码替换为 cv2.imwrite("gradcam.png",gradcam)
,但您必须 import cv2
.