【学习pytorch 02】构建图像分类数据集

开源代码来自b站up主同济子豪兄,本文章仅记录学习开源代码的过程。

目录

一、构建自己的数据集 或者下载别人的数据集:

二、处理数据集:

删除系统自动生成的多余文件:

删除gif格式图像文件

三、对数据集进行分类

 四、对图像做处理

1.统计图像尺寸、比例分布

2.拍摄地点可视化

3.可视化文件夹中的图像

4.统计各类别的图像数量

五、关于上传本地数据集的方法和使用

 六————有了图像分类的数据集,就可以训练图像分类的算法了

不用写代码

要写代码


一、构建自己的数据集 或者下载别人的数据集

 运行这个代码就会通过url链接去下载这个zip文件。

解压文件的命令行:

!rm -rf 压缩包名称.zip

如果想再云服务器下载本地数据集呢?除了直接上传云之外,还可以生成一个url链接——url的知识详情见——

二、处理数据集:

删除系统自动生成的多余文件:

如果用mac/wins系统运行B1、B2代码,系统会自动地生成多余的文件,所以要查找再删除

为什么要删除——后面会把这些文件夹/文件看作是数据集的,会影响训练。

 # 通过find函数,以当前目录为根目录去递归地查找
!for i in `find . -iname '文件名'`;
# 然后用rm -rf删除
do rm -rf $i;done

是linux的知识,通过命令行去删除文件(注意,linux没有回收站的,删了就没有了)【学习pytorch 02】构建图像分类数据集_第1张图片

删除gif格式图像文件

原理:用opencv读入每一张图像

【学习pytorch 02】构建图像分类数据集_第2张图片

如果读入的img是None的话

就把它删除掉——用os.remove()

三、对数据集进行分类

将数据集又分成两个文件夹——文件夹里都还有原来的目录名字

训练集和测试集的图片是没有交际的。

过拟合——训练得很好,测试不行。(训练效果好——通过了足够的鲁棒分析)

 四、对图像做处理

1.统计图像尺寸、比例分布

【学习pytorch 02】构建图像分类数据集_第3张图片

【学习pytorch 02】构建图像分类数据集_第4张图片

这个数据集太大了,没跑完,应该可以再到下一个目录去 

 【学习pytorch 02】构建图像分类数据集_第5张图片

2.拍摄地点可视化

要先解析出EXIF地理信息——再解析出地理信息里的经纬度——输出可视化地图

(因为数据集中没有EXIF地理信息,所以没法做这一步)

3.可视化文件夹中的图像

【学习pytorch 02】构建图像分类数据集_第6张图片

9x9,苦瓜图——为什么选苦瓜?总之我爱学习…… 

4.统计各类别的图像数量

【学习pytorch 02】构建图像分类数据集_第7张图片

五、关于上传本地数据集的方法和使用

【学习pytorch 02】构建图像分类数据集_第8张图片

1.点击上传按钮,上传压缩包(如果不是压缩包就很直接了) ——页面下方有上传进度条,一定要等它上传完再操作

2.用!unzip的命令解压

*注:这里的链接可以被wget调用(但是因为我们都下载进去了,所以也不需要!wget命令了,能用wget命令下载的zip那是有服务器的,它这里就是openbayes的)

想通过百度网盘和阿里云的分享url并不行

【学习pytorch 02】构建图像分类数据集_第9张图片

 六————有了图像分类的数据集,就可以训练图像分类的算法了

不用写代码

  • 百度飞桨EasyDL

主页:EasyDL-零门槛AI开发平台

教程:AI一键生成论文标题学术灵感【ERNIE 3.0预训练大模型】_哔哩哔哩_bilibili

  • 华为云ModelArts一站式AI开发平台

主页:ModelArts_AI开发平台_机器学习_深度学习_EI企业智能_华为云

教程:人工智能助力乡村振兴:华为云ModelArts开发农作物病虫害识别应用_哔哩哔哩_bilibili

要写代码

  • 原生Pytorch

主页:PyTorch

  • OpenMMLab 之 MMClassification

主页:GitHub - open-mmlab/mmclassification: OpenMMLab Image Classification Toolbox and Benchmark

  • Fast.ai

主页:fast.ai - fast.ai—Making neural nets uncool again

  • 原生Tensorflow和Keras

(将做好的数据集上传上去,后台会自动帮我们训练图像分类的算法,并且能一键部署到公有云,我们就可以做一个图像分类的app了——拍照识图。后续还可以部署到手机、开发板上

你可能感兴趣的:(pytorch,学习)