PASCAL的全称是Pattern Analysis, Statistical Modelling and Computational Learning
VOC的全称是Visual Object Classes
第一届PASCAL VOC举办于2005年,然后每年一届,于2012年终止
PASCAL VOC数据集的官网地址:http://host.robots.ox.ac.uk/pascal/VOC/
当前最完整的是PASCAL VOC 2012数据集,包括:20类物体,train/val 数据集有11,530张图片,包括 27,450 目标检测标记和 6,929 分割标记,可用于图像分类、目标检测和分割。
其标注文件为.xml格式,其关键字段的意义:
- folder: 文件夹
- filename:文件名
- database: 数据库名
- annotation: 标记文件格式
- size:图像尺寸,width宽、height高,depth通道数
- segmented: 分割
- object, name: 标签名;pose:是否是姿势;truncated:是否被截断;difficult:是否识别困难。
-
bndbox, 边界框位置
PASCAL VOC标注格式范例
标注文件中的关键信息,用xml.etree.ElementTree模块来读取,范例代码如下
import os
import numpy as np
import xml.etree.ElementTree as ET
xml_filename = r'D:\PASCAL VOC2012\VOCdevkit\VOC2012\Annotations\2007_000042.xml'
tree = ET.parse(xml_filename)
objs = tree.findall('object')
for i, obj in enumerate(objs):
x1 = float(obj.find('bndbox').find('xmin').text)
y1 = float(obj.find('bndbox').find('xmax').text)
x2 = float(obj.find('bndbox').find('ymin').text)
y2 = float(obj.find('bndbox').find('ymax').text)
name = str(obj.find('name').text)
print(name, x1, y1, x2, y2)
输出结果:
train 263.0 500.0 32.0 295.0
train 1.0 235.0 36.0 299.0












网友评论