将图像和对应的标签转化成会h5py文件
只是简单的记录一下自己写的小程序,程序比较简单,有问题可以问一下,但是就不做过多的解释了。
我的数据集的格式是,每个文件夹名称也即是图像对应的标签
相关代码:
# -*- coding: utf-8 -*-
# @Time : 2019/6/23 11:40
# @Author : YYLin
# @Email : 854280599@qq.com
# @File : save_and_load_h5py.py
import os
import numpy as np
import cv2
import h5py# 加载数据集中的文件
def save_image_to_h5py(path):img_list = []label_list = []dir_counter = 0num_for_test = 0for child_dir in os.listdir(path):child_path = os.path.join(path, child_dir)# print('文件中的子文件名是:\n', child_path)# 总共有9个文件夹 第一个文件夹加载10文件 其他文件夹中加载1个文件for dir_image in os.listdir(child_path):# print('dir_image中图像的名称是:\n', dir_image)img = cv2.imread(os.path.join(child_path, dir_image))# img =cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)#单通道,分辨率会下降img_list.append(img)label_list.append(dir_counter)if num_for_test > 10:breaknum_for_test = num_for_test + 1# 返回的img_list转成了 np.array的格式dir_counter += 1img_np = np.array(img_list)label_np = np.array(label_list)print('数据集中原始的标签顺序是:\n', label_np)f = h5py.File('hdf5_file.h5', 'w')f['image'] = img_npf['labels'] = label_npf.close()save_image_to_h5py('../Dataset/baidu/train_image/train')# 加载hdpy成np的形式
def load_h5py_to_np(path):h5_file = h5py.File(path, 'r')print('打印一下h5py中有哪些关键字', h5_file.keys())permutation = np.random.permutation(len(h5_file['labels']))shuffled_image = h5_file['image'][:][permutation, :, :, :]shuffled_label = h5_file['labels'][:][permutation]print('经过打乱之后数据集中的标签顺序是:\n', shuffled_label, len(h5_file['labels']))return shuffled_image, shuffled_labelimages, labels = load_h5py_to_np('hdf5_file.h5')for i, image in enumerate(images):cv2.imwrite("filename.png", image)
将图像和对应的标签转化成会h5py文件相关推荐
- R语言可视化斜率图、扩充图像纵横比为数据标签显示更整齐、ggrepel包来帮忙
R语言可视化斜率图.扩充图像纵横比为数据标签显示更整齐.ggrepel包来帮忙 目录
- TensorFlow学习笔记(二)把数字标签转化成onehot标签
在MNIST手写字数据集中,我们导入的数据和标签都是预先处理好的,但是在实际的训练中,数据和标签往往需要自己进行处理. 以手写数字识别为例,我们需要将0-9共十个数字标签转化成onehot标签.例如: ...
- 电气领域-输电线路杆塔鸟巢检测图像数据(含标签,原始图像未经扩充)
输电线路杆塔鸟巢图像数据集 下载地址:输电线路鸟巢图像数据集(含标签)
- html页面包含头文件,Web前端技术:HTML部分---Head标签中包含的头文件标签,body标签包含的内部标签...
1.Head标签中包含的 头文件标签的作用: (1)title标签:定义网页的标题. (2)meta标签:一般用于定义页面的特殊信息,例如页面的关键字.页面描述等 (3)link标签:用于引入外部样式 ...
- [html] 使用a标签的download属性下载文件会有跨域问题吗?如何解决?
[html] 使用a标签的download属性下载文件会有跨域问题吗?如何解决? 最近刚遇到这个问题,后台返回的图片链接,点击按钮批量下载,a标签的 download 属性只对同源文件有效, 所以我们 ...
- JavaGUI编程 -- Swing之Icon、ImageIcon标签获取当前类同一级文件路径的资源
1. Swing之Icon.ImageIcon标签&获取当前类同一级文件路径的资源 1.1 Icon标签 这个是使用画笔画自己心怡的图标 示例: package GUI.Swing;impor ...
- control转化成XPS类型文件,再由XPS转化成PDF
要将WPF的control转化成PDF的话,你需要先将你的WPF control转化成XPS类型文件,然后,再由XPS转化成PDF.试试这个转化XPS到PDF的Converter:NiXPS. 添加C ...
- 标签打印软件输出PDF文件过大时如何解决?
在用标签打印软件制作标签输出PDF文件时,如果数据过多可能会出现输出的PDF文件过大,这种情况如何解决呢?在标签打印软件中,输出PDF文件时可以对PDF文件进行压缩和拆分,压缩方式有六种,分别为:默认 ...
- 将图片快速批量转化成PDF格式文件
有时需要将图片快速批量转化成PDF格式文件,要求多个图片合并为一个PDF文件,有没有一个支持多种格式的JPG转换成PDF转换器,能够兼顾解决Office PDF格式间的转换问题? 通过下载测试过不同的 ...
最新文章
- python 列表算平均分_python平均列表
- IoC容器Autofac(1) -- 什么是IoC以及理解为什么要使用Ioc
- Codeforces Round #630 (Div. 2) A~D【思维,数论,字符串,位运算】
- 重写Notification有感~~
- MTK6573电源管理(PM)小结
- 看雪学院课程《汇编语言详解与二进制漏洞初阶》笔记
- 研究人员的AI技术能够实时匹配活页乐谱与MIDI音频
- BufferFsStream
- C和汇编混合编程--------函数调用后ebp、esp值问题
- sql server2008如果表中已经有很多条记录,再添加一个非空字段
- 网外(Internet)访问代理服务器内部的实现方法
- Python文本数据及其可视化
- HTML页面基本结构浅谈
- 【唯美·音乐】唯美舒缓钢琴曲,给你心灵最深处的宁静
- 北京编程女子图鉴,谁说女子不如男
- java开发环境变量的配置
- win10更新后任务栏卡死 的原因和解决办法
- js引擎渲染php,主流浏览器内核及JS引擎
- 微信分账:分账接收方列表格式错误
- 怎么拍照识别植物的名称呢?教大家一个识别小妙招