YOLOv5】LabVIEW+OpenVINO让你的YOLOv5在CPU上飞起来
前言
上一篇博客给大家介绍了使用opencv加载YOLOv5的onnx模型,但我们发现使用CPU进行推理检测确实有些慢,那难道在CPU上就不能愉快地进行物体识别了吗?当然可以啦,这不LabVIEW和OpenVINO就来了嘛!今天就和大家一起看一下如何在CPU上也能感受丝滑的实时物体识别。
一、OpenVINO是什么
OpenVINO是英特尔针对自家硬件平台开发的一套深度学习工具库,用于快速部署应用和解决方案,包含推断库,模型优化等等一系列与深度学习模型部署相关的功能。

特点:
在边缘启用基于CNN的深度学习推理
支持通过英特尔MovidiusVPU在英特尔CPU,英特尔集成显卡,英特尔神经计算棒2和英特尔视觉加速器设计之间进行异构执行
通过易于使用的计算机视觉功能库和预先优化的内核加快上市时间
包括对计算机视觉标准(包括OpenCV *和OpenCL)的优化调用
通俗易懂点说想要在intel-cpu或者嵌入式上部署深度学习模型,可以考虑考虑openvino
二、LabVIEW视觉工具包下载与配置
1、视觉工具包的下载安装
可在如下链接中下载并安装工具包:https://www.cnblogs.com/virobotics/p/16527821.html
2、OpenVINO toolkit下载安装
下载地址:英特尔 Distribution of OpenVINO 工具套件 1)点击Dev Tools

2)选择版本,选择如下版本,并DownLoad:

3)下载后,运行安装即可!

4)可以选择安装路径,具体安装可以参考官方文档:https://docs.openvino.ai/cn/latest/openvino_docs_install_guides_installing_openvino_windows.html
三、模型获取
openvino工作流程,和其他的部署工具都差不多,训练好模型,解析成openvino专用的.xml和.bin,随后传入Inference Engine中进行推理。这里和上一篇博客一样可以使用export.py导出openvino模型:python export.py --weights yolov5s.pt --include openvino 当然这里已经为大家转换好了模型,大家可以直接下载,下载链接:YOLOv5 OpenVINO IR模型

四、LabVIEW+OpenVINO调用Yolov5进行实时物体识别
1、实现过程
dnn模块调用IR模型(模型优化器)
设置计算后台与计算目标设备(推理引擎加速)
获取输出端的LayerName
图像预处理
推理
后处理
绘制检测出的对象
2、程序源码

3、识别结果
CPU模式下,使用openvino进行推理加速,实时检测推理用时仅95ms/frame,是之前加载速度的三分之一 
注意:readNetFromModelOptimizer.vi中IR模型路径不可以包含中文
附加说明:计算机环境
操作系统:Windows10
python:3.6及以上
LabVIEW:2018及以上 64位版本
视觉工具包:techforce_lib_opencv_cpu-1.0.0.73.vip
OpenVINO:2021.4.2
总结
以上就是今天要给大家分享的内容。
如需源码,请关注微信公众号VIRobotics,回复关键词:yolov5_openvino。
如您想要探讨更多关于LabVIEW与人工智能技术,欢迎加入我们的技术交流群:705637299,进群请备注暗号:LabVIEW机器学习
YOLOv5】LabVIEW+OpenVINO让你的YOLOv5在CPU上飞起来的更多相关文章
- LabVIEW+OpenVINO在CPU上部署新冠肺炎检测模型实战
前言 之前博客:[YOLOv5]LabVIEW+OpenVINO让你的YOLOv5在CPU上飞起来给大家介绍了在LabVIEW上使用openvino加速推理,在CPU上也能感受丝滑的实时物体识别.那我 ...
- 【YOLOv5】手把手教你使用LabVIEW ONNX Runtime部署 TensorRT加速,实现YOLOv5实时物体识别(含源码)
前言 上一篇博客给大家介绍了LabVIEW开放神经网络交互工具包[ONNX],今天我们就一起来看一下如何使用LabVIEW开放神经网络交互工具包实现TensorRT加速YOLOv5. 以下是YOLOv ...
- YOLO系列梳理(三)YOLOv5
前言 YOLOv5 是在 YOLOv4 出来之后没多久就横空出世了.今天笔者介绍一下 YOLOv5 的相关知识.目前 YOLOv5 发布了新的版本,6.0版本.在这里,YOLOv5 也在5.0基 ...
- YOLOv4没交棒,但YOLOv5来了!
YOLOv4没交棒,但YOLOv5来了! 前言 4月24日,YOLOv4来了! 5月30日,"YOLOv5"来了! 这里的 "YOLOv5" 是带有引号的,因为 ...
- GitHub上YOLOv5开源代码的训练数据定义
GitHub上YOLOv5开源代码的训练数据定义 代码地址:https://github.com/ultralytics/YOLOv5 训练数据定义地址:https://github.com/ultr ...
- yolov5训练自定义数据集
yolov5训练自定义数据 step1:参考文献及代码 博客 https://blog.csdn.net/weixin_41868104/article/details/107339535 githu ...
- 使用LabVIEW如何生成应用程序(exe)和安装程序(installer)
主要软件: LabVIEW Development Systems>>LabVIEW Professional Development System主要软件版本: 2012主要软件 ...
- 【LabVIEW技巧】LabVIEW OOP怎么学
前言 有很多人对LabVIEW OOP存在比较极端的看法,大致分为两类: 1. 绝对否定派认为LabVIEW OOP只不过是LabVIEW为了追求时髦,在面向过程的基础上用簇做了一些特性,实际上完全不 ...
- 【翻译】如何使用 OpenVINO 来优化 OpenCV
本文翻译自 Vishwesh Shrimali 的 "Using OpenVINO with OpenCV" 原文链接: https://www.learnopencv.com/ ...
随机推荐
- 为美多商城(Django2.0.4)添加基于websocket的实时通信,主动推送,聊天室及客服系统
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_67 websocket是个啥? webSocket是一种在单个TCP连接上进行全双工通信的协议 webSocket使得客户端和服务 ...
- 为你的网站加上live2d的动态小挂件,博君一晒
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_122 喜欢二次元的朋友一定对大名鼎鼎的live2d技术并不陌生,live2D是一种应用于电子游戏的绘图渲染技术,技术由日本Cybe ...
- Luogu4391 [BOI2009]Radio Transmission 无线传输 (KMP)
\(最小循环节\) \(=\) \(lenghth - next[lenghth]\) #include <iostream> #include <cstdio> #inclu ...
- Luogu3267 [JLOI2016/SHOI2016]侦察守卫 (树形DP)
树形DP,一脸蒙蔽.看了题解才发现它转移状态与方程真不愧神题! \(f[x][y]\)表示\(x\)的\(y\)层以下的所有点都已经覆盖完,还需要覆盖上面的\(y\)层的最小代价. \(g[x][y] ...
- Excel 统计函数(一):SUMIF 和 SUMIFS
SUMIF [语法]SUMIF(range, criteria, [sum_range]). [参数] range :求和范围 criteria :筛选的条件 sum_range :可选参数,实际的求 ...
- 从C过渡到C++——换一个视角深入数组[真的存在高效吗?](2)
从C过渡到C++--换一个视角深入数组[真的存在高效吗?](2) C风格高效的数组遍历 在过渡到C++之前我还是想谈一谈如何书写高效的C的代码,这里的高效指的是C代码的高效,也就是在不开启编译器优化下 ...
- 延时任务-基于redis zset的完整实现
所谓的延时任务给大家举个例子:你买了一张火车票,必须在30分钟之内付款,否则该订单被自动取消.订单30分钟不付款自动取消,这个任务就是一个延时任务. 我之前已经写过2篇关于延时任务的文章: <完 ...
- JS判断两个数组的元素是否完全相等
1.使用ES6 新增的扩展运算符和Set新数据类型判断两个数组是否包含有相同的元素 var arr1 = ['green' , 'yellow' ,'blue' ,'red']; var arr2 = ...
- CF915G Coprime Arrays (莫比乌斯反演)
CF915G Coprime Arrays 题解 (看了好半天终于看懂了) 我们先对于每一个i想,那么 我们设 我们用莫比乌斯反演 有了这个式子,可比可以求出△ans呢?我们注意到,由于那个(i/d) ...
- 【MySQL】从入门到精通8-SQL数据库编程
上期:[MySQL]从入门到精通7-设计多对多数据库 第零章:Mac用户看这里: mac终端写MySQL和windows基本相同,除了配置环境变量和启动有些许不同以外. 先配置环境变量,在终端输入vi ...