当前位置:   article > 正文

Windows 手动搭建openVINO(2020.03)工程,以human_pose_Demo从总工程抽出来_inference engine legacyd.dll

inference engine legacyd.dll

1 openVINO下有个demos,里面是一个总工程,如果对单个demo研究势必要从总工程拿出来,否则不好调试。这里以human_pose_estimation_demo为例,看看如何从零开始搭建openVINO工程
2 重要的位置已经加粗,红色字体或注意两字,请悉知
3 之前我已经分析全局环境变量的问题,如果下面任旧出错,可以考虑是否有响应的环境变量
Windows10 安装OpenVINO(2020.3)深度解析(下)
https://blog.csdn.net/weixin_39956356/article/details/106937210
4 还有其他的openVINO文章,可以在我的博客找找。

1 windwos环境

  1. w_openvino_toolkit_p_2020.3.194.exe(最新版,截至2020.07.02)
  2. vs2019
  3. CMake3.16
  4. Python(Anaconda-Python 3.7.6)(安装的时候要用,可以直接使用C++编程)

2 关于工程目录结构

整个工程搭建,可分为四个步骤:拷贝必要文件修改include路径修改lib路径添加dll路径及参数项。

2.1 必要解释说明

首先,用vs建一个空白的项目,比如工程叫做human_pose_Demo。比如这里我选择E:\study\human_pose_Demo,为了方便描述,这里以xxx.sln为描述起点,方便知道下面拷贝目标文件的位置。
这里额外强调两个目录:
1. E:\study\human_pose_Demo\human_pose_Demo这是include的起始位置,也就是除系统include外,三方外部库include以这个位置为起点。不防简记1目录
2. E:\study\human_pose_Demo\x64\Debug这是执行目录,里面是exe,也就是xxx.sln同级目录下编译链接会生成x64文件夹,这里配置的x64-Debug,以此类推。
在这里插入图片描述

2.2 拷贝必要文件

源码路径
C:\Program Files (x86)\IntelSWTools\openvino_2020.3.194\deployment_tools\open_model_zoo\demos
解释:common文件夹和thirdparty下的gflag会被编译成静态库, 比如gflags_nothreads_static.lib
将common文件夹拷贝到xxx.sln同级目录在xxx.sln新建thirdparty\gflags文件夹

  1. common文件夹下有CMakeLists.txt文件,可以全部删除,因为这些文件已经没用了(注意:CMakeLists.txt是逐层都有(你用过就应该知道),全部删除)。当然,可以不删除,仅仅是节约一些空间,仅此而已。
  2. thirdparty\gflags里面有include和lib,到时候编译好了再拷贝过来,下面是完成好的结果图。
    在这里插入图片描述

进入1目录,拷贝human_pose_Demo的源码。从源码路径下的human_pose_estimation_demo拷贝include文件夹src文件夹main.cpp1目录
至此,文件拷贝完成。

2.3 第一次编译原始Demos

编译生成上面提到的静态库,再拷贝到工程thirdparty\gflags下。
建议,不要使用build_demos_msvc.bat,默认在C:\Users\wzk\Documents\Intel\OpenVINO\omz_demos_build下,这个需要管理员权限,仅此而已。
用cmake-gui工具可以方便执行目标目录。
  • 1
  • 2
  • 3

图 打开项目地址,输出文件地址也自己存一个,点击Configure
在这里插入图片描述
图 点击Generate,进入你存放的工程的位置
在这里插入图片描述
打开工程编译,下面两种方式。
图 方式一
在这里插入图片描述
图 方式二
在这里插入图片描述
这里不需要全部编译,编译common和gflags_nothreads_static即可。
方法:右键一个一个生成即可
在这里插入图片描述
注意:务必选择Debug和x64,如果你选者其他的(release,win32),生成的也是对应的,其他平台无法调用。
在这里插入图片描述
注意:release不能调试,发布的时候才会用。最新的openVINO是不支持32位机的!!!

拷贝include

E:\study\openvino\thirdparty\gflags下的include文件夹拷贝到thirdparty\gflags\
拷贝lib
生成路径E:\study\openvino\intel64\Debug,Debug下每个文件都有两个,*pdb是调试版本才会生成。将这些文件全部拷贝到thirdparty\gflags\lib下。如下图,一共有6个文件。
在这里插入图片描述

2.4 修改include路径

首先添加工程源文件include。是1目录下的。
在这里插入图片描述
添加如下附属包含目录,务必,否则无法编译通过。下面是绝对路径路径,最后提供一个相对路径的版本。

# 属性页->C/C++->附属包含目录
# Attention: 不添加编译不会通过
# Explanation: 
#	第一个 opencv的include; 第二个 推理引擎(inference_engine)的include; 		这两个是openVINO安装目录的基本模块
#	第三个 拷贝过来的gflags的include; 
#	第四和五个 拷贝过的来common文件夹和common下的monitors;
#	第六个工程目录下(human_pose_Demo)的include
C:\Program Files (x86)\IntelSWTools\openvino\opencv\include
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\include
E:\study\human_pose_Demo\thirdparty\gflags\include
E:\study\human_pose_Demo\common
E:\study\human_pose_Demo\common\monitors
E:\study\human_pose_Demo\human_pose_Demo\include
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

设置是相对的
在这里插入图片描述

2.5修改lib路径

首先添加工程源文件源文件。是1目录下的。

在这里插入图片描述
添加如下附属附属依赖项,务必,否则无法链接通过。下面是绝对路径,最后提供一个相对路径的版本。

# 属性页->链接器->插入->附属依赖项
# Attention: 不添加链接不会通过
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\opencv_highgui430d.lib
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\opencv_imgproc430d.lib
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\opencv_core430d.lib
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\opencv_imgcodecs430d.lib
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\opencv_videoio430d.lib
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\lib\intel64\Debug\inference_engined.lib
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\lib\intel64\Debug\inference_engine_legacyd.lib
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\lib\intel64\Debug\inference_engine_c_apid.lib
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\lib\intel64\Debug\inference_engine_nn_builderd.lib
E:\study\human_pose_Demo\thirdparty\gflags\lib\Debug\gflags_nothreads_static.lib
E:\study\human_pose_Demo\thirdparty\gflags\lib\Debug\monitors.lib
shlwapi.lib
pdh.lib
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

设置是相对的
在这里插入图片描述
注意shlwapi.lib必须加上,不然链接失败。这是编译gflag常用的错误问题,感兴趣可以百度下。

2.6添加dll路径及参数项

添加tbb_debug.dll的路径,不然执行失败。
path是追加,path=%path%;必须加上

# 配置属性->调试->环境
path=%path%;C:\Program Files (x86)\IntelSWTools\openvino_2020.3.194\deployment_tools\inference_engine\external\tbb\bin
  • 1
  • 2

添加参数选项,运行的时候需要外部参数

# 配置属性->调试->命令参数
-i C:\Users\wzk\Documents\Intel\OpenVINO\sample-videos\classroom.mp4 -m C:\Users\wzk\intel\human-pose-estimation-0001\FP16\human-pose-estimation-0001.xml -d CPU
  • 1
  • 2

设置是相对的
在这里插入图片描述
model下载使用,请参考
OpenVINO编译human_pose_estimation_demo
https://blog.csdn.net/weixin_39956356/article/details/106941594

3 附录-相对路径版本

########################### 方式二 ##############################
# 属性页->C/C++->附属包含目录
C:\Program Files (x86)\IntelSWTools\openvino\opencv\include
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\include
..\thirdparty\gflags\include
..\common
..\common\monitors
include

配置属性->VC++目录->库目录
C:\Program Files (x86)\IntelSWTools\openvino\opencv\lib\
C:\Program Files (x86)\IntelSWTools\openvino\deployment_tools\inference_engine\lib\intel64\Debug
# 属性页->链接器->插入->附属依赖项
opencv_highgui430d.lib
opencv_imgproc430d.lib
opencv_core430d.lib
opencv_imgcodecs430d.lib
opencv_videoio430d.lib
inference_engined.lib
inference_engine_legacyd.lib
inference_engine_c_apid.lib
inference_engine_nn_builderd.lib
..\thirdparty\gflags\lib\Debug\gflags_nothreads_static.lib
..\thirdparty\gflags\lib\Debug\monitors.lib
shlwapi.lib
pdh.lib
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

设置是相对的
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/161482
推荐阅读
相关标签
  

闽ICP备14008679号