SegNeXt学习记录(一):配置环境 测试代码

news2024/11/25 12:45:14

安装配置MMSegmentation环境

为了验证 MMSegmentation 和所需的环境是否安装正确,我们可以运行示例 python 代码来初始化分段器并推断演示图像:

from mmseg.apis import inference_segmentor, init_segmentor
import mmcv

config_file = 'configs/pspnet/pspnet_r50-d8_512x1024_40k_cityscapes.py'
checkpoint_file = 'checkpoints/pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth'

# build the model from a config file and a checkpoint file
model = init_segmentor(config_file, checkpoint_file, device='cuda:0')

# test a single image and show the results
img = 'test.jpg'  # or img = mmcv.imread(img), which will only load it once
result = inference_segmentor(model, img)
# visualize the results in a new window
model.show_result(img, result, show=True)
# or save the visualization results to image files
# you can change the opacity of the painted segmentation map in (0, 1].
model.show_result(img, result, out_file='result.jpg', opacity=0.5)

在这里插入图片描述

安装MMCV官方

mmsegmention环境安装
Ubuntu20运行SegNeXt代码提取道路水体(一)——从mmsegmentation安装到测试代码环境配置全过程摸索

怎么把图片保存出来?
在SegNeXt/mmseg/models/segmentors/base.py里的show_result函数里加了out_file = 'demo/result_demo.png'
但是会报错
cv2.error: OpenCV(4.5.5) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cvtColor'


出现的问题

后面下载了ade数据集,刚开始运行

python tools/train.py configs/pspnet/pspnet_r50-d8_512x512_80k_ade20k.py  

还能跑起来,但是不知道为什么就报错AttributeError: 'ConfigDict' object has no attribute 'log_level'
解决:AttributeError: ‘ConfigDict‘ object has no attribute ‘log_level‘


训练与测试

训练:

python tools/train.py configs/pspnet/pspnet_r50-d8_512x512_80k_ade20k.py  

测试

python tools/test.py work_dirs/pspnet_r50-d8_512x512_80k_ade20k/pspnet_r50-d8_512x512_80k_ade20k.py work_dirs/pspnet_r50-d8_512x512_80k_ade20k/iter_80000.pth --eval mIoU

想要把预测的图片生成出来

python tools/test.py work_dirs/pspnet_r50-d8_512x512_80k_ade20k/pspnet_r50-d8_512x512_80k_ade20k.py work_dirs/pspnet_r50-d8_512x512_80k_ade20k/iter_80000.pth --show-dir work_results/ --eval mIoU

在这里插入图片描述


使用SegNeXt进行训练及预测

下载ImageNet预训练模型:
在这里插入图片描述
用相同的方法进行训练 看看ade数据效果如何
把这个预训练放在这个路径下:pretrained/mscan_b.pth

在这里插入图片描述
修改数据的位置,放到这个路径下:/root/ADEChallengeData2016/images/training

出现错误:PermissionError: ADE20KDataset: [Errno 13] Permission denied: ‘/root/ADEChallengeData2016/images/training’

修改之后,

训练

python tools/train.py local_configs/segnext/base/segnext.base.512x512.ade.160k.py

预测

python tools/test.py work_dirs/segnext.base.512x512.ade.160k/segnext.base.512x512.ade.160k.py work_dirs/segnext.base.512x512.ade.160k/latest.pth --show-dir work_results_segnext/ --eval mIoU

结果:

在这里插入图片描述

代码详解

代码详解

参考:
Ubuntu20运行SegNeXt代码提取道路水体(一)——从mmsegmentation安装到测试代码环境配置全过程摸索
Ubuntu20运行SegNeXt代码提取道路水体(二)——SegNeXt源代码安装到测试环境配置全过程摸索
MMSegmentation V0.27.0训练与推理自己的数据集(二)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一辆新能源汽车的诞生之旅:比亚迪常州工厂探营

作为在新能源汽车领域首屈一指的国产品牌,比亚迪近年来可以说是捷报频传,高奏凯歌。 以比亚迪常州工厂为例,据介绍该工厂当初规划设计时定下的生产目标,是年产量能够达到20万辆。然而在2023年上半年,该工厂光是主要销往…

美元的吸血鬼攻击

今日荐读:9.3教链内参《摩根大通认为SEC将被迫批准现货ETF》。刘教链Pro《为什么我写了PGP》。 * * * 刘教链 原创 * * * 自2022年3月16日美联储议息会议后决定开始加息25bp以来,今天(2023.9.4)已经是本轮加息周期的第537天。在…

网络编程面试题

计算机网络体系结构 在计算机网络的基本概念中,分层次的体系结构是最基本的。计算机网络体系结构的抽象概念较多,在学习时要多思考。这些概念对后面的学习很有帮助。 网络协议是什么? 在计算机网络要做到有条不紊地交换数据,就…

全栈监控,可视化整个堆栈

IT 管理员能够监## 标题控终端设备已有一段时间了,但随着现代基础架构和向混合云架构的转型,端到端可见性至关重要,混合云环境的行为可能不可预测,因此传统技术通常是不够的。传统基础结构监视方法的最大缺点是缺乏对环境特定部分…

Pandas DataFrame 数据存储格式比较

Pandas 支持多种存储格式,在本文中将对不同类型存储格式下的Pandas Dataframe的读取速度、写入速度和大小的进行测试对比。 创建测试Dataframe 首先创建一个包含不同类型数据的测试Pandas Dataframe。 import pandas as pdimport randomimport stringimport numpy …

详解TCP/IP的三次握手和四次挥手

文章目录 前言一、TCP/IP协议的三次握手1.1 三次握手流程 二、TCP/IP的四次挥手2.1 四次挥手流程 三、主要字段3.1、标志位(Flags)3.2、序号(sequence number)3.3、确认号(acknowledgement number) 四、状态…

如何让图片动起来?拿捏这个方法轻松做到

现在,越来越多的人开始使用手机来制作动态图片,因为手机上的应用程序使得这个过程变得简单而有趣。下面我们来探讨一些如何让图片动起来的方法以及在手机上制作时需要注意的事项。 制作动态图片的方法 首先我们先准备好需要制作动态特效的图片&#xff…

Wireshark抓包常用指令

1.常用过滤规则 指定源地址: ip.src 10.0.1.123ip.src 10.0.1.123 && udphttp数据链路层:筛选mac地址为04:f9:38:ad:13:26的数据包----eth.src 04:f9:38:ad:13:26筛选源mac地址为04:f9:38:ad:13:26的数据包----eth.src 04:f9:38:ad:13:26网…

Python 之 match 表达式

Python 从 3.10 版本开始增加了 match 语句,和其他语言常见的 switch 语句极其相似,但功能更加强大。 本文通过实例,了解下其用法。 基本的 match 语句 def http_code(status): match status: case 400 | 404 | 418: …

STL ---- vector 使用

单纯的使用vector不和algorithm连用. vector自带的方法: push_back(num) pop_back() push_back 添加元素, pop_back删除元素.添加和删除都是在末尾添加和删除的. void assign(const_iterator first,const_iterator last); // 相当于拷贝函数 void assign(size_type n,const…

长胜证券:创业板上市容易吗?

创业板是我国股市的一个板块,特点是适合一些新式企业在股市进行融资。与A股比较,创业板上市门槛相对较低,整个上市过程相对简单和方便,似乎对于草创企业来说十分有利。但是,实际上,创业板上市虽然相对简单&…

陶氏公司将出席2023第二届中国汽车碳中和峰会

2023第二届中国汽车碳中和峰会将于10月19日-20日在上海举办。 本次峰会将为行业领导者、政策制定者和专家提供一个平台,讨论汽车行业减少碳排放的策略。专家们将从政策、供应链、ESG、替代能源解决方案、汽车材料创新、法律等不同领域分享碳中和与可持续策略。 通…

HDFS HA 高可用集群搭建详细图文教程

目录 一、高可用(HA)的背景知识 1.1 单点故障 1.2 如何解决单点故障 1.2.1 主备集群 1.2.2 Active、Standby 1.2.3 高可用 1.2.4 集群可用性评判标准(x 个 9) 1.3 HA 系统设计核心问题 1.3.1 脑裂问题 1.3.2 数据状…

项目(智慧教室)第三部分,人机交互在stm32上的实现

一。使用软件 1.stm32cubemx中针对汉字提供的软件 2.对数据进行处理 2.上面点击ok--》这里选择确定 3.这里选择保存即可由字符库,但是需要占用内存太大,需35M,但是stm32只有几百k,所以需要自己删减。 生成中文字符(用…

UML基础

统一建模语言(UML是 Unified Modeling Language的缩写, 是用来对软件系统进行可视化建模的一种语言。UML为面向对象开发系统的产品 进行说明、可视化、和编制文档的一种标准语言。 共有9种图 UML中的图其实不止九种 (相同的图还可能会有不同的名称), 这里的九种图是…

写字楼远程预付费抄表系统

写字楼远程预付费抄表系统是一种现代化的智能抄表解决方案,具有许多优点,例如:提高抄表效率,降低人力成本,减少误差,防止偷漏电等问题。下面就由小编来为大家来讲解下写字楼远程预付费抄表系统吧&#xff0…

2023年动力电池回收行业研究报告

第一章 行业概况 1.1 定义 动力电池,通常指用于驱动电动车辆(包括电动汽车、电动自行车、电动滑板车等)的电池。这类电池需要具备高能量密度(以便在较小的空间和重量下提供更多的能量)、高功率密度(以便在…

vue3中TCplayer应用

环境win10:vitevue3elementUI 1 安装 npm install tcplayer.js2 使用 <template><div><video id"player-container-id" width"414" height"270" preload"auto" playsinline webkit-playsinline></video>&l…

01-数据类型和转换

数据 定义&#xff1a;对现实生活中事物的抽象描述&#xff0c;在程序世界中一切都采用数据进行描述&#xff0c;程序的执行实际上就是对数据的操作。数据是存储在内存和硬盘中的。 数据类型 基本数据类型&#xff1a; 数字&#xff08;number)、字符串&#xff08;string&…

基于AI识别与视频监控技术的土地建设履约全周期监管方案

一、项目背景 当前&#xff0c;各级政府正在积极大力推进土地节约集约利用工作&#xff0c;不断推动工业用地提质增效。但是&#xff0c;持续推进土地节约集约利用也面临着一些新情况、新问题&#xff0c;比如&#xff0c;在工业用地批后监管机制还不够健全&#xff0c;存在项…