语义分割之VOC2012、Cityscapes数据集介绍

PASCAL-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

在这里插入图片描述

这里只说与图像分割(segmentation)有关的信息,VOC2012中的图片并不是都用于分割,用于分割比赛的图片实例如下,包含原图以及图像分类分割和图像物体分割两种png图。图像分类分割是在20种物体中,ground-turth图片上每个物体的轮廓填充都有一个特定的颜色,一共20种颜色,比如摩托车用红色表示,人用绿色表示。而图像物体分割则仅仅在一副图中生成不同物体的轮廓颜色即可,颜色自己随便填充。
在这里插入图片描述

VOC2012数据集的代码结构如下:
在这里插入图片描述

  1. Annotation中包含了对应图片的xml信息:

我们以下面的2007_000032.jpg为例
在这里插入图片描述
其Annotation中对应的xml信息为:
在这里插入图片描述
xml信息包含了该图片的基本信息,xml语言很易读,我们从中可以轻易得出这幅图片的一些基本信息,其中segmented一栏为1,这里的意思是这幅图用于分割(因为VOC2012中一共有10000+图,但并不都用于分割任务,有的用以物体标识或者动作识别等),若这一栏为0说明这幅图不是用于图像分割的。例如在这里插入图片描述

  1. ImageSets中有用的部分为Segmentation文件:

在这里插入图片描述因为VOC2012中的图片并不是都用于分割,所以需要txt文件信息来标记处哪些图片可以用于分割,写程序的时候就可以利用信息 train.txt 对图片进行挑选。train和val中的图片加一起一共2913张图。

  1. JPEGimages中存放正常样本图片:

在这里插入图片描述
JPEGimages则放了我们需要的图片,这些图片一共有17125张,我们并不是都使用,我们仅对train.txt和val.txt中列出的图像进行使用,而其他的图像则用于不同的任务中。

  1. SegmentationClass中的png图用于图像的语义分割

在这里插入图片描述
SegmentationClass中的png图用于图像语义分割,下图中有两类物体,人和飞机,其中飞机和人都对应着特定的颜色,注意该文件夹中的图片为三通道彩色图,与之前单通道的灰度图不同。png图中对物体的分类像素不是0-20,而是对应着不同的RGB分量

  1. 而SegmentationObject中的png图则不仅仅对图中不同的类别进行的分类,对其同一类别的不同物体也要分割——实例分割:

在这里插入图片描述
显然,上面的很多人都被标记了不同的颜色,当然仅仅是为了分离出来。

参考:https://blog.csdn.net/haoji007/article/details/80361587


Cityscapes

  1. 登录Cityscapes官网(网址),注册并登录
  2. 将下面命令中的myusername、mypassword替换自己的账号和密码
    wget --keep-session-cookies --save-cookies=cookies.txt --post-data 'username=myusername&password=mypassword&submit=Login' https://www.cityscapes-dataset.com/login/
  3. 使用提供的ID下载对应数据集(语义分割一般用1,3)
    wget --load-cookies cookies.txt --content-disposition https://www.cityscapes-dataset.com/file-handling/?packageID=1
    ID与数据集对照表:
    1 -> gtFine_trainvaltest.zip (241MB)
    2 -> gtCoarse.zip (1.3GB)
    3 -> leftImg8bit_trainvaltest.zip (11GB)
    4 -> leftImg8bit_trainextra.zip (44GB)
    8 -> camera_trainvaltest.zip (2MB)
    9 -> camera_trainextra.zip (8MB)
    10 -> vehicle_trainvaltest.zip (2MB)
    11 -> vehicle_trainextra.zip (7MB)
    12 -> leftImg8bit_demoVideo.zip (6.6GB)
    28 -> gtBbox_cityPersons_trainval.zip (2.2MB)
  • 解压leftImg8bit_trainvaltest,gtFine_trainvaltest后,目录结构如下:
    在这里插入图片描述

  • 该数据集包含精标数据5000份,图片数据存放在“leftImg8bit”目录下,训练集和验证集的语义ground truth放在“gtFine”目录下

  1. 其中图片尺寸: 1024*2048;
  2. 训练集: 2975, 验证集: 500, 测试集: 1525;
  3. 总共类别数目为:包括未标注的0类,总共35类, 其中的labels说明如下图:
    在这里插入图片描述
    注意到上图中“ignoreInEval”列含有16类在测试集上进行计算时需要忽略,所以总共有19类,关于语义分割任务。
  • 在leftImg8bit/train下有18个子文件夹对应德国的16个城市,法国一个城市和瑞士一个城市;在leftImg8bit/val下有3个子文件夹对应德国的3个城市;在leftImg8bit/test下有6个子文件夹对应德国的6个城市。
    在这里插入图片描述
  • 在gtFine/train下也有18个子文件夹对应leftImg8bit/train里面的文件夹,但是不一样的leftImg8bit里面的一张原图,对应着gtFine里面有4个文件
    在这里插入图片描述
    分别为
    在这里插入图片描述
    1. gtFine_color.png是为了可视化,不同类别与色彩的对应关系也在labels.py文件中给出

在这里插入图片描述

2. gtFine_instaceIds.png是实例分割的结果,即对同一类中的不同个体进行区分;

在这里插入图片描述

3. gtFine_labelIds.png的值是0-33,不同的值代表不同的类,值和类的对应关系在代码中cityscapesscripts/helpers/labels.py中定义;

在这里插入图片描述 4.gtFine_polygons.json存储的标注的第一手数据,即类(“label”: “sky”,“building”,“sidewalk”,等)及其在图像中对应的区域(由多边形"polygon"顶点在图像中的像素坐标给出的封闭区域);

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值