码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • PyTorch(四)Torchvision 与 Transforms


    文章目录

      • Log
    • 一、Torchvision
      • 1. CIFAR10
        • ① 介绍
        • ② 使用
      • 2. 与 Transforms 结合使用
    • 总结


    Log

    2022.11.28接着开启新的一章
    2022.11.29继续学习


    一、Torchvision

    • 视频教程中 Torchvision v0.9.0文档
    • Torchvision 官方文档
    • Torchvision Datasets API 文档

    1. CIFAR10

    ① 介绍

    • CIFAR10数据集介绍
    • 该数据集包括 60,000 张 32×32 像素的彩色图片,共有 10 个类别,每个类别有 6,000 张图像
    • 50,000 张是训练图片,10,000 张是测试图片
    • 图片示例如下:
      在这里插入图片描述

    ② 使用

    • 加载训练集和测试集:
    import torchvision
    
    train_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=True, download=True)
    test_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=False, download=True)
    
    • 1
    • 2
    • 3
    • 4
    • 其中的参数:
      • root:数据集的路径
      • train:如果为 True 则创建数据集,如果为 False 则创建测试集
      • download:为 True 则从网络上下载数据集到 root 路径下,如果该路径下已有数据集则不进行下载。
    • 输出测试集中的第一个:
    print(test_set[0])
    
    • 1
    • 得到:(, 3)。其中 3 代表的是该测试样例对应的映射到整数上的类别
    • 查看对应的类别:
    print(test_set.classes)
    ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
    
    • 1
    • 2
    • 将测试样例的图片和标签分开输出:
    img, target = test_set[0]
    print(img)		#
    print(target)	#3
    
    • 1
    • 2
    • 3
    • 先查看图片:
    img.show()
    
    • 1
    • 由于该数据集的图片是 32×32 像素的,所以不是很清晰:
      在这里插入图片描述

    • 再查看对应的类别的名称:

    print(test_set.classes[target])	# cat
    
    • 1

    2. 与 Transforms 结合使用

    • 在创建数据集的时候新增一个参数,用到上一章学到的内容将原始的 PIL 类型的图片转换成 ToTensor 类型的图片:
    dataset_transform = torchvision.transforms.Compose([
        torchvision.transforms.ToTensor()
    ])
    train_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=True, transform=dataset_transform, download=True)
    test_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=False, transform=dataset_transform, download=True)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 之后就可以将 ToTensor 类型的图片显示到 tensorboard 中了:
    writer = SummaryWriter("log-CIFAR10")
    for i in range(10):
        img, target = test_set[i]
        writer.add_image("test_set-CIFAR10", img, i)
    writer.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述


    总结

    • 本文以 C I F R 10 \rm CIFR10 CIFR10 为例介绍了 T o r c h v i s i o n \rm Torchvision Torchvision 中数据集的使用方法,以及如何结合 T r a n s f o r m s \rm Transforms Transforms 使用数据集。
  • 相关阅读:
    图信号处理论文
    51单片机的简易篮球计分器倒计时仿真设计( proteus仿真+程序+原理图+报告+讲解视频)
    Python零基础提问,如何获取下拉菜单中的数据和文本?
    IO子系统(一) — 块设备驱动程序
    算法趣题-Q34
    Mysql的order by
    Java岗秋招最全面试攻略,看这份Java架构面试核心手册,足够了
    BugKu_MISC_(4)
    Kubernetes数据卷Volume和数据卷分类(emptyDir、nfs、hostPath、ConfigMap)详解
    asp毕业设计——基于asp+sqlserver的个人网站建设设计与实现(毕业论文+程序源码)——个人网站建设
  • 原文地址:https://blog.csdn.net/weixin_53312629/article/details/127562083
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号