“独立”OpenVINO R2019_2 版本中的“super_resolution_demo”例子的,解决由于 R2019_1到R2019_2 升级造成的问题

OpenVINO提供了丰富的例子,为了方便研究和使用,我们需要将这些例子由原始的demo目录中分离出来,也就是“独立”运行,这里我们选择了较为简单的super_resolution_demo来说明问题并标注重点;另一方面,由于OpenVINO升级比较快,在一些细节的也有较多修改,由于版本升级带来的问题需要注意,这里也进行了适当梳理。

本篇博客的前提是“windows平台,并且已经成功在vs2017跑通OpenVINO的例子”。如果这个条件不符合可以参考官方文档和其他资料。

一、“独立”OpenVINO R2019_2 版本中的“super_resolution_demo”例子的

官方例子的名称为:super_resolution_demo

我们创建的例子名称为:GOVINO_REBUILD
1、创建console程序 GOVINO_REBUILD

需要注意,下面的操作都是64位的,首先我们做的是Debug模式

2、观察原例子中的头文件,打开 "常规"->"附加包含目录",这些都是我们需要的(并且已经在机器中正确部署)

其中,gflags和formatreader这个2个库要特别去掉,因为我们去除了gflags的繁琐判断

成功后应该是这样

3、打开原例子中 "链接器"->"输入"->"附加依赖项“,这些都是我们需要的(并且已经在机器中正确部署)

其中,关于format_reader和gflags的依然是可以去掉,特别要注意cpu_extension.lib的位置要指定正确。

上图是修改后的样子,需要注意的是这里的配置是可以直接拷贝的。

4、项目 =》属性 =》c/c++  =》预处理器=》点击预处理器定义,编辑,加入_CRT_SECURE_NO_WARNINGS

5、将原目录(而不是生成的目录)下的main.cpp和super_resolution_demo.h拷贝到新项目中去(这步也可以不做而直接转第6步)

并且添加到现有项中去

这个时候,可以尝试来运行了,肯定会报错的

将gflags和format_reader_ptr相关的东西去掉。

而后你还需要界面很多参数调整的问题,最后将整个结果运行成功。

6、或者你可以直接来使用GOVINO.cpp,这是经过我简化的“super_resolution_demo”

直接引入GOVINO.cpp(可以将main.cpp和super_resolution_demo.h删除)

根据提示,添加

7、最后开始运行

如果报这个错误,我们应该知道如何解决

解决方法有两种,或者是将这里的包含cpu_extension.dll的目录包含到Path中去,

或者是找到正确的,拷贝到一起,注意我们是将全部dll都拷贝过来的

这个时候,已经开始可以进入调试。但是你仍然可能会遇到一些问题,参考第2部分。

二、解决由于 R2019_1到R2019_2 升级造成的问题

1、首先明确一下目前发现的R2019_1和R2019_2两个版本在语法方面的不同,发现两处

一个是在R2019_1中在调入plugin的地方(天龙8步第1步)被改写为Core ie;

二个是R2019_2的第4步,ie.LoadNetwork中,

ie.LoadNetwork(network, "CPU");

需要将”CPU"写清楚,这个在R2019_1中是可以省略的。

2、容易问题的地方和解决提示

出现问题的原因大多是因为系统中安装了多个版本的OpenVINO,DLL文件混乱,比如出现下图这种错误

这里是一些提示

1、程序的目录不要放在有空格和中文的地方

虽然OpenVINO中没有明确说明这个问题,但是这的确是非常容易出现问题的地方:

比如下图中,我通过Depends进行比较,就发现了一些问题

2、使用工具、系统思考分析问题原因

比如这里出现的问题,程序是可以生成的,但是在Core ie 生成的时候错误,那么我就要去找,Core是什么东西,它来自于inferencePlugin,那么肯定就是cpu_extension.dll 或者 inference_engined.dll 这些库的问题;在使用Depends进行寻找,进一步分析问题。

这篇博客中肯定还有很多分析不到位的地方,欢迎留言交流!

感谢阅读至此,希望有所帮助!

来自为知笔记(Wiz)

原文地址:https://www.cnblogs.com/jsxyhelu/p/11526313.html

时间: 2024-11-10 01:05:23

“独立”OpenVINO R2019_2 版本中的“super_resolution_demo”例子的,解决由于 R2019_1到R2019_2 升级造成的问题的相关文章

GCC版本中没有GLIBCXX_3.4.15解决

run: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15"" not found 解决错误 呈现该错误的原因是当前的GCC版本中,没有GLIBCXX_3.4.15,须要安装更高版本. 我们可以输入:strings /usr/lib/libstdc++.so.6 | grep GLIBCXX,查看当前的GCC版本,成果如下: GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLI

MySQL5.5.38和MySQL5.7版本中忘记root密码,解决办法

1.在centos6.5中安装mysql5.5.38版本,忘记密码如何解决? (1).先关闭mysqld服务 service  mysqld  stop (2).使用mysqld_safe安全模式启动mysql,使用两个参数: --skip-grant-tables:跳过授权表 --skip-networking: 跳过网络,防止其他用户对数据库进行读写操作,待密码恢复后可正常开启 执行命令: mysqld_safe  --skip-grant-tables  --skip-networking

在OpenCV2.2后的版本中没有CvvImage类的解决方法(及出现错误:IntelliSense: 未定义标识符 "CvvImage" )

首先在你的解决方案资源管理器中的头文件和源文件下分别添加 CvvImage.cpp 如下图: view类头上加个#include "CvvImage.h"  头文件,应该就可以解决了. 下面是源代码: CvvImage.h.h CvvIm class  CvvImage { public:  CvvImage();  virtual ~CvvImage(); virtual bool  Create( int width, int height, int bits_per_pixel,

idea中,发现某个java语法在低版本中不支持时的解决办法

比如,在某个工程中,准备用java.util.Objects#equals语法,发现提示版本不支持. F4查看Module的配置,发现原来是1.6版本. 当我手动修改为1.8时,提示我:Module是在maven配置的java版本. 于是,去pom文件中,发现是spring boot的默认starter是java 1.6 . <parent> <groupId>org.springframework.boot</groupId> <artifactId>sp

NineOldAndroids在level 11以下的版本中实现view动画

NineOldAndroids项目: http://nineoldandroids.com/ 在level 11以上的系统版本中,可以用以下方法实现view平移.透明度 text1.setTranslationX(-600 * arg1); text1.setAlpha(1 - Math.abs(arg1)); text2.setTranslationX(-200 * arg1); text2.setAlpha(1 - Math.abs(arg1)); text3.setTranslationX

[译] OpenStack Kilo 版本中 Neutron 的新变化

OpenStack Kilo 版本,OpenStack 这个开源项目的第11个版本,已经于2015年4月正式发布了.现在是个合适的时间来看看这个版本中Neutron到底发生了哪些变化了,以及引入了哪些新的关键功能. 1. 扩展 Neutron 开发社区 (Scaling the Neutron development community) 为了更好地扩展 Neutron 开发社区的规模,我们在Kilo开发周期中主要做了两项工作:解耦核心插件以及分离高级服务.这些变化不会直接影响 OpenStac

将android中的sample例子到eclipse中

SDK中带有很多的例子,那么我们怎么样导入到eclipse中呢?方法很简单,如下: 1. 新建android工程,选择Create project from existing sample, 2. 选择sdk的version,click Next. 3. 这时你会看到很多samples, 从下拉列表中选择你要导入的例子,finish. 注意:前提是你已经下载了samples,并且选择的是对应的sdk版本. 将android中的sample例子到eclipse中,布布扣,bubuko.com

低版本中使用高版本出现的类怎么办?

原理概述 简单来说就是三个字——黑魔法. 利用这种黑魔法的例子已经越来越多,我所知道的最早使用这种方法的是一个老外在三年为了解决NSUUID而使用的. 我们国内团队开发的FDStackView是一个非常好的开源库,已经有1500+颗星星了,希望大家多多支持我们国内的团队,在FDStackView库中也用到了相同的技术,网上有人发出了分析实现原理的文章,但分析的很浅,而且根本没有说在点子上,使得这种黑魔法的魅力并没有被大家欣赏到,我这里做了一些功课,把这个原理详细的阐述一下,以及这里的关键点在哪里

(二)Hadoop例子——运行example中的wordCount例子

Hadoop例子——运行example中的wordCount例子 一.   需求说明 单词计数是最简单也是最能体现MapReduce思想的程序之一,可以称为 MapReduce版"Hello World",该程序的完整代码可以在Hadoop安装包的"src/examples"目录下找到.单词计数主要完成功能是:统计一系列文本文件中每个 单词出现的次数,如下图所示. 二.   环境 VMware® Workstation 10.04 Ubuntu14.04 32位 J