PASCAL VOC2012数据集介绍
之前有在Bilibili上简单介绍过这个数据集,但一直没有写博文,今天抽空总结下,如果不想看文章的,可以看下我在Bilibili上的讲解视频。
Pascal VOC2012数据集详解视频: https://b23.tv/F1kSCK
Pascal VOC2012官网地址:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/
官方发表关于介绍数据集的文章 《The PASCALVisual Object Classes Challenge: A Retrospective》:http://host.robots.ox.ac.uk/pascal/VOC/pubs/everingham15.pdf
文章目录
- 1 简介
- 2 Pascal VOC数据集目标类别
- 3 数据集下载与目录结构
- 4 目标检测任务
- 5 语义分割任务
- 6 实例分割任务
- 7 类别索引与名称对应关系
1 简介
PASCAL VOC挑战赛 (The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛,PASCAL全称:Pattern Analysis, Statical Modeling and Computational Learning,是一个由欧盟资助的网络组织。PASCAL VOC挑战赛主要包括以下几类:图像分类(Object Classification),目标检测(Object Detection),目标分割(Object Segmentation),行为识别(Action Classification) 等。
- 图像分类与目标检测任务
- 分割任务,注意,图像分割一般包括语义分割、实例分割和全景分割,实例分割是要把每个单独的目标用一种颜色表示(下图中间的图像),而语义分割只是把同一类别的所有目标用同一颜色表示(下图右侧的图片)。
- 行为识别任务
- 人体布局检测任务
2 Pascal VOC数据集目标类别
在Pascal VOC数据集中主要包含20个目标类别,下图展示了所有类别的名称以及所属超类。
3 数据集下载与目录结构
下载地址: http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html#devkit
打开链接后如下图所示,只用下载training/validation data (2GB tar file)
文件即可。
下载后将文件进行解压,解压后的文件目录结构如下所示:
VOCdevkit└── VOC2012├── Annotations 所有的图像标注信息(XML文件)├── ImageSets │ ├── Action 人的行为动作图像信息│ ├── Layout 人的各个部位图像信息│ ││ ├── Main 目标检测分类图像信息│ │ ├── train.txt 训练集(5717)│ │ ├── val.txt 验证集(5823)│ │ └── trainval.txt 训练集+验证集(11540)│ ││ └── Segmentation 目标分割图像信息│ ├── train.txt 训练集(1464)│ ├── val.txt 验证集(1449)│ └── trainval.txt 训练集+验证集(2913)│ ├── JPEGImages 所有图像文件├── SegmentationClass 语义分割png图(基于类别)└── SegmentationObject 实例分割png图(基于目标)
注意,train.txt
、val.txt
和trainval.txt
文件里记录的是对应标注文件的索引,每一行对应一个索引信息。如下图所示:
4 目标检测任务
接下来简单介绍下如何使用该数据集中目标检测的数据。
- 首先在Main文件中,读取对应的txt文件(注意,在
Main
文件夹里除了train.txt
、val.txt
和trainval.txt
文件外,还有针对每个类别的文件,例如bus_train.txt
、bus_val.txt
和bus_trainval.txt
)。比如使用train.txt
中的数据进行训练,那么读取该txt文件,解析每一行。上面说了每一行对应一个标签文件的索引。
├── Main 目标检测分类图像信息│ ├── train.txt 训练集(5717)│ ├── val.txt 验证集(5823)│ └── trainval.txt 训练集+验证集(11540)
- 接着通过索引在
Annotations
文件夹下找到对应的标注文件(.xml)。比如索引为2007_000323
,那么在Annotations
文件夹中能够找到2007_000323.xml
文件。如下图所示,在标注文件中包含了所有需要的信息,比如filename
,通过在字段能够在JPEGImages
文件夹中能够找到对应的图片。size
记录了对应图像的宽、高以及channel信息。每一个object
代表一个目标,其中的name
记录了该目标的名称,pose
表示目标的姿势(朝向),truncated
表示目标是否被截断(目标是否完整),difficult
表示该目标的检测难易程度(0代表简单,1表示困难),bndbox
记录了该目标的边界框信息。
- 接着通过在标注文件中的
filename
字段在JPEGImages
文件夹中找到对应的图片。比如在2007_000323.xml
文件中的filename
字段为2007_000323.jpg
,那么在JPEGImages
文件夹中能够找到2007_000323.jpg
文件。
5 语义分割任务
接下来简单介绍下如何使用该数据集中语义分割的数据。
- 首先在Segmentarion文件中,读取对应的txt文件。比如使用
train.txt
中的数据进行训练,那么读取该txt文件,解析每一行,每一行对应一个图像的索引。
└── Segmentation 目标分割图像信息├── train.txt 训练集(1464)├── val.txt 验证集(1449)└── trainval.txt 训练集+验证集(2913)
- 根据索引在
JPEGImages
文件夹中找到对应的图片。还是以2007_000323
为例,可以找到2007_000323.jpg
文件。
- 根据索引在
SegmentationClass
文件夹中找到相应的标注图像(.png)。还是以2007_000323
为例,可以找到2007_000323.png
文件。
注意,在语义分割中对应的标注图像(.png)用PIL的Image.open()
函数读取时,默认是P
模式,即一个单通道的图像。在背景处的像素值为0,目标边缘处用的像素值为255(训练时一般会忽略像素值为255的区域),目标区域内根据目标的类别索引信息进行填充,例如人对应的目标索引是15,所以目标区域的像素值用15填充。
6 实例分割任务
- 同样首先在Segmentarion文件中,读取对应的txt文件。比如使用
train.txt
中的数据进行训练,那么读取该txt文件,解析每一行,每一行对应一个图像的索引。
└── Segmentation 目标分割图像信息├── train.txt 训练集(1464)├── val.txt 验证集(1449)└── trainval.txt 训练集+验证集(2913)
- 根据索引在
JPEGImages
文件夹中找到对应的图片。这里以2007_000032
为例,可以找到2007_000032.jpg
文件,如下图所示。
- 再根据索引在
SegmentationObject
文件夹中找到相应的标注图像(.png)。还是以2007_000032
为例,可以找到2007_000032.png
文件。
注意,在实例分割中对应的标注图像(.png)用PIL的Image.open()
函数读取时,默认是P
模式,即一个单通道的图像。在背景处的像素值为0,目标边缘处或需要忽略的区域用的像素值为255(训练时一般会忽略像素值为255的区域)。然后在Annotations
文件夹中找到对应的xml文件,解析xml文件后会得到每个目标的信息,而对应的标注文件(.png)的每个目标处的像素值是按照xml文件中目标顺序排列的。如下图所示,xml文件中每个目标的序号是与标注文件(.png)中目标像素值是对应的。
7 类别索引与名称对应关系
下面给出在Pascal VOC数据集中各目标类别名称与类别索引对应关系:
{"background": 0,"aeroplane": 1,"bicycle": 2,"bird": 3,"boat": 4,"bottle": 5,"bus": 6,"car": 7,"cat": 8,"chair": 9,"cow": 10,"diningtable": 11,"dog": 12,"horse": 13,"motorbike": 14,"person": 15,"pottedplant": 16,"sheep": 17,"sofa": 18,"train": 19,"tvmonitor": 20
}
PASCAL VOC2012数据集介绍相关推荐
- PspNet在MMsegmentation框架下成功训练Pascal VOC2012数据集及踩坑实录
时间:2021/08/29/05:45:28 一晚上了,难以置信,我竟然还不困,还有着整理博客的冲动.也就在这周,熬夜能力突然就在几个晚上的不归宿中突破了,一夜过后天壤之别,一晚比一晚能熬,之前还会担 ...
- PASCAL VOC2012数据集
PASCAL VOC2012数据集 下载的官方网址:http://host.robots.ox.ac.uk/pascal/voc/voc2012/index.html#devkit 一.介绍与下载 P ...
- 目标检测数据集-Pascal VOC 数据集介绍
个人微信公众号:AI研习图书馆 ID:(Art-Intelligence) 欢迎关注,交流学习,共同进步~ 1.引言 PASCAL VOC数据集,为图像识别和分类提供了一整套标准化的优秀数据集,从20 ...
- Pascal VOC 数据集介绍(tensorflow model zoo)
Pascal VOC 数据集的下载 # 下载2007年的训练数据 wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06- ...
- Ubuntu 16.04下Caffe-SSD的应用(六)——PASCAL VOC2007数据集介绍
前言 1.PASCAL VOC为图像识别与分类提供了一整套标准化的图像数据集,VOC数据集是衡量图像分类识别能力的基准,好多深度学习的框架在识别这块都以此数据集作为演示样例.PASCAL VOC数据集 ...
- Pascal Voc数据集介绍
1.Pascal Voc数据集下载地址 :http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar 2.Pa ...
- PASCAL VOC2012 数据集讲解与制作自己的数据集
前言 随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容.来源于哔哩哔哩博主"霹雳吧啦Wz",博主学习作为笔记记录,欢 ...
- Pascal VOC2012数据集下载
数据集下载 刚发现原来数据集下载也是这么麻烦的一件事情,还有人用链接换积分.还好找到了一个好心人,连接在下面. 好心人的网址 他给的链接地址 https://pjreddie.com/projects ...
- 【图像分类】基于Pascal VOC2012增强数据的多标签图像分类实战
接着上一次的多标签分类综述,本文主要以Pascal VOC2012增强数据集进行多标签图像分类训练,详细介绍增强数据集制作.训练以及指标计算过程,并通过代码进行详细阐述,希望能为大家提供一定的帮助! ...
- python不同曲线设置标签_【图像分类】基于Pascal VOC2012增强数据的多标签图像分类实战...
接着上一次的多标签分类综述,本文主要以Pascal VOC2012增强数据集进行多标签图像分类训练,详细介绍增强数据集制作.训练以及指标计算过程,并通过代码进行详细阐述,希望能为大家提供一定的帮助! ...
最新文章
- 特别推荐:15个精美 Metro UI 风格 WordPress 主题
- 使用tab键分割的文章能快速转换成表格。( )_无需按空格键,就能将Word文字对齐,3种方法了解一下...
- vue 打包后访问接口报错404 解决方案 (前提是在vue里使用了代理)
- SpannableString
- AXIS2使用问题解决点滴
- 分布式 RPC架构简单理解
- 评审恩仇录——我为什么愿意执行代码评审
- Linux 多线程开发-等待线程结束pthread_join
- C++ Deque(双向队列
- 开源,并不意味着免费、开源,不是道德绑架
- notepad实现垂直标签
- Android代码修改SIM的PIN码,关于设置SIM卡PIN码及查询PUK码的教程
- WinForm界面开发
- 计算机程序无法响应如何解决,电脑卡死出现应用程序未响应不可以正常工作怎么办?...
- kylin构建cube时step1报错MoveTask
- 永恒python+6_永恒中心 – Eternal Center
- 想要制作出好看的软蜡笔画?来看这份JixiPix Pastello Pro操作指南!
- 回车符号和换行符号产生背景
- 在html中控制自动换行 1
- 超越Yann LeCun:世界模型的学习和推理
热门文章
- libiconv android编译,linux环境下libiconv库基于Android NDK的编译方法
- linux dosbox使用教程,在主流Linux操作系统上安装DOSBox的方法
- 怎样正确做 Web 应用的压力测试?
- 小米8 QFIL 刷机
- 关于Demo3D中的Random
- 2022年华为杯研究生数学建模竞赛ABCDEF题思路资料汇总贴
- 微信小程序系列(5)如何用微信小程序写一个论坛?贴心代码详解(三)列表页
- 基于NXP iMX8测试Secure Boot功能部署
- 【黑苹果】宏基Acer Predator Helios 300+ i7-7700HQ+Opencore +MacOS10.14.6 efi文件下载!
- 【正点原子STM32连载】第一章 本书学习方法 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1