读取SBD实例分割数据集

2023-10-15 04:40
文章标签 数据 读取 分割 实例 sbd

本文主要是介绍读取SBD实例分割数据集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

VOC可以用于实例分割SegmentationObject: 也是物体分割后的结果,总共2913张png图片。
SegmentationClass: 语义分割标签,2913张png图片,图片是一样的,只是语义和实例分割的标签不一样,2913有1449用于validation,1464用于train,
SBD有11355张,训练集可以用于实例分割,实例分割标签在inst,语义分割是cls,不过都是mat,得转成png

想训练voc和SBD的实例分割,找了半天的VOC转COCO,大部分都是bbox的,实例分割的只找到一个链接: Pascal VOC转COCO数据_Python_风吴痕的博客-CSDN博客.
函数实现有一些报错,还有效果也一般,会漏掉一部分像素,如下图:在这里插入图片描述
遇到的报错是091011年的xml格式跟0708不太一样,改下 def data_transfer(self)里面的内容

// A code block
                    i                    if '<object>' in p:# 类别if json_file[-12] == '7' or json_file[-12] == '8':d = [next(fp).split('>')[1].split('<')[0] for _ in range(9)]# 边界框x1 = int(float(d[-4]));y1 = int(float(d[-3]));x2 = int(float(d[-2]));y2 = int(float(d[-1]))self.rectangle = [x1, y1, x2, y2]self.bbox = [x1, y1, x2 - x1, y2 - y1]  # COCO 对应格式[x,y,w,h]if json_file[-12] == '9' or json_file[-12] == '0'or json_file[-12] == '1':d = [next(fp).split('>')[1].split('<')[0] for _ in range(6)]x1 = int(float(d[-3]));y1 = int(float(d[-1]));x2 = int(float(d[-4]));y2 = int(float(d[-2]))self.rectangle = [x1, y1, x2, y2]self.bbox = [x1, y1, x2 - x1, y2 - y1]  # COCO 对应格式[x,y,w,h]elif json_file[-12] == '2':d = [next(fp).split('>')[1].split('<')[0] for _ in range(20)]x1 = int(float(d[-3]));y1 = int(float(d[-1]));x2 = int(float(d[-4]));y2 = int(float(d[-2]))self.rectangle = [x1, y1, x2, y2]self.bbox = [x1, y1, x2 - x1, y2 - y1]  # COCO 对应格式[x,y,w,h]self.supercategory = d[0]if self.supercategory not in self.label:self.categories.append(self.categorie())self.label.append(self.supercategory)self.annotations.append(self.annotation())self.annID += 1

torchvision有实现VOC和SBD的代码,不过只能加载SBD语义分割的数据集
最后使用chainercv的程序加载了SBD实例分割数据集

参考博客

(5条消息)深度学习图像分割(一)——PASCAL-VOC2012数据集(vocdevkit、Vocbenchmark_release)详细介绍_人工智能_OLDPAN的博客-CSDN博客 https://blog.csdn.net/iamoldpan/article/details/79196413
(5条消息)扩增的Pascal VOC 语义分割数据集制作_网络_cncyww的博客-CSDN博客
链接: https://blog.csdn.net/cncyww/article/details/89188506/.
(5条消息)MaskRCNN识别Pascal VOC 2007_人工智能_风吴痕的博客-CSDN博客 https://blog.csdn.net/wc781708249/article/details/79542655#t3

这篇关于读取SBD实例分割数据集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/215393

相关文章

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Python使用vllm处理多模态数据的预处理技巧

《Python使用vllm处理多模态数据的预处理技巧》本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN