Nanodet模型部署(ncnn,openvino)/YOLOX部署(TensorRT)
Nanodet模型部署(ncnn,openvino)
- nanodet官方代码库nanodet
1. nanodet模型部署在openvino上
step1: 参考链接
step2: 步骤补充
- 以openvino官方文档为主要参考
- 进入openvino官方文档后点击[Install Package]
- 然后开始官方文档的step1进行选择下载形如[l_openvino_toolkit_p_2021.4.752.tgz]
- 选择Linux -> Online & Offline -> 2021 4.2 LTS -> offline (注意选择Version Type时候注意,如果是低点版本可能在Ubuntu20.04上安装protuf(好像是这个名字)会包g++不对) ->然后随便填邮箱,国家即可下载
- 后续对比上面三个官方文档(openvino官方文档为主)一步一步即可
- openvino将onnx转换成适合openvino的格式是nanodet.xml nanodet.bin nanodet.maping
step3: 使用CLion进行阅读调试代码(Debug)
- 先进入clion.sh位置(/home/zranguai/software/CLion-2021.3.2/clion-2021.3.2/bin) 然后sh clion.sh
- source /opt/intel/openvino_2021/bin/setupvars.sh
- 选择nanodet的demo_openvino项目
- 左上角Edit Configuration进行配置main.cpp的参数(例如Program arguments 3 0)进行Debug调试
2. nanodet模型部署在ncnn上
step1: 参考链接
step2: 步骤补充
- 以mmdeploy安装指南为主要参考
- 如果需要安装opencv可以参考opencv安装教程
- 或者上面openvino的GiantPandaCV里也有已经编译好的opencv
- 在编译好的ncnn里面运行onnx2ncnn产生.param 和 .bin(/home/zranguai/C_C++_Code/C_C++_deploy/ncnn/build/tools下)
- 使用ncnnoptimize优化ncnn模型(/home/zranguai/C_C++_Code/C_C++_deploy/ncnn/build/)
- ncnn将onnx转换成适合ncnn的格式是 nanodet.param nanodet.bin
step3: 使用CLion进行阅读调试代码(Debug)
- 先进入clion.sh位置(/home/zranguai/software/CLion-2021.3.2/clion-2021.3.2/bin) 然后sh clion.sh
- export VULKAN_SDK=(pwd)/1.2.176.1/x86_64 -->其中是mmdeploy官方文档安装vulkansdk的
- 例如 export VULKAN_SDK=/home/zranguai/C_C++_Code/C_C++_deploy/1.2.176.1/x86_64
- export ncnn_DIR=YOUR_NCNN_PATH/build/install/lib/cmake/ncnn
- 例如 export cnn_DIR=/home/zranguai/C_C++_Code/C_C++_deploy/ncnn/build/install/lib/cmake/ncnn
- 配置参数进行Debug阅读代码即可
YOLOX模型部署在TensorRT上
step1: 参考链接
step2步骤补充
- TensorRT安装时操作系统,cuda, cudnn需要对上
- 安装mmdeploy上将环境变量导入到~/.bashrc
- 在yolox是make遇到问题解决方案: (https://github.com/Megvii-BaseDetection/YOLOX/issues/768)
- 在yolox的CMakeLists.txt需要更改cuda,cudnn, TensorRT路径
- 转换成适合TensorRT的格式是model_trt.engine
使用CLion进行阅读调试代码(Debug)
- 这里因为之前将环境导入~/.bashrc,and yolox的CMakeLists.txt有路径所以直接打开即可
- 配置路径进行调试
- /home/zranguai/Cv-Code/detection/YOLOX-0.2.0/YOLOX_outputs/yolox_s/model_trt.engine -i /home/zranguai/Cv-Code/detection/YOLOX-0.2.0/assets/dog.jpg
Nanodet模型部署(ncnn,openvino)/YOLOX部署(TensorRT)的更多相关文章
- 将 ExpressRoute 线路从经典部署模型转移到 Resource Manager 部署模型
本文概述将 Azure ExpressRoute 线路从经典部署模型转移到 Azure Resource Manager 部署模型的效果. Azure 当前使用两种部署模型:Resource Mana ...
- 二进制部署K8S-3核心插件部署
二进制部署K8S-3核心插件部署 5.1. CNI网络插件 kubernetes设计了网络模型,但是pod之间通信的具体实现交给了CNI往插件.常用的CNI网络插件有:Flannel .Calico. ...
- MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)
MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群) OneAPM蓝海讯通7月3日 发布 推荐 4 推荐 收藏 14 收藏,1.1k 浏览 MariaDB 作为 ...
- MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)
MariaDB Galera Cluster 部署(如何快速部署MariaDB集群) [日期:--] 来源:Linux社区 作者:Linux [字体:大 中 小] MariaDB作为Mysql的一个分 ...
- Activiti 流程部署方式 activi 动态部署(高级源码篇)
Activiti的流程 部署方式有很多种方式,我们可以根据activit工作流引擎提供的ap方式进行部署. 当然了实际需求决定你要使用哪一种api操作,后面的总结详细介绍了使用场景. 下面看一下部署方 ...
- 微服务架构 - 离线部署k8s平台并部署测试实例
一般在公司部署或者真实环境部署k8s平台,很有可能是内网环境,也即意味着是无法连接互联网的环境,这时就需要离线部署k8s平台.在此整理离线部署k8s的步骤,分享给大家,有什么不足之处,欢迎指正. 1. ...
- 基于winserver的Apollo配置中心分布式&集群部署实践(正确部署姿势)
基于winserver的Apollo配置中心分布式&集群部署实践(正确部署姿势) 前言 前几天对Apollo配置中心的demo进行一个部署试用,现公司已决定使用,这两天进行分布式部署的时候 ...
- CentOS7系统 ansible自动化部署多台服务器部署
CentOS7系统 ansible自动化部署多台服务器部署 Ansible工作机制 从图中可以看出ansible分为以下几个部份: 1> Control Node:控制机器2> In ...
- Activiti 流程部署方式 activi 动态部署(高级源代码篇)
Activiti的流程 部署方式有非常多种方式,我们能够依据activit工作流引擎提供的ap方式进行部署. 当然了实际需求决定你要使用哪一种api操作,后面的总结具体介绍了使用场景. 以下看一下部署 ...
随机推荐
- “一键”生成HTML——Emmet插件常用语法
Emmet是一款文本编辑器/IDE的插件,用来快速生成复杂的HTML代码,只要掌握一些常用的语法(类似于CSS选择器),就可以减少重复编码的工作(主要是懒).我个人惯用的是sublime,因此下文介绍 ...
- WordPress 网站开发“微信小程序“实战(三)
本文是"WordPress 开发微信小程序"系列的第三篇,本文记录的是开发"DeveWork+"小程序1.2 版本的过程.建议先看完第一篇.第二篇再来阅读本文. ...
- 【Android开发】【布局】自定义底部菜单栏(中间图标凸起)
我的Demo 参考: http://blog.csdn.net/xh870189248/article/details/75808341 http://blog.csdn.net/xh87018924 ...
- Android的Activity屏幕切换动画左右滑动切换
在Android开发过程中,经常会碰到Activity之间的切换效果的问题,下面介绍一下如何实现左右滑动的切换效果,首先了解一下Activity切换的实现,从Android2.0开始在Activity ...
- JS中Map和ForEach的区别
定义 forEach()方法: 针对每一个元素执行提供的函数. map()方法: 创建一个新的数组,其中每一个元素由调用数组中的每一个元素执行提供的函数得来. 区别 forEach()方法不会返回执行 ...
- FastAPI(六十六)实战开发《在线课程学习系统》接口开发--用户注册接口开发
在前面我们分析了接口的设计,那么我们现在做接口的开发. 我们先去设计下pydantic用户参数的校验 from pydantic import BaseModel from typing import ...
- Kubernetes架构-图解
- 项目-MyBlog
项目 地址:https://gitee.com/zwtgit/my-blog 由Docker + SpringBoot2.0 + Mybatis + thymeleaf 等技术实现, 功能齐全.部署简 ...
- 想减少代码量,快设置一个有感知的 Aware Spring Bean
摘要:正常情况下,Spring 中的 Bean 对 Spring 是无感知的,Spring 框架提供了这种扩展能力,能让一个 bean 成为有感知的. 本文分享自华为云社区<有感知的 Aware ...
- 读完学会shell语法,shell脚本80%已经学会
第3章 shell语法讲解 3.1 shell运算讲解 3.1.1 运算符的讲解 3.1.2 shell运算方式的讲解 3.1.2.1 $(())运算 [root@m01 test_init] # a ...