机器学习(7) PASCAL VOC2012数据集
来源:互联网 发布:java怎样输出数组 编辑:程序博客网 时间:2024/05/29 02:26
因为最近在做语义分割,需要用到这个数据集。而通过对于官网的查看和了解,发现这个数据集的用途非常的多,特此详细记录一下。
下载地址:点击下载
这个数据集的文件目录如下:
- Annotation
- *.xml
- ImageSets
- Action
- *_train.txt
- *_trainval.txt
- *_val.txt
- Layout
- train.txt
- trainval.txt
- val.txt
- Main
- *_train.txt
- *_trainval.txt
- *_val.txt
- Segmentation
- train.txt
- trainval.txt
- val.txt
- Action
- JPEGImages
- *.jpg
- SegmentationClass
- *.png
- SegmentationObject
- *.png
Annotation
Annotations文件夹中存放的是xml格式的标签文件,每一个xml文件都对应于JPEGImages文件夹中的一张图片。格式如下,我们以2007_000033.xml为例。
<annotation> <folder>VOC2012</folder> <filename>2007_000033.jpg</filename> //文件名 <source> //文件来源 <database>The VOC2007 Database</database> <annotation>PASCAL VOC2007</annotation> <image>flickr</image> </source> <size> //图片的长,宽,通道数 <width>500</width> <height>366</height> <depth>3</depth> </size> <segmented>1</segmented> //可否用于语义分割任务,1表示可以,也就是这张图片在SegmentationClass/Object里面有 <object> //检测的目标,如果有多个会有多个<object>标签 <name>aeroplane</name> //目标类别 <pose>Unspecified</pose> //拍摄角度 <truncated>0</truncated> //是否被截断, 0表示完整 <difficult>0</difficult> //目标是否难以识别, 0表示容易识别 <bndbox> //bounding-box, 包含左下角和右上角xy坐标 <xmin>9</xmin> <ymin>107</ymin> <xmax>499</xmax> <ymax>263</ymax> </bndbox> </object> <object> <name>aeroplane</name> <pose>Left</pose> <truncated>0</truncated> <difficult>0</difficult> <bndbox> <xmin>421</xmin> <ymin>200</ymin> <xmax>482</xmax> <ymax>226</ymax> </bndbox> </object> <object> <name>aeroplane</name> <pose>Left</pose> <truncated>1</truncated> <difficult>0</difficult> <bndbox> <xmin>325</xmin> <ymin>188</ymin> <xmax>411</xmax> <ymax>223</ymax> </bndbox> </object></annotation>
ImageSets
ImageSets存放的是每一种类型的challenge对应的图像数据。
ImageSets下的四个文件夹:
- Action下存放的是人的动作(running、jumping等等)
- Layout下存放的是人体部位(head、hand、feet等等)
- Main下存放的是图像物体识别的数据,总共分为20类。
- Segmentation下存放的是可用于分割的图片的编号。
*_train中存放的是训练集的图片编号。
*_val中存放的是验证集的图片编号。
*_trainval是上面两者的合并集合。
train和val包含的图片没有交集。
JPEGImages
JPEGImages文件夹中包含了PASCAL VOC所提供的所有的图片,共有17125张。图片均以“年份_编号.jpg”格式命名。图片的尺寸大小不一,所以在后面训练的时候需要对图片进行resize操作。具体resize方式可以看最下面github链接里data.py(觉得好的话拜托star一下~)
SegmentationClass
这里面包含了2913张图片,每一张图片都对应JPEGImages里面的相应编号的图片。这里面的图片的像素颜色共有20种,对应20类物体。比如所有飞机都会被标为红色。
SegmentationObject
这里面同样包含了2913张图片,图片编号都与Class里面的图片编号相同。这里面的图片和Class里面图片的区别在于,这是针对Object的。在Class里面,一张图片里如果有多架飞机,那么会全部标注为红色。而在Object里面,同一张图片里面的飞机会被不同颜色标注出来。
AlexNet转成FCN进行segmentation task的代码实现:
- 机器学习(7) PASCAL VOC2012数据集
- pascal voc2012数据集介绍
- 针对pascal voc2012数据集语义分割各类对象的颜色表示
- VOC2012数据集图片画框
- PASCAL VOC2012 Chanllge 及其Dataset介绍
- TensorFlow Object Detection API 训练VOC2012数据集
- 机器学习数据集
- 机器学习数据集
- 机器学习数据集
- 机器学习数据集
- 机器学习数据集
- 机器学习-数据集
- 机器学习数据集
- 机器学习数据集
- 机器学习数据集
- PASCAL VOC2012目标检测权威评测夺冠之道
- PASCAL VOC 数据集
- 【caffe-Windows】基于Python多标签方法——VOC2012数据集
- unity麻将出牌后重新布置牌的位置
- JVM GC的核心参数: -XX:Newratio -XX:Newsize -XX:Maxnewsize -XX:Surviorratio
- DRAM、SRAM、SDRAM、DDRSDRAM的区别
- Java语言中关于break,continue和return的区别
- HDU5536 Chip Factory Trie(01字典树)
- 机器学习(7) PASCAL VOC2012数据集
- 死锁产生的4个必要条件,如何检测,解除死锁
- 顺序二叉树的建立、查找、删除、插入、替换、遍历
- java设计模式:代理模式
- 物理地址、虚拟地址(线性地址)、逻辑地址以及MMU的知识
- tarjan初学
- python中的super()
- 哈佛和冯诺依曼,从STM32的const全局变量说起
- Linux for循环之类C风格for循环