目标检测数据集PASCAL VOC笔记

PASCAL VOC 数据集的应用领域有Object Classification 、Object Detection、Object Segmentation、Human Layout、Action Classification等,它的常用版本为2007年和2012年的,PASCAL VOC 2007 和 2012 数据集组织结构一致,内容没有重复,共有20个不同类别的物体。
在这里插入图片描述

下载

PASCAL VOC的数据集可以通过这个镜像网站下载,速度很快。
打开后它的界面如下,分为2012和2007年的,每一年的分为Train/Validation Data和Test Data,这两部分都要下载下来。

在这里插入图片描述

组织结构

下载后由于训练和测试的文件夹结构都一致,我们将同一年的train/val和test解压放在同一个文件夹内,只区分不同年的。
在这里插入图片描述

每一年的内部结构如下,这里以2007年的为例:

├── Annotations 进行 detection 任务时的标签文件,xml 形式,文件名与图片名一一对应
├── ImageSets 包含三个子文件夹 Layout、Main、Segmentation,其中 Main 存放的是分类和检测的数据集分割文件
├── JPEGImages 存放 .jpg 格式的图片文件
├── SegmentationClass 存放按照图像分割的图片
└── SegmentationObject 存放按照实例分割的图片

├── Main
│   ├── train.txt 写着用于训练的图片名称, 共 2501 个
│   ├── val.txt 写着用于验证的图片名称,共 2510 个
│   ├── trainval.txt train与val的合集。共 5011 个
│   ├── test.txt 写着用于测试的图片名称,共 4952 个

其中Annotation中标注文件xml的格式如下:
在这里插入图片描述

使用

PASCAL VOC数据集在目标检测中被广为使用,我们经常能看见论文中写到使用的PASCAL VOC哪一年,哪一部分的数据集来训练,然后用哪年哪部分来测试,比如yolo(v1)中的这段表述:

We train the network for about 135 epochs on the training and validation data sets from PASCAL VOC 2007 and 2012. When testing on 2012 we also include the VOC 2007 test data for training.
我们使用PASCAL VOC 2012和2007中的train和val做训练,如果使用PASCAL VOC 2012的数据集做训练的话就把PASCAL VOC 2007的test数据集也拿去作训练。

目前的常用的组合使用的方式有下面几种:

  • 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 没有公布

PASCAL VOC 2007和2012数据集中图片和物体的详细数量统计如下:
在这里插入图片描述

参考文章:

(一)深度学习实战 | 基于PyTorch的目标检测数据加载

PASCAL VOC 数据集简介

使用了上面两篇博客的图片和描述综合来做自己的笔记。

猜你喜欢

转载自blog.csdn.net/yanghao201607030101/article/details/110694249