# MATLAB数据管理代码
## 介绍
自定义用于读取matlab数据的类,仿照pytorch设计
## 软件需求
### 数据库类
不论什么样的数据格式输入,都有同一的数据输出接口。包括对数据和对应标签的索引;数据总长度;
目前输入数据类型有两种:
- 一种是一类数据都保存在一个mat文件中,文件名是数据的label;
- 另外一种是每个样本保存为一个mat文件,所有相同label的文件保存在一个用label命名的文件夹中。
### 数据管理类
以数据库类为输入,可以按照要求输出批量数据:
- 自定义批量大小
- 自定义是否打乱数据
- 查询数据输出是否结束
- 查询批数据个数
## 软件架构设计
### 数据库类函数
#### MatDataSet
MatDataSet类继承自handle基类。可以实现的功能有:
- 给定文件夹路径,读取文件夹内所有的mat文件,并且提取文件名、文件路径、进行one-hot编码;
- 默认提取所有mat文件,也可以指定mat文件;
- 可以对数据索引;
- 可以计算样本个数;
- 可以对数据可视化
(1) properties
- public
- file_info
- selected_matfile
- data
- label
- private
- trans_len
(2) methods
- get_item():
- len():
- plot()
> Class: obj = MatDataSet(file_path, 'selected_file', [ ], 'trans_len', 0)
---
提取给定文件夹下的指定文件,构成一个数据集。
参数:
- file_path (str) - 存放所有mat文件的文件夹
- selected_file (string array, string) - 需要使用的数据的名称(一定要与file_path下文件名相同,但是不需要后缀)
- trans_len (int) - 读取样本随机平移量,默认为0,样本不平移。
输出:
MatDataSet对象
> func: [x, y] = get_item(obj, index)
---
对数据集中的数据进行索引。
参数:
- obj - MatDataSet对象
- index (int or int vector) - 索引值
输出 :
- x - HRRP,第一个维度是距离,第二维度是极化通道,第三个维度是HRRP序号。
- y - 样本标签,第一个维度是HRRP序号,第二个维度是编码。
> func: L = len(obj)
---
计算数据集中样本数量。
> func: plot(obj, index)
---
绘制数据集中index对应样本的HRRP。
### 数据库管理类函数
#### MatDataLoader
从DataSet类中,按照一定批大小,读取数据。需要实现的功能有:
- 读取批量数据
- 打乱数据
properties
- shuffle
- batch_size
- drop_last
methods
- read()
自定义用于读取matlab数据的类,仿照pytorch设计.rar
需积分: 5 13 浏览量
2023-07-17
06:41:25
上传
评论
收藏 658KB RAR 举报
野生的大熊
- 粉丝: 230
- 资源: 247
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈