深度学习学习日记4.13 灰度图 自定义dataset类 dataloader

1.图像分割数据的标签(灰度图的情况)

该图像是灰度图,且只有两种像素值

该中标签中图像的像素值有五种

2.在处理灰度图像时,通常会使用 numpy.squeeze() 函数去除可能存在的单通道。虽然灰度图像只有一个通道,但有时候图像数组的形状可能是 (height, width, 1),其中的额外的单通道可能会引起一些问题或不便。

3.自定义的Dataset类中,通常包含三个核心函数:

①__init__() 初始化函数,用于设置数据集的基本属性和参数。通常在这个函数中进行数据集的加载、预处理或其他初始化工作。

②__getitem__() 用于获取数据集中单个样本的函数。这个函数按照索引获取数据集中的样本,并根据需要对样本进行预处理、转换等操作,并返回处理后得样本。这个函数允许通过索引访问数据集中得每个元素,使得数据集可以迭代访问

③__len__()返回数据集得长度
目的 为了将数据处理得更好,并将其准备好以供神经网络进行训练。
通过自定义 Dataset 类,可以实现数据的加载、预处理、转换等操作,以确保数据在输入到神经网络之前处于适当的格式和状态。
自定义 Dataset 类完成了数据处理和准备工作,接着使用 PyTorch 或其他深度学习框架提供的 DataLoader 将数据传递给神经网络模型进行训练。DataLoader 负责对数据进行批处理、随机化和并行化处理,以提高训练效率,并确保模型能够高效地从数据中学习。

4.dataloader

dataset:只有dataset没有默认值,只需要将之前自定义的dataset实例化,再放到dataloader中即可

batch_size:每次抓牌抓几张

shuffle:打乱与否,值为True的话两次打牌时牌的顺序是不一样。默认为False,但一般用True

num_workers:加载数据时采用单个进程还是多个进程,多进程的话速度相对较快,默认为0(主进程加载)。Windows系统下该值>0会有问题(报错提示:BrokenPipeError)

drop_last:100张牌每次取3张,最后会余下1张,这时剩下的这张牌是舍去还是不舍去。值为True代表舍去这张牌、不取出,False代表要取出该张牌
原文链接:https://blog.csdn.net/m0_57787115/article/details/129721708

相关推荐
FL16238631292 分钟前
[数据集][目标检测]车油口挡板开关闭合检测数据集VOC+YOLO格式138张2类别
人工智能·yolo·目标检测
YesPMP平台官方5 分钟前
AI+教育|拥抱AI智能科技,让课堂更生动高效
人工智能·科技·ai·数据分析·软件开发·教育
李小星同志10 分钟前
高级算法设计与分析 学习笔记6 B树
笔记·学习
霜晨月c21 分钟前
MFC 使用细节
笔记·学习·mfc
FL162386312930 分钟前
AI健身体能测试之基于paddlehub实现引体向上计数个数统计
人工智能
黑客-雨33 分钟前
构建你的AI职业生涯:从基础知识到专业实践的路线图
人工智能·产品经理·ai大模型·ai产品经理·大模型学习·大模型入门·大模型教程
小江湖199435 分钟前
元数据保护者,Caesium压缩不丢重要信息
运维·学习·软件需求·改行学it
子午35 分钟前
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
人工智能·python·cnn
大耳朵爱学习1 小时前
掌握Transformer之注意力为什么有效
人工智能·深度学习·自然语言处理·大模型·llm·transformer·大语言模型
TAICHIFEI1 小时前
目标检测-数据集
人工智能·目标检测·目标跟踪