ImageNet 数据集简介和数据预处理

您所在的位置:网站首页 数据集处理英文 ImageNet 数据集简介和数据预处理

ImageNet 数据集简介和数据预处理

2024-07-08 16:12:21| 来源: 网络整理| 查看: 265

本文主要涉及 ImageNet 数据集的简要介绍以及手把手教你从下载、预处理以及使用的全教程,欢迎交流。

 

 

 

什么是 ImageNet?

ImageNet 是一个计算机视觉系统识别项目,是目前世界上最大的图像识别数据库。此项目由斯坦福大学李飞飞等教授于 2009 年发起,当时在 CVPR2009 上发表了一篇名为「ImageNet:A Large-Scale Hierarchical Image Database」的论文,之后从 2010 至 2017 年举行了基于 ImageNet 数据集的比赛。

 

ImageNet 通过类似于 WordNet 层次结构组织图像数据。什么是 WordNet?WordNet 根据词条的意义将它们分组,每一个具有相同意义的字条组称为一个 synset,即同义词集合,WordNet 为每一个 synset 提供了简短概要的定义,并记录不同 synset 之间的语义关系。而 ImageNet 是一个基于 WordNet 主干结构的大规模图片库,ImageNet 旨在用平均 500 到 1000 张清晰分辨率的图片来说明 WordNet 中大多数同义词集合。

 

ImageNet 中目前共有 14,197,122 幅图像,总共分为 21,841 个类别(synsets),通常我们所说的 ImageNet 数据集其实是指 ISLVRC2012 比赛用的子数据集,其中 train 有 1,281,167 张照片和标签,共 1000 类,大概每类 1300 张图片,val 有 50,000 副图像,每类 50 个数据,test 有 100,000 副图片,每类 100 个数据。

 

比赛分为三个场景:图像分类(CLS)、目标定位(LOC)和目标检测(DET)。CLS:2010-2014 比赛中独立任务,2015 年与 LOC 合并,使用 top5。LOC:从 2011 年开始,2015 年与 CLS 合并为 CLS-LOC,单目标定位任务的数据与 CLS 任务包含相同的照片,照片数据手动标注图像是否存在 1000 个物体类别之一的实例,每张图片包含一个 gt 标签,该类别的每个实例都标注了边界框 bounding box,比赛中 IoU>0.5。

 

 

 

 

数据预处理

数据预处理主要分为两个主要步骤:

下载数据和我的数据预处理项目代码,将数据压缩包放置到下载好的项目指定目录下; 解压数据和按类别整理数据;

 

关于下载数据,目前 ImageNet 官网已停止免费下载数据,但我已经将 ILSVRC2012 数据集整理到百度云,链接如下:

训练集:ILSVRC2012_img_train.tar.gz,提取码:yoos; 验证集:ILSVRC2012_img_val.tar.gz,提取码:yl8m; 测试集:ILSVRC2012_img_test.tar.gz,提取码:jumt; 任务 1&2 的 devkit:ILSVRC2012_devkit_t12.tar,提取码:dw6i;

下载好数据和 devkit 后,便可开始数据预处理,详细代码可见我的 github repo:ImageNet_Pretrained,项目 clone 到本地之后,将上面下载好的四个压缩文件放置于 /database 目录下。

 

至于解压数据,请在 /database 目录下打开命令行,首先执行以下四条命令分别解压四个文件:

# mkdir train && cp ILSVRC2012_img_train.tar.gz train && cd train && tar -xvf *.gz && rm -rf *.gz && cd .. # mkdir val && cp ILSVRC2012_img_val.tar.gz val && cd val && tar -xvf *.gz && rm -rf *.gz && cd .. # mkdir test && cp ILSVRC2012_img_test.tar.gz test && cd test && tar -xvf *.gz && rm -rf *.gz && cd .. # tar -xvf ILSVRC2012_devkit_t12.tar

按上述步骤解压完后,在 /database 目录下将得到以下目录结构:

# --- /database # |--- ILSVRC2012_devkit_t12/ # |--- test/ # |--- train/ # | |--- n01440764.tar # | |--- n01443537.tar # | |--- ... # |--- val/ # | |--- ILSVRC2012_val_00000001.JPEG # | |--- ILSVRC2012_val_00000002.JPEG # | |--- ... # |--- ILSVRC2012_devkit_t12.tar # |--- ILSVRC2012_img_test.tar.gz # |--- ILSVRC2012_img_train.tar.gz # |--- ILSVRC2012_img_val.tar.gz

可见在 train/ 目录下还有待解压的文件,而 val/ 下的图片也需要进一步按类别建立文件夹管理:

# python3 preprocess_ilsvrc2012.py

之所以要处理成按类别建文件夹的形式,是因为后续使用 Pytorch 的 ImageFolder 加载数据时,ImageFolder 默认假设所有的文件按文件夹保存,每个文件夹下储存同一个类别的图片,文件夹名为类别名。

 

 

 

 

Crop & Resize

数据集在扔给网络模型做训练前还需要统一尺寸处理,一方面是 CNN 需要统一尺寸的输入,另一方面是可以有数据增强的效果。一般来说有 crop 和 resize 两个过程。

 

其中 crop 的方法有 single crop 和 multiple crops 两种:

single crop:先将图像 resize 到某个尺度,例如:256 x N(短边为256),然后 centercrop 成 224x224 作为模型的输入; multiple crops 的具体形式有多种,可自行指定,比如:1)10 crops:取(左上,左下,右上,右下,正中)以及它们的水平翻转,这 10 个 crops 作为 CNN 输入,最终取平均预测结果;2)144 crops:首先将图像 resize 到 4 个尺度:256xN,320xN,384xN,480xN,然后每个尺度上去取“最左”,“正中”,“最右”这 3 个位置的正方形区域,对每个正方形区域,取上述的 10 个 224x224 的 crops,则得到 4x3x10=120 个 crops,再对上述正方形区域直接 resize 到 224x224,以及做水平翻转,则又得到 4x3x2=24 个 crops,总共加起来就是 144 个 crops,输入到网络最后取平均预测结果;

测试时:

 

 

 

 

Ref:

 



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭