海思SS928(SD3403)部署YOLOv5-YOLOv7步骤详解

news2024/11/27 8:39:59

1. YOLO模型资料

本文档内容以yolov5-7.0工程、yolov5s模型为例。

a. 模型结构

详细的模型结构可以利用netron工具打开.pt或.onnx模型查看。

b. 模型参数即验证结果

        其中,YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x为五种类型的预训练模型,其包含的检测类别相同,均包括以下80类'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus',

'train','truck','boat', 'traffic light','fire hydrant',

'stop sign','parking meter', 'bench', 'bird', 'cat', 'dog',

'horse', 'sheep', 'cow','elephant', 'bear', 'zebra', 'giraffe',

'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee',

'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat',

'baseball glove', 'skateboard', 'surfboard','tennis racket',

'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl',

'banana', 'apple','sandwich', 'orange', 'broccoli', 'carrot',

'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch',

'potted plant','bed', 'dining table', 'toilet', 'tv', 'laptop',

'mouse', 'remote', 'keyboard', 'cell phone','microwave', 'oven',

'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase',

'scissors', 'teddy bear','hair drier', 'toothbrush':

Size表示模型支持输入的图像尺寸为640*640。

MAP(50-95)表示只有当预测结果置信度阈值为50-95时才算正确的话,模型在coco测试集上的预测精确度。

Speed cpu b1表示该模型在cpu上的推理速度是多少。

Speed V100 b1表示该模型在gpu上的推理速度是多少,其中V100为英伟达的一种显卡类型。

Params表示模型需要训练的参数数量,单位是million。

FLOPs表示模型执行推理时每秒需要进行的浮点数运算次数,次数越少说明模型约轻量,模型参数越少。

2. 移植过程和优化文档

        通过章节一得到yolo原始模型,其后缀为.pt,要想将其放到SS928芯片上执行推理,必须将其转换为.om模型,.pt模型转为.om模型需要分两步:

1).pt模型转为.onnx;

2).onnx转为.om;

其中,步骤1依赖github开源的yolo工程,步骤2依赖海思提供的atc工具,即资料包中的Ascend-cann-toolkit_6.10.t01spc030b330_linux.x86_64.run。

下面将对步骤1和步骤2的实现进行详细的说明:

2.1环境搭建指南

.pt模型转换为.onnx

2.1.1.准备一个纯净的ubuntu18:04的环境;

2.1.2.安装anaconda

通过安装Anaconda来创建虚拟环境,可以在同一个系统上创建多个相互独立的 Python 运行环境。每个虚拟环境中都可以安装所需的 Python 包和库,以满足不同项目或应用程序的需求,而且不会影响到系统上其他的 Python 环境,保证了环境隔离。(与全局系统环境和其他虚拟环境都隔离开来)

(1)Anaconda镜像资源下载网址:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

(2)选择对应的版本下载,下载完成后在终端输入命令运行.sh文件即可安装:

./Anaconda3-2020.11-Linux-x86_6

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

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

相关文章

vue element 接口返回数据与控制台打印数据不一致 踩坑

问题描述: 接口返回数据正常,,控制台打印不对,element el-switch表格中使用,控制台打印数据被改变 如下正常数据 数据id 17状态是0 控制台打印状态却是1 造成原因: element el-seitch组件修改了状态 修…

【Vue】声明式导航-导航链接

文章目录 一、引入二、解决方案三、代码示例四、声明式导航-两个类名1)router-link-active2)router-link-exact-active 一、引入 但凡说到声明式导航,都需要想到router-link 需求 实现导航高亮效果 如果使用a标签进行跳转的话,需要…

TensorFlow2.x基础与mnist手写数字识别示例

文章目录 Github官网文档Playground安装声明张量常量变量 张量计算张量数据类型转换张量数据维度转换ReLU 函数Softmax 函数卷积神经网络训练模型测试模型数据集保存目录显示每层网络的结果 TensorFlow 是一个开源的深度学习框架,由 Google Brain 团队开发和维护。它…

【学术小白成长之路】01三方演化博弈(基于复制动态方程) -基础概念与模型构建

1.演化博弈基础知识 经典博弈论起源于1944年Von Neumann和Morgenstern合著的《博弈论与经济学行为》,是研究理性决策者之间竞争和合作关系的数学方法。 博弈论主要研究完全理性的博弈个体为实现利益最大化而做的策略选择,在过去几十年取得了极大发展&am…

Camtasia Studio怎么自动加字幕呢,Camtasia Studio有什么功能呢

在信息化高度发达的今天,视频作为一种直观、生动的信息表达方式,受到了越来越多人的青睐。无论是教育领域的教学视频,还是企业宣传的推广短片,甚至是个人创作的分享作品,都离不开一款优秀的视频编辑软件。Camtasia Stu…

番外篇 | 利用华为2023最新Gold-YOLO中的Gatherand-Distribute对特征融合模块进行改进

前言:Hello大家好,我是小哥谈。论文提出一种改进的信息融合机制Gather-and-Distribute (GD) ,通过全局融合多层特征并将全局信息注入高层,以提高YOLO系列模型的信息融合能力和检测性能。通过引入MAE-style预训练方法,进一步提高模型的准确性。🌈 目录 🚀1.论文解…

全志D1s软件入门之Tina Linux烧写教程

烧写 Tina Linux 烧写,即将编译打包好的固件下载到设备 烧写方式简介 全志平台为开发者提供了多种多样的烧写方式和烧写工具: (1) PhoenixSuit:基于Windows的系统的烧写工具,是最常用的烧写工具&#x…

【三十三】springboot+序列化实现返回值脱敏和返回值字符串时间格式化问题

互相交流入口地址 整体目录: 【一】springboot整合swagger 【二】springboot整合自定义swagger 【三】springboot整合token 【四】springboot整合mybatis-plus 【五】springboot整合mybatis-plus 【六】springboot整合redis 【七】springboot整合AOP实现日志操作 【…

解决VIvado编程中遇到的bug 5

解决VIvado编程中遇到的bug 5 语言 :Verilg HDL EDA工具: Vivado、quartus2 、modelsim 解决VIvado编程中遇到的bug 5一、引言二、问题、分析及解决方法1. vivado编译时报错(1)错误(2)分析(3&am…

【C++课程学习】:C++入门(引用)

🎁个人主页:我们的五年 🔍系列专栏:C课程学习 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 🍩1.引用的概念: 🍩2.引用和指针是两个概念: &#x…

C语言之字符函数总结(全部!),一篇记住所有的字符函数

前言 还在担心关于字符的库函数记不住吗?不用担心,这篇文章将为你全面整理所有的字符函数的用法。不用记忆,一次看完,随查随用。用多了自然就记住了 字符分类函数和字符转换函数 C语言中有一系列的函数是专门做字符分类和字符转换…

【AI基础】第三步:纯天然保姆喂饭级-安装并运行chatglm2-6b

chatglm2构建时使用了RUST,所以在安装chatglm2之前,先安装RUST。 此系列文章列表: 【AI基础】第一步:安装python开发环境-windows篇_下载安装ai环境python-CSDN博客 【AI基础】第一步:安装python开发环境-conda篇_mini…

springboot+minio+kkfileview实现文件的在线预览

在原来的文章中已经讲述过springbootminio的开发过程,这里不做讲述。 原文章地址: https://blog.csdn.net/qq_39990869/article/details/131598884?spm1001.2014.3001.5501 如果你的项目只是需要在线预览图片或者视频那么可以使用minio自己的预览地址进…

python 多任务之多进程

多任务 优势 多个任务同时执行可以大大提高程序执行效率,可以充分利用CPU资源,提高程序的执行效率 概念 是指在同一时间内执行多个任务 多进程 概念 进程(process)是资源分配的最小单位,他是操作系统进行资源分配…

EKF在LiFePO4电池SOC估算中不好用?一问带你破解EKF应用难题

磷酸铁锂电池因为平台区的存在,导致使用戴维南模型EKF的方法时,无法准确进行SOC准确预估。所以最近搜索了大量关于磷酸铁锂电池SOC预估的论文、期刊,但我被海量忽略客观事实、仅为了毕业的硕士论文给震惊到了。很多论文为了掩饰平台区的存在&…

C++ OpenCV 图像分类魔法:探索神奇的模型与代码

⭐️我叫忆_恒心,一名喜欢书写博客的研究生👨‍🎓。 如果觉得本文能帮到您,麻烦点个赞👍呗! 近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三连支…

基于SSM的旅游民宿预定系统【源码】【运行教程】

基于SSM的旅游民宿预定系统 一、项目介绍1. 游客功能2. 管理员功能3. 高级功能 二、项目技术栈三、项目运行四、项目演示总结 大家好,这里是程序猿代码之路!随着旅游业的快速发展,民宿作为一种独特的住宿方式越来越受到游客的喜爱。为了提升用…

【Linux操作系统】Linux中进程的五种状态:R、S、D、T、X以及僵尸进程、孤儿进程

操作系统中有许多同时执行的进程,这些进程都可能处于不同的状态代表着不同的含义。 R运行状态(running) 概念:并不意味着进程一定在运行中,它表明进程要么是在运行中要么在运行队列里。 我们运行可执行程序myproc利用指令 ps ajx可以看到进程…

git凭证

默认是manager # 将凭证缓存到内存中,默认缓存15分钟 git config --global credential.helper cache# 将凭证存储到磁盘上的纯文本文件中 git config --global credential.helper store# 使用 Git 凭证管理器 git config --global credential.helper manager-core查…

微服务开发与实战Day03

一、导入黑马商城项目 资料文档:Docs 1. 安装MySQL ①删除root目录下的mysql rm -rf mysql/ ②把课前资料里的mysql目录上传到root目录下 ③创建一个通用网络 docker network create hm-net ④使用下面的命令安装MySQL docker run -d \--name mysql \-p 330…