python - 如何将 .npy 文件存储为包含图像的文件夹
问题描述
我正在使用 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
。
推荐阅读
- java - 如何缓存从 Java 中的 URL 下载的图像?
- java - MySQL Workbench 和 Java 中的查询结果不同(通过 JDBC)
- java - 我需要将搜索栏值设置为 -100 到 100 仅用于用户显示
- php - PHP:关于公共 URL 和查询的初学者问题
- log4j - Log4j 1.x 到 Log4j 2.1.1 迁移问题
- javascript - 无法更改 js 代码。如何在js循环中调用函数或编写函数
- nginx - 如果在配置中指定了特定的 query_string,Nginx 会更改根目录
- kubernetes - 从 kubernetes 访问 GCP Memorystore
- mysql - 在mysql中如何打印:仅在一个查询中
- java - JPA/休眠行锁