【Openvino02】openvino2022.1加速卡Movidius Myriad测试以及问题解决

news2024/11/15 9:06:36

接上一篇,上一篇我们已经把环境什么的都安装好了,本篇主要做一下各种模型测试,模型下载验证等;背景这里就不多说了,上篇已经介绍过了。

一、安装开发验证环境

1.安装所需包

这里建议用清华和豆瓣的镜像相互替换,因为这两个都有资源不全的情况,个别有特殊需求的包我会单独贴出来。

1.1  安装基础包

python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
pip install  -i https://pypi.tuna.tsinghua.edu.cn/simple   IPython
python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple launchpadlib
pip install -i https://pypi.douban.com/simple keras-nightly==2.5.0.dev2021032900

launchpadlib 1.10.13 requires testresources, which is not installed.

上面的这几个包,建议留意一下包和版本,免得安装的时候不停报错

1.2 安装 openvino-dev

这一步会很慢很慢,慢慢等着吧,建议换成豆瓣的镜像,清华镜像大概 400-500kb/s,豆瓣能达到3M/s左右,比较节省时间,但是有些包豆瓣又不全,出什么错对应的下包在重新执行即可:

python3 -m pip install -i https://pypi.douban.com/simple   openvino-dev==2022.1.0
# 二选一,建议上面的
python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple   openvino-dev==2022.1.0

1.3 注意点

这里你可能会遇到这样的错误,如果没遇到自动忽略,遇到了按照我的方法改一下即可:

正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|::|:443... 失败:拒绝连接

raw.githubusercontent.com (raw.githubusercontent.com)|::|:443... 失败:拒绝连接

修改方法:

vim /etc/hosts

编辑hosts ,添加以下内容 

# GitHub Start
52.74.223.119 github.com
192.30.253.119 gist.github.com
54.169.195.247 api.github.com
185.199.111.153 assets-cdn.github.com
151.101.76.133 raw.githubusercontent.com
151.101.108.133 user-images.githubusercontent.com
151.101.76.133 gist.githubusercontent.com
151.101.76.133 cloud.githubusercontent.com
151.101.76.133 camo.githubusercontent.com
151.101.76.133 avatars0.githubusercontent.com
151.101.76.133 avatars1.githubusercontent.com
151.101.76.133 avatars2.githubusercontent.com
151.101.76.133 avatars3.githubusercontent.com
151.101.76.133 avatars4.githubusercontent.com
151.101.76.133 avatars5.githubusercontent.com
151.101.76.133 avatars6.githubusercontent.com
151.101.76.133 avatars7.githubusercontent.com
151.101.76.133 avatars8.githubusercontent.com
# GitHub End

1.4 组件安装

python3 -m pip install -i https://pypi.douban.com/simple openvino-dev[caffe,onnx,tensorflow2,pytorch,mxnet]==2022.1.0

这步是基于上面的那个安装的,也可以直接执行,考虑到时间问题以及成功的概率性,一步一步来还是靠谱一点,而且都没有多余的步骤,不会让你白白执行的。

2.下载和编译模型

这里我以openvino自带的分类模型为例,供大家参考,后面我会贴出这个模型具体怎么使用。

官方地址:Hello Classification Python* Sample — OpenVINO™ documentation

2.1 下载预训练模型:

omz_downloader  --name alexnet

2.2 模型转换

如果模型不是 IR 或 ONNX 格式,则必须对其进行转换。您可以使用模型转换器执行此操作:

omz_converter --name alexnet

完成后效果如下目录结构:

 

 二、加速卡以及模型验证

 当我们把以上步骤做完成后就可以验证加速卡 Movidius Myriad 是否存在,以及验证卡的加速能力。

1.加速卡devices信息查询

1.1 benchmark_app -h

查不到卡的信息

 可以查到卡的信息,正确情况

 1.2 lsusb

 2.Demo模型测试

测试的是上面说的那个模型  hello_classification 分类模型,测试方法:

2.1 先验证CPU模式下是否可以正常执行

cd /opt/intel/openvino_2022/samples/python/hello_classification

python3 hello_classification.py   /opt/public/alexnet/FP16/alexnet.xml  banana.jpg  CPU

这里面的目录需要根据自己的目录进行调整,我这里写的是我安装的位置

测试结果

 

 2.2 验证MYRIAD模式下是否可以正常执行

如果可以运行出于与CPU的结果相同代表功能OK

python3 hello_classification.py   /opt/public/alexnet/FP16/alexnet.xml  banana.jpg  MYRIAD

测试结束!

附 当有问题不成功的情况:

 此脚本可测出模型的具体运行信息:

benchmark_app -m     /opt/public/alexnet/FP16/alexnet.xml  -d  MYRIAD 

 3.模型加载流程

刚才一直在说模型是如何验证是否成功的,再说一下模型的加载顺序:

加速卡推理流程:
1.分析和验证输入参数
2.加载OpenVINO环境
3.设置设备配置
4.读取网络文件,读取模型
5.调整网络大小以匹配图像大小和给定批次
6.配置模型的输入
7.将模型加载到设备
8.查询最优运行时参数
9.创建推断请求并准备输入数据
10.进行推理输出

 三、问题解决

上面一直在说模型是如何验证成功失败的,现在说一下都会遇到什么样的问题,当遇到问题如何解决

1.RuntimeError: Device with "MYRIAD" name is not registered in the InferenceEngine

 这种情况请检查卡是否插好了

2.MYRIAD device is not opened

RuntimeError: Failed to allocate graph: MYRIAD device is not opened_鸡血山上的小太阳的博客-CSDN博客

可参考这个,虽然我的问题不是靠这个解决的,但是提供一种思路,参考一下

3.NC_ERROR

Intel movidius 神经元计算棒2代 ubuntu16.04运行环境搭建教程_璎珞qc的博客-CSDN博客

Windows 10 [ ERROR ] Can not init Myriad device: NC_ERROR Error_ʚVVcatɞ的博客-CSDN博客

这种错误给几个思路,参考一下:

这个问题可通过这个命令去排查问题:

benchmark_app -m     /opt/public/alexnet/FP16/alexnet.xml  -d  MYRIAD 

a.卡是否损坏

b.电流是否过大,导致卡不能正常写入

c.传入数据是否过大,导入卡不能正常IO

d.连接线是否有问题,导致不能正常IO

以上是我目前遇到的问题,还有一些我再汇总一下:

问题参考:

 盘点在使用openvino过程中遇到的一些问题,如何解决的-第3篇

使用Movidius神经棒过程的问题记录和探索_chutongz的博客-CSDN博客

https://blog.csdn.net/qq_44989881/article/details/119299155

4.python numpy 错误:AttributeError: module ‘numpy‘ has no attribute ‘bool‘

跑代码(pyCUDA,pyTensorRT相关)的时候numpy报错
"AttributeError: module 'numpy' has no attribute 'bool'"

pip install  -i https://pypi.tuna.tsinghua.edu.cn/simple   numpy==1.23.1

python numpy 错误:AttributeError: module ‘numpy‘ has no attribute ‘bool‘_冬日and暖阳的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/684274.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

4K 免费的图片素材去哪里找?这6个网站告诉你答案。

推荐几个免费高清图片素材库,今后再也不用为找图片而发愁了,建议收藏起来~ 菜鸟图库 https://www.sucai999.com/pic.html#?vNTYxMjky ​ 网站主要是为新手设计师提供免费素材的,素材的质量都很高,类别也很多,像平面…

C++primer(第五版)第一章(开始)

面对八百多页的C圣经《Cprimer》我陷入了沉思。最近终于下定决心把它啃下来,现在打算记录每章的关键点,一是为了巩固知识,二是以后要复习什么的也不用再碰那本砖头。 1.1编写一个简单的C程序 书中给了几行代码: int main() {return 0; } …

Crypto__1

编码 莫斯密码 Base编码 常见的Base64 Base32 Base16 Base64 将通过ASCLL码改成二进制数 因为64是2的6次方 所以将原文转换的二进制数分别取六位,不足的补0 每次取出6bit,按照其值选择 ABBCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123…

大模型部署实战(四)——ChatGLM2-6B

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

Linux内核开发有用的工具网站

Linux内核官方相关 Linux内核主线源码 https://github.com/torvalds/linux 最新内核说明文档 https://docs.kernel.org/index.html Linux内核模块相关 内核配置与驱动查询 https://www.kernelconfig.io/index.html 内核模块编程指南 https://sysprog21.github.io/l…

mybatis模拟04

create SqlSession Class package com.wsd.core;/*** description: 执行sql* author: Mr.Wang* create: 2023-06-24 16:55**/ public class SqlSession { }SqlSessionFactory 中创建 openSqlSession method to get a sql session instance /*** description Get sql session in…

中国人民大学与加拿大女王大学金融硕士——在职读研让能力加速提升

不管你是初入职场的小白,还是久经沙场的元老,想要在职场有所作为,就不要忽略自我能力提升。决定一个人当前职场价值不是他拥有了什么,而是他将来能够创造什么。如果你只盯着工作,那么你的眼界和薪资将会被工作所决定&a…

LeetCode动态规划(一)之动规思想概述基础题目

文章目录 动态规划开撸——基础题目1. lc509 斐波那契数2. lc746 使用最小花费爬楼梯3. lc63 不同路径II4. lc343 整数拆分 动态规划 记住动归5部曲: 1.确定dp数组(dp table)以及下标的含义 2.确定递推公式 3.dp数组如何初始化 4.确定遍历…

MySQL——变量与游标

今天我们来一起学习MySQL中的变量(系统变量与用户变量),以及什么是游标,游标如何使用? 1. 变量 在 MySQL 数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间结果数据,或者输出最终…

2、动手学深度学习——线性神经网络:softmax回归的实现(从零实现+内置函数实现)

1、softmax回归 为了估计所有可能类别的条件概率,我们需要一个有多个输出的模型,每个类别对应一个输出。 为了解决线性模型的分类问题,我们需要和输出一样多的仿射函数(affine function)。 每个输出对应于它自己的仿射…

css基础知识八:如何实现两栏布局,右侧自适应?三栏布局中间自适应呢?

一、背景 在日常布局中,无论是两栏布局还是三栏布局,使用的频率都非常高 两栏布局 两栏布局实现效果就是将页面分割成左右宽度不等的两列,宽度较小的列设置为固定宽度,剩余宽度由另一列撑满, 比如 Ant Design 文档…

计算机网络 期末复习大总结 + 例题【全部复习】

计算机网络 期末复习大总结 例题 第 1 章 概 述TCP/IP 和 ARPANET端系统的通信方式互联网的核心部分 - 分组转发电路交换分组交换报文交换计算机网络的 性能指标 第二章 物理层信号 和 码元信道基带信号 和 调制常用的编码方式奈氏准则信噪比香农公式信道复用 第三章 数 据 链…

三阶魔方公式

1. 术语:上、下,左、右、前、后 2. 魔方实物图 上:黄色 下:白色 左:蓝色 右:绿色 前:红色 后:橙色 3. 转法 上加:上面顺时针转90 上减:下面逆时针转90 上2&…

Django项目之mysql数据库连接和表的创建

数据库连接 首先,确保我们已经生成了一个基本的Django项目文件,目录结构如下: 具体搭建流程参考链接:https://blog.csdn.net/David_house/article/details/131188889?spm1001.2014.3001.5502找到项目下的settings文件&#xff…

人工智能系统的业务架构

一、人工智能系统的业务架构:三大能力 二大业务方向 三大业务能力:交互能力、思考能力、服务能力两大应用方向:智能语音、机器视觉 ​ 首先在智能语音方面,人工智能三大业务能力对应的应用层面输出在交互能力里包括语音采集、语…

积分图估计法线方法

两种法线估计方法的比较 pcl::NormalEstimation和pcl::IntegralImageNormalEstimation是两种常见的法线估计方法,它们的区别主要在于计算法线的方式和适用场景。 pcl::NormalEstimation: 计算方式:基于K近邻搜索的方法,通过寻找点…

【后端面经-Java】HashMap详解

【后端面经-Java】HashMap详解 1. HashMap的家族定位2. HashMap的数据结构2.1 Hash表的基本概念2.2 Hash冲突2.3 HashMap数据结构 3. HashMap的重要变量3.1 常量3.2 变量3.3 辨析size、capacity、threshold 4. HashMap重要方法和源码解析4.1 构造方法4.2 resize方法4.3 hash方法…

机器学习之基于LDA的人脸识别

目录 LDA降维 思想 matlab代码 fisherface 思想 matlab代码 人脸识别 思想 matlab代码 LDA降维 思想 首先,代码通过使用dir函数获取指定路径下所有以".bmp"结尾的文件,并存储在变量pictures中。 然后,定义了一些参数&a…

SSMP整合案例(6) 业务service层逻辑编写

之前呢 我们就还是将数据层的结构搭好了 那么 接下来就是业务层 可能有些开发人员会存在一定的误区 将业务层和数据层的函数命名混为一谈 例如 我们有个 users 表 那么 我们要做一个登录功能 那么 业务层的接口毋庸置疑叫 login 接收两个参数 userName userPassword 然后 数据…

FAQ常见问题如何从本地转为全线上版?

随着互联网的发展,越来越多的企业开始将常见问题FAQ从本地转移到全线上版,以提高用户体验和减少企业成本。本文将从以下几个方面进行阐述,如何将FAQ从本地转为全线上版。 一、整理FAQ 首先,企业需要对已有的FAQ进行整理&#xf…