多张图片转成一个.npy文件存储

简介: 多张图片转成一个.npy文件存储

我最近做的实验需要把都是图片的数据集转成numpy形式存储,然后放入模型训练。

首先要有一个.csv文件,这个文件存放了训练集中所有图片的名字和所属类别,共两列,这个文件在下载某些数据集的时候会自带或者有处理好的让你下载,但也可以自己生成,可以看这里(要点三)

import pandas as pd
import cv2
import numpy as np
#读取存有图片名和对应类别名的.csv文件
train = pd.read_csv('train_new.csv')
#print(train)
#创建一个空的列表,后面用来存放训练集中的每张图片
train_image = []
'''
csv文件总共两列,一列图片名,一列对应类别名,这里就是遍历图片名,总共2408张
'''
for i in range(train.shape[0]):#2408
    #加载图像,这里进入文件夹下,遍历csv文件中列名为'image'的列,即图片名,进而读取图片
    img_cv2 = cv2.imread('train_1_50/'+train['image'][i])
    #将目标大小设置为(224,224,3)
    image  = cv2.resize(img_cv2,(224,224),interpolation=cv2.INTER_AREA)
    #像素值归一化
    img = image / 255
    #把图像加入train_image列表
    train_image.append(img)
# 将列表转为numpy数组
X = np.array(train_image)#train_image中有2408张图片,都是numpy格式
# 查看数组的大小
print(X.shape)
# 查看数组
print(X)

参考博文里大佬加载图像和设置图片大小是一行代码完成的,但用image.load_img读取的只是图片,然后再转成numpy形式,而cv2.imread可以一步完成。(我为什么要换呢,因为大佬的方式在我这里一直报错,我解决不了,私信大佬也不理我,555.。。)

# 加载图像,并将目标大小设置为(224,224,3)
img = image.load_img('train_1/'+train['image'][i], target_size=(224,224,3))
# 将其转换为数组
img = image.img_to_array(img)

看下效果:

1ecd1b2606ed46e9956a89f231c9802c.png

这里好多0是因为我的图片都是从视频中提取出来的,提取的有些图片正好上一帧下一帧的切换,故是黑色的,没有值,再加上数组显示不完全。

1ecd1b2606ed46e9956a89f231c9802c.png

查看列表,就全部显示出来了。。。

参考博文

相关文章
|
文件存储 Android开发 数据安全/隐私保护
Android图片添加水印图片并把图片保存到文件存储
Android图片添加水印图片并把图片保存到文件存储 package zhangphil.test; import android.
1466 0
|
9月前
|
存储 弹性计算 监控
|
10月前
|
弹性计算 Linux DataWorks
阿里云ecs搭建简易ftp服务器-用于DataWorks文件存储及依赖校验
很多企业客户在使用阿里云产品时,经常需要与FTP服务器进行文件交互,诸如跨IDC任务done文件依赖,跨账号、部门临时数据交互等场景。这里简要记录阿里云ecs搭建简易ftp服务器用于上述场景答疑的过程。
|
10月前
|
存储 弹性计算 并行计算
在高性能计算(HPC)场景下,阿里云存储的文件存储产品的实践
在高性能计算(HPC)场景下,阿里云存储的文件存储产品具有以下的应用需求和实践
324 4
|
12月前
|
文件存储
《阿里云产品手册2022-2023 版》——文件存储 NAS
《阿里云产品手册2022-2023 版》——文件存储 NAS
151 0
|
文件存储 容器
《阿里云文件存储 NAS 在容器场景的最佳实践》电子版地址
阿里云文件存储 NAS 在容器场景的最佳实践
170 0
《阿里云文件存储 NAS 在容器场景的最佳实践》电子版地址
|
存储 文件存储 容器
《拥抱容器存储,使用阿里云容器服务 ACK +文件存储 NAS 构建现代化企业应用》电子版地址
拥抱容器存储,使用阿里云容器服务 ACK +文件存储 NAS 构建现代化企业应用
183 0
《拥抱容器存储,使用阿里云容器服务 ACK +文件存储 NAS 构建现代化企业应用》电子版地址
|
文件存储 对象存储
使用阿里云oss进行文件存储代码实现
使用阿里云oss进行文件存储代码实现
|
存储 机器学习/深度学习 缓存
阿里云文件存储低频 NAS 和生命周期管理的全面技术解读
全面解读阿里云文件存储低频 NAS 和生命周期管理的知识宝典。阿里云文件存储推出了低频 NAS 存储,价格 0.15 元/GB/月,通过配置存储生命周期管理技术实现了全面降价,最高降幅可达 92%。
476 0
|
存储 弹性计算 人工智能
使用阿里云文件存储实现容器持久化存储
阿里云文件存储实现容器持久化存储的架构、最佳实践、应用场景以及案例。
7978 0
使用阿里云文件存储实现容器持久化存储