因为cityscapes数据集上的标签是由json格式组成,因此需要对json格式进行读取,然后发现cityscapes数据集上的类别信息在json中的“object”下的“label”中

博主这里只统计了19个类别的分布,并且省略了背景,如果需要34类别,自行在相应地方添加即可

将base_path中的train改为test、val则统计相对应数据集的分布

所以最终代码为

"""
数据集分析
"""
import json
import os
from matplotlib import pyplot as pltdef main():base_path = "gtFine/train/"filelist = os.listdir(base_path)filelist.sort()c0_count, c1_count, c2_count, c3_count, c4_count, c5_count, c6_count, c7_count, c8_count, c9_count, c10_count, c11_count, c12_count, c13_count, c14_count, c15_count, c16_count, c17_count, c18_count, c19_count = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0for names in filelist:filelists = os.listdir(base_path+"/"+"{}".format(names)+"/")for name in filelists:filename = os.path.splitext(name)[0]filename_suffix = os.path.splitext(name)[1]if filename_suffix == ".json":fullname = base_path + "{}".format(names)+ "/" + filename + filename_suffixdataJson = json.load(open("{}".format(fullname), encoding='UTF-8'))label_name = dataJson["objects"]c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15, c16, c17, c18, c19 = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0for _ in label_name:c0 = c0 + 1 if _["label"] == "road" else c0c1 = c1 + 1 if _["label"] == "sidewalk" else c1c2 = c2 + 1 if _["label"] == "building" else c2c3 = c3 + 1 if _["label"] == "wall" else c3c4 = c4 + 1 if _["label"] == "fence" else c4c5 = c5 + 1 if _["label"] == "pole" else c5c6 = c6 + 1 if _["label"] == "traffic light" else c6c7 = c7 + 1 if _["label"] == "traffic sign" else c7c8 = c8 + 1 if _["label"] == "vegetation" else c8c9 = c9 + 1 if _["label"] == "terrain" else c9c10 = c10 + 1 if _["label"] == "sky" else c10c11 = c11 + 1 if _["label"] == "person" else c11c12 = c12 + 1 if _["label"] == "rider" else c12c13 = c13 + 1 if _["label"] == "car" else c13c14 = c14 + 1 if _["label"] == "truck" else c14c15 = c15 + 1 if _["label"] == "bus" else c15c16 = c16 + 1 if _["label"] == "train" else c16c17 = c17 + 1 if _["label"] == "motorcycle" else c17c18 = c18 + 1 if _["label"] == "bicycle" else c18c0_count = c0_count + c0c1_count = c1_count + c1c2_count = c2_count + c2c3_count = c3_count + c3c4_count = c4_count + c4c5_count = c5_count + c5c6_count = c6_count + c6c7_count = c7_count + c7c8_count = c8_count + c8c9_count = c9_count + c9c10_count = c10_count + c10c11_count = c11_count + c11c12_count = c12_count + c12c13_count = c13_count + c13c14_count = c14_count + c14c15_count = c15_count + c15c16_count = c16_count + c16c17_count = c17_count + c17c18_count = c18_count + c18else:passclass_names = ['road', 'sidewalk', 'building', 'wall', 'fence', 'pole','traffic light', 'traffic sign', 'vegetation', 'terrain','sky', 'person', 'rider', 'car', 'truck', 'bus', 'train','motorcycle', 'bicycle']class_num = [c0_count,c1_count,c2_count,c3_count,c4_count,c5_count,c6_count,c7_count,c8_count,c9_count,c10_count,c11_count,c12_count,c13_count,c14_count,c15_count,c16_count,c17_count,c18_count]plt.title("cityscape_train"), plt.ylabel("number"), plt.xlabel("class"), plt.bar(class_names, class_num)plt.show()
if __name__ == '__main__':main()

最终输出结果:

cityscapes数据集上的类别统计分布相关推荐

  1. 无人驾驶常用数据集---图像语义分割数据集--Cityscapes数据集的解读(for 小白)

    ** 无人驾驶常用数据集–图像语义分割数据集–Cityscapes数据集的解读(for 小白) ** 一.什么是Cityscapes数据集? Cityscapes是关于城市街道场景的语义理解图片数据集 ...

  2. cityscapes数据集_全景分割 UPSNet 源码分析 (1) - 数据格式

    本系列文章针对的数据集是Cityscapes,后续会在Mapillary vista街道数据集上尝试训练出一版模型. 1. 数据集和标注文件 Cityscapes文件夹下 ├── annotation ...

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

    PASCAL-VOC2012 PASCAL-VOC2012数据集介绍官网: 参考 数据集下载地址:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCt ...

  4. 【工程测试与训练】使用BiSeNetv2测试、训练cityscapes数据集、训练自己的数据集

    1 准备工作 下载工程 工程下载:https://github.com/CoinCheung/BiSeNet 预训练模型下载: 工程下载后解压,并在其中创建文件夹[MODEL]用于存放预训练模型   ...

  5. 使用CityScapes数据集训练实例分割网络YOLACT

    #2020开年第一篇,谁能预料新年伊始的世界如此脆弱,中国疫情肆虐,美伊箭拔弩张,英国愤懑脱欧,儿时的偶像科比和女儿也不幸离世,生命之渺小,生活之曲折,兄弟们,要充满阳光地活着啊,人间,值得.:-)今 ...

  6. 语义分割-CityScapes数据集

    前言 常见的语义分割数据集有VOC2012, MS COCO以及Cityscapes等. 今天我们介绍Cityscapes数据集 1. 数据集简介 Cityscapes数据集,即城市景观数据集,其中包 ...

  7. CityScapes数据集简介与数据处理和精度指标

    1. 数据集简介 Cityscapes数据集,即城市景观数据集,其中包含从50个不同城市的街景中记录的各种立体视频序列,除了更大的20000个弱注释帧之外,还有高质量的5000帧像素级注释.Citys ...

  8. 从零开始的图像语义分割:FCN快速复现教程(Pytorch+CityScapes数据集)

    从零开始的图像语义分割:FCN复现教程(Pytorch+CityScapes数据集) 前言 一.图像分割开山之作FCN 二.代码及数据集获取 1.源项目代码 2.CityScapes数据集 三.代码复 ...

  9. 将CityScapes数据集转换为COCO格式的实例分割数据集

    ##¥##2019年结束前最后两小时,写出本年度最后一篇博客,不是博主没地方去跨年,实在是Coding乐趣无穷ahhhh ##¥## COCO数据集是研究实例分割的通用数据集,但是针对道路环境的数据较 ...

  10. Cityscapes数据集的深度完整解析

    cityscapes数据集是分割模型训练时比较常用的一个数据集,他还可以用来训练GAN网络生成街景图片. 数据集下载和文件夹组成: - 整个数据集包含50个欧洲城市,5000张精细标注图像(标注位于g ...

最新文章

  1. 简单两行,实现无线WiFi共享上网,手机抓包再也不用愁了
  2. python移动窗口函数
  3. 一个链接orcal的标准链接方法
  4. python基础学习笔记第一天
  5. scrapy proxy and user_agent
  6. 温州大学《机器学习》课程课件(十一、降维)
  7. java convert函数_自己实现 java中 Convert.toDouble(String str)处理函数 | 学步园
  8. JSK-16 爬楼梯【基础】
  9. Mybatis 图解
  10. PHP汉字转化为拼音
  11. iphone开发每日一练【2011-10-21】
  12. 在网页中创建表格(1)
  13. BZOJ4715 囚人的旋律
  14. spoj4487(splay)
  15. qq影音4.0 android,QQ影音4.0官方最新正式版
  16. Typora图片显示不出来
  17. 粗糙集(Rough set) 理论
  18. EDA技术试验二:组合逻辑电路设计、仿真与实现实验
  19. VMware虚拟机Mac-OS-X系统如何切换中英文输入法
  20. 户型平面原型设计-简介

热门文章

  1. Word自动目录字体过大,如何全选并修改样式
  2. win10系统显示打印机未连接到服务器,win10系统连接打印机提示“打印处理器不存在”如何解决...
  3. 延时消抖c语言,蓝桥杯练习(二)按键的使用和延时消抖
  4. 浏览器主页被360篡改怎么办?
  5. python二元一次方程组用鸡兔同笼的思路来写编程_二元一次方程组应用 —鸡兔同笼...
  6. 楼板的弹性计算和塑形计算_板计算的时候什么时候用弹性计算
  7. word如何让单页变横向
  8. 不同转录组测序方法总结
  9. .xib could't be opend. Cound not read archive
  10. c语言文件指针重新定向,C语言rewind()函数:将文件指针重新指向文件开头