admin管理员组文章数量:1646253
开发人员通过使用OpenVINO工具包开发多平台计算机视觉解决方案,可以在云中构建和训练AI模型 - 在TensorFlow,MXNet和Caffe等流行框架上 - 并将它们部署到广泛的产品中。该工具包基于卷积神经网络(CNN),包括一个函数库和预优化内核,可在边缘实现基于CNN的深度学习推理,并优化对OpenCV和OpenVX的调用。它还支持跨计算机视觉加速器(CPU,GPU,Intel Movidius Neural Compute Stick和FPGA)的异构执行 - 使用通用API来完成。
1.什么是OpenVINO工具包
OpenVINO™工具包可快速部署模拟人类视觉的应用程序和解决方案。该工具包基于卷积神经网络(CNN),可扩展英特尔®硬件的计算机视觉(CV)工作负载,从而最大限度地提高性能。OpenVINO™工具包包括深度学习部署工具包(DLDT)。
OpenVINO工具包:
- 在边缘启用基于CNN的深度学习推理
- 支持跨英特尔®CPU,英特尔®集成显卡,英特尔®FPGA,英特尔®Movidius™神经计算棒,英特尔®神经计算棒2和采用英特尔®Movidius™VPU的英特尔®视觉加速器设计的异构执行
- 通过易于使用的计算机视觉功能库和预优化的内核,加快产品上市速度
- 包括针对计算机视觉标准的优化调用,包括OpenCV *,OpenCL™和OpenVX *
2.OpenVINO包括组件:
- 深度学习部署工具包(DLDT)
- 深度学习模型优化器 - 一种跨平台的命令行工具,用于导入模型并使用推理引擎为最佳执行做好准备。模型优化器导入,转换和优化模型,这些模型在流行的框架中训练,例如Caffe *,TensorFlow *,MXNet *,Kaldi *和ONNX *。
- 深度学习推理引擎 - 一种统一的API,允许对许多硬件类型进行高性能推断,包括英特尔®CPU,英特尔®集成显卡,英特尔®Movidius™神经计算棒,英特尔®神经计算棒2和采用英特尔®的英特尔®视觉加速器设计Movidius™VPU
- 演示和示例 - 一组简单的控制台应用程序,演示如何在应用程序中使用推理引擎
- 工具 - 一组简单的控制台工具,用于校准和测量模型的精度
- 预先训练的模型 - 一套用于学习和演示目的的预训练模型或开发深度学习软件
- OpenCV - 为英特尔®硬件编译的OpenCV *社区版本包括用于计算机视觉的PVL库。
- OpenCL™2.1版的驱动程序和运行时
- Intel®MediaSDK
- OpenVX * - 英特尔针对在英特尔®硬件(CPU,GPU,IPU)上运行而优化的OpenVX *实施。
3.支持平台与硬件:
不同的系统与硬件要求如下:
windows
| macOS * 10.14
| linux(Ubuntu 16.04.x长期支持(LTS),64位:支持的最低内核为4.14;CentOS 7.6,64位; Yocto Project Poky Jethro v2.0.3,64位(仅限目标并需要修改)
|
4、安装openvino
这里根据自己适配的系统,结合官网的教程进行配置。以自己在Windows10 64位下的安装步骤为例,进行如下的阐述,
(1)安装vs
这里版本随你选,可以是15,17,19的,根据需求选择(社区版或专业版都可以),安装位置可以选择默认C盘,也可以放在其他盘。下载链接:https://docs.microsoft/zh-cn/visualstudio/releasenotes/vs2019-relnotes.需要注意的是安装需要带上MSbuild包,这个后面有很大用。。。
(2)安装cmake
安装cmake,主要是为了编译源码文件,这里安装的版本需要在3.4以上,若vs选择是19那么cmake最好为3.14版本,下载链接https://cmake/download/,,下载后可以将其加入到环境变量中,
然后在命令行下输入cmake --version,输出对应版本即表示安装成功。
(3)安装python
想要用cpu来对深度学习模型进行加速的,大家python环境肯定都已经弄好了,这里不再赘述,如果第一次安装的话,可以试试anaconda,一步步来就能帮你配置好python环境了。
(4)安装openvino
按照官网的说法推荐安装最新版的,点击下载,简单注册一下就可以免费下载了。这里我下载的是20.1版,下载完成是一个exe文件,然后点击运行,这里选择默认的安装位置,然后出现如下界面
接着next一步步进行,最后如果出现下面界面,表示前面的依赖项没有安装成功,自己可以回退去检查下环境变量等。
当一切都安装好后,你会在c盘路径发现
这样安装就告一段落了。
5、测试示例
当前面安装步骤都完成后,如何来测试下openvino呢?官网文档提供了测试demo,可以按以下步骤来进行实验
(1)设置环境变量
运行openvino之前,需要对环境进行提前配置,win+r进入dos下,然后运行下面指令
cd C:\Program Files (x86)\IntelSWTools\openvino\bin\ ##若不是默认安装路径,酌情修改
setupvars.bat
显示success即表示设置成功。
(2)安装目标网络框架需要的包
openvino提供了Caffe*, TensorFlow*, MXNet*, and ONNX*等几种形式的接口(torch需要先转化为onnx格式),可以根据自己的需求进行安装,在下面路径下可以看到不同框架需求安装包的批处理文件,
C:\Program Files (x86)\IntelSWTools\openvino_2020.1.033\deployment_tools\model_optimizer\install_prerequisites
这里以安装所有框架的install_prerequisites.bat为例,在dos下进行该路径,然后输入install_prerequisites.bat即可,这里需要注意的是由于下载源在国外,这样下载速度太慢了,我们可以通过手动添加下载源镜像来加速安装,如
pip install tensorflow==1.14.0 -i https://pypi.douban/simple
具体详情可参考https://blog.csdn/xiaomu_347/article/details/85067874。
(3)运行实例
openvino实现对神经网络的加速一般通过xml文件和bin文件来实现,前者主要描述网络构架,后者是其训练好的权重。
官方给了几个示例可以用来检验一下,以汽车检测为例,dos下运行一下指令
cd C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\demo\ ##根据自己的路径切换
demo_security_barrier_camera.bat
等一段漫长的加载与下载库的过程,如果出现了以下界面即表示成功。
补:运行demo过程中出现的问题
这个问题当初自己也困惑了好久,后来明白就是msbuild出的问题,只要在demo_security_barrier_camera.bat文件中加入以下指令保存即可(这里根据自己安装vs版本进行msbuild_version指定),然后在运行就可以了。
在linux和win7上也尝试过,按照步骤一步步来即可安装成功,对于openvino,我的理解就是在模型在推理时能够合并掉一些不必要的层,利用inter内部构造的一些并行运算等加速模型运行,和tensorrt的功能类似,当然网络中间如果出现了一些openvino不支持的操作,只能通过间接实现或者放弃了。接下来就好好享受openvino带来的飞速体验吧!(但是可能有时候效果并没你想的那么好)。详情可关注我的公众号,大家一起学习
参考链接:
https://blog.csdn/kan2016/article/details/89323372(OpenVINO基本介绍)
版权声明:本文标题:模型加速之openvino 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1729416819a1200350.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论