【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版

一、前言

书接上回,我想用Atlas 200 DK开发者套件来跑这次的MindStudio训练营,很明显一个最大的问题就是环境,官方镜像是全部已经配置好了的环境,而我现在这只有CANN,除了CANN一无所有。

二、环境配置

1、安装mxVision

从官网下载mxVision安装包,200DK是aarch架构,下载aarch64版本,然后推到200DK上:

mxVision 社区版-昇腾社区 (hiascend.com)

给安装包执行权限:

chmod u+x Ascend-mindxsdk-mxvision_3.0.RC3_linux-aarch64.run

安装:

./Ascend-mindxsdk-mxvision_3.0.RC3_linux-aarch64.run --install

安装完毕后配置环境变量:

vim ~/.bashrc
# 在打开的文件中加入下面的语句
source /home/HwHiAiUser/mxVision/set_env.sh
# 保存退出
source ~/.bashrc

2、配置MindStudio

在MindStudio上配置远端CANN和mxVision:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第1张图片
【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第2张图片

依旧没有Configurations,重新配置为200DK上的Python3.7.5:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第3张图片

发现直接报错,没有mxVision的那些包:
在这里插入图片描述

可能是环境变量没设置好的问题,我按照这个项目的README重新配置的环境变量:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第4张图片

重新运行main.py,很遗憾,依旧报错:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第5张图片

咨询了交流群里的大佬才知道,mxVision需要Python3.9,而本机的环境是Python3.7.5,于是我开始安装Python3.9。

3、安装Python3.9

# 下载
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz

# 解压
tar -zxvf Python-3.9.2.tgz

# 编译安装
cd Python-3.9.2
./configure --prefix=/usr/local/python3.9.2 --enable-loadable-sqlite-extensions --enable-shared 
make 
make install

# 设置环境变量
vim ~/.bashrc
# 在打开的文件中加入下面的语句

#用于设置python3.9.2库文件路径
export LD_LIBRARY_PATH=/usr/local/python3.9.2/lib:$LD_LIBRARY_PATH 
#如果用户环境存在多个python3版本,则指定使用python3.9.2版本
export PATH=/usr/local/python3.9.2/bin:$PATH

# 保存退出
source ~/.bashrc

我们在终端使用python3 --version命令查看Python3版本,出现3.9.2,配置成功。

我们卸载mxVison,然后重新安装:

./Ascend-mindxsdk-mxvision_3.0.RC3_linux-aarch64.run --uninstall
./Ascend-mindxsdk-mxvision_3.0.RC3_linux-aarch64.run --install

重新运行main.py,还是报错emmmmmmm,缺少opencv。

这里安装opencv也是很曲折,因为存在多个Python,不指定3.9的话就安装在默认的3.7那去了,折腾了很久才了解到用下面这个命令安装。

python3.9 -m pip install opencv-python

重新运行main.py,依旧报错,又是”google“包:

在这里插入图片描述

4、修CANN

我检查了所有的环境变量、CANN版本和mxVision版本是否配套,重新安装mvVision,等等等等,一番波折之后,交流群里的大佬一语惊醒梦中人——切换了Python版本CANN可能会缺依赖,于是我马上去查CANN的文档,在看看pip3 list,好家伙,Python确实缺了很多包,按照下图一一安装:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第6张图片

三、样例速跑

经过前面曲折艰难的配置环境,代码终于能够跑起来了,这里也遇到了我用官方镜像跑时一模一样的问题:
【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第7张图片

解决方法是将model文件中的os文件推到200DK上mxVision-3.0.RC3/lib/plugins文件夹下,并给它440权限:

chmod 440 libyolov3postprocess.so

然后又会报错说找不到这个文件,群里老师说”这个是MindX SDK的问题,在实际的处理过程中,MindX SDK(可能)自动从环境变量进行了一次路径拼接,并没有判断这个地方我们填的是不是绝对路径,导致会找不到。“

既然这样,我们直接将绝对路径改成文件名:

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第8张图片

再次运行main.py,这次终于,终于跑通了,折磨了我好几天,结果与ECS上跑的结果一致。
在这里插入图片描述

【MindStudio训练营第一季】MindX SDK情绪识别样例速跑 Atlas 200 DK版_第9张图片

你可能感兴趣的:(python,开发语言)