hrnetv2训练自己的数据集(cityscapes格式)

2023-11-12

简单记录利用hrnetv2训练自有数据时,遇到的问题
1.下载github代码,配置环境;
2.假设已有原始8位图像和8位label图像;
3.修改root/lib/datasets/cityscapes.py中的部分:

self.label_mapping = {-1: ignore_label, 0: ignore_label, 
                              1: ignore_label, 2: ignore_label, 
                              3: ignore_label, 4: ignore_label, 
                              5: ignore_label, 6: ignore_label, 
                              7: 0, 8: 1, 9: ignore_label, 
                              10: ignore_label, 11: 2, 12: 3, 
                              13: 4, 14: ignore_label, 15: ignore_label, 
                              16: ignore_label, 17: 5, 18: ignore_label, 
                              19: 6, 20: 7, 21: 8, 22: 9, 23: 10, 24: 11,
                              25: 12, 26: 13, 27: 14, 28: 15, 
                              29: ignore_label, 30: ignore_label, 
                              31: 16, 32: 17, 33: 18}
        self.class_weights = torch.FloatTensor([0.8373, 0.918, 0.866, 1.0345, 
                                        1.0166, 0.9969, 0.9754, 1.0489,
                                        0.8786, 1.0023, 0.9539, 0.9843, 
                                        1.1116, 0.9037, 1.0865, 1.0955, 
                                        1.0865, 1.1529, 1.0507]).cuda()

由于cityscapes数据集中num_classes为19,上述代码中self.label_mapping字典中的id:trainid字段,除去ignore_label为19个;self.class_weights的长度为19。
需要按照自有数据集的类别个数修改,如训练类别为9:

self.label_mapping = {-1: ignore_label, 0: 0,
                              1: ignore_label, 2: ignore_label, 
                              3: ignore_label, 4: ignore_label, 
                              5: ignore_label, 6: ignore_label, 
                              7: 1, 8: 2, 9: ignore_label,
                              10: ignore_label, 11: 3, 12: 4,
                              13: 5, 14: 6, 15: 7,
                              16: 8, 17: ignore_label, 18: ignore_label,
                              19: ignore_label, 20: ignore_label, 21: ignore_label, 22: ignore_label, 23: ignore_label, 24: ignore_label,
                              25: ignore_label, 26: ignore_label, 27: ignore_label, 28: ignore_label,
                              29: ignore_label, 30: ignore_label,
                              31: ignore_label, 32: ignore_label, 33: ignore_label}
        self.class_weights = torch.FloatTensor([0.8373, 0.918, 0.866, 1.0345, 
                                        1.0166, 0.9969, 0.9754, 1.0489,
                                        0.8786]).cuda()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

hrnetv2训练自己的数据集(cityscapes格式) 的相关文章

随机推荐

  • 基于亚马逊云科技无服务器服务快速搭建电商平台——部署篇

    受疫情影响消费者习惯发生改变 刺激了全球电商行业的快速发展 除了依托第三方电商平台将产品销售给消费者之外 企业通过品牌官网或者自有电商平台销售商品也是近几年电商领域快速发展的商业模式 独立站电商模式可以进行多方面 全渠道的互联网市场拓展 推
  • 接口测试-第03天-Postman用例集、断言、前置脚本、关联、生成测试报告

    更多功能测试以及全套学习路线图均在专栏 戳进去领取 系列文章目录 身为开发必知必会的Linux Linux远程连接 命令的使用 Linux命令大全 唯一以案例详解文 持续更新中 Linux命令大全以及数据库 唯一以案例详解文 已完结 Web
  • SVM算法笔记(2)

    线性可分支持向量机与硬间隔最大化 1 线性可分支持向量机 一般地 训练数据线性可分 存在无穷个分离超平面可将两类数据正确分开 感知机利用误分类最小的策略 求得分离超平面 解有无穷多个 线性可分支持向量机利用间隔最大化求最优分离超平面 解唯一
  • QT从入门到实战x篇_12_资源文件添加(QWindow的手动布局、路径用反斜杠、增加代码移植性)

    接上文 QT从入门到实战x篇 xx QMainWindow状态栏 铆接部件 核心部件 可以有多个的add 只能有一个的set 本篇介绍如何添加资源文件 创建Qt程序如下 1 手动实现上篇中提到的部件 1 在UI文件中可以双击菜单栏对应项目
  • recognition mnist handwriting digits

    recognition mnist handwriting digits download mnist and load data MNIST can be downloaded in this website http yann lecu
  • Python 实现 MQTT 演示版

    MQTT 消息 MQTT 是一种机器对机器 M2M 物联网 连接协议 MQTT 代表消息队列遥测传输 它是一种基于发布订阅的消息传递协议 它工作在 TCP IP 协议之上 工作原理 首先 订阅者订阅一个或多个主题 然后一个或多个发布者将消息
  • Maven本地仓库jar存在仍然从远程仓库下载且失败的现象

    使用Maven过程中 曾经出现过本地仓库中已经存在某jar包 但是Maven仍然从远程仓库下载jar包的现象 解决方案 可以通过删除包目录中的 remote repositories文件解决问题 Maven使用 remote reposit
  • windows server 2008 R2 修改Adminstrator用户名及密码

    转自 https jingyan baidu com article fcb5aff75d883bedaa4a7128 html 开通服务器后 为了安全起见 应及时修改默认账户名和密码 修改方法如下 一 Windows Server 200
  • Web前端复习——JavaScript复习(DOM)

    1 DOM概述 DHTML 动态网页技术的统称 DHML HTML CSS JS HTML XHTML DHTML XML HTML 超文本标记语言 专门编写网页内容的语言 XHTML 严格的HTML语言标准 DHTML 动态网页技术的统称
  • 动态修改布局

    在代码中设置控件大小的方法 private Button mbtn mbtn Button findViewById R id btn test LayoutParams lp lp mbtn getLayoutParams lp widt
  • nginx配置多个前端项目

    最近一台服务器要配置多个前端项目 当然前后端分离就需要nginx来配置了 单个项目还好说 如下 修改nginx的nginx conf配置文件 user nobody worker processes 1 error log logs err
  • (十四)用StatsModels模块建立线性回归模型

    使用StatsModels中的api子模块 主要使用的函数有 注意大小写 OLS 普通最小二乘法 GLS 广义最小二乘法 WLS 加权最小二乘法 GLM 广义线性模型 mixed 混合效应模型 以OLS为例 函数格式为OLS endog e
  • Docker查看本地所有的镜像命令(docker images)

    查看本地所有的镜像 查看本地所有的镜像 docker images 非root用户使用 查看本地所有的镜像 sudo docker images 查看所用镜像的id 查看所用镜像的id docker images q
  • 第17届开源中国开源世界高峰论坛文集出版

    第17届开源中国开源世界高峰论坛文集将于近日出版刊出 附文集部分内容 1 文集目录 2 陆主席主旨报告 众所周知 1970年是UNIX元年 这一年也是开源在全球实质上的诞生之日 开源在全球流行至今已有52年了 自从1991年我国引进UNIX
  • 【C语言】归并排序

    一 算法描述 用递归算法把一个数组拆成两份 直到拆成一份一份的 在递归算法里添加一个函数 能把两个有序数组合并成为一个有序数组 直到完成递归 二 归并排序代码 三 测试代码 include
  • 微信小游戏_China_Fighting——player类(hero、button)

    目录 微信小游戏 China Fighting 前言 微信小游戏 China Fighting 基础支撑类 sprite animation pool 微信小游戏 China Fighting npc类 enemy mask sars 微信
  • Java图书管理系统 -- 基于Socket实现客户端服务端拆分

    图书管理系统小Demo又又又升级了 本图书管理系统已经经历了三个阶段 通过操作数组来实现图书的增删改查方法 用控制台获取用户输入来实现人机交互 通过集合容器存储对象 使用序列化在管理系统开启关闭时 加载 存储数据到本地 使用TCP协议实现客
  • Vue3生命周期了解

    Vue3生命周期 在 setup 中 可以通过 onX 的方式注册 生命周期钩子 1 beforeCreate gt 使用 setup 2 created gt 使用 setup 3 beforeMount gt onBeforeMount
  • Sentinel服务流控、熔断和降级

    谷粒商城 分布式基础篇 环境准备 谷粒商城 分布式基础 业务编写 谷粒商城 分布式高级篇 业务编写 持续更新 谷粒商城 分布式高级篇 ElasticSearch 谷粒商城 分布式高级篇 分布式锁与缓存 项目托管于gitee 一 Sentin
  • hrnetv2训练自己的数据集(cityscapes格式)

    简单记录利用hrnetv2训练自有数据时 遇到的问题 1 下载github代码 配置环境 2 假设已有原始8位图像和8位label图像 3 修改root lib datasets cityscapes py中的部分 self label m