ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:2.54MB ,
资源ID:6941186      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6941186.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(杭电创新实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

杭电创新实验报告.docx

1、杭电创新实验报告时间:周二上午三、四、五节 组号:10 创新性实验报告题 目基于Atlas200DK开发板图像处理学 院电子信息学院专 业电子信息工程班 级学 号学生姓名指导教师完成日期2021年6月摘 要Atlas 200 DK 开发者套件(型号:3000)是一款高性能AI应用开发板,集成了昇腾310 AI处理器,方便用户快速开发、快速验证,可广泛应用于开发者方案验证、高校教育、科学研究等场景。利用Atlas 200 DK 开发者套件与MindStudio软件,并具备图形化调试能力,可全自动管理离线模型并提供仿真环境,Atlas 200 DK主要包含Hi3559 Camera模块以及Atla

2、s 200 AI加速模块,开发工具MindStudio所在PC通过USB接口或者网线与Atlas 200 DK开发者板连接。开发工具 MindStudio包含了开发套件以及各个工具模块(如模型管理工具、编译工具、日志工具等),其中开发套件提供了设备侧编译时所依赖的库文件、用户开发使用的工具、依赖库以及公共头文件等。关键词:开发板;深度学习;Ubuntu Linux服务器;Python;网络部署;MindStudio;晟腾社区1 引 言当今世界,AI的应用越来越深入人们的生活,基于AI的图像处理也是其中一个重要的应用。通过AI识别图像,可以做到人脸识别、手写文字识别、 物体类型识别等。该技术可以

3、用于智能垃圾分类、基于人脸识别的门禁系统、汽车自动驾驶中的路况识别等场景。同时通过AI也可以对图像进行处理,例如黑白图像的自动上色、模糊图像的清晰处理等。基于AI的图像处理在生产和生活中的应用日益广泛。而深度学习是最有可能让机器实现“看”的能力的技术。简单地说,深度学习就是一种机器学习框架,通过模仿人类的神经元系统,为计算机提供自主学习能力。因此,计算机可以准确识别图片中的内容,而无需根据指令安装手动编码的软件但它需要大量数据才能完成识别。2开发板系统介绍本系统的整体框图如下图所示:数据流如下图所示 ,支持视觉类产品原型研究,通过SENSROR-3599-Atlas 200-输出,支持Atla

4、s 200随路或旁路方式处理,数据流如,支持算法研究者/基于图片处理的研究,通过GE链接开发者底板,数据直接到Atlas 200处理后返回,数据流如3 环境部署以及遇到疑难问题3.1 开发环境部署 图1 开发环境、运行环境和PC机拓扑图开发套件包中的组件功能如下所示:ACLlib:用来编译和运行应用程序。包含AscendCL编译依赖的相关库,并具有GE模型的加载、执行功能。ATC:模型和算子编译器。用于离线模型转换、自定义算子开发、IR构图开发等场景。OPP:算子库,包含算子原型库及算子实现库、算子插件、融合规则。算子实现包含TBE算子、AICPU算子,另外包含算子parser。Toolkit

5、:调测工具包,主要包含开发者调测应用、算子需要使用的工具包。搭建开发环境流程:1.获取开发者套件包Ascend-cann-toolkit_version_linux-x86_64.runAscend-cann-toolkit_version_linux-aarch64.run主要用于用户开发应用、自定义算子和模型转换。开发套件包包含开发应用程序所需的库文件、开发辅助工具(如ATC模型转换工具)。两种架构包统一安装:开发环境为x86架构,但运行环境是arm架构,所以再安装一个arm64的开发套件包,用于应用的交叉编译。2.配置Ubuntu X86系统1)检查root用户的umask1以root用

6、户登录安装环境。2检查root用户的umask值umask3如果umask不等于0022,请执行如下操作配置,在该文件的最后一行添加umask 0022后保存。vi /.bashrcsource /.bashrc2)创建安装用户开发套件包建议以非root用户进行安装,创建非root用户的命令如下所示(请以root用户执行以下命令)。1创建非root用户。groupadd usergroup useradd -g usergroup -d /home/username -m username -s /bin/bash2设置非root用户密码。passwd username3)配置安装用户权限开发

7、套件包安装前需要下载相关依赖软件,请执行如下操作为非root用户加权。1以root用户打开“/etc/sudoers”文件:chmod u+w /etc/sudoersvi /etc/sudoers2在该文件“# User privilege specification”下面增加如下内容:username ALL=(ALL:ALL) NOPASSWD:SETENV:/usr/bin/apt-get, /usr/bin/pip, /bin/tar, /bin/mkdir, /bin/rm, /bin/sh, /bin/cp, /bin/bash, /usr/bin/make install, /

8、bin/ln -s /usr/local/python3.7.5/bin/python3 /usr/local/python3.7.5/bin/python3.7.5, /bin/ln -s /usr/local/python3.7.5/bin/pip3 /usr/local/python3.7.5/bin/pip3.7.5, /usr/bin/unzip, /usr/bin/find /etc -name f3添加完成后,执行:wq!保存文件。4执行以下命令取消“/etc/sudoers”文件的写权限:chmod u-w /etc/sudoers4)检查源开发套件包安装过程需要下载相关依赖,

9、请确保安装环境能够连接网络。请在root用户下执行如下命令检查源是否可用。apt-get update5)安装依赖1检查系统是否安装python依赖以及gcc等软件。分别使用如下命令检查是否安装gcc,make以及python依赖软件等。 gcc -version g+ -version make -version cmake -version dpkg -l zlib1g| grep zlib1g| grep ii dpkg -l zlib1g-dev| grep zlib1g-dev| grep ii dpkg -l libbz2-dev| grep libbz2-dev| grep ii

10、 dpkg -l libsqlite3-dev| grep libsqlite3-dev| grep ii dpkg -l openssl| grep openssl| grep ii dpkg -l libssl-dev| grep libssl-dev| grep ii dpkg -l libxslt1-dev| grep libxslt1-dev| grep ii dpkg -l libffi-dev| grep libffi-dev| grep ii dpkg -l unzip| grep unzip| grep ii dpkg -l pciutils| grep pciutils|

11、grep ii dpkg -l net-tools| grep net-tools| grep ii2检查系统是否安装python开发环境。开发套件包依赖python环境,分别使用命令python3.7.5 -version、pip3.7.5 -version检查是否已经安装,如果返回如下信息则说明已经安装,进入下一步。Python 3.7.5pip 19.2.3 from /usr/local/python3.7.5/lib/python3.7/site-packages/pip (python 3.7)否则请根据如下方式安装python3.7.5。使用wget下载python3.7.5源码

12、包,可以下载到开发环境任意目录,命令为:wget https:/www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz进入下载后的目录,解压源码包,命令为:tar -zxvf Python-3.7.5.tgz进入解压后的文件夹,执行配置、编译和安装命令:cd Python-3.7.5./configure -prefix=/usr/local/python3.7.5 -enable-loadable-sqlite-extensions -enable-sharedmakesudo make install执行如下命令设置软链接:sudo ln -s /

13、usr/local/python3.7.5/bin/python3 /usr/local/python3.7.5/bin/python3.7.5sudo ln -s /usr/local/python3.7.5/bin/pip3 /usr/local/python3.7.5/bin/pip3.7.5设置python3.7.5环境变量。以安装用户在任意目录下执行vi /.bashrc命令,打开.bashrc文件,在文件最后一行后面添加如下内容。 #用于设置python3.7.5库文件路径 export LD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_

14、LIBRARY_PATH #如果用户环境存在多个python3版本,则指定使用python3.7.5版本 export PATH=/usr/local/python3.7.5/bin:$PATH执行:wq!命令保存文件并退出。执行source /.bashrc命令使其立即生效。安装完成之后,执行如下命令查看安装版本,如果返回相关版本信息,则说明安装成功。python3.7.5 -versionpip3.7.5 -versionpython3.7 -versionpip3.7 -version3安装Python3相关依赖。安装前请先使用pip3.7.5 list命令检查是否安装相关依赖,若已经安

15、装,则请跳过该步骤;若未安装,则安装命令如下(如果只有部分软件未安装,则如下命令修改为只安装还未安装的软件即可)。其中:toolkit包中算子比对工具依赖:protobuf、scipy。pip3.7.5 install attrs -userpip3.7.5 install psutil -userpip3.7.5 install decorator -userpip3.7.5 install numpy -userpip3.7.5 install protobuf=3.11.3 -userpip3.7.5 install scipy -userpip3.7.5 install sympy -

16、userpip3.7.5 install cffi -user3.安装开发套件包1)以套件包安装用户登录开发环境。2)上传获取软件包所获取的开发套件包到系统任意路径,并进入套件包所在路径。3)执行如下命令为安装包增加可执行权限。chmod +x *.run*表示开发套件包名。4)执行如下校验安装包的一致性和完整性。./Ascend-cann-toolkit_version_linux-x86_64.run -check./Ascend-cann-toolkit_version_linux-aarch64.run -check5)执行以下命令安装软件。使用自定义路径安装:./Ascend-can

17、n-toolkit_version_linux-x86_64.run -install -install-path=path./Ascend-cann-toolkit_version_linux-aarch64.run -install -install-path=path 4.安装后处理配置环境变量安装完成后,需要设置如下环境变量才能进行正常开发流程通过export方式设置环境变量,该种方式设置的环境变量只在当前窗口有效,设置完成后立即生效。export install_path=/home/HwHiAiUser/Ascend/ascend-toolkit/latest # 以安装用户为Hw

18、HiAiUser为例export ASCEND_OPP_PATH=$install_path/oppexport ASCEND_AICPU_PATH=$install_pathexport TOOLCHAIN_HOME=$install_path/toolkit#开发离线推理程序时配置export LD_LIBRARY_PATH=$install_path/acllib/lib64:$LD_LIBRARY_PATHexport PATH=$install_path/toolkit/bin:$PATHexport PYTHONPATH=$install_path/toolkit/python/s

19、ite-packages:$install_path/pyACL/python/site-packages/acl:$PYTHONPATH#进行模型转换/算子编译时配置export LD_LIBRARY_PATH=$install_path/atc/lib64:$LD_LIBRARY_PATHexport PATH=$install_path/atc/ccec_compiler/bin:$install_path/atc/bin:$install_path/toolkit/bin:$PATHexport PYTHONPATH=$install_path/toolkit/python/site-

20、packages:$install_path/atc/python/site-packages:$PYTHONPATH注意事项:1开发环境部署时的参考资料选择?开发环境部署时,可以依据官方手册和视频教程,但这里推荐利用官方的部署手册进行部署,由于视频的上传时间较久,里面的部署流程和软件版本都已经比较落后,以及相关注意事项并没有在视频里说的很详细,如果按照视频流程进行部署,可能会遇到一些问题。由于我们组是通过视频部署的,在运行MindStudio时出现了错误,导致无法成功运行,与另一组进行沟通之后得到了解决。由于开发环境与运行环境的架构不同,务必注意的是需要将开发环境的软件版本与运行环境的软件版

21、本一致,才可以进行后续的交叉编译。2部署环境时是否用root用户?由于Linux中的root用户权限拥有较高,在进行非关键性的操作时,请不要使用root用户在Ubuntu机器上进行一系列操作(除非手册中需要用到root,此时再使用su root指令到root用户下),以及在后续的连接过程中,都是以普通账户进行的。3源的选择?在进行包的下载时,由于我们是按照视频中切换到了国内镜像源,而国内镜像源包含的软件没有官网的全面,例如在进行Python环境变量部署时,有的依赖软件下载失败或无法下载,提示不存在,反而造成了一定的困扰,所以我们这里又将切换到国内源的部分的代码注释掉了,此时下载速度也很快,成功

22、部署了环境变量。4启动MindStudio时图形窗口初始化失败? 图2 MindStudio图形化初始失败错误在启动MindStudio时也遇到了如图2的错误,原因是:我个人习惯是用Xshell与Xfpt这两个软件对虚拟机中ubuntu服务器进行操作,启动MindStudio时请一定要在虚拟机中启动,由于Xshell不支持图形化窗口,故会遇到软件初始化失败的情况,其次,请不要root用户来启动MindStudio,在第一个注意事项已经说明,除非特殊操作用到root用户,默认都是在你自己创建的普通用户以及用户组下进行的。额外提示:如果启动MindStudio时遇到了很奇怪的错误,此时的错误在XX

23、、csdn等网站搜索不到,可以考虑去晟腾社区论坛中进行留言和交流,那里的资料是比较全面的。5CSDN中快速搭建环境是否可以参考?CSDN有篇文章是已经做好了开发环境与运行环境的镜像,并且利用docker来创建一个虚拟的容器,这里我们也注意到了,但是仍不推荐用快速搭建来进行,一个原因是作者制作好的镜像的各种软件包的版本可能是比较老了,如果你想开发一些新的例程,有可能不支持,第二个是docker中由于网络比较复杂,可以想象成docker是子虚拟机,换句话说:假如利用快速搭建:PC机器-虚拟机-docker容器,相当于又有一个网络的嵌套关系,在后续的ssh等操作也可以实现,不过需要甄别出多个虚拟网卡

24、,配置网卡信息时需要格外小心。3.2运行环境部署(SD卡的制作)通过SD卡制作功能可以自行制作Atlas 200 DK 开发者板的系统启动盘。Atlas 200 DK开发者板SD卡制作方式有如下两种: 如果有读卡器,可以将SD卡放入读卡器,将读卡器与Ubuntu服务器的USB连接,然后通过制卡脚本进行SD卡的制作。 如果没有读卡器,可以将SD卡放入Atlas 200 DK开发者板卡槽,通过跳线帽/杜邦线进行开发者板相关针脚连接,将开发者板与Ubuntu服务器的USB连接,然后通过制卡脚本进行SD卡的制作。个人不推荐用跳线连接,比较麻烦。注意事项:1读卡器的选择 图3 USB口的SD卡读卡器在这

25、里我们采用了USB接口的读卡器(如图3),如果采用非USB通道的读卡器,需要按照对应的规则进行SD卡制作,推荐使用usb读卡器。需要注意的是,如果是依据官方手册进行的,那么插入USB后,一定要分配到虚拟机里,而不是真实的win系统上,否则虚拟机是检测不到sd卡的,其次,由于Linux的文件系统与win的文件系统类型不一样的,如果是插入win上问你是否格式化,除非是sd卡镜像损坏,否则是不需要格式化的。2是否必需要按照官方手册进行部署?这里如果想要快速部署,这里是可以的,我们也采用了快速部署SD卡的方式,具体可以参考Atlas200dk合设环境搭建-用镜像恢复的方式, 直接在windows上直接

26、操作,推荐用Etcher工具快速恢复镜像至SD卡。制作完成后拔出sd卡,将其插入Atlas200DK开发板中,上电启动,开发板会进行自动升级固件、重启灯动作,大概需要等待5分钟左右,四个led灯全亮,至此大功告成!3sd卡镜像防止损坏的方法sd卡是很有可能镜像损坏的,由于我在制作时以及启动时的误操作,导致了sd卡的损坏,具体原因一是sd卡制作时,不能轻易的插拔usb读卡器。 图4 Atlas200dk的开发板外观LED灯观察需要重点观察MINI_LED1和MINI_LED2,如图5所示,下面将以表1来说明功能。原因二是我在启动开发板过程中未仔细的观察led灯的状态和情况,导致了在表中第三个情况

27、进行了断电重启的操作,从而sd卡镜像损坏。注意观察led灯时需要将顶盖拿下(如图四)拆卸步骤依据官方手册即可。注意不要暴力拆卸!图5 LED状态灯Sd卡损坏需要重新依据官方手册进行配置sd卡镜像!MINI_LED2MINI_LED1Atlas 200 DK 开发者套件(型号 3000)开发者板状态注意事项灭灭开发者板启动开发板可以断电或重启灭亮Ascend 310启动建议不要断电或重启。闪烁闪烁固件升级不能重启或断电亮亮开发者板启动完成开发板可以断电或重启 表1 指示灯的状态说明3.3 路由与网络配置 图6 网络连接拓扑图注意事项:1虚拟机的选择推荐用Vmware Pro版本的虚拟机,不推荐使

28、用VirtualBox。2关于连接方式的选择 Atlas 200 DK连接Ubuntu服务器有以下场景:A.通过USB端口直连Ubuntu服务器:使用USB连接线通过USB端口与Ubuntu服务器直连。此种场景下,Atlas 200 DK不方便接入网络,仅适用于与Ubuntu服务器进行通信。B.使用网线直连Ubuntu服务器:使用网线将Atlas 200 DK与Ubuntu服务器的网口直连。此种场景下,Atlas 200 DK不方便接入网络,仅适用于与Ubuntu服务器进行通信。C.使用网线通过路由器连接Ubuntu服务器:使用网线将Atlas 200 DK接入路由器的网口,通过网络与Ubun

29、tu服务器连接。推荐使用此种方式,此种方式下,Atlas 200 DK可直接接入网络。说明:官方给出了三种连接方式,这里推荐将A与C都做一遍,A可以适合在外部网络环境改变时依旧可以连接到atlas板(上课时),C是利用路由器可以让atlas板上网(宿舍时),进行下载包等操作,而网线比较麻烦,在这里我们也并没有采用网线连接。3路由连接时的问题配置路由上网时,先用 USB 连接到 Ubuntu 服务器,利用 192.168.1.2 进行连接板间环境,此时 USB 方式在本机生成的虚拟网卡是 192.168.1.223 图7 usb连接时生成的虚拟网卡ens35u1USB方式:虚拟机Ubuntu服务

30、器-虚拟机Ubuntu虚拟网卡192.168.1.223-Atlas200DK192.168.1.2 进行通信。然后按照说明手册进行配置路由上网。网络介绍:由于宿舍环境问题,我的网络环境是电脑 WiFi 连接路由器,路由器网线连接 Atlas200DK 板并且采用的桥接模式。 图8 虚拟机网卡编辑器观察虚拟机网卡配置信息(如图8),由于之前我一直都是自动选择网卡(可能自动选择了一个错误的 网卡,桥接的时候 Ubuntu 服务器和路由器不在一个网段),同时也导致在板间环境配置好 dhcp 后板子的网卡 eth0 是 192.168.0.2(很奇怪的 IP 地址和错误),但是我路由器却是在 192.168.123.1 这个网段,跨网段导致无法 ssh。 图9 虚拟机中网卡信息解决方法:A.当本机在指定选择网卡后(我这里是无线上网卡),再进行板间环境配置,记得需要在虚拟机中开启有线连接(见图10),这里的有线连接的作用是利用桥接模式将虚拟机和本机定位在同一个网段。(如果桥接错的网卡,虚拟机将与路由器不在一个网段了。B. 依照步骤配置板子路由 IP官方手册的方法,并重启板间环境的网卡。 图10 有线连接功能按钮 图11 配置路由成功图此时观察 Ubuntu 服务器 ip 和板间 ip 地址关系,发现在一个网段了。这时连接状态是 Altlas 上网通过网线连接路由器,板件和

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1