yolov8多任务模型-目标检测+车道线检测+可行驶区域检测-yolo多检测头代码+教程

news2024/11/14 13:51:55

你只需看一次:实时且通用的多任务模型

在这里插入图片描述

A-YOLOM 插图

在这里插入图片描述

贡献
  1. 轻量化集成模型:我们开发了一种轻量级模型,能够将三个任务整合到一个统一的模型中。这对于需要实时处理的多任务场景尤其有利。
  2. 自适应连接模块:特别为分割架构的颈部区域设计了新颖的自适应连接模块。此模块可以无需手动设计就能自动连接特征,进一步增强了模型的泛化能力。
  3. 简洁通用的分割头:设计了一个轻量、简单且通用的分割头。对于同一类型的头部任务,我们使用了统一的损失函数,这意味着无需为特定任务定制设计;它仅由一系列卷积层构成。
  4. 广泛实验:基于公开可用的自动驾驶数据集进行了大量实验,证明我们的模型在推理时间和可视化方面优于现有工作。此外,我们在真实道路数据集上也进行了测试,结果表明我们的模型显著优于目前最先进的方法。
结果
  • 参数与速度

    模型参数 (M)FPS (bs=1)FPS (bs=32)
    YOLOP7.926.0134.8
    HybridNet12.8311.726.9
    YOLOv8n(det)3.16102802.9
    YOLOv8n(seg)3.2682.55610.49
    A-YOLOM(n)4.4339.9172.2
    A-YOLOM(s)13.6139.796.2
  • 交通对象检测结果

    模型召回率 (%)mAP50 (%)
    MultiNet81.360.2
    DLT-Net89.468.4
    Faster R-CNN81.264.9
    YOLOv5s86.877.2
    YOLOv8n(det)82.275.1
    YOLOP88.676.5
    A-YOLOM(n)85.378.0
    A-YOLOM(s)86.981.1
  • 可行驶区域分割结果

    模型mIoU (%)
    MultiNet71.6
    DLT-Net72.1
    PSPNet89.6
    YOLOv8n(seg)78.1
    YOLOP91.6
    A-YOLOM(n)90.5
    A-YOLOM(s)91.0
  • 车道线检测结果

    模型准确度 (%)IoU (%)
    ENetN/A14.64
    SCNNN/A15.84
    ENet-SADN/A16.02
    YOLOv8n(seg)80.522.9
    YOLOP84.826.5
    A-YOLOM(n)81.328.2
    A-YOLOM(s)84.928.8
  • 消融研究 1: 自适应连接模块

    训练方法召回率 (%)mAP50 (%)mIoU (%)准确度 (%)IoU (%)
    YOLOM(n)85.277.790.680.826.7
    A-YOLOM(n)85.378.090.581.328.2
    YOLOM(s)86.981.190.983.928.2
    A-YOLOM(s)86.981.191.084.928.8
  • 消融研究 2: 不同多任务模型和分割结构的结果

    模型参数mIoU (%)准确度 (%)IoU (%)
    YOLOv8(segda)1,004,27578.1--
    YOLOv8(segll)1,004,275-80.522.9
    YOLOv8(multi)2,008,55084.281.724.3
    YOLOM(n)15,88090.680.826.7
注意事项

本工作中参考的工作包括 Multinet、DLT-Net、Faster R-CNN、YOLOv5s、PSPNet、ENet、SCNN、SAD-ENet、YOLOP、HybridNets 以及 YOLOv8。感谢他们的出色贡献。
在这里插入图片描述

可视化
  • 实际道路
系统要求
  • Python 版本:3.7.16
  • PyTorch 版本:1.13.1
  • 推荐 GPU:NVIDIA GeForce RTX 4090 或更高性能的 GPU
  • 如果使用 NVIDIA GeForce GTX 1080 Ti,建议批量大小为 16。尽管训练时间会更长,但仍可行。

强烈建议创建纯净环境并遵循指示进行设置,以避免因 YOLOv8 自动检测环境包而可能引起的变量值变化问题。
在这里插入图片描述

数据准备及预训练模型
  • 下载图像
  • 预训练模型:A-YOLOM(包含两个版本,分别为 “n” 和 “s”)
  • 下载检测标注
  • 下载可行驶区域分割标注
  • 下载车道线分割标注

推荐的数据集目录结构如下:

# 根据 id 表示对应关系
├─dataset root
│ ├─images
│ │ ├─train2017
│ │ ├─val2017
│ ├─detection-object
│ │ ├─labels
│ │ │ ├─train2017
│ │ │ ├─val2017
│ ├─seg-drivable-10
│ │ ├─labels
│ │ │ ├─train2017
│ │ │ ├─val2017
│ ├─seg-lane-11
│ │ ├─labels
│ │ │ ├─train2017
│ │ │ ├─val2017

更新您的数据集路径于 ./ultralytics/datasets/bdd-multi.yaml 文件中。

训练
  • 设置训练配置文件 ./ultralytics/yolo/cfg/default.yaml
  • 运行 python train.py 开始训练
  • 可以根据需要修改 train.py 中的设置,如模型路径、数据路径、GPU 设备编号等
评估
  • 设置评估配置文件 ./ultralytics/yolo/cfg/default.yaml
  • 运行 python val.py 进行评估
  • 修改 val.py 中的相关路径和设置
预测
  • 运行 python predict.py 进行预测
  • 修改 predict.py 中的源图像路径、设备选择、输出尺寸等参数
扩展性

代码易于扩展至任何多任务分割和检测任务,只需修改模型 YAML 和数据集 YAML 文件中的信息,并按照我们的标签格式创建您的数据集即可。请记住,在检测任务名称中保留“det”,在分割任务名称中保留“seg”。

当您更改检测任务类别数量时,请相应地调整 dataset.yamlmodel.yaml 中的 “tnc” 值。“nc_list” 也需要更新,应与您的 “labels_list” 顺序相匹配。例如,如果您的 “labels_list” 包括检测对象、可行驶区域和车道线,则 “nc_list” 应设置为 [7,1,1]。

通过这些详细说明,您可以开始使用 YOLOv8 多任务模型进行自己的项目开发。希望这能帮助您快速启动并在多个计算机视觉任务上取得优异成绩。

最后

计算机视觉、图像处理、毕业辅导、作业帮助、代码获取,远程协助,代码定制,私聊会回复!

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

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

相关文章

js中的 赋值 浅拷贝 和 深拷贝 详细解读

js数据类型主要分基本数据类型和引用数据类型。前者包括Number,String等,后者主要是Object,因此以下会针对不同的数据类型来分析,需要的朋友可以参考一下 基本数据类型(Primary Data Types): String(字符串) Number&…

--芯片测试--

目录 芯片逻辑是什么 芯片如何选型? 测试策略有什么 Alpha测试和Beta测试的区别? 主要区别 TOPS是什么 如何计算TOPS MAC单元是什么 频率的单位是什么 如何解决跨时钟域问题? 解释一下对异步电路的理解,以及如何实现同步…

【北京迅为】《STM32MP157开发板使用手册》-第四十三章 软件定时器实验

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐…

seL4 Capabilities(翻自官网)(一)

官网教程链接: Capability 初始化Capabilities tutorials // 先使用repo拉取一下tutorials,然后执行repo sync,所有的教程都在里面,学习某个的时候只需要改变的是 --tut 后面的参数 ./init --tut capabilities # building the tutorial exe…

电商商品详情API接口对电商跨境电商企业运营的好处

为了获取更大利益,电商商家经常需要使用价格,ERP接口系统。价格接口对电商商家有多方面的好处,主要体现在以下几个方面: 1、价格接口系统可以帮助品牌和商家实现更加科学和精准的定价策略。通过实时获取多个主流电商平台&#xf…

我与Linux的爱恋:进程优先级|进程切换

​ ​ 🔥个人主页:guoguoqiang. 🔥专栏:Linux的学习 文章目录 1.进程优先级1.什么是进程优先级?2.进程优先级的类型3.进程优先级的作用4.进程优先级的实现5.进程优先级的重要性6.查看系统进程7.修改进程优先级8.优先…

通过蓝图Blueprint完成项目拆分、模块化以及模块化后项目结构分析

1、不拆分项目之前的写法 在上一篇Flask入门和视图中我们讲解了Flask项目的一个启动流程,引入Flask、创建Flask对象,然后由路由进入在视图函数中通过模版渲染或者json系列化的方式返回页面或者数据。我们发现这些所有的操作都是在一个页面中完成的&…

信息化时代下的高标准农田灌区:变革与机遇并存

在信息化时代的浪潮中,高标准农田灌区的建设与管理正经历着前所未有的变革,这既是一个挑战重重的历程,也孕育着无限的发展机遇。随着物联网、大数据、云计算以及人工智能等先进技术的飞速发展与融合应用,传统的农田灌溉模式正在被…

【Docker】安装全流程与配置完整镜像源(可安装 nginx)

目录 一、卸载历史版本(选)二、配置 yum 源三、安装 docker四、配置 docker 镜像源加速(选、强烈建议)4.1 配置阿里镜像加速4.2 配置其他镜像源 五、启动 docker参考文章与视频 本文基于 Linux - CentOS 7 操作系统。 一、卸载历史…

PG198-jesd204-phy阅读笔记

简介 介绍 JESD204 PHY IP核实现了JESD204的物理接口,简化在发送和接收核心之间共享串行收发器信息通道。此内核一般不单独使用,只能与JESD204或JESD204C内核结合使用。 特性 根据JESD204B和JESD204C草案设计   支持1至12lane配置   JESD204 IP支持…

clousx6整点报时指令怎么写?

🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&am…

对称加密算法使用示例

Demo包括以下对称加密算法组合 备注:XTS仅支持AES128和AES256,不支持AES192 from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes from cryptography.hazmat.primitives import cmac from cryptography.hazmat.primitives.…

SpringBoot 基于 Vue 的地方美食分享网站

摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地…

smardaten无代码这么牛逼?逻辑编排不用代码!

目录 前言 经典案例 ①计划编排:数据操作自动化 ②工单派工:流程变更自动化 smardaten能力解析 一、逻辑控制篇 (1)变量定义与操作 (2)数据校验与反馈 (3)动态数据获取与回填…

企业微信oauth2提示应用无法使用

问题描述: 生成oauth2之后,我a公司是服务商,我给b公司的人去点授权链接会提示这个 应用服务商还没有在企业微信为你开通接口调用许可」,导致无法使用此应用,请联系服务商开通 正文 你先要知道一件事!&…

基于SpringBoot+Vue的“课件通”中小学教学课件共享平台

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的…

后端原型设计

一:导航设计 1.1 横向导航栏 常用于浏览器对客的系统。 1.2 纵向导航栏 纵向导航左边可以进行一级菜单和二级菜单,每个二级菜单右边还可以继续再使用标签栏进行导航三级分类。 头条号和CSDN都是采用该方式。 1.3 横纵结合导航栏 横向为一级菜单&…

ConvexHull-凸包-原理-代码实现

定义:凸包是包围点云的最小凸多面体,所有点都在该多面体的内部或表面上。优点:能够精确地包围点云,并且不存在额外的空白区域。缺点:计算复杂度高,尤其是在高密度点云中,生成凸包的过程较慢。 …

前后端分离项目--下载功能

文章目录 不使用代理服务器blobblob构造函数通过FormData对象的getBlob方法创建Blob对象将Blob对象转换成UR 使用代理服务器 前后端分离项目中下载与其他接口的使用不同,一般下载不走node,不通过代理服务器,而是直接在前台发送请求&#xff0…

人工智能安全治理新篇章:《2024人工智能安全治理框架1.0版》深度解读@附20页PDF文件下载

在数字化浪潮席卷全球的今天,人工智能(AI)技术正以前所未有的速度融入我们的日常生活,从智能助手到自动驾驶,从医疗诊断到金融风控,AI的身影无处不在。然而,技术的双刃剑特性也让我们不得不面对…