当前位置: 首页 > news >正文

如何将MNIST数据集数据图像可视化

1 问题

怎么将MNIST数据集里的数字图像数据可视化?

2 方法

基于pytorch框架,torchvision.datasets.MNIST导入数据集,对图片数据进行预处理以及使用matplotlib可视化。

步骤:

  1. import 文件
    from torchvision import datasets
    import matplotlib.pyplot as plt
    import os
    import numpy as np
  2. 导入数据
    #训练集
    train_ds =datasets.MNIST(
        root='data',#说明数据集下载的路径
        download=True,
        train=True
    )
    #测试集
    test_ds=datasets.MNIST(
        root='data',
        download=True,
        train=False
  3. 可视化

ds_images,ds_targets=(test_ds._load_data())

fig = plt.figure()#生成图框

for i,c in enumerate(np.random.randint(0,1000,25)):#随机取0,1000里的25张图片

    plt.subplot(5,5,i+1)

    plt.tight_layout()#调整间距

    plt.imshow(ds_images[c], interpolation='none')

    plt.title("数字标签: {}".format(ds_targets[c]))

    plt.rcParams['font.sans-serif']=['SimHei']

plt.show()

_load_data 返回 data 和 target 正是我们所需得到的图像和标记、

可视化结果:

f2853cef6dc9ffc72570841063a4343d.png

3 结语

针对该问题使用了基于pytorch框架,torchvision.datasets.MNIST导入数据集,用test_ds._load_data来获取图字的标记数字,用matplotlib来进行图像可视化显示。

相关文章:

  • 毫米波雷达在检测、分割、深度估计等多个方向的近期工作及简要介绍
  • LeetCode0005.最长回文子串 Go语言AC笔记
  • JavaScript:JavaScript编程语言学习之基础知识(变量/类型/数组/运算符/标签函数对象)的简介、案例应用之详细攻略
  • TiDB 重要监控指标详解
  • 【web前端开发】前端生日礼物--注册页面篇
  • C++ Reference: Standard C++ Library reference: C Library: cmath
  • 康耐视InSight相机与西门子PLC关于Profinet通讯说明
  • JDK19新特性使用详解
  • 聊聊如何制作自定义ArcGIS Python工具箱
  • 数字图像处理-对比度调整背景相减
  • HTTP协议3)----对于网络层的详细讲解
  • [单片机框架][device层] charger 电源管理
  • [单片机框架][drivers层][bq25601] charger 电源管理
  • Java多线程--InheritableThreadLocal--使用/实例
  • java计算机毕业设计宿迁学院学生设计作品交流网站源代码+数据库+系统+lw文档
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • Babel配置的不完全指南
  • C++类的相互关联
  • Docker入门(二) - Dockerfile
  • React组件设计模式(一)
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 搞机器学习要哪些技能
  • 观察者模式实现非直接耦合
  • 两列自适应布局方案整理
  • 网络应用优化——时延与带宽
  • 想写好前端,先练好内功
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • gunicorn工作原理
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • $.ajax,axios,fetch三种ajax请求的区别
  • (09)Hive——CTE 公共表达式
  • (bean配置类的注解开发)学习Spring的第十三天
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (二)JAVA使用POI操作excel
  • (分布式缓存)Redis持久化
  • (四) Graphivz 颜色选择
  • (转)创业家杂志:UCWEB天使第一步
  • ../depcomp: line 571: exec: g++: not found
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .NET Framework与.NET Framework SDK有什么不同?
  • .Net FrameWork总结
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .php文件都打不开,打不开php文件怎么办
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • @Transaction注解失效的几种场景(附有示例代码)
  • [C++] new和delete
  • [C++基础]-入门知识
  • [Excel]如何找到非固定空白格數列的條件數據? 以月份報價表單為例
  • [iOS]-NSTimer与循环引用的理解
  • [java后端研发]——文件上传与下载(2种方式)
  • [LeetCode] 19. 删除链表的倒数第 N 个结点
  • [LeetCode] 596:超过5名学生的课
  • [LeetCode]—Longest Palindromic Substring 最长回文子串