linux下载/解压ImageNet-1k数据集

这篇具有很好参考价值的文章主要介绍了linux下载/解压ImageNet-1k数据集。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本文在Linux中,处理对象为ILSVRC2012数据集(ImageNet-1k)

一、数据集下载

ImageNet官网链接

在Linux上也可以直接用命令行进行下载:

  • 训练集(ILSVRC2012_img_train.tar):
wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_train.tar --no-check-certificate
  1. 验证集(ILSVRC2012_img_val.tar):
wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_val.tar --no-check-certificate
  1. 标签映射文件(ILSVRC2012_devkit_t12.tar.gz):
wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_devkit_t12.tar.gz --no-check-certificate

二、解压

1.训练集

执行命令,进入该文件目录下:

cd /home/data/imagenet

执行命令,将训练集解压到文件夹 train 目录下:

mkdir train && tar -xvf ILSVRC2012_img_train.tar -C train && for x in `ls train/*tar`; do fn=train/`basename $x .tar`; mkdir $fn; tar -xvf $x -C $fn; rm -f $fn.tar; done

执行命令,进入 train 目录下:

cd train

执行命令,查看该目录下的文件夹数量,若解压成功,则返回1000:

ls -lR|grep "^d"|wc -l

执行命令,查看 train 目录下所有文件(图片)的数量,若解压成功,则返回1281167:

ls -lR|grep "^-"|wc -l

2.验证集

执行命令,进入3个文件所在的根目录:

cd /home/data/imagenet

执行命令,创建解压验证集的文件夹:

mkdir val

执行命令,将验证集图像解压到 val 目录下:

tar xvf ILSVRC2012_img_val.tar -C ./val

此时 val 目录下是50000张图像,并没有被分类到1000个文件夹下。因此需要将验证集中的图像进行分类存放。
执行命令,解压ILSVRC2012_devkit_t12.tar.gz这个文件:

tar -xzf ILSVRC2012_devkit_t12.tar.gz

该文件中记录着验证集中的图像名及其类别标签之间的映射关系。

在 ‘/home/data/imagenet’ 目录下创建 Python 脚本,假设命名为“unzip.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()

回到imagenet下,执行该文件,进行验证集分类存放进1000个文件夹:

cd /home/data/imagenet
python unzip.py

总结

这样就成功啦!!文章来源地址https://www.toymoban.com/news/detail-812017.html

到了这里,关于linux下载/解压ImageNet-1k数据集的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【代码实验】CNN实验——利用Imagenet子集训练分类网络(AlexNet/ResNet)

    Imagenet是计算机视觉的经典分类比赛,但是Imagenet数据集本身太大了,我们穷学生没有这么大的算力,2016年google DeepMind团队从Imagnet数据集中抽取的一小部分(大小约3GB)制作了Mini-Imagenet数据集(也就是Imagenet的子集),共有100个类别,每个类别都有600张图片,共60000张图片。

    2024年02月03日
    浏览(24)
  • 清华青年AI自强作业hw6:基于ResNet实现IMAGENET分类任务

    一起学AI系列博客:目录索引 hw6作业为基于ResNet模型,并利用VGG标准模块和GoogleNet中的inception模块对IMAGENET数据集进行20类分类。模型输入图像尺寸为 299*299 ,输出为softmax后的20分类。 观察参考代码发现需要使用IMAGENET处理好后的数据ILSVRC2012_20_tfrecord,由于缺乏实验数据,本

    2024年02月12日
    浏览(22)
  • Linux中文件的上传、下载、压缩、解压等命令和操作

    简单使用:当使用工具连接的Linux时,可以直接将文件进行鼠标拖拽进行文件操作 • Linux和Mac系统常用有2种压缩格式,后缀名分别是: ○ .tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装 ○ .gz,也常见

    2024年02月15日
    浏览(39)
  • Linux中文件的打包压缩、解压,下载到本地——zip,tar指令等

    目录 1 .zip后缀名:         1.1 zip指令         1.2 unzip指令 2 .tar后缀名 3. sz 指令 4. rz 指令 5. scp指令 语法:zip [namefile.zip]  [namefile]... 功能:将目录或者文件压缩成zip格式 常用选项:         -r : 递归处理,将指定目录下的所有文件和子目录一并处理。 语法:unzip [namefil

    2024年01月24日
    浏览(39)
  • 深度学习——动物数据集大合集(附下载地址)

    说明:部分数据收费,付费后数据请关注私信内容,会给出下载链接,亲测数据质量不错,如下图所示: ​ 1、30种常见鱼类数据集 数据集介绍:30种常见鱼类数据集(每类鱼30-100张图片不等) 下载地址:爱发电 · 连接创作者与粉丝的会员制平台 2、120种狗的图片数据集 数据

    2023年04月20日
    浏览(64)
  • linux tar打包压缩解压命令学习

    Linux系统中tar是最常用的打包工具,通过打包工具可以压缩/解压 比如常见的压缩包格式 如下: tar 未压缩文件 只是做了一个打包而已 tar.gz 使用gzip算法格式压缩的压缩包 tar.bz2 bz2格式压缩包 tar.xz xz格式压缩 参数介绍 tar 的参数很多 列出几个比较常用的记录一下。 格式 tar

    2024年02月04日
    浏览(35)
  • Linux学习(3):查找指令、压缩和解压

    find -name 按照文件名进行查找 find -user 指定用户名 find -size 指定文件大小 1.按文件名 : 根据名称查找 /home 目录下的 hello.txt 文件 2.按拥有者 : 查找 /opt 目录下,用户名称为 nobody 的文件 3. 查找整个linux系统下大于200M的文件( +n 大于 -n小于 n等于) ps . ls -lh -h 选项以人类可读的格

    2024年01月23日
    浏览(30)
  • 95个优秀深度学习公共数据集分享,涵盖目标检测、自动驾驶、图像分类等12个大方向【附下载】

    近年来,随着人工智能的快速发展,我们对数据集的需求越来越多,一方面,数据集可以帮助我们做练习实践,另一方面,这些数据集同样也能帮助更多研究机构进行更深入的数据挖掘。对于人工智能领域的同学来说,数据集是实验的必要条件,当我们准备跑算法的时候,首

    2024年02月13日
    浏览(86)
  • 基于Python+OpenCV的图像搜索引擎(CBIR+深度学习+机器视觉)含全部工程源码及图片数据库下载资源

    本项目旨在开发一套完整高效的图像搜索引擎,为用户提供更加便捷的图片搜索体验。为了实现这一目标,我们采用了 CBIR(Content-based image retrieval)技术,这是目前主流的图像搜索方法之一。CBIR 技术基于图像内容的相似性来检索相似的图像,相比于传统的图像搜索方法,

    2024年02月08日
    浏览(46)
  • 【STC8G1K08A】芯片---usb串口---直连烧录下载程序

    最近没事干,开始看看单片机学习一下。 买了比较便宜的STC8G1K08A芯片,淘宝我看到最便宜的5毛5包邮; 在立创打了开源的板子,但是芯片先到,就先测测芯片吧。 1、仅有芯片和usb串口模块,还有几根线 2、芯片vcc和gnd直连串口模块vcc和gnd 3、芯片p3.0直连串口模块TXD,p3.1直连

    2023年04月20日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包