【目标检测数据集】VOC2012 数据集与 SBD dataset 介绍

一、介绍

VOC 数据是 PASCAL VOC Challenge 用到的数据集,官网:http://host.robots.ox.ac.uk/pascal/VOC/

备注:VOC数据集常用的均值为:mean_RGB=(122.67891434, 116.66876762, 104.00698793)

Pytorch 上通用的数据集的归一化指标为:mean=(0.485, 0.456, 0.406) , std=(0.229, 0.224, 0.225)

voc2012 官网:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/

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 VOC挑战赛主要包括以下几类:图像分类(Object Classification)目标检测(Object Detection)目标分割(Object Segmentation)行为识别(Action Classification) 等。

  1. 图像分类与目标检测任务

  1. 分割任务

注意,图像分割一般包括语义分割、实例分割和全景分割,实例分割是要把每个单独的目标用一种颜色表示(下图中间的图像),而语义分割只是把同一类别的所有目标用同一颜色表示(下图右侧的图片)。

  1. 行为识别任务

  1. 人体布局检测任务

二、文件夹介绍

Annotations

这个文件夹内主要存放了数据的标签,里面包含了每张图片的bounding box信息,主要用于目标检测。

ImageSets

用于存放不同任务的划分的数据集。

  • Action:文件夹中包含10类常见的人体动作 {jumping, phoning, playinginstrument, reading, ridingbike, ridinghorse, running, takingphoto, usingcomputer. walking}。 一共包含33个关于样本划分的文本文件。每个文件中一共有三列,依次为图片的名称、图片中object的index、label{1:正类样本, -1:负类样本}。

  • Layout:用于预测人体的头、手、脚这三部分的bbox,并对bbox内的object分类。各文本文件都有2列,依次表示:图片名称、图片包含的人数。

  • Main包含63个文本文件,其中20个类的划分文件 [class_train.txt, class_trainval.txt, class_val.txt],外加以一组全局样本的 [train.txt, trainval.txt, val.txt] 划分文件。每个文件都有两列:文件名、label[1:表示正类样本,-1:表示负类样本]。

  • Segmentation只包含一组 [train.txt, trainval.txt, val.txt] 文件,各文件只有1列,为图片名称。

JPEGImages

这里存放的就是JPG格式的原图,包含17125张彩色图片,但只有一部分(2913张)是用于分割的。

SegmentationClass

语义分割任务中用到的label图片,PNG格式,共2913张,与原图的每一张图片相对应。

SegmentationObject

实例分割任务用到的label图片,在语义分割中用不到。

其余的具体可以查看 【目标检测数据集】VOC2007 数据集介绍 里面对每个文件的介绍

三、Augmented dataset

VOC 的 Augment dataset 也叫作SBD。

数据集介绍

增强版的VOC跟原版没什么区别,只是增加了数据。

  • img: 增强版的原图,共11355张图片

  • cls: 用于语义分割的label,共11355个.mat文件,每个.mat文件对应一张原图

  • inst: 用于实例分割的label,也是11355个.mat文件

  • tools: 3个用于数据转换的脚本,在后面数据转换时用到

  • train.txt: 训练集索引

  • val.txt: 验证集索引

数据集使用

数据转换

label 是 .mat 格式的文件,需要将其转换为 .png 格式的图片,转化后的图片是8-bit的灰度图。

# 在 benchmark_RELEASE 目录下创建一个名为 cls_png 的目录用于存放转化后的 png图片
# 在 benchmark_RELEASE 目录下执行 mat2png.py 脚本
python tools/mat2png.py cls cls_png

原始 label 为三通道RGB图像,为了统一,需要将其转化为8-bit的灰度png图像。

# 在 VOCdevkit/VOC2012 目录下创建一个名为 SegmentationClass_1D 的文件夹用于存放转化后的图片
# 将 benchmark_RELEASE/tools 目录下的 convert_labels.py 和 utils.py 脚本拷贝到 VOCdevkit/VOC2012 目录下,并执行 convert_labels.py 脚本
python convert_labels.py SegmentationClass ImageSets/Segmentation/trainval.txt SegmentationClass_1D

数据融合

将原始的 PASCAL VOC 2012 数据集和增强版的数据集合并到一起。

目前已有数据文件如下:

  1. VOCdevkit/VOC2012 为原始 PASCAL VOC 2012 数据集

images 数据集的文件名为:JPEGImages,共17125张图片(其中2913张用于分割)

labels 数据集文件名为:SegmentationClass_1D,共2913张图片

  1. benchmark_RELEASE 为增强数据集

images 数据集的文件名为:img,共11355张图片

labels 数据集文件名为:cls_png,共11355张图片

将 JPEGImages 中用于分割的2913张图片拷贝到 img 目录下,将 SegmentationClass_1D 中的2913张图片拷贝到cls_png 目录下,如遇到重复,替换即可。

四、数据下载

【目标检测数据集】VOC2012 数据集与 SBD dataset 介绍

五、链接作者

欢迎关注我的公众号:@AI算法与电子竞赛

硬性的标准其实限制不了无限可能的我们,所以啊!少年们加油吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/615632.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

紫光展锐T610平台_4G安卓核心板方案定制开发

紫光展锐T610核心板配备Android 11操作系统,采用12nm制程工艺。该处理器CPU由2颗基于Cortex-A75架构的大核心和6颗基于Cortex-A55架构的小核心组成,最高主频为1.8GHz。GPU采用的是614.4MHz的Mali G52,可以流畅播放2400*1080分辨率视频&#x…

信号完整性的常见术语概念(面试常用)

目录 术语 概念一览 1.信号完整性(Signal Integrity) 2.传输线(Transmission Line) 3.特性阻抗(Characteristic Impedance) 4.反射(Reflecti…

Linux中磁盘的分区,格式化,挂载和文件系统的修复

一.分区工具 1.分区工具介绍 fdisk 2t及以下分区 推荐 (分完区不保存不生效,有反悔的可能) gdisk 全支持 推荐 parted 全支持 不推荐 ( 即时生效,分完立即生效) 2.fdisk 分区,查看磁盘 格式:fdisk -l [磁盘设备] fdisk -l 查看…

【R语言】绘制标准地图(指北针,比例尺,图例)

在绘制地图时,我们一般都是利用“ArcGIS”"MapGIS"等专业软件进行手动操作。这样制作的地图自定义的效果强,我们可以随意调换地图的各种元素,但是今天本文要将的是如何使用R语言绘制具备地图三要素的精美地图,当然代码绘…

易舟云凭证保存查看的3种方式

文章目录 1、保存为图片2、导出为Excel3、跨期批量导出 1、保存为图片 点击记账凭证详情,点击“下载-保存为图片”,即可下载图片! 2、导出为Excel 导出为Excel可以对单张凭证导出,也可以对指定月份的记账凭证进行批量导出。 1…

JavaEE初阶——多线程(二)

T04BF 👋专栏: 算法|JAVA|MySQL|C语言 🫵 小比特 大梦想 此篇文章延续上一篇文章,与大家分享Thread常见的方法以及线程的状态相关知识 其他内容我们下一篇再见! 如果有错误或不足请您指出!!! 目录 3.Thread类及常见方法3.1Thread常见的构造方法3.2Thread…

【matlab非线性规划工具箱安装1 SeDuMi 1.3工具箱】

【matlab非线性规划工具箱安装1 SeDuMi 1.3工具箱】 该博客是非线性手眼标定代码中所依赖的matlab工具箱的安装内容,除了进行手眼标定以外,该工具箱还可以用于其他的非线性规划问题 手眼标定传送门: 【从零开始进行高精度手眼标定 eye in …

C语言 | 内存函数memcpy,memmove,memset,memcmp

目录&#xff1a; 1. memcpy使用和模拟实现 2. memmove使用和模拟实现 3. memset函数的使用 4. memcmp函数的使用 头文件&#xff1a;<string.h> 1. memcpy使用和模拟实现 void * memcpy ( void * destination, const void * source, size_t num ); • 从source的…

刷题之动态规划-回文串

前言 大家好&#xff0c;我是jiantaoyab&#xff0c;开始刷动态规划的回文串类型相关的题目 动态规划5个步骤 状态表示 &#xff1a;dp数组中每一个下标对应值的含义是什么>dp[i]表示什么状态转移方程&#xff1a; dp[i] 等于什么1 和 2 是动态规划的核心步骤&#xff0c;…

两数之和-第12届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第51讲。 两数之和&#xf…

SqlServer功能性配置选择

功能性配置 下面的是必选的

记录一下如何腾讯云服务器用客户端连MySQL

我一般喜欢用IDEA连数据库&#xff0c;别问我为啥&#xff08;就喜欢用一个软件解决所有问题&#xff09; 当然写SQL语句个人还是觉得sqlyog体验最佳&#xff01;