VOC2012数据集分为20类,包括背景为21类,分别如下:

  • Person: person
  • Animal: bird, cat, cow, dog, horse, sheep
  • Vehicle: aeroplane, bicycle, boat, bus, car, motorbike, train
  • Indoor: bottle, chair, dining table, potted plant, sofa, tv/monitor

语义分割之PASCAL-VOC2012数据集介绍

这里只说与图像分割(segmentation)有关的信息,VOC2012中的图片并不是都用于分割,用于分割比赛的图片实例如下,包含原图以及图像分类分割和图像物体分割两种png图。图像分类分割是在20种物体中,ground-turth图片上每个物体的轮廓填充都有一个特定的颜色,一共20种颜色,比如摩托车用红色表示,人用绿色表示。而图像物体分割则仅仅在一副图中生成不同物体的轮廓颜色即可,颜色自己随便填充。
语义分割之PASCAL-VOC2012数据集介绍

VOC2012数据集的代码结构如下:
语义分割之PASCAL-VOC2012数据集介绍

  1. Annotation中包含了对应图片的xml信息:

我们以下面的2007_000032.jpg为例
语义分割之PASCAL-VOC2012数据集介绍
其Annotation中对应的xml信息为:
语义分割之PASCAL-VOC2012数据集介绍
xml信息包含了该图片的基本信息,xml语言很易读,我们从中可以轻易得出这幅图片的一些基本信息,其中segmented一栏为1,这里的意思是这幅图用于分割(因为VOC2012中一共有10000+图,但并不都用于分割任务,有的用以物体标识或者动作识别等),若这一栏为0说明这幅图不是用于图像分割的。例如语义分割之PASCAL-VOC2012数据集介绍

  1. ImageSets中有用的部分为Segmentation文件:

语义分割之PASCAL-VOC2012数据集介绍因为VOC2012中的图片并不是都用于分割,所以需要txt文件信息来标记处哪些图片可以用于分割,写程序的时候就可以利用信息 train.txt 对图片进行挑选。train和val中的图片加一起一共2913张图。

  1. JPEGimages中存放正常样本图片:

语义分割之PASCAL-VOC2012数据集介绍
JPEGimages则放了我们需要的图片,这些图片一共有17125张,我们并不是都使用,我们仅对train.txt和val.txt中列出的图像进行使用,而其他的图像则用于不同的任务中。

  1. SegmentationClass中的png图用于图像分割分类

语义分割之PASCAL-VOC2012数据集介绍
SegmentationClass中的png图用于图像分割分类,下图中有两类物体,人和飞机,其中飞机和人都对应着特定的颜色,注意该文件夹中的图片为三通道彩色图,与之前单通道的灰度图不同。png图中对物体的分类像素不是0-20,而是对应着不同的RGB分量

  1. 而SegmentationObject中的png图则仅仅对图中不同的物体进行的分割,不对其物体所属的类别进行标注:

语义分割之PASCAL-VOC2012数据集介绍
显然,上面的很多人都被标记了不同的颜色,当然仅仅是为了分离出来。

参考:https://blog.csdn.net/haoji007/article/details/80361587

相关文章: