本文分享自华为云社区《香橙派AIpro快速上手指南》,作者:昇腾CANN。

1 前言

作为业界首款基于昇腾深度研发的AI开发板,Orange Pi AIpro无论在外观上、性能上还是技术服务支持上都非常优秀,其8/20TOPS澎湃算力是目前开发板市场中所具备的最大算力,能覆盖生态开发板者的主流应用场景,让用户实践各种创新场景,并为其提供配套的软硬件。

2 香橙派AIpro硬件准备

香橙派AIpro启动后支持用户通过远程登录模式或者本机显示模式登录开发板推理任务,此处可根据两种模式所需的配件,自行选择其中一种模式准备相关硬件即可。

2.1 远程登录模式

使用RJ45网线连接开发板和PC,启动开发板后,用户在PC通过SSH工具远程登录AIpro开发板。

远程登录模式的配件列表如下:

硬件

说明

示意图

香橙派AIpro

开箱后的香橙派AIpro包括主板和电源(包含电源线与电源适配器)。

电源线与电源适配器,出厂为分开状态,需连接使用。

SD卡

SD卡用于装载镜像运行开发板。

推荐使用Micro SD卡,容量推荐不小于64GB。

烧录镜像时会格式化SD卡,建议准备一个专门给开发板使用的SD卡。

读卡器

需使用支持Micro SD卡的读卡器,用于插入SD卡烧录镜像。读卡器的接口可以根据PC接口配置选择USB或Type-C接口。

-

PC(笔记本或台式机)

用于安装制卡工具、烧录镜像和远程连接开发板。

-

连接线:

RJ45网线

用于PC连接和登录开发板。

用户可以使用RJ45网线(PC需要具备空闲以太网口)连接开发板。

RJ45网线:

2.2 本机显示模式

使用开发板直连显示器、鼠标、键盘,启动开发板后,用户可直接使用键盘与鼠标在显示的图形化桌面进行操作。

本机显示模式的配件列表如下:

硬件

说明

示意图

香橙派AIpro

开箱后的香橙派AIpro包括主板和电源(包含电源线与电源适配器)。

电源线与电源适配器,出厂为分开状态,需连接使用。

​​

SD卡

SD卡用于装载镜像运行开发板。

推荐使用Micro SD卡,容量推荐不小于64GB。

烧录镜像时会格式化SD卡,建议准备一个专门给开发板使用的SD卡。


读卡器

需使用支持Micro SD卡的读卡器,用于插入SD卡烧录镜像。读卡器的接口可以根据PC接口配置选择USB或Type-C接口。

-

PC(笔记本或台式机)

用于安装制卡工具、烧录镜像和远程连接开发板。

-

显示器

使用HDMI接口,用于展现开发板镜像中的图形化桌面。

-

HDMI连接线

双头HDMI线,用于连接显示器。

键盘

使用USB接口的键盘,用于图形化桌面的输入操作。

鼠标

使用USB接口的鼠标,用于图形化桌面的点击操作。

USB拓展坞(可选)

如果用户后续需要接入USB接口WiFi,需要再购买一个USB转多口USB扩展坞,鼠标和键盘接入扩展坞,USB接口WiFi接入开发板USB接口。

3 烧写镜像到SD卡

3.1 下载SD烧录工具及ubuntu镜像

在PC机上,进入香橙派官网,鼠标放置在“服务与下载”菜单,在弹出的菜单中单击“下载”,在下载页面找到“Orange Pi AIpro”,然后单击“Orange Pi AIpro”,进入下载详情页面,分别下载下图中的“官方工具”、“ubuntu镜像”。

官方工具和ubuntu镜像都在百度网盘,分别根据页面提示提取文件,并在以下目录中获取文件后,保存在PC机上:

  • 烧录工具balenaEtcher:官方工具>Linux镜像烧录工具-balenaEtcher>Windows_X64版本>balenaEtcher-Setup-1.18.4.exe
  • ubuntu镜像:Ubuntu>opiaipro_ubuntu22.04_desktop_aarch64_*.img.xz

3.2 安装烧录工具balenaEtcher

在PC机上,双击balenaEtcher-Setup-1.18.4.exe,按照提示安装即可。

3.3 烧录ubuntu镜像到SD卡中

1、将SD卡插入读卡器,再将读卡器插入PC机。

2、打开烧录工具balenaEtcher,按照工具界面提示,依次“从文件烧录”-》“选择目标磁盘”-》“开始烧录!”

(1)从文件烧录,选择PC机上下载的ubuntu镜像:

(2)选择目标磁盘,选择插到PC机上的SD卡:

(3)开始烧录

4 启动香橙派AIpro系统

对于远程登录、本机显示两种模式,香橙派开发板连线、启动、登录等方式不同,开发者可根据自己准备的配件,选择对应模式的连线、启动、登录方式。

4.1 远程登录模式

1、插入SD卡

将SD卡插入开发板的SD插槽,并确保完全推入插槽底部

2、开发板连线

远程登录模式,通过网线连接,如下图所示:

开发板上电后,LED指示灯绿色常亮,表示启动正常。

3、登录开发板

当开发板通过以太网口和PC连接时,先将PC的IP地址修改为和开发板的IP地址在同一个网段(例如开发板eth1网口为192.168.137.100,PC以太网口为192.168.137.101),再使用SSH工具远程登录开发板。

注意:开发板通过以太网口第一次连接网络时,可以通过HDMI屏幕、串口或查看路由器后台的方式就可以获取以太网口的IP地址,使用该IP地址可远程登录开发板。

(1)修改PC的IP地址,以Windows 10系统为例 。

在PC上打开“开始”,单击“设置”按钮,进入“Windows 设置”界面。

选择“网络和Internet”,单击“更改适配器选项”。

鼠标右键单击“以太网”后鼠标左键单击“属性”进入“以太网 属性”界面(使用以太网口连接时一般为“以太网x”,x为数字,以实际显示的数字为准)。

选择“Internet 协议版本 4(TCP/IPv4)”,单击“属性”。

勾选“使用下面的 IP 地址”选项,填写IP地址(图示以192.168.137.101为例)和子网掩码,默认网关与DNS服务器地址为空,单击“确定”保存。

使用快捷键“Win+R”,在运行窗口输入cmd进入命令行窗口。输入ipconfig命令查询PC网口IP地址是否修改成功。

C:\Users\用户实际信息>ipconfig
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::ca42:d397:f673:fad4%46
IPv4 地址 . . . . . . . . . . . . : 192.168.137.101
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . :

(2)使用SSH工具远程登录开发板。

步骤1:获取并安装SSH登录工具

本文以MobaXterm为例,如果用户已部署MobaXterm或其他SSH工具,可不用下载。MobaXterm为第三方工具,下载链接和版本会跟随第三方的发布定期更新,可以在下载页面下载最新版本。

下载MobaXterm后(例如MobaXterm_Personal_22.2.exe ),双击exe程序即可启动MobaXterm。

步骤2:单击MobaXterm界面左上方的“Session”进入界面。

步骤3:单击左上方的“SSH”进入SSH连接配置界面。

步骤4:根据硬件连接方式填写开发板连接PC的接口实际IP地址,勾选“Specify username”选项,填写用户名HwHiAiUser。

步骤5:单击“OK”按钮,首次连接开发板时,SSH工具提示是否信任连接的设备,单击“Accept”。

步骤6:进入远程登录界面后,输入HwHiAiUser用户名登录密码(默认为Mind@123)登录开发板,请修改默认密码,并妥善保管新密码。

4.2 本机显示模式

1、插入SD卡

将SD卡插入开发板的SD插槽,并确保完全推入插槽底部

2、开发板连线

本机显示模式的连线如下:

开发板上电后,LED指示灯绿色常亮,表示启动正常。

3、登录开发板

插上开发板电源后,显示器中的登录界面如下:

输入HwHiAiUser用户名登录密码(默认为Mind@123)登录开发板,进入主界面如下图所示,登录后请修改默认密码,并妥善保管新密码。

在界面下方,单击  图标,打开终端,如下图所示:

在终端上,可输入Linux命令,例如输入cd命令:

5 运行第一个推理样例:图片分类

1、样例介绍

在终端窗口,执行cd /opt/opi_test/ResnetPicture命令,进入样例目录,该样例是基于PyTorch框架的ResNet50模型,对*.jpg图片分类,并在终端显示该图片的Top5置信度的分类ID、分类名称。

样例代码逻辑如下所示:

(1)数据预处理(解码+缩放),输出YUV420SP格式、224*224分辨率的图片;

(2)色域转换、归一化,输出RGB格式、224*224分辨率的图片;

(3)模型推理,输出该图片所属各分类的置信度;

(4)数据后处理,该图片的Top5置信度的分类ID、分类名称。

2、运行样例

(1)切换到root用户,输入密码,默认密码为Mind@123。

su root
password:

(2)运行样例。

在/opt/opi_test/ResnetPicture样例目录下,执行以下命令运行样例:

cd scripts
bash sample_run.sh

执行成功后,在屏幕上的关键提示信息示例如下,提示信息中的top1-5表示图片置信度的前5种类别、index表示类别标识、value表示该分类的最大置信度,class表示所属类别。

[INFO] top 1: index[162] value[0.905956] class[beagle]
[INFO] top 2: index[161] value[0.092549] class[bassetbasset hound]
[INFO] top 3: index[166] value[0.000758] class[Walker houndWalker foxhound]
[INFO] top 4: index[167] value[0.000559] class[English foxhound]
[INFO] top 5: index[163] value[0.000076] class[bloodhound sleuthhound]

6 更多介绍

通过运行第一个样例,我们大致了解了软硬件配合的一个整体流程,接下来若需要详细了解昇腾软件栈的能力、如何基于开发板在昇腾上开发&调优推理应用、如何获取更多的应用样例等,可以参考“香橙派AIpro学习资源一站式导航”一步步学习更多内容

点击关注,第一时间了解华为云新鲜技术~

手把手带你快速上手香橙派AIpro的更多相关文章

  1. 几个小实践带你快速上手MindSpore

    摘要:本文将带大家通过几个小实践快速上手MindSpore,其中包括MindSpore端边云统一格式及华为智慧终端背后的黑科技. MindSpore介绍 MindSpore是一种适用于端边云场景的新型 ...

  2. 手把手带你快速入门jQuery(视频|资料,建议收藏!)

    jQuery是什么? jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架). jQuery设计的宗旨是 ...

  3. 带你快速上手前端三剑客之css

    CSS介绍 ​ CSS(Cascading Style Sheet , 层叠样式表)定义如何显示HTML元素.当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染) 组成 ​ 每个CS ...

  4. 阿里语音识别(语音转文字)java调用全程手把手详解-适合中小学生快速上手

    阿里语音识别服务java调用全程手把手详解-适合中小学生快速上手 阿里语音识别与百度语音识别的调用对比: 用例:1分30秒的录音文件    百度用时:3秒    阿里用时:30秒    识别准确率来看 ...

  5. 快速上手Linux核心命令(三):文件和目录操作命令

    @ 目录 前言 cd 切换目录 pwd 显示当前路径 ls 显示目录下内容及相关属性信息 mkdir 创建目录 tree 以树形结构显示目录下的内容 touch 创建空白文件或改变文件的时间戳属性 c ...

  6. 【Python五篇慢慢弹】快速上手学python

    快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...

  7. Netron开发快速上手(一):GraphControl,Shape,Connector和Connection

    版权所有,引用请注明出处:<<http://www.cnblogs.com/dragon/p/5203663.html >> 本文所用示例下载FlowChart.zip 一个用 ...

  8. 快速上手RaphaelJS-Instant RaphaelJS Starter翻译(一)

       (目前发现一些文章被盗用的情况,我们将在每篇文章前面添加原文地址,本文源地址:http://www.cnblogs.com/idealer3d/p/Instant_RaphaelJS_Start ...

  9. UnityShader快速上手指南(三)

    简介 这一篇还是一些基本的shader操作:裁剪.透明和法向量的应用 (纠结了很久写不写这些,因为代码很简单,主要是些概念上的东西) 先来看下大概的效果图:(从左到右依次是裁剪,透明,加了法向量的透明 ...

  10. UnityShader快速上手指南(二)

    简介 前一篇介绍了如果编写最基本的shader,接下来本文将会简单的深入一下,我们先来看下效果吧 呃,gif效果不好,实际效果是很平滑的动态过渡 实现思路 1.首先我们要实现一个彩色方块 2.让色彩动 ...

随机推荐

  1. vue3.2中setup语法糖父组件如何调用子组件中的方法

    父组件如何调用子组件中的方法 父组件.vue <template> <div> <aa ref="testRef"></aa> &l ...

  2. 获取文件的后缀名(转为数组) 字符串和变量的拼接 HTML中字符串和变量的拼接

    1文件上传时,获取文件的后缀名### var cont="2010-23.23.xls" console.log(cont.split("."));//spli ...

  3. win10家庭版禁用更新

    前言 2020年初因为疫情在家远程办公,而我老家没有电脑,先后向两位大学生借了两台电脑来办公,发现一个现象:他们的电脑系统都是家庭版,也就是刚买电脑时安装的win10家庭版.也问了其它几位计算机专业的 ...

  4. 手撕Vuex-实现共享数据

    经过上一篇章介绍,完成了添加全局 $store,接下来就是实现共享数据的功能. 在 Vuex 中,共享数据是通过 state 来实现的,所以我们需要在 Nuex.js 文件中实现 state 的功能. ...

  5. 百度飞桨:ERNIE 3.0 、通用信息抽取 UIE、paddleNLP的安装使用[一]

     相关文章: 基础知识介绍: [一]ERNIE:飞桨开源开发套件,入门学习,看看行业顶尖持续学习语义理解框架,如何取得世界多个实战的SOTA效果?_汀.的博客-CSDN博客_ernie模型 百度飞桨: ...

  6. Visual Studio安装教程、Visual Studio2017软件提供,版本序列号丨编写第一个程序。

    一.安装步骤 1.安装前注意一下自己电脑的IE浏览器是不是10 版本及以上的,如果不是要先升级到10才能安装 Visual Studio2017.打开IE浏览器,点击[设置]接着点击[关于]即可查看. ...

  7. Python 基础知识点归纳

    Python 是一种跨平台的计算机程序设计语言,是一种面向对象的动态类型语言,笔记内容包括编译安装python,python列表,字典,元组,文件操作等命令的基本使用技巧. 编译安装 Python P ...

  8. 5、后端学习规划:.Net学习 - 学习规划系列文章

    .Net是微软发布的一整套的软件编程解决方案.笔者从大学的时代开始就阅读.netframework的书籍了,但是当时没有进行实践.毕业后,笔者去了微软技术中心的公司上班,所以就接触了.net以及C#编 ...

  9. css 修改复选框的样式

    效果图: 实现代码如下: /* 选中input标签类型为复选框的 */ input[type="checkbox"] { width: 16px; height: 16px; ve ...

  10. Matter开发,看这一篇就够了

    1. Matter介绍 Matter(以前称为 Project Connected Home over IP 或 Project CHIP)是由CSA联盟制定的一个应用层面的标准,旨在打造一个统一的智 ...