首页 > 其他分享 >OPenMMlab学习指导文档

OPenMMlab学习指导文档

时间:2023-10-23 17:47:28浏览次数:40  
标签:yolov5 配置文件 指导 算法 dict OPenMMlab 文档 main data

一、运行环境

1.1 cuda环境

备注:cuda环境为个人学习和日常模型训练环境

1.登录环境

IP地址:10.201..

用户名:*******

密码:******

要用此用户名和密码!!

建议:自己创建自己的用户名和密码

2.登录conda环境

执行指令

conda activate open-mmlab

查看环境

pip list

则看到已安装的环境。

1.2 寒武纪环境

1.登录环境

IP地址:10.201..

用户名:*******

密码:********

2.登录openmmlab容器

打开容器

docker start openmmlab_main

进入容器

docker exec -it openmmlab_main bash

查看环境

二、初步运行MMyolo

在cuda和mlu环境中,后续所有操作一样,故不再分开单独讲解,掌握在cuda的操作,则mlu也掌握。

在**登录****账号后,默认进入到路径:

/home/workspace/extdata/share/******

然后进入到OPenMMlab的工作目录下:

cd OpenMMLab

再进入到mmyolo环境下:

cd mmyolo-main

执行训练指令:

 python ./tools/train.py ./configs/yolov5/yolov5_s-v61_fast_1xb12-40e_cat.py

当出现日志文件:

则训练成功。

在模型训练时,建议好好看看mmyolo-main\docs\zh_cn\get_started\15_minutes_object_detection.md文档

2.1 脚本讲解

在进行算法选择时,目前框架中针对各个算法有基本的配置文件,当确定选择应用的算法后,直接创建一个配置文件,然后继承即可,比如yolov5_s-v61_fast_1xb12-40e_cat.py,则是应用了yolov5算法,使用coco的数据格式,在配置文件中继承的是:base = 'yolov5_s-v61_syncbn_fast_8xb16-300e_coco.py'(此处的相对路径是相对于调用的配置文件的相对路径,即yolov5_s-v61_fast_1xb12-40e_cat.py当前所在目录的相对路径)

后续在针对某一个项目或者模型,则是一个配置文件,类似yolov5_s-v61_fast_1xb12-40e_cat.py,里面详细的记载了模型的结构、数据详情、优化策略等,当调试算法或者更改数据时,修改此配置文件即可。

1、数据配置

在实际项目中,针对局点问题,不同项目的数据集不同,而使用的检测算法项目,也许此时修改的数据目录即可,在直接在配置文件中修改:

data_root = './data/cat/'  #此处的相对路径是相对于执行程序的路径。比如是在mmyolo-main目录下执行,则是在此目录下的相对路径路径
class_name = ('cat', )
num_classes = len(class_name)

多个公共数据集,包括 COCOPascal VOCCityscapes其他更多数据集

如果想用自己的数据集,格式要遵循以上数据集标定的格式。如果想多了解点数据的详情,请看文档:mmdetection-main\docs\zh_cn\user_guides\dataset_prepare.md。注意此处是mmdetect的指导文档。如果要分析自己的数据或者转化自己的数据,工程提供了详细的公工具,具体的指导文档为:mmyolo-main\docs\zh_cn\useful_tools下的dataset_ananlysis/dataset_converters/download_dataset等等。

2、模型算法配置

在选择完算法后,继承的配置文件,数据路径同样配置完成,则是针对当前数据的一些常规的配置了。比如:

max_epochs = 40   #最大迭代次数
train_batch_size_per_gpu = 12  #batchsize
train_num_workers = 4       #线程数

load_from = './premodel/yolov5_s-v61_syncbn_fast_8xb16-300e_coco_20220918_084700-86e02187.pth'  # 预训练模型路径

model = dict(
    backbone=dict(frozen_stages=4),   #冻结模型的层数,微调
    bbox_head=dict(
        head_module=dict(num_classes=num_classes),
        prior_generator=dict(base_sizes=anchors)))
#这些一般也可不用动
train_dataloader = dict(
    batch_size=train_batch_size_per_gpu,
    num_workers=train_num_workers,
    dataset=dict(
        data_root=data_root,
        metainfo=metainfo,
        ann_file='annotations/trainval.json', #根据自己的数据集目录形式修改
        data_prefix=dict(img='images/')))

val_dataloader = dict(
    dataset=dict(
        metainfo=metainfo,
        data_root=data_root,
        ann_file='annotations/test.json',
        data_prefix=dict(img='images/')))

test_dataloader = val_dataloader

_base_.optim_wrapper.optimizer.batch_size_per_gpu = train_batch_size_per_gpu

val_evaluator = dict(ann_file=data_root + 'annotations/test.json')
test_evaluator = val_evaluator

配置文件的详情请见:mmyolo-main\docs\zh_cn\tutorials\config.md

三、实操掌握mmyolo

在掌握上面的基本操作后,进行实操加深理解。

3.1 在当前的基础上,用自己的数据进行训练

1、将自己的标定数据转化为指定格式的,比如coco、或者 Pascal VOC形式的,在tools中有数据转化脚本

2、在配置文件中修改训练、验证数据集的根目录

3、启动训练

3.2 在3.1基础上更该为yolov6/7等算法,尝试如何切换算法

1、新创建配置文件,继承yolov6/7等算法

2、修改数据集目录

3、修改常见的训练参数

3.3 指标测试或者deploy的操作

将15_minutes_object_detection.md的操作部署文档执行一遍即可。

标签:yolov5,配置文件,指导,算法,dict,OPenMMlab,文档,main,data
From: https://www.cnblogs.com/polly333/p/17783026.html

相关文章

  • ida/idr-1—文档翻译
    一、msm-5.4/Documentation/core-api/idr.rst翻译概述========要解决的一个常见问题是分配标识符(ID);通常用很小的数字来标识一个事物。示例包括文件描述符、进程ID、网络协议中的数据包标识符、SCSI标签和设备实例号。IDR和IDA为该问题提供了合理的解决方案,以避免每......
  • 安装dita-ot并使用dita-ot生成pdf和html文档
    java版本dita-ot版本测试文档生成的文件包可以在dita-ot官网下载1.安装jdkhttps://blog.csdn.net/bestsongs/article/details/1229390812.解压dita-ot的zip包就可以了3.使用方法输出的文件在......
  • HarmonyOS音频开发指导:使用AudioRenderer开发音频播放功能
     AudioRenderer是音频渲染器,用于播放PCM(Pulse Code Modulation)音频数据,相比AVPlayer而言,可以在输入前添加数据预处理,更适合有音频开发经验的开发者,以实现更灵活的播放功能。开发指导使用AudioRenderer播放音频涉及到AudioRenderer实例的创建、音频渲染参数的配置、渲染的......
  • 良心软件!视频、音频、图片、文档等各种格式转换,甚至屏幕录像都支持!
    良心软件!视频、音频、图片、文档甚至录屏都支持!主打一个免费多功能的多媒体文件转换工具引言 温馨提示:上面视频中有3D环绕背景音乐,请带上耳机效果更好它能干些什么?看它自己做的自我介绍,它都有哪些功能,可以做什么事情: “ 支持各种类型的最新视频格式、音频格式......
  • 浅析“圆”在中国古典舞创作中的运用——以《踏歌》为例(文档)
    目录摘要IAbstractII一、绪论1(一)研究背景1(二)研究的目的及意义1(三)研究方法21.文献研究法22.经验总结法23.个案研究法2二、中国古典舞“圆”的概述3(一)中国古典舞中“圆”的认知3(二)中国古典舞中“圆”的表现形式31.静态造型中的“圆”32.动作呈现时的“圆”43.舞蹈动......
  • 从零用VitePress搭建博客教程(6) -– 第三方组件库的使用和VitePress搭建组件库文档
    接上一节:从零用VitePress搭建博客教程(5)-如何自定义页面模板、给页面添加独有的className和使页面标题变成侧边目录?九、第三方组件库的使用我们经常看见UI组件库的文档,这里我们就用element-plus第三方组件库为例子,搭建组件库文档examples:作为组件库示例目录,我们以Button组件......
  • 内核文档翻译(chatgpt) —— Pathname lookup (路径名查找)
    原文:https://www.kernel.org/doc/html/latest/filesystems/path-lookup.html内核中文件系统相关的文档汇总:FilesystemsintheLinuxkernelThiswrite-upisbasedonthreearticlespublishedatlwn.net:PathnamelookupinLinuxRCU-walk:fasterpathnamelookupinLi......
  • 无法读取方案文档原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是 <xsd:s
    org.springframework.util.xml.SimpleSaxErrorHandler.warningIgnoredXMLvalidationwarningorg.xml.sax.SAXParseException;lineNumber:9;columnNumber:73;schema_reference.4:无法读取方案文档'http://www.springframework.org/schema/beans/spring-context.xsd......
  • 基于SpringBoot与Vue技术的高校毕设管理平台-计算机毕业设计源码+LW文档
    开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9浏览器:谷歌浏览器数据库部分表:DROPTABLEIFEXISTSbisheketi;/*!40101SET@saved_cs_client=@@characte......
  • 基于Springboot框架的优质衣产品系统-计算机毕业设计源码+LW文档
    开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9浏览器:谷歌浏览器前台用户模块涵盖了:用户登录、注册功能,包括消费者进行优质衣产品系统的登录可进行衣产品的选购等......