PascalVOC 数据集

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39679367/article/details/80932532

Pascal VOC challenge 是一个非常流行的数据集,用于构建和评估图像分类、对象检测和分割的算法。


官网数据集镜像:https://pjreddie.com/projects/pascal-voc-dataset-mirror/

一、Challenge

Pascal VOC challenge 的目标就是从存在于现实场景中的许多可视对象类别中识别出对象(即不预先分割的对象)。全部有二十个类:
person, bird, cat, cow, dog, horse, sheep, aeroplane, bicycle, boat, bus, car, motorbike, train, bottle, chair, dining table, potted plant, sofa, tv / monitor

(一)主要任务

有五个主要任务:

  1. 分类:对于每一个类,在一张测试图片中预测该类至少一个对象是否存在。
  2. 检测:对于每一个类,在一张测试图片中预测该类的每一个对象的边界框(bounding box)。
  3. 分割:对于测试图片每一个像素,如果像素不属于20个指定类中的一个,则预测包含该像素或“背景”的对象的类。
  4. 动作分类:对于每个动作类别,预测测试图片中的指定的人(由其边界框指示)是否正在执行相应的动作。其中有 10 个动作类别:
  • jumping; phoning; playing a musical instrument; reading; riding a bicycle or motorcycle; riding a horse; running; taking a photograph;using a computer; walking
  1. 大尺度识别:这个任务又 ImageNet 组织者执行。更多可查看其官网。

二、DATA

里面有一个 VOC2007 ,另一个是 VOC2012 。
进去里面有 5 个文件夹:
VOC2012
├──Annotations
├──ImageSets
 ├──Action
 ├──Layout
 ├──Main
 └──Segmentation
├──JPEGImage
├──SegmentationClass
└──SegmentationObject

Annotations:存放 xml 文件,每个文件对应 JPEGImage 里面的一张图片
ImageSets:存放记录各个人物正负样本的 txt 文件
JPEGImage:存放图片,每张图片都有对应的编号
SegmentationClass:存放分割图片,按类分,相同的类用同一个颜色表示
SegmentationObject:存放分割图片,按物体分,不同的物体用不同的颜色表示

三、Annotations

xml 是可扩展标记语言,文件里面内容大概如下:

<annotation>
  <folder>VOC2012</folder>
  <filename>2007_000027.jpg</filename>          //文件名称
  <source>
    <database>The VOC2007 Database</database>
    <annotation>PASCAL VOC2007</annotation>
    <image>flickr</image>
  </source>
  <size>
    <width>486</width>                           //图片宽度
    <height>500</height>                         //图片高度
    <depth>3</depth>                             //图片深度
  </size>
  <segmented>0</segmented>
  <object>
    <name>person</name>                          //类别
    <pose>Unspecified</pose>
    <truncated>0</truncated>
    <difficult>0</difficult>                     //是否难以识别
    <bndbox>                                     //bounding box
      <xmin>174</xmin>                           //左上角的 x 坐标
      <ymin>101</ymin>                           //左上角的 y 坐标
      <xmax>349</xmax>                           //右下角的 x 坐标
      <ymax>351</ymax>                           //右下角的 y 坐标
    </bndbox>
</annotation>

里面指定了文件夹,文件名字,图片的长宽和深度,还有边界框(bounding box)及物体类别。

四、ImageSets

ImageSets 里面指定了每一张图片为正样本还是负样本,例如 Main 目录里面的 aeroplane_train.txt 内容如下:

2008_000008 -1
2008_000015 -1
2008_000019 -1
2008_000023 -1
2008_000028 -1
2008_000033  1
2008_000036 -1
2008_000037  1
2008_000041 -1
2008_000045 -1
2008_000053 -1
2008_000060 -1
...

前面的 2008_000008 代表了图片的名称,后面的 1 或 -1 代表了这张图片是正样本还是负样本。

展开阅读全文

没有更多推荐了,返回首页