PASCAL VOC 2012数据集及其增强版介绍

Pascal voc 2012数据集可以用于分类、检测和分割。这篇文章主要介绍其在语义分割任务上的使用。原始的Pascal voc 2012数据集仅仅包含1464个训练数据集,然而在很多paper上,大家都使用了包含10582个训练集的增强版数据集进行训练,因此,这篇文章将会详细介绍原版和增强版的Pascal voc 2012数据集以及它们的使用方法。


数据集下载

  • PASCAL VOC 2012
    下载后的文件目录如下:
+ VOCdevkit+ VOC2012+ Annotations+ ImageSets+ JPEGImages+ SegmentationClass+ SegmentationObject
  • Augmented PASCAL VOC
    这里提供的是我的网盘下载地址,提取码:fg3e。下载后的文件目录如下:
+ benchmark_RELEASE+ cls+ img+ inst+ toolstrain.txtval.txt

数据集介绍

PASCAL VOC 2012

VOC 2012数据集分为20类,算上背景一共21类,分别如下:

Person: person
Animal: bird, cat, cow, dog, horse, sheep
Vehicle: aeroplane, bicycle, boat, bus, car, motorbike, train
Indoor: bottle, chair, dining table, potted plant, sofa, tv/monitor


在分割任务上,需要用到原始图像和对应的标签。语义分割任务对同一类的物体在label上都填充都有一个特定的颜色,一共20种颜色,比如摩托车用蓝色表示,人用红色表示。

更详细的介绍可以查看该数据集的官网:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html,接下来主要介绍下载的目录中每个文件夹都是做什么的,我们主要用到下面加粗的文件目录。

  • Annotations: 这个文件夹内主要存放了数据的标签,里面包含了每张图片的bounding box信息,主要用于目标检测,这里不做过多介绍。
  • ImageSets: ImageSets中的Segmentation目录下存放了用于分割的train, val, trainval数据集的索引。
  • JPEGImages: 这里存放的就是JPG格式的原图,包含17125张彩色图片,但只有一部分(2913张)是用于分割的。
  • SegmentationClass: 语义分割任务中用到的label图片,PNG格式,共2913张,与原图的每一张图片相对应。
  • SegmentationObject: 实例分割任务用到的label图片,在语义分割中用不到,这里不详解介绍。
Augmented PASCAL VOC

增强版的VOC跟原版没什么区别,只是增加了数据。下面还是一一介绍下载的文件夹中每个文件的作用。

  • img: 增强版的原图,共11355张图片
  • cls: 用于语义分割的label,共11355个.mat文件,每个.mat文件对应一张原图
  • inst: 用于实例分割的label,也是11355个.mat文件
  • tools: 3个用于数据转换的脚本,在后面数据转换时用到
  • train.txt: 训练集索引
  • val.txt: 验证集索引

数据集使用

大多数paper中使用的数据集是以上两个数据集的融合,因此,在这部分将要介绍如何融合以上两个数据集来训练。

数据转换

由于pascal voc 2012增强版的数据集的label是.mat格式的文件,需要将其转换为.png格式的图片。转化后的图片是8-bit的灰度图。

1)在benchmark_RELEASE目录下创建一个名为cls_png的目录用于存放转化后的png图片
2)在benchmark_RELEASE目录下执行mat2png.py脚本
python tools/mat2png.py cls cls_png

原始pascal voc 2012数据集中label为三通道RGB图像,为了统一,我们也将其转化为8-bit的灰度png图像。

1)在VOCdevkit/VOC2012目录下创建一个名为SegmentationClass_1D的文件夹用于存放转化后的图片
2)将benchmark_RELEASE/tools目录下的convert_labels.py和utils.py脚本拷贝到VOCdevkit/VOC2012目录下,并执行convert_labels.py脚本
python convert_labels.py SegmentationClass ImageSets/Segmentation/trainval.txt SegmentationClass_1D
数据融合

现在,我们将原始的PASCAL VOC 2012数据集和增强版的数据集合并到一起。目前已有数据文件如下:
1.VOCdevkit/VOC2012为原始PASCAL VOC 2012数据集

  • images数据集的文件名为:JPEGImages,共17125张图片(其中2913张用于分割)
  • labels数据集文件名为:SegmentationClass_1D,共2913张图片

2.benchmark_RELEASE为增强数据集

  • images数据集的文件名为:img,共11355张图片
  • labels数据集文件名为:cls_png,共11355张图片

将JPEGImages中用于分割的2913张图片拷贝到img目录下(写个简单的脚本就可实现),将SegmentationClass_1D中的2913张图片拷贝到cls_png目录下,如遇到重复,替换即可。

重命名文件夹

将融合后的img文件名重命名为JPEGImages,共12031张原始JPG图片
将融合后的cls_png文件名重命名为SegmentationClassAug,共12031张PNG标签图片

生成索引文件

整个数据集可分为train, val, trainval, test。需要有索引文件来指定某个样本属于哪个集,因此最后还需要得到每个数据集的索引文件,可以写个简单的脚本生成。也可以在我这里直接下载。https://pan.baidu.com/s/1e_dKDtwl3Gx7-qUsuot7yg 提取码:jn4x

PASCAL VOC 2012数据集及其增强版介绍相关推荐

  1. [学习笔记] PASCAL VOC 2012数据集讲解与制作自己的数据集

    1. PASCAL VOC 2012数据集介绍 1.1 引言 PASCAL VOC 挑战赛(The PASCAL Visual Object Classes)是一个世界级的计算机视觉挑战赛.PASCA ...

  2. PASCAL VOC 2012数据集介绍

    数据集下载在百度云盘:链接:https://pan.baidu.com/s/1FTjY-ISsDMu0vIypAQyDpg   提取码:fyxt 云盘里面有3个文件夹:VOC2012, VOC2012 ...

  3. caffe︱Pascal VOC 2012 Multilabel Classification Model

    看到Model Zoo里面有这么一个项目:Pascal VOC 2012 Multilabel Classification Model This model has been used for th ...

  4. 玩转肺癌目标检测数据集Lung-PET-CT-Dx ——④转换成PASCAL VOC格式数据集

    文章目录 关于PASCAL VOC数据集 目录结构 ①创建VOC数据集的几个相关目录 XML文件的形式 ②读取dcm文件与xml文件的配对关系 ③创建VOC格式数据集 ④创建训练.验证集 本文所用代码 ...

  5. 如何快速下载Pascal VOC 2007数据集(某些数据集也可以这样尝试)

    直接进入正题,截图加步骤,我用的是迅雷下载 1.这三个网址就是数据集的下载网址. http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_ ...

  6. pytorch 图像分割的交并比_Segmentation101系列-最简单的卷积网络语义分割(1)-PASCAL VOC图像分割...

    作者:陈洪瀚 /洪瀚笔记知乎专栏 摘要:介绍了使用PyTorch和torchvision加载训练好的全卷积网络FCN或DeepLab模型,并对PASCAL VOC图像进行分割并显示结果. 网址: gi ...

  7. Pascal VOC 数据集介绍(tensorflow model zoo)

    Pascal VOC 数据集的下载 # 下载2007年的训练数据 wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06- ...

  8. 目标检测数据集PASCAL VOC简介

    简介 PASCAL VOC挑战赛 (The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛, PASCAL全称:Pattern Analysis, Stat ...

  9. pascal voc数据集_【资源分享】数据集搜索神器BIFROST

    1 前言数据是深度学习的血液.数据的好坏,很大程度上影响了模型的效果.数据集难找?贴心的 Jack,今天给大家带来了一个数据集搜索工具「BIFROST」. 2 BIFROST「BIFROST」一个集美 ...

最新文章

  1. 操作系统课程设计 内核模块
  2. 三维立体图_原来三维立体图片是这样制作的,学会以后自己也可以设计
  3. AI 一体机,满足新时代的新需求
  4. 前端学习(1059):ES6中的类和对象
  5. 【2017年第1期】专题导读:大数据与信用评价系统
  6. 12月13日云栖精选夜读 | 干货 :5个提醒,让你远离“数据呆”
  7. Echarts图表没数据的时候,用图片代替暂无数据(图片自适应)
  8. 数据库索引怎么实现的
  9. Linux下基于epoll+线程池高并发服务器实现研究
  10. Crashing Robots
  11. 网宿CDN中标工商银行 服务金融客户布局政企市场
  12. bzoj 4417: [Shoi2013]超级跳马
  13. 第一次冲刺--查看活动详情用户场景分析
  14. 迷你英雄无限服务器没了吗,迷你英雄:无限无法连接服务器是什么原因
  15. 系统服务器可以关机吗,服务器每天关机可以吗
  16. 绷紧数据安全这根弦 数据安全法 实施参考发布
  17. ZigBee、WiFi、蓝牙的区别
  18. Python 自动化领域起点篇,Selenium WebDriver 学习第1篇
  19. 使用Ajax异步调用
  20. win7改电脑名字方法_windows7计算机名称怎么更改

热门文章

  1. 2017java二级考试题库_2017全国计算机二级Java考试题库
  2. 【NOIP2017提高组】列队
  3. java接口测试解析soap_使用SOAPUI作为服务端测试soap接口(WSDL)
  4. python主动抛出异常_主动抛异常
  5. 12c ojdbc7的下载位置
  6. C语言程序设计谭浩强第五版复习梳理2
  7. Android安卓开发基础-Button与ImageButton
  8. EBS中 EXCEL 格式报表输出的公用API
  9. 一文带你了解 三种深度学习框架(Caffe,Tensorflow,Pytorch)的基本内容、优缺点以及三者的对比
  10. Java基础编程题(API阶段测试)(答案)