PASCAL VOC 数据集详解与MS COCO组合方式
一、简介
- PASCAL VOC 挑战赛主要有
Object Classification 、Object Detection、Object Segmentation、Human Layout、Action Classification
这几类子任务- PASCAL 主页 与 排行榜
- PASCAL VOC 2007 挑战赛主页 、PASCAL VOC 2012 挑战赛主页 、PASCAL VOC Evaluation Server
- PASCAL VOC 2007 和 2012 数据集总共分 4 个大类:vehicle、household、animal、person,总共 20 个小类(加背景 21 类),预测的时候是只输出下图中黑色粗体的类别
二、VOC 常用组合、数据量统计及组织结构
VOC2007 train_val_test & VOC2012 train_val 百度云下载链接,提取码: jz27
目前目标检测常用的是 VOC2007 和 VOC2012 数据集,因为二者是互斥的,论文中的常用组合有以下几种:
07+12:
使用 VOC2007 和 VOC2012 的train+val(16551)
上训练,然后使用 VOC2007 的 test(4952) 测试07++12:
使用 VOC2007 的train+val+test(9963)
和 VOC2012的train+val(11540)
训练,然后使用 VOC2012 的 test 测试,这种方法需提交到 PASCAL VOC Evaluation Server 上评估结果,因为 VOC2012 test 没有公布07+12+COCO:
先在 MS COCO 的 trainval 上 预训练,再使用 VOC2007 和 VOC2012 的train+val
微调训练,然后使用 VOC2007 的 test 测试07++12+COCO:
先在 MS COCO 的 trainval 上预训练,再使用 VOC2007 的train+val+test
和 VOC2012 的train+val
微调训练,然后使用 VOC2012 的 test 测试 ,这种方法需提交到 PASCAL VOC Evaluation Server上评估结果,因为VOC2012 test 没有公布
VOC2007 和 VOC2012 目标检测任务中的训练、验证和测试数据统计如下表所示,具体每一类的数据分布见 PASCAL VOC2007 Database Statistics 和 PASCAL VOC2012 Database Statistics
组织结构: 以 VOC 2007 为例,解压后的文件为:
. ├── Annotations 进行 detection 任务时的标签文件,xml 形式,文件名与图片名一一对应 ├── ImageSets 包含三个子文件夹 Layout、Main、Segmentation,其中 Main 存放的是分类和检测的数据集分割文件 ├── JPEGImages 存放 .jpg 格式的图片文件 ├── SegmentationClass 存放按照 class 分割的图片 └── SegmentationObject 存放按照 object 分割的图片
├── Main
│ ├── train.txt 写着用于训练的图片名称, 共 2501 个
│ ├── val.txt 写着用于验证的图片名称,共 2510 个
│ ├── trainval.txt train与val的合集。共 5011 个
│ ├── test.txt 写着用于测试的图片名称,共 4952 个
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
三、标注标准及 XML 解析
- 标注标准:VOC2011 Annotation Guidelines
- 标注信息是用 xml 文件组织的如下:
<annotation><folder>VOC2007</folder><filename>000001.jpg</filename> # 文件名 <source><database>The VOC2007 Database</database><annotation>PASCAL VOC2007</annotation><image>flickr</image><flickrid>341012865</flickrid></source><owner><flickrid>Fried Camels</flickrid><name>Jinky the Fruit Bat</name></owner><size> # 图像尺寸, 用于对 bbox 左上和右下坐标点做归一化操作<width>353</width><height>500</height><depth>3</depth></size><segmented>0</segmented> # 是否用于分割<object><name>dog</name> # 物体类别<pose>Left</pose> # 拍摄角度:front, rear, left, right, unspecified <truncated>1</truncated> # 目标是否被截断(比如在图片之外),或者被遮挡(超过15%)<difficult>0</difficult> # 检测难易程度,这个主要是根据目标的大小,光照变化,图片质量来判断<bndbox><xmin>48</xmin><ymin>240</ymin><xmax>195</xmax><ymax>371</ymax></bndbox></object><object><name>person</name><pose>Left</pose><truncated>1</truncated><difficult>0</difficult><bndbox><xmin>8</xmin><ymin>12</ymin><xmax>352</xmax><ymax>498</ymax></bndbox></object> </annotation>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
四、提交格式
1、Classification Task
- 每一类都有一个 txt 文件,里面每一行都是测试集中的一张图片,前面一列是图片名称,后面一列是预测的分数。
# comp1_cls_test_car.txt, 内容如下
000004 0.702732
000006 0.870849
000008 0.532489
000018 0.477167
000019 0.112426
- 1
- 2
- 3
- 4
- 5
- 6
- 7
2、Detection Task
- 每一类都有一个 txt 文件,里面每一行都是测试集中的一张图片,每行的格式为:
<image identifier> <confidence> <left> <top> <right> <bottom>
,confidence 用来计算mAP
# comp3_det_test_car.txt,内容如下
# comp3:只允许用所给训练数据,comp4:允许使用外部数据
000004 0.702732 89 112 516 466
000006 0.870849 373 168 488 229
000006 0.852346 407 157 500 213
000006 0.914587 2 161 55 221
000008 0.532489 175 184 232 201
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
五、评估标准
- PASCAL的评估标准是 mAP(mean average precision),关于 mAP 可参考以下资料:
- average precision
- 性能指标(模型评估)之mAP
- 多标签图像分类任务的评价方法-mAP
- 周志华老师 《机器学习》 模型评估标准一节
- PASCAL官方给了 MATLAB 版的 mAP 评估脚本和示例代码 development kit code and documentation
- eg:下面是一个二分类的 P-R 曲线(
precision-recall curve
),对于 PASCAL 来说,每一类
都有一个这样的 P-R曲线,P-R 曲线下面与 x 轴围成的面积称为average precision
,每个类别都有一个 AP,20个类别的 AP 取平均值
就是 mAP。
六、参考资料
1、The PASCAL Visual Object Classes Homepage
2、目标检测数据集PASCAL VOC简介
PASCAL VOC 数据集详解与MS COCO组合方式相关推荐
- Deep Learning---py-faster-rcnn基于PASCAL VOC数据集训练模型
0 说明 系统环境为Ubuntu14.04, 已经安装好了CUDA和cuDNN以及Python等基础包. 1 设置和编译py-faster-rcnn 1.1 下载py-faster-rcnn $ gi ...
- 汇总 | 深度学习中图像语义分割基准数据集详解
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 汇总图像语义分割那些质量最好的数据集与常用benchmark数据集 ...
- pascal行人voc_在Pascal VOC 数据集上训练YOLOv3模型
上节介绍了<从零开始在Windows10中编译安装YOLOv3>,本节介绍在Pascal VOC 数据集上训练YOLOv3. 第一步,下载并安装YOLOv3训练依赖项. a.下载Pasca ...
- 图像处理基本库的学习笔记5--公共数据集,PASCAL VOC数据集,NYUD V2数据集的简介与提取,COCO2017,医学影像数据集汇总
目录 公共数据集 计算机视觉标准数据集整理-PASCAL VOC数据集 数据集文件结构 Annotation JPEGImages SegmentationClass SegmentationObje ...
- 人工智能学习:PASCAL VOC数据集读取(6)
PASCAL VOC是一个国际的计算机视觉挑战赛,数据集包含了20个分类的3万多张图片.挑战赛及其数据集基础上涌现不少知名的目标检测模型如R-CNN,YOLO,SSD等.可以通过下载和读取的方法载入P ...
- Pascal VOC 数据集介绍(tensorflow model zoo)
Pascal VOC 数据集的下载 # 下载2007年的训练数据 wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06- ...
- PASCAL VOC数据集分析(分类部分)
PASCAL VOC数据集分析 PASCAL VOC为图像识别和分类提供了一整套标准化的优秀的数据集,从2005年到2012年每年都会举行一场图像识别challenge. 每一年都有自己的数据集.pa ...
- PASCAL VOC数据集
一.简介 PASCAL: pattern analysis, statistical modelling and computational learning VOC: visual object c ...
- PASCAL VOC 数据集的标注格式
PASCAL VOC 数据集的标注格式 PASCAL VOC 挑战赛 ( **The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛. PASCAL的全称是 ...
- 全卷积神经网路【U-net项目实战】LUNA 2016 数据集详解
文章目录 1.LUNA 2016 数据集详解 2.mdh数据格式详解 3.python读取mdh的方法 4.annotations.csv坐标转换 5.LUNA16数据集肺结节显示 1.LUNA 20 ...
最新文章
- 查找数据挖掘的相关资料
- 精美日历EXCLE格式
- 第十七节: EF的CodeFirst模式的四种初始化策略和通过Migration进行数据的迁移
- shell编程的一些例子4
- 机器学习算法应用30篇(十一)-理解逻辑回归及二分类、多分类代码实践
- Spring Boot关于thymeleaf公共页面抽取
- .NET_.NET 部署问题
- (后端)解决code唯一码(java)简便方法
- Content Provider的启动过程
- 【评价模型】数据包络分析法(DEA)
- 计算机网络原理 读书笔记
- C#简单游戏外挂制作(以Warcraft Ⅲ为例)
- 0w1_CTF_Writeup
- 《一》注册订阅号并完成基本配置
- android顶部导航高度,快速实现顶端导航栏(ToolBar+TabLayout+Viewpager)
- 【计算机网络】ICMP协议
- 了解模型预测控制4--自适应,增益调度和非线性MPC
- 图形化WiFi密码的破解
- 设置java进程名称_如何为Java程序设置进程名称? - java
- 成都web前端培训班