0%

PASCAL-VOC 数据集介绍

简介

PASCAL VOC挑战赛 (The PASCAL Visual Object Classes) 是一个世界级的计算机视觉挑战赛PASCAL(Pattern Analysis, Statical Modeling and Computational Learning),是一个由欧盟资助的网络组织

官网:The PASCAL Visual Object Classes Homepage (ox.ac.uk)

PASCAL VOC挑战赛主要包括以下几类:

  • 图像分类(Object Classification)和目标检测(Object Detection)
  • 目标分割(Object Segmentation):实例分割、语义分割
  • 动作识别(Action Classification)
  • 人体布局检测(Person Layout)

PASCAL VOC 2007 类别

训练、验证、测试数据统计

VOC 2007 数据分布:VOC2007 Database Statistics (ox.ac.uk)

VOC 2012 数据分布:VOC2012 Database Statistics (ox.ac.uk)

数据集文件结构

标注文件内容

目标检测(以2007_000323.xml 为例)

首先在 Main目录中,读取对应的txt文件。比如使用 train.txt中的数据进行训练,那么读取该txt文件,解析每一行,每一行对应一个标签文件的索引。接着通过索引在 Annotations文件夹下找到对应的标注文件(.xml)

  • filename:通过该字段能够在 JPEGImages 文件夹中能够找到对应的图片
  • size:记录了对应图像的宽、高以及channel信息
  • object:每个object代表一个目标
    • name:该目标的名称
    • pose:目标的姿势(朝向)
    • truncated:目标是否被截断(目标是否完整)
    • difficult:该目标的检测难易程度(0代表简单,1表示困难)
    • bndbox:记录了该目标的边界框信息

语义分割(以2007_000323.png 为例)

首先在 Segmentation目录中,读取对应的txt文件。比如使用 train.txt中的数据进行训练,那么读取该txt文件,解析每一行,每一行对应一个图像的索引。根据索引在 SegmentationClass目录中找到相应的标注图像(.png)

  • 在语义分割中对标注图像(.png)用PIL的Image.open()函数读取时,默认是P模式,即一个单通道的图像
  • 在背景处的像素值为0,目标边缘处用的像素值为255(训练时一般会忽略像素值为255的区域),目标区域内根据目标的类别索引信息进行填充
    • 例如,人对应的目标索引是15,所以目标区域的像素值用15填充

下面给出在Pascal VOC数据集中各目标类别名称与类别索引对应关系:

注:不是全物体分割(full segmentation)!

实例分割(以2007_000032.png 为例)

首先在 Segmentation目录中,读取对应的txt文件。比如使用 train.txt中的数据进行训练,那么读取该txt文件,解析每一行,每一行对应一个图像的索引。根据索引在 SegmentationObject文件夹中找到相应的标注图像(.png)

  • 在实例分割中对应的标注图像(.png)用PIL的Image.open()函数读取时,默认是P模式,即一个单通道的图像
  • 在背景处的像素值为0,目标边缘处或需要忽略的区域用的像素值为255 (训练时一般会忽略像素值为255的区域)。目标区域内的像素值是按照 .xml 文件中对应目标顺序排列的
    • 例如,“飞机”排在第1位,像素值为1;“人(黄色)”排在第3位,像素值为3

注:不是全物体分割(full segmentation)!

————————————————

参考CSDN原文链接:

https://blog.csdn.net/qq_37541097/article/details/115787033

欢迎关注我的其它发布渠道