pascal voc 数据集_PASCAL VOC2012 数据集详解

点击上方↑↑↑“OpenCV学堂”关注我

关注可学习更多的OpenCV教程。问题或建议,请公众号留言;如果你觉得文章对你有帮助,欢迎转发支持

概述

pascal voc 数据集_PASCAL VOC2012 数据集详解_第1张图片

Pascal VOC2012作为基准数据之一,在对象检测、图像分割网络对比实验与模型效果评估中被频频使用,但是如果没有制作过此格式的数据集就会忽略很多细节问题,今天我们一起来从头到尾扒一扒Pascal VOC2012 数据集各种细节问题。

Pascal VOC2012数据集主要是针对视觉任务中监督学习提供标签数据,它有二十个类别:

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 voc 数据集_PASCAL VOC2012 数据集详解_第2张图片

图像分割

分割:对每个对象与类别生成像素级别的分割标签,确定像素是为目标20个分类或者背景。

pascal voc 数据集_PASCAL VOC2012 数据集详解_第3张图片

此外Pascal VOC还提供一些很有意思的标注数据包括行为识别、人体Layout分析等。

行为识别数据:预测图像中人的行为动作

pascal voc 数据集_PASCAL VOC2012 数据集详解_第4张图片

Person Layout标注,检测人与其各个身体组成部分,如果手、脚、头等

pascal voc 数据集_PASCAL VOC2012 数据集详解_第5张图片

数据集结构与描述

Pascal VOC2012的文件结构如下:

pascal voc 数据集_PASCAL VOC2012 数据集详解_第6张图片

pascal voc 数据集_PASCAL VOC2012 数据集详解_第7张图片

Annotations

里面是图像对应的XML标注信息描述,每张图像有一个与之对应同名的描述XML文件,XML前面部分声明图像数据来源,大小等元信息,举例如下:

pascal voc 数据集_PASCAL VOC2012 数据集详解_第8张图片

上面表示图像对应路径为VOC2012/JPEGImages/2007_000033.jpg,来自flickr网站上,大小为WxHxC=500x366x3,是三通道的彩色图像,其中segmented为1有分割标注,0表示没有分割标注。后面的是对象检测的每个BOX标签信息极其描述信息,图示如下:

pascal voc 数据集_PASCAL VOC2012 数据集详解_第9张图片

其中每个object标签是表示单独的box信息与对象描述,一张图像可以有多个object标签(boxes),

-name 表示对象类别
-pose 表示采用是从什么视角,常见的有Left、Right、Frontal、rear,
-difficult 是否被标记为很难识别对称,0表示不是,1表示是
-truncated 是否被标记为截断,0表示没有,1表示是
-Bndbox 标签描述box框在图像上的 位置

ImageSets

里面是标注类别的每个文件列表信息,Action中是所有具有Action标注信息图像文件名的txt文件列表,Layout中的txt文件表示包含Layout标注信息的图像文件名列表,Main文件夹中包含20个类别每个类别一个txt文件,每个txt文件都是包含该类别的图像文件名称列表,Segmentation则是包含语义分割信息图像文件的列表。

train.txt表示是的训练数据集合
val.txt 表示验证集数据
trainval.txt表示训练与验证集数据
test.txt表示测试集数据

Pascal VOC2012 Main中统计的训练、验证、验证与训练、测试图像如下:

pascal voc 数据集_PASCAL VOC2012 数据集详解_第10张图片

可以看出训练图像有5717张,目标数13609个。

在main中针对每个类别都有个三个文件,分别为:

CLASSNAME_train.txt
CLASSNAME_trainval.txt
CLASSNAME_val.txt

以CLASSNAME = aeroplane为例,main中的三个文件分别为:

aeroplane_train.txt
aeroplane_trainval.txt
aeroplane_val.txt

每个类别txt文件里面的内容格式为

图像文件名 + 空格 + 标记,以aeroplane_train.txt中的举例如下:

2008_000290 0
2008_000291 1
2008_000297 -1

其中2008_000290、2008_000291、2008_000297表示三张图像文件名

0 表示图像中包含aeroplane对象但是难识别样本
1 表示图像中包含aeroplane
-1 表示图像中不包含aeroplane

JPEGImages

所有的原始图像文件,格式必须是JPG格式,这个要特别注意!如果你打算使用VOC2012格式生成数据,那么原始图像格式在采样时候请用JPG格式保存,避免后期生成使用tensorflow工具生成的时候出错。

SegmentationClass

所有分割的图像标注,分割图像安装每个类别标注的数据

SegmentationObject

所有分割的图像标注,分割图像安装每个类别每个对象不同标注的数据

性能评价

对象检测类任务的性能评价是基于AP/AR 根据精度召回曲线计算mAP,相关阅读参考之前的文章即可:

详解对象检测网络性能评价指标mAP计算

图像分割类任务的性能评价是基于图像的平均分割精度,即20个类别与背景类别的分割计算得到:

c952994da71754c3d6d55614501d48ab.png

标注制作

我喜欢用的制作VOC2012数据集的标注工具为labelImg

pascal voc 数据集_PASCAL VOC2012 数据集详解_第11张图片

简单好用,自动生成VOC2012 Annotation XML文件。

更多数据标注与数据集制作工具参考之前的文章:

十个最常用深度学习图像/视频数据标注工具

参考资料

http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html
6ad63f1c0e8e2d915bfa3644d0bf540d.png 6ad63f1c0e8e2d915bfa3644d0bf540d.png

往期精选

告诉大家你在看

  • 性能达到SOTA的CSP对象检测网络

  • 2019 半年原创技术文章汇总

  • 十个最常用深度学习图像/视频数据标注工具

  • 详解对象检测网络性能评价指标mAP计算

  • Mask-RCNN模型的实现自定义对象(无人机)检测

pascal voc 数据集_PASCAL VOC2012 数据集详解_第12张图片

你可能感兴趣的:(pascal,voc,数据集,pascal,voc数据集)