当前位置: 首页 > news >正文

YOLOv9结果保存路径:runs/detect输出目录说明

YOLOv9结果保存路径:runs/detect输出目录说明

1. 镜像环境说明

  • 核心框架: pytorch==1.10.0
  • CUDA版本: 12.1
  • Python版本: 3.8.5
  • 主要依赖: torchvision==0.11.0,torchaudio==0.10.0,cudatoolkit=11.3, numpy, opencv-python, pandas, matplotlib, tqdm, seaborn等。
  • 代码位置:/root/yolov9

该镜像为YOLOv9官方训练与推理一体化环境,基于原始GitHub仓库构建,预配置了完整的深度学习工具链。用户无需手动安装PyTorch、CUDA驱动或OpenCV等复杂依赖,可直接进入模型训练、推理和评估流程。所有代码位于/root/yolov9目录下,结构清晰,便于快速调用。


2. 快速上手

2.1 激活环境

启动容器后,默认处于Conda的base环境,需先激活专用于YOLOv9的虚拟环境:

conda activate yolov9

此环境已集成所需版本的PyTorch与CUDA支持,确保模型运行时GPU可用性。


2.2 模型推理 (Inference)

进入YOLOv9主目录以执行检测任务:

cd /root/yolov9

使用以下命令进行图像目标检测示例:

python detect_dual.py --source './data/images/horses.jpg' --img 640 --device 0 --weights './yolov9-s.pt' --name yolov9_s_640_detect

参数说明

  • --source:输入源路径,支持图片、视频或摄像头设备。
  • --img:推理时输入图像尺寸(默认640×640)。
  • --device:指定GPU设备编号(0表示第一块GPU)。
  • --weights:加载的模型权重文件路径。
  • --name:自定义结果保存子目录名称。
输出路径解析

推理完成后,检测结果将自动保存在如下路径中:

/root/yolov9/runs/detect/yolov9_s_640_detect/

该路径由三部分构成:

  1. runs/detect/:YOLO系列标准输出根目录;
  2. yolov9_s_640_detect:由--name参数指定的实验名称;
  3. 内部包含标注框绘制后的图像(如horses.jpg)、可视化统计图及标签文件(若启用保存标签)。

重要提示:每次运行detect_dual.py时,若--name相同,则结果会追加至同名目录;若不存在则新建。建议为不同实验设置唯一名称以便管理。


2.3 模型训练 (Training)

单卡训练命令示例如下:

python train_dual.py --workers 8 --device 0 --batch 64 --data data.yaml --img 640 --cfg models/detect/yolov9-s.yaml --weights '' --name yolov9-s --hyp hyp.scratch-high.yaml --min-items 0 --epochs 20 --close-mosaic 15

关键参数解释

  • --data:数据集配置文件,需按YOLO格式组织并更新其中的路径字段。
  • --cfg:网络结构定义文件,对应不同规模的YOLOv9变体(如s/m/t等)。
  • --weights:初始化权重路径,空字符串表示从零开始训练。
  • --name:训练任务命名,决定日志与权重保存子目录名。
  • --epochs:总训练轮数。
  • --close-mosaic:在最后N个epoch关闭Mosaic增强策略,提升收敛稳定性。
训练输出路径

训练过程中生成的所有产物均存储于:

/root/yolov9/runs/train/yolov9-s/

其中包括:

  • weights/:保存最佳(best.pt)和最终(last.pt)模型权重;
  • results.png:各指标(mAP、precision、recall等)随训练过程的变化曲线;
  • labels/:类别分布直方图;
  • train_batch*.jpg:带增强效果的训练样本可视化;
  • opt.yaml:本次训练所用超参快照。

3. 已包含权重文件

镜像内已预下载轻量级模型权重yolov9-s.pt,存放于主目录:

/root/yolov9/yolov9-s.pt

该权重适用于快速开展推理测试或作为微调起点。对于其他变体(如yolov9-m.pt,yolov9-c.pt),可通过官方链接自行下载并放入相同目录。

推荐做法:将自定义训练所得权重定期备份至外部挂载卷,防止容器销毁导致数据丢失。


4. 常见问题

数据集准备

请确保你的数据集遵循标准YOLO格式:

  • 图像文件存放在images/目录;
  • 对应标签(.txt)存放在labels/目录;
  • 每个标签文件每行格式为:class_id center_x center_y width height(归一化坐标);
  • data.yaml中正确填写train,val,nc(类别数)和names(类别名列表)。

示例data.yaml片段:

train: /path/to/train/images val: /path/to/val/images nc: 80 names: ['person', 'bicycle', 'car', ...]

环境激活失败

若执行conda activate yolov9报错,可能原因包括:

  • Conda未初始化:运行source ~/.bashrc或重启shell;
  • 环境未注册:检查/opt/conda/envs/下是否存在yolov9文件夹;
  • 权限不足:使用sudo权限或重建容器时赋予足够访问权限。

结果目录被覆盖?

当多次使用相同--name参数运行detect_dual.pytrain_dual.py时,新结果将写入已有目录。虽然不会删除旧文件,但同名输出文件会被覆盖(如horses.jpg)。

规避方案

  • 使用时间戳命名:--name yolov9_s_test_$(date +%m%d_%H%M)
  • 手动创建独立子目录,并修改输出逻辑(需调整脚本)

5. 参考资料

  • 官方仓库: WongKinYiu/yolov9
  • 文档说明: 详细用法请参考官方库中的 README.md 文件,涵盖多卡训练、ONNX导出、TensorRT部署等内容。
  • 推理脚本说明:detect_dual.py是YOLOv9特有的双分支检测入口,支持传统CNN与可编程梯度信息融合模式。

6. 引用

@article{wang2024yolov9, title={{YOLOv9}: Learning What You Want to Learn Using Programmable Gradient Information}, author={Wang, Chien-Yao and Liao, Hong-Yuan Mark}, booktitle={arXiv preprint arXiv:2402.13616}, year={2024} }
@article{chang2023yolor, title={{YOLOR}-Based Multi-Task Learning}, author={Chang, Hung-Shuo and Wang, Chien-Yao and Wang, Richard Robert and Chou, Gene and Liao, Hong-Yuan Mark}, journal={arXiv preprint arXiv:2309.16921}, year={2023} }

获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

http://www.jsqmd.com/news/255380/

相关文章:

  • 麦橘超然vs Automatic1111:资源占用与响应速度对比
  • 部署麦橘超然后,我终于搞懂AI绘画怎么玩
  • 边缘计算新选择:Qwen2.5-0.5B开源模型部署趋势一文详解
  • 通义千问Embedding模型推理慢?vLLM加速部署实战提升300%
  • docker部署数据中台系统DataCap
  • 用Qwen3-0.6B做了个视频摘要工具,附完整过程
  • DeepSeek-R1优化技巧:让CPU推理速度提升50%
  • Live Avatar推理速度优化:降低sample_steps提升效率策略
  • Z-Image-Edit创意脑暴工具:快速生成设计灵感草图
  • 智能证件照工坊API文档:开发者快速入门
  • Qwen All-in-One扩展性探讨:未来多任务接入方案
  • 亲测BGE-Reranker-v2-m3:RAG系统检索效果实测分享
  • 安全部署HY-MT1.5-7B:模型加密与访问控制
  • Qwen3-Embedding-4B工具推荐:集成vLLM+Open-WebUI快速上手
  • U-Net架构优势解析:cv_unet_image-matting技术原理揭秘
  • 如何监控Qwen2.5运行状态?GPU资源实时查看教程
  • MinerU+GPT联合使用:云端1小时2块搞定智能文档
  • AutoGLM-Phone-9B启动与调用详解|从环境配置到API测试全流程
  • IndexTTS 2.0新手教程:上传音频+文字生成语音全过程
  • YOLO11部署教程:企业级视觉系统构建的起点与路径
  • DeepSeek-OCR部署优化:批量处理速度提升
  • 零基础也能玩转AI绘画!UNet人像卡通化镜像保姆级教程
  • IndexTTS 2.0实战案例:有声小说多情感演绎技巧揭秘
  • SGLang多租户场景:资源共享部署实战分析
  • 为什么大家都在用AutoGLM-Phone-9B?安装难点与解决方案揭秘
  • 语音质检自动化:基于FSMN-VAD的企业应用案例
  • lora-scripts推理测试:训练后生成结果的质量评估流程
  • SAM 3性能优化:让视频分割速度提升3倍
  • gpt-oss-20b-WEBUI适合哪些应用场景?一文说清
  • 修复大图卡顿?fft npainting lama优化建议来了