华为昇腾系列开发入门教程三:应用开发环境配置及Mind Studio的若干实践

本文主要是介绍华为昇腾系列开发入门教程三:应用开发环境配置及Mind Studio的若干实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

编|章磊

大兄dei,你能从这个枯燥的标题里点进来,证明你也是走过未来的人呐

挪,今天是2021年8月16号,愿昇腾大火的那天,尔等再看到这篇文章时不要忘记点个赞噢~

说实话,真心特别不想写这类文章,给人的感觉就是很枯燥,勾不起用户读下去的欲望,比如我在百度上根据“昇腾 开发环境 配置”关键字来搜索,画风是这样滴。。。。

在这里插入图片描述
总结就是三句话:劳资不想看,啥时候能滑完,告辞!!!

文章的作者如果不幸看到了这里……
在这里插入图片描述
在这里插入图片描述
好了好了,玩笑归玩笑,既然分享了,就值得表扬,毕竟很多人连官网教程的入口都不知道在哪咧。

应用开发环境配置

先献出两篇巨作~

《MindStudio 版本: 3.0.2安装手册》
《安装MindX SDK开发套件》
之所以推荐这个文档,是因为它里面基本涵盖了昇腾应用层开发关于环境变更配置的所有内容,如果某天文档更新了,请记得在官网这样搜索(根据面包屑实在没找到直接入口)。
在这里插入图片描述
环境配置逻辑大概是这样的啊(以下所有截图均来自上述文档及其子页):

1、你说你要开发应用吧,比如前几篇文章提到的图像分类,你就要配置MindX SDK;
在这里插入图片描述
在这里插入图片描述

2、MindX SDK需要一些底层库支持以及应用开发过程中的模型转换、自定义算子等功能,你还要装CANN(Ascend-cann-toolkit)及插件包
在这里插入图片描述
在这里插入图片描述

3、装CANN得有个基于Linux的OS,如CenterOS或Ubuntu,或者干脆买台服务器。
在这里插入图片描述
4、没有Linux环境,可能要装个类似VM或者docker的玩意儿
5、想在命令行使用cann toolkit工具,要配置环境变量
在这里插入图片描述
在这里插入图片描述
6、你想图形界面开发,要装Mind Studio吧
在这里插入图片描述
7、你用python开发,要装个python环境
8、只是基于MxBase开发,装个C++环境应该差不多
9、想在本地开发,华为服务器上运行,还要装个ssh吧(也可以直接用MindStudio内置的Remote Run)
在这里插入图片描述

(*以上新鲜词汇请转至《致名词,其实我还在这里》)

快!!告诉自己还能看下去。

在这里插入图片描述

那。。。。。大家结合官网这张图看下吧。
在这里插入图片描述
其实也只是看起来复杂,配起来更复杂,自己动手去吧~

等你们明白了什么是实践才是真理,一定会回来跟我一起写下这段话滴。

Mind Studio的若干实践

就在昨天,老夫心血来潮想尝试下Mind Studio,并结合这个粟子来调试python代码,按照老夫的悟性,两个小时应该差不多了吧,然鹅。。。。

还是从10点搞到了9点,主要是解决以下几个问题:

1、没接触过python的痛

导入项目后,给我报个找不到python解释器。
在这里插入图片描述
直接点进去,MD一头雾水,你好歹也给我提示到对应的操作入口啊,google了下”pycharm python interpreter config“,解决。
在这里插入图片描述

2、cv2无法引用

这种问题好办,直接看看Studio里项目依赖有没有cv2,在这里加一下就解决了。
在这里插入图片描述
当然,也可以直接安装。
在这里插入图片描述
问题是解决了,但不优雅啊,凭什么命令行里可以”import cv2“,这里引用相同版本的python却不行了呢。。。。

3、atc命令用不了啊啊啊

之前做的时候,模型是在华为云服务器里配置的,因为那里环境都已经配置好了,所以什么atc转换模型用起来得心应手。

今天尝试在本地环境来转换下模型,“not found command atc”。
在这里插入图片描述
打开bashrc文件,加上mxsdk时的atc/lib54,source后再重启终端,反正怎么折腾都不行。就这样,过了两个小时……

最后,实在不想折腾了,把云里的bashrc文件拿过来简单的改了下,再输入atc,终端停顿了2s,终于告诉我参数格式不正确,你们能从字里行间里读出我看到我说这句话的喜悦了吗
在这里插入图片描述

4、改了环境变量,api叕用不了啊

潜意识下,觉得改完环境变量,MindStudio再打开应该会报错,果然, 25个小红叉。
在这里插入图片描述

这里的修复过程不说了,反正搞了3、4个小时,最后是LD_LIBRARY_PATH出了问题。
在这里插入图片描述

5、说好的远程运行呢

官网上关于Remote Run似乎只有C++部分,但是python具体的参数怎么填呢。
在这里插入图片描述
想当然地这样配置了,Mind Studio不出意外地报个错。
在这里插入图片描述
辣么,问题就回到如何让云服务端以python main.py来执行呢,而不是./main.py。
机智如我,在项目下建一个start.sh文件,写入python3 main.py,然把这个文件的路径配上去,可以是可以,但总觉得有点麻烦。

最后在老师的指导下,在executable处配上服务端的python地址,如usr/local/python3,参数处填上main.py,才似乎可以了,毕竟还是报了一个相对路径的错误,就不管啦,大不了去服务端输入个命令好啦。

总结

看到这里,相信大家对昇腾应用开发环境配置有个大概的了解了,还是那句话,细心使得万年船啊

好了,就扯这么多了,整个环境配下来,严重影响了老夫写文章的心情,不写了不写了,
写的什么鬼东西。

这篇关于华为昇腾系列开发入门教程三:应用开发环境配置及Mind Studio的若干实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/832382

相关文章

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

Android开发中gradle下载缓慢的问题级解决方法

《Android开发中gradle下载缓慢的问题级解决方法》本文介绍了解决Android开发中Gradle下载缓慢问题的几种方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、网络环境优化二、Gradle版本与配置优化三、其他优化措施针对android开发中Gradle下载缓慢的问

Spring Boot 3 整合 Spring Cloud Gateway实践过程

《SpringBoot3整合SpringCloudGateway实践过程》本文介绍了如何使用SpringCloudAlibaba2023.0.0.0版本构建一个微服务网关,包括统一路由、限... 目录引子为什么需要微服务网关实践1.统一路由2.限流防刷3.登录鉴权小结引子当前微服务架构已成为中大型系统的标

MySQL zip安装包配置教程

《MySQLzip安装包配置教程》这篇文章详细介绍了如何使用zip安装包在Windows11上安装MySQL8.0,包括下载、解压、配置环境变量、初始化数据库、安装服务以及更改密码等步骤,感兴趣的朋... 目录mysql zip安装包配置教程1、下载zip安装包:2、安装2.1 解压zip包到安装目录2.2

MobaXterm远程登录工具功能与应用小结

《MobaXterm远程登录工具功能与应用小结》MobaXterm是一款功能强大的远程终端软件,主要支持SSH登录,拥有多种远程协议,实现跨平台访问,它包括多会话管理、本地命令行执行、图形化界面集成和... 目录1. 远程终端软件概述1.1 远程终端软件的定义与用途1.2 远程终端软件的关键特性2. 支持的

使用Go语言开发一个命令行文件管理工具

《使用Go语言开发一个命令行文件管理工具》这篇文章主要为大家详细介绍了如何使用Go语言开发一款命令行文件管理工具,支持批量重命名,删除,创建,移动文件,需要的小伙伴可以了解下... 目录一、工具功能一览二、核心代码解析1. 主程序结构2. 批量重命名3. 批量删除4. 创建文件/目录5. 批量移动三、如何安

MySQL 中的服务器配置和状态详解(MySQL Server Configuration and Status)

《MySQL中的服务器配置和状态详解(MySQLServerConfigurationandStatus)》MySQL服务器配置和状态设置包括服务器选项、系统变量和状态变量三个方面,可以通过... 目录mysql 之服务器配置和状态1 MySQL 架构和性能优化1.1 服务器配置和状态1.1.1 服务器选项

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建