
mmsegmentation 可视化完整指南:用 SegLocalVisualizer 快速看懂语义分割训练过程【免费下载链接】mmsegmentationOpenMMLab Semantic Segmentation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmsegmentation训练语义分割模型时,日志里全是数字,模型到底分没分对根本看不出来。mmsegmentation 的可视化链路核心是 SegLocalVisualizer:它把预测掩码按调色板渲染回原图,推理单张图、监控整个训练都能用。按下面的步骤走一遍,十几分钟就能让分割结果显影。 先看效果:分割可视化结果长什么样跑起来之后,你能看到三层信息:掩码与原图叠加:每个类别按调色板着色,以 alpha 比例混合到原图上,覆盖哪里一目了然类别标签:每个连通区域上方会标注类别名,不用再去对照颜色GT 与预测并排:训练和评估阶段,左边画 Ground Truth,右边画模型预测,左右一对比,错在哪块直接看出来下面两张图是原图 掩码结果的效果,彩色块与类别索引一一对应: 三步出图:mmsegmentation 单图可视化命令脚本 demo/image_demo_with_inferencer.py 把流程封装好了,你只换三样东西:配置文件、权重、图片。第 1 步,准备:任选一个配置,比如 configs/fcn/fcn_r50-d8_4xb2-40k_cityscapes-512x1024.py,并准备好对应的预训练 .pth 权重文件。第 2 步,运行:python demo/image_demo_with_inferencer.py \ demo/classroom__rgb_00283.jpg \ configs/fcn/fcn_r50-d8_4xb2-40k_cityscapes-512x1024.py \ --checkpoint path/to/your/fcn_r50-d8.pth \ --show --with-labels --opacity 0.7 --out-dir vis_result第 3 步,看图:--show会在本地弹窗;--out-dir会把结果图存成文件,远程机器直接取回来看。关键参数速查:参数作用--show弹本地窗口实时显示--with-labels掩码上叠加类别名标签--opacity掩码透明度 0~1,默认 0.5--dataset-name选调色板与类别表,默认cityscapes--out-dir结果图片的保存目录官方 demo 的输入就是一张街景图,和下面这张类似: 接入训练:训练监控怎么配好消息是这一步几乎不用写代码。configs/base/default_runtime.py 里默认已经挂好了LocalVisBackendSegLocalVisualizer,你用 tools/train.py 启动训练后,每个评估周期都会自动渲染一批数据样本,存到工作目录的vis_data/下。想同时写进 TensorBoard,把配置改成这样:vis_backends [ dict(typeLocalVisBackend), dict(typeTensorboardVisBackend)] visualizer dict(typeSegLocalVisualizer, vis_backendsvis_backends, namevisualizer, alpha0.7)配完你能拿到两样东西:vis_data/里一张张 GT/预测叠加图,方便抽查;TensorBoard 里可视化内容和指标曲线同屏,浏览器打开就能盯盘,远程训练机尤其好用。 看图找问题:语义分割结果对比排错表看图时别只看整体像不像,放大到边界再比。三类高频现象和对应排查方向:现象可能原因调整方向某类颜色几乎不出现在掩码上该类样本太少,损失被大类主导类别均衡损失、过采样、加强该类数据增强GT 与预测边界锯齿化、错位感受野不够,或损失对边界无惩罚换更大感受野模块、加边界损失、拉长训练轮数大目标正常,小目标整块消失下采样过重,分辨率丢失更高分辨率输入、降低下采样率、小目标增强❓ 进阶与 FAQ自定义调色板。默认调色板跟数据集走,想用自己的颜色和类别名,直接传classes和palette:visualizer dict(typeSegLocalVisualizer, classes[road, building, vegetation], palette[[255, 0, 0], [0, 0, 255], [0, 255, 0]], vis_backendsvis_backends, namevisualizer)两个列表长度必须一致,否则会直接报错。重写渲染逻辑。add_datasample是原图 GT 预测拼装的入口,继承SegLocalVisualizer覆写它,就能做多尺度结果对比、注意力图叠加这类定制;推理侧的入口在 mmseg/apis/mmseg_inferencer.py,日常需求调with_labels、opacity参数就够了。Q:掩码颜色和类别名跟我的数据集对不上?默认调色板和类别表来自cityscapes。推理时传--dataset-name指定数据集,或在训练配置里显式设置classes/palette。Q:远程训练机没有显示器,--show弹不出窗口?改用--out-dir把图存下来再取回本地;训练阶段直接看vis_data/自动保存的图即可,两者不冲突。Q:TensorBoard 里的可视化怎么看?先按上文配置加上TensorboardVisBackend,再在本机运行tensorboard --logdir 你的工作目录,浏览器里即可浏览渲染图与曲线。资源清单官方中文文档:docs/zh_cn/可视化源码:mmseg/visualization/local_visualizer.py可视化工具说明:docs/zh_cn/user_guides/useful_tools.md示例配置:configs/base/default_runtime.py建议把每个评估周期抽两张vis_data/的图扫一眼变成训练时的固定动作——这比盯一条损失数字更早暴露问题,指标还没掉,你人先知道了。【免费下载链接】mmsegmentationOpenMMLab Semantic Segmentation Toolbox and Benchmark.项目地址: https://gitcode.com/GitHub_Trending/mm/mmsegmentation创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考