win10环境下基于OpenVINO部署yolov5模型
以在Intel的OpenVINO上部署Yolov5模型为例,加深对模型部署的理解。
1. 训练准备
获取yolov5模型及数据集
git clone git://github.com/ultralytics/yolov5
pt模型
coco数据集
2. 训练Yolov5
python train.py --batch 16 --epochs 10 --data data/coco128.yaml --cfg models/yolov5s.yaml --weights yolov5s.pt
- –data:训练数据的说明文件,说明训练集、测试集、种类数目、种类名称
- –cfg: 在训练准备阶段完成的模型结构描述文件
- –weights: 预训练模型
训练完成后,权重文件会自动保存在runs文件夹中,自动生成last.pt和best.pt.
遇到的问题:
缺少cv2库,安装速度太慢,换清华源下载。
pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
yolov5 demo检测
对测试集中的图像进行检测:
python detect.py --weight runs/exp6/weights/best.pt --source .\inference\images\bus.jpg
检测结果:
3.模型转换/优化
将YOLOV5的.pt权重文件转换成OpenVINO™工具套件调用的文件,主要的流程:.pt权重文件-》onnx权重文件->IR文件(.bin和.xml)。其中利用ONNX(Open Neural Network Exchange,开放神经网络交换)进行文件格式转换。
1)pt格式权重文件转onnx格式
安装依赖库
pip install onnx==1.9.0 coremltools onnx-simplifier -i https://pypi.tuna.tsinghua.edu.cn/simple
导出onnx
python export.py --weights runs/exp6/weights/best.pt --img 640 --batch 1
Netron查看网络结构
pip install netron -i https://pypi.tuna.tsinghua.edu.cn/simple
.onnx文件所在路径下:
2)onnx格式转换OpenVINO的xml和bin格式
安装配置OpenVINX工具套件
参考B站安装步骤
安装vs
vs2019
安装cmake
cmake 3.22.1
python版本切换到3.6
conda create -n python36 python=3.6conda activate python36
配置OpenVINO运行环境
1)设置环境变量:
cd C:\Intel> CD .\openvino_2021\bin\.\setupvars.bat
2)配置模型优化器
确保模型优化器可以对onnx模型进行转换
cd D:\Program Files\Anaconda\Scripts
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn onnx==1.10.0
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn tensorflow==1.15.5
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn mxnet==1.5.0pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn network==2.5.1
cd .\deployment_tools\model_optimizer\install_prerequisites\.\install_prerequisites.bat
- 验证环境
cd C:\Intel\openvino_2021\deployment_tools\demo
.\demo_security_barrier_camera.bat
4) 在windows上设置永久的环境变量
win+R 输入sysdm.cpl可以打开环境变量窗口
5)onnx格式转换OpenVINO的xml和bin格式
C:\Intel\openvino_2021\deployment_tools\model_optimizer>
python mo_onnx.py --input_model D:/My_file_xxj/code/my_own_test/yolov5/runs/exp6/weights/best.onnx --output_dir D:/My_file_xxj/code/my_own_test/yolov5/runs/exp6/weights
运行成功后会获得.xml和.bin文件,xml和bin是OpenVINO中的模型存储方式。
4. 使用OpenVINO进行推理部署
OpenVINO除了模型优化工具外,还提供了一套运行时推理引擎.
利用OpenVINO的模型进行推理部署的方法有两种:
1)使用OpenVINO原生的SDK;
2) 使用OpenVINO自带的opencv进行部署。
这里使用原生SDK的部署方式。
首先windows10配置make命令
win10环境下基于OpenVINO部署yolov5模型相关推荐
- win10系统下使用openvino部署yolov5模型
文章目录 前言 一.环境 1.硬件 2.软件 二.YOLO模型 三.新建Qt项目 1.pro文件 2.main.cpp 四.效果 五.后记 前言 上一篇介绍过使用onnxruntime实现模型推理 ...
- win10系统下使用opencv-dnn部署yolov5模型
文章目录 前言 一.环境 1.硬件 2.软件 二.YOLO模型 三.新建Qt项目 1.pro文件 2.main函数 四.YOLO 类封装 1.yolo.h 2.yolo.cpp 3.classes.t ...
- win10系统下使用onnxruntime部署yolov5模型
文章目录 前言 一.环境 1.硬件 2.软件 二.YOLO模型 三.新建Qt项目 1.pro文件 2.mainwindow.h 3.mainwindow.cpp 四.YOLO 类封装 1.yolov5 ...
- win10环境下基于face_recognition搭建自己的人脸识别软件
在win10环境下安装face_recognition,了解face_recognition中api的使用,如人脸截取.人脸矫正.人脸特征提取.人脸关键点提取.人脸mask获取.人脸特征比对等功能.最 ...
- Win10环境下基于Hexo的静态博客环境搭建,及其阿里云部署
引言 1.为什么要搭建自己的个人博客 工作和学习过程中,我们经常遇到一些这样或那样的问题,此时我们可能会在网上找到相应的解决方法.但是过了一段时间之后,当我们再次碰到类似的问题时,早已忘记以前是怎么解 ...
- 基于OpenVINO部署PaddlePadle-YOLOE模型—2.模型下载与转换
1. 模型下载 首先下载PP-YOLOE官方训练模型,该模型由PaddleDetection提供,基于COCO数据集训练,可以识别80种常见物体.此处采用的是PaddleDetection rele ...
- 【信息学】【2018.02】噪声环境下基于时频域信号模型的语音去混响
本文为德国埃尔朗根-纽伦堡大学(作者:Sebastian Braun)的博士论文,共164页. 混响是由所有反射声波的总和叠加而成,存在于任何传统的房间中.诸如免提模式的移动电话.平板电脑.智能电视. ...
- windows下基于libtorch的yolov5 6.0的c++部署
windows下基于libtorch的yolov5 6.0的c++部署 1.概述 libtorch是pytorch的C++版本,在需要多进程.提高推理速度等需求下会比python语言更具有优势.本文根 ...
- 基于Caffe格式部署YOLOV5模型
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 [导语]本文为大家介绍了一个caffe部署yolov5 模型的教程,并开源了全部代码.主要是教你如何搭 ...
最新文章
- Gradle的安装和在idea的配置
- 基于SSM实现健康食品零售网站
- CodeForces - 1418G Three Occurrences(线段树-标记永久化)
- linux把硬盘当内存,把内存当硬盘使,让你的linux程序运转如飞(在linux下用firefox在线写csdn的blog再也不卡了)...
- 异步重试_异步重试模式
- 二阶矩阵乘法C语言,c语言矩阵相乘
- mysql把某一列的数据更新到另一列中(涉及到多张表的数据)
- 【整理总结】代码沉淀 - Caliburn.Micro - MV*模式短小精悍的框架
- 从html富文本中提取纯文本
- [论文笔记]ALBERT: A LITE BERT FOR SELF-SUPERVISED LEARNING OF LANGUAGE REPRESENTATIONS
- idea 正则表达式替换
- Keil v5安装和使用
- 微分几何的20-23节笔记
- 【寒假每日一题2022】acw1934. 贝茜放慢脚步【二路归并】
- 光伏发电到底能带我们走多远?
- Windows7双屏扩展及双屏桌面背景独立显示
- php网页怎么设置背景图片大全唯美,html文档中怎么把图片作为背景?
- 带固态硬盘的电脑Ubuntu和Windows双系统安装
- 通过system verilog unpacked array转换为packed array解决readmemh无法读取packed array
- 【思想】《人生效率手册》