ImageNet 2012 数据集的下载与处理 您所在的位置:网站首页 imagenet网站 ImageNet 2012 数据集的下载与处理

ImageNet 2012 数据集的下载与处理

2023-09-26 01:23| 来源: 网络整理| 查看: 265

ImageNet 2012 数据集的下载与处理 ImageNet的介绍

ImageNet数据集是一个计算机视觉数据集,是由斯坦福大学的李飞飞教授带领创建。该数据集包合 14,197,122张图片和21,841个Synset索引。 ImageNet数据集一直是评估图像分类算法性能的基准。 ImageNet数据集里总共有1000个类别。

ImageNet的下载 1、百度网盘链接:

链接:链接: https://pan.baidu.com/s/1zYImC0YZZ4EXGOkITIyleg 提取码: fbn3

2、具体介绍 在这里插入图片描述 数据集包含1000类对象的图像。这些类别一一对应于WordNet中1000个synsets (同义词名词集)。 仅供分类和定位任务使用: 图片:

训练集 ILSVRC2012_img_train、验证集 ILSVRC2012_img_val.tar、测试集 ILSVRC2012_img_test.tar 开发包: ILSVRC2012_devkit_t12.tar

类名 imagenet-classes.txt

ImageNet的处理(Linux)

1、对ILSVRC2012_img_train文件夹的处理

在当前文件夹中新建 train 文件夹,将当前文件夹中的压缩包复制到 train 文件中;进入 train 文件夹中,解压压缩包并且删除;解压之后得到多个压缩文件,继续解压,创建对应的文件夹来保存解压出来的图片。处理命令如下 mkdir train cp ./ILSVRC2012_img_train/*.tar ./train cd train find . -name "*.tar" | while read NAME ; do mkdir -p "${NAME%.tar}"; tar -xvf "${NAME}" -C "${NAME%.tar}"; rm -f "${NAME}"; done cd ..

2、对ILSVRC2012_img_val.tar 的处理

分为两部分

在当前文件夹中新建 val 文件夹,将当前文件夹中的压缩包复制到 val 文件中;进入 val 文件夹中,解压压缩包并且删除;解压出来全部图片; mkdir val cp ./ILSVRC2012_img_val.tar ./val cd val tar -xvf ILSVRC2012_img_val.tar && rm -f ILSVRC2012_img_val.tar cd .. # 解压ILSVRC2012_devkit_t12.tar tar -xvf IILSVRC2012_devkit_t12.tar 根据 Development kit(Task 1 & 2) 中的文件对 val 数据集图片进行归档.

在同一级目录创建valprep.py文件,

from scipy import io import os import shutil def move_valimg(val_dir='./val', devkit_dir='./ILSVRC2012_devkit_t12'): """ move valimg to correspongding folders. val_id(start from 1) -> ILSVRC_ID(start from 1) -> WIND organize like: /val /n01440764 images /n01443537 images ..... """ # load synset, val ground truth and val images list synset = io.loadmat(os.path.join(devkit_dir, 'data', 'meta.mat')) ground_truth = open(os.path.join(devkit_dir, 'data', 'ILSVRC2012_validation_ground_truth.txt')) lines = ground_truth.readlines() labels = [int(line[:-1]) for line in lines] root, _, filenames = next(os.walk(val_dir)) for filename in filenames: # val image name -> ILSVRC ID -> WIND val_id = int(filename.split('.')[0].split('_')[-1]) ILSVRC_ID = labels[val_id-1] WIND = synset['synsets'][ILSVRC_ID-1][0][1][0] print("val_id:%d, ILSVRC_ID:%d, WIND:%s" % (val_id, ILSVRC_ID, WIND)) # move val images output_dir = os.path.join(root, WIND) if os.path.isdir(output_dir): pass else: os.mkdir(output_dir) shutil.move(os.path.join(root, filename), os.path.join(output_dir, filename)) if __name__ == "__main__": move_valimg()

3、对ILSVRC2012_img_test.tar 的处理

在当前文件夹中新建 test 文件夹,将当前文件夹中的压缩包复制到 test 文件中;进入 test 文件夹中,解压压缩包并且删除;解压出来全部图片。 mkdir val cp ./ILSVRC2012_img_test.tar ./val cd val tar -xvf ILSVRC2012_img_test.tar && rm -f ILSVRC2012_img_test.tar cd ..

最后,将train、val、test放在同一目录(ILSVRC2012)下

参考: https://blog.csdn.net/chenxyelin/article/details/112848166

https://blog.csdn.net/weixin_43233550/article/details/110715096



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有