OpenVINO 学习笔记(3):执行 OpenVINO Demos

2024-06-06 18:18

本文主要是介绍OpenVINO 学习笔记(3):执行 OpenVINO Demos,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

执行 OpenVINO Demos

  • 在 open_model_zoo 文件夹下,OpenVINO 给我们提供了许多 Demo ,今天我们就来学习怎么让这些 Demo 运行起来。

1. 编译 build_demos_msvc.bat 文件

  • 打开 cmd ,进入以下目录:
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\inference_engine\demos
    
  • 输入 build_demos_msvc.bat ,执行脚本文件
    build_demos_msvc.bat

2. 编译项目文件

  • 执行完脚本之后,会在文档目录下生成一个 Intel 的文件夹,进入 Intel 文件夹下的 OpenVINO\omz_demos_build 文件夹,使用 VS2017 打开 Demos.sln 文件。
    Open Demos.sln
  • 进入 VS2017 后,右键点击 ALL_BUILD ,然后点击生成,开始进行编译
    Debug
  • 编译完成之后,会在以下目录生成编译的文件
    C:\Users\LWL\Documents\Intel\OpenVINO\omz_demos_build\intel64\Debug
    
  • 在 Debug 文件夹里,我们可以看到生成的 Demo exe 文件
    exe

3. 执行 exe 文件必要准备

  • 这次我们要执行的 dmeo 是:human_pose_estimation_demo.exe 。但是在执行 exe 文件前,我们还必须做一些必要准备,包括:添加环境变量以及下载模型文件。

3.1 添加环境变量

  • 添加以下文件目录到环境变量。如果不添加,会提示缺少 xxx.dll 文件
    C:\IntelSWTools\openvino_2020.1.033\opencv\bin
    C:\Users\LWL\Documents\Intel\OpenVINO\omz_demos_build\intel64\Debug
    C:\Users\LWL\Documents\Intel\OpenVINO\omz_demos_build\intel64\Release
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\inference_engine\bin\intel64\Debug
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\inference_engine\bin\intel64\Release
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\inference_engine\external\tbb\bin
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\ngraph\lib
    
    set_environmet_path
  • 有些可能路径不同,具体看自己的目录。

3.2 下载模型文件

  • 在执行 demo 前,我们必须先要下载模型文件,才能执行对应的 demo 。
  • 进入以下目录,我们可以看到一个 downloader.py 文件。这个文件就是用来下载模型文件的。
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\tools\model_downloader
    
    downloader.py
  • 要想要下载模型文件,我们只要在 cmd 下,输入
    python C:\IntelSWTools\openvino_2020.1.033\deployment_tools\intel_models\downloader.py --name <model_name>
    
  • 具体的模型名可以到以下目录查看
    C:\IntelSWTools\openvino_2020.1.033\deployment_tools\intel_models
    
    intel_models
  • 由于我们要执行的 demo 是 human_pose_estimation_demo.exe ,所以我们需要下载 human-pose-estimation-0001 模型。
  • 在 cmd 里面输入一下命令,完成模型下载
    python C:\IntelSWTools\openvino_2020.1.033\deployment_tools\tools\model_downloader\downloader.py --name human-pose-estimation-0001
    
    human-pose-estimation-0001
  • 下载完成之后,会在 C:\Intel 文件夹下看到模型文件(具体路径,请自己看下载模型时的打印信息)在这里插入图片描述

4. 执行 human_pose_estimation_demo.exe

  • 在必要准备完成之后,我们就可以执行 human_pose_estimation_demo.exe 文件了。
  • 打开 cmd 进入以下目录
    C:\Users\LWL\Documents\Intel\OpenVINO\omz_demos_build\intel64\Debug
    
  • 输入以下命令
    human_pose_estimation_demo.exe -i C:\Users\LWL\Desktop\sample-videos-master\classroom.mp4 -m C:\Users\LWL\Desktop\human-pose-estimation-0001.xml -d CPU
    
    run human_pose_estimation_demo.exe
  • -i 参数默认为 cam,使用摄像头作为输入。也可以在 -i 后面加视频文件路径,使用视频输入。
  • -m 参数为模型文件下的 xml 文件。
  • -d 参数为使用执行的设备,这里使用 CPU 来执行。

5.结语

  • 由于本人也是刚学习 OpenVINO ,如果其中有不对的地方或是需要改进的地方,请指正。
  • 联系方式 email:lwl510ll@163.com
  • 本文到这就结束了。

这篇关于OpenVINO 学习笔记(3):执行 OpenVINO Demos的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1036863

相关文章

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

java中ssh2执行多条命令的四种方法

《java中ssh2执行多条命令的四种方法》本文主要介绍了java中ssh2执行多条命令的四种方法,包括分号分隔、管道分隔、EOF块、脚本调用,可确保环境配置生效,提升操作效率,具有一定的参考价值,感... 目录1 使用分号隔开2 使用管道符号隔开3 使用写EOF的方式4 使用脚本的方式大家平时有没有遇到自

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

python 线程池顺序执行的方法实现

《python线程池顺序执行的方法实现》在Python中,线程池默认是并发执行任务的,但若需要实现任务的顺序执行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录方案一:强制单线程(伪顺序执行)方案二:按提交顺序获取结果方案三:任务间依赖控制方案四:队列顺序消

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作