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>VOC2007folder>
    	<filename>000001.jpgfilename>  # 文件名 
    	<source>
    		<database>The VOC2007 Databasedatabase>
    		<annotation>PASCAL VOC2007annotation>
    		<image>flickrimage>
    		<flickrid>341012865flickrid>
    	source>
    	<owner>
    		<flickrid>Fried Camelsflickrid>
    		<name>Jinky the Fruit Batname>
    	owner>
    	<size>  # 图像尺寸, 用于对 bbox 左上和右下坐标点做归一化操作
    		<width>353width>
    		<height>500height>
    		<depth>3depth>
    	size>
    	<segmented>0segmented>  # 是否用于分割
    	<object>
    		<name>dogname>  # 物体类别
    		<pose>Leftpose>  # 拍摄角度:front, rear, left, right, unspecified 
    		<truncated>1truncated>  # 目标是否被截断(比如在图片之外),或者被遮挡(超过15%)
    		<difficult>0difficult>  # 检测难易程度,这个主要是根据目标的大小,光照变化,图片质量来判断
    		<bndbox>
    			<xmin>48xmin>
    			<ymin>240ymin>
    			<xmax>195xmax>
    			<ymax>371ymax>
    		bndbox>
    	object>
    	<object>
    		<name>personname>
    		<pose>Leftpose>
    		<truncated>1truncated>
    		<difficult>0difficult>
    		<bndbox>
    			<xmin>8xmin>
    			<ymin>12ymin>
    			<xmax>352xmax>
    			<ymax>498ymax>
    		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 文件,里面每一行都是测试集中的一张图片,每行的格式为: ,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简介

你可能感兴趣的:(目标检测,计算机视觉,VOC数据集,训练集,人工智能,COCO数据集)