Atlas 200 DK开发者套件基于CANN的垃圾分类实验踩坑指南

简介: Atlas 200 DK开发者套件基于CANN的垃圾分类实验踩坑指南

前言

最近在做机器学习的作业,项目的目的是要用华为给的板子和课程完成一个类似于垃圾分类的图片分类的功能,但是,因为华为的开发版本的变化,导致我按照教程跑垃圾分类都跑不起来,wrong声一片,花了博主一天的时间去调整改变,这篇文章带大家避坑,希望大家都能完成好项目。另外 @华为云开发者社区,希望我这篇文章对你们的教程改进有一点点帮助。


文章目录用于速查哪里出了问题对照

前言

开发环境的搭建

Sdcard的制作

连接Atlas 200 DK开发者板

使用win系统下虚拟机进行连接开发板

转换模型

开发板运行

联网

pip安装

python3模块的安装

atlas_utils安装

后记

开发环境的搭建

相关的网址在这里:Atlas200DK分设环境搭建指南

我刚开始尝试使用原生的方式进行安装,结果折腾半天依赖过于麻烦,所以还是建议大家使用docker极简版安装。Atlas 200 DK开发者套件环境部署(1.0.9.alpha)极简版

其实按照教程直接往下走就好了,写的蛮好的,但是我遇到的点给大家记录一下:

一定要切换成Ascend用户进行下载运行操作,因为Ascend里面集成了环境变量,运行命令的时候不会发生错误。


其实上面的做完开发环境的搭建就算是完成了。接下来才是麻烦的开始。。。。。

Sdcard的制作

手边有个树莓派非常感谢胖哥送我的这玩意,所以手边有读卡器,但是那个博客给了一个4G的百度网盘,,,,我不是会员,我下不动,,,所以我自己做好吧。。。

读卡器场景

其实这个部分官网都是有教程的。所以还算是比较方便的,按照上面的教程下载三个文件进行运行安装就好了。

我现在这个文档推荐的是1.0.9.alpha,我就直接使用了它的最新版的5.0.2.alpha002。其实docker里面带的是3.3.0,但是没啥影响我就没改

直接按照教程运行下载就好了。其实这里也没啥坑。这里如果你不是像我一样用的USB网卡的话建议改下LAN口的IP防止冲突。不然后面连不上后悔死。。。。


连接Atlas 200 DK开发者板

上面的SDcard制作好了之后就插入开发板,然后上电。华为介绍了各种指示灯。我的建议就是有四个灯 你等到他们全都亮了就是启动完成了。其他情况别瞎动,如果刷写固件的时候断电直接GG。。。


使用win系统下虚拟机进行连接开发板

因为我是使用的虚拟机,所以其他场景我也不知道咋弄,只提供虚拟机的连接方式。插上usb线(华为这个usb是个网卡,额,秀到我了,我还以为是个ttl)

如何安装windows的USB网卡驱动

按照上面的教程进行硬件的安装。然后官网教程就没了。。。。厉害厉害 我来补。。。

教程结束你win会拥有一个网卡像下图一样:

然后按照下面的进入网络适配器的设置:



可能去控制面板进到这里更快??不清楚 你们试试

官网给到的是需要修改本地的地址和板子保持同一个网段,我们这里找到适配器之后双击属性,找到IPV4改成下面这样:

测试一下能不能连上:直接打开终端输入ssh HwHiAiUser@192.168.1.2

输入密码Mind@123能连上就说明一切正常。

我改IP了别学我。。。

然后到了这一步其实你的虚拟机和win网络是共享的,这就意味着你可以在虚拟机甚至虚拟机里的docker直接ssh访问,事实证明只要有ssh就行了,甚至没有也行,,反正都是scp传文件,用win传也不是不行。。。不过不重要,这样就算连上了完成了!!


转换模型

上面的都完成了,按照教程,我们需要进行atc转换模型,可以看这个

实验二:基于CANN的垃圾分类实验,但是,这个地方清清楚楚的写着再开发板上运行

我做了 一运行

嗯,板子上没这个,整挺好,但是因为版本问题,我百度了很久告诉我这个是和toolkit在一起的,我很庆幸自己没一开始就用docker想到这是开发linux上安装的。

所以这个命令是在linux开发机(说白了就是我们自己的电脑)上运行的,记住我上面说的要用Ascend用户,不然没有环境变量还是运行不了。转换模型之后再全部搬迁到开发板上!


开发板运行

教程给的这里很简单就是

python3.6 src/classify_test.py ./data/

我敲了。然后numpy没有,,,那我装不行嘛。哦 ,没网。。。。


联网

网上插上,然后按照这个使用网线通过路由器连接Ubuntu服务器,按照使用网线通过路由器连接Ubuntu服务器进行配置dhcp之后就能联网了。。。。。


pip安装

有了网我就想那就pip3 install numpy呗

嗯 没有。。。那我apt isntall python3-pip

嗯 也没有/。。。这还能没有??????所以我们需要换源。。。


sudo vi /etc/apt/sources.list


将下面的内容填进去


# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse


其实就是清华源的内容,但是是arm64的处理器,注意选择ubuntu-port

接下来


sudo apt update
sudo apt install python3-pip


就好了


python3模块的安装

先装一些依赖:


sudo apt-get build-dep python-imaging
sudo apt-get install libjpeg8 libjpeg62-dev libfreetype6 libfreetype6-dev


我装python-imaging出错了,但是不影响。

然后是直接安装python3模块


pip3 install -i https://mirror.baidu.com/pypi/simple Cython numpy  Pillow


使用了百度镜像加速,不然太慢。

终于结束了,运行!!!!!

又炸了。。。。


atlas_utils安装

上面炸了,我在想pip3安装不就好了,但是仔细一想,,这好像是华为自己的库,,,嗐,百度把。。。找到了下面的库

昇腾CANN样例仓介绍

然后只能用v5.0.0的库,不然它改了名称我不确定会不会炸,直接下的zip解压会多一个master的后缀,建议mv改掉。。。。弄好传到板子上目录像我这样:

然后按照gitee仓库说的

export PYTHONPATH=$HOME/samples/python/common/:$PYTHONPATH就可以运行了,一切都完成了。

后记

筋疲力尽,教程中出现了太多的没有出现的情况,相信我这些坑解决之后,修改python标签啥的对各位看官都是洒洒水啦。祝大家都能完成,也希望亲爱的华为能够及时更新文档,不要让课程体验这么糟糕,糟心啊-。-

不过,还是非常感谢华为给我们提供平台资源让我们更加有效的学习机器学习这门课程的,华为yyds!


相关文章
|
2月前
|
XML 人工智能 安全
Prompt进阶2:LangGPT(构建高性能Prompt策略和技巧)--最佳实践指南
Prompt进阶2:LangGPT(构建高性能Prompt策略和技巧)--最佳实践指南
Prompt进阶2:LangGPT(构建高性能Prompt策略和技巧)--最佳实践指南
|
4月前
|
人工智能 JSON 搜索推荐
社区供稿 | GLM-4适配ModelScope-Agent最佳实践
GLM-4是由智谱 AI 发布的新一代基座大模型。
|
8天前
|
人工智能 API Python
【AI大模型应用开发】1.1 Prompt Engineering(提示词工程)- 用OpenAI API实战,优化方法论总结
【AI大模型应用开发】1.1 Prompt Engineering(提示词工程)- 用OpenAI API实战,优化方法论总结
13 0
|
8天前
|
人工智能 程序员 API
【AI大模型应用开发】1.0 Prompt Engineering(提示词工程)- 典型构成、原则与技巧,代码中加入Prompt
【AI大模型应用开发】1.0 Prompt Engineering(提示词工程)- 典型构成、原则与技巧,代码中加入Prompt
16 0
|
5月前
|
人工智能 编解码 文字识别
|
9月前
|
算法 数据挖掘 API
Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速
Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速
52 0
|
12月前
|
人工智能 自然语言处理 机器人
Prompt工程师指南从基础到进阶篇:用于开发和优化提示,以有效地使用语言模型(LMs)进行各种应用和研究主题
Prompt工程师指南从基础到进阶篇:用于开发和优化提示,以有效地使用语言模型(LMs)进行各种应用和研究主题
|
PyTorch 算法框架/工具 计算机视觉
【38】开源算法库mmdetection的安装与使用
OpenMMLad有一系列的开源算法库,包含分类,检测,分割等等计算机视觉的任务,这篇博客用来简单记录一下其开源的检测算法库的安装与使用过程。
315 0
【38】开源算法库mmdetection的安装与使用
|
开发工具 C语言 Windows
恒玄BES2300开发编译环境搭建
恒玄BES2300开发编译环境搭建
389 0
恒玄BES2300开发编译环境搭建
|
机器学习/深度学习 PyTorch Go
330+ 个机器学习模型/库探索工具!Papers With Code 重磅推出!
330+ 个机器学习模型/库探索工具!Papers With Code 重磅推出!
254 0
330+ 个机器学习模型/库探索工具!Papers With Code 重磅推出!