香橙派AIpro测评上手指南
一、前言
首先非常荣幸受到邀请参加本次香橙派开发板的测评活动,除了令人眼前一亮,做工非常精细的开发板,举办方还非常贴心地准备了散热套件,以及烧录好系统的TF卡,甚至准备了电源适配器,数据线;再加上官网有详尽的资料,让整个体验过程很是愉快。
下面让我们进入主题,先来一张产品套件全家福:

盒子内就是我们的主角OrangePi AIpro 开发板,主板上下都有泡沫缓冲垫,主板使用防静电包装,保护措施很完善:
![[图片]](https://img-blog.csdnimg.cn/direct/2ac1e0f4c0e74dd98a667d5398b13f3a.png)
推荐资料:
香橙派官网
昇腾论坛 香橙派AIpro专题页
二、产品简介
OrangePi AIpro 开发板是香橙派联合华为精心打造的高性能 AI 开发板,其搭载了一颗高性能4核64位CPU+昇腾 AI 处理器,集成图形处理器,支持8TOPS AI算力,内存提供了 8GB 和 16GB LPDDR4X两种版本,可以外接最高 256GB eMMC模块,支持双4K高清HDMI输出,板载WiFi5+BLE4.2集成模块。
![[图片]](https://img-blog.csdnimg.cn/direct/384deb54c2e145c49f83839a8e71882b.png)
OrangePi AIpro引出了相当丰富的接口,包括两个HDMI输出、GPIO接口、Type-C电源接口、支持SATA/NVMe SSD 2280的M.2插槽、TF插槽、千兆网口、两个USB3.0、一个USB Type-C 3.0、一个Micro USB(串口打印调试功能)、两个MIPI摄像头、一个MIPI屏等,预留电池接口,可广泛适用于AI边缘计算、深度视觉学习及视频流AI分析、视频图像分析、自然语言处理、智能小车、机械臂、人工智能、无人机、云计算、AR/VR、智能安防、智能家居等领域,覆盖AIoT各个行业。
![[图片]](https://img-blog.csdnimg.cn/direct/dcecd24a0ed4467ebe3c45c5972ea1e0.png)
![[图片]](https://img-blog.csdnimg.cn/direct/1522b563d4d04fceaf7f733929bf4b8d.png)
OrangePi AIpro目前已经支持操作系统有Ubuntu、openEuler,基本满足大多数AI算法原型验证、推理应用开发的需求。
三、连接测试
本次拿到的开发板由于已经在TF卡中烧写了系统,因此这里我们不再探究烧写系统过程,有兴趣的可以参考《OrangePi_AI_Pro_昇腾_用户手册》第2.4节 烧写 Linux 镜像到 TF 卡中的方法,讲解很详细。
3.1 串口连接
为什么把串口连接方式放在最前面,因为这种方式最简单,不需要网线,也不需要屏幕。
首先需要安装如下USB转串口驱动:
https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/OrangePi/private/CH343SER.EXE
再找到Micro USB 接口的数据线通过如下接口连接电脑(注意看丝印UART):
![[图片]](https://img-blog.csdnimg.cn/direct/12c4c79219e7427d8cc09dbfdb29c82c.png)
PC上打开MobaXterm,新建串口连接,选择CH343的USB串口,波特率填写为115200

如果在给开发板上电前打开串口,就可以抓到开机LOG:

输入用户名和密码就可以登录了:
![[图片]](https://img-blog.csdnimg.cn/direct/474d9345049347e78847af3574ca7a7f.png)
以root用户登录成功:

可以看到当前安装的是Ubuntu 22.04.3 LTS版本。
3.2 VNC连接
该方法适合没有HDMI屏幕但想通过桌面方式使用的朋友。
通过下面的命令检查vnc服务是否开启
ps -ef | grep vnc
可以看到有以Xtightvnc开头的进程,说明VNC服务已经启动。
![[图片]](https://img-blog.csdnimg.cn/direct/376b5418dc304f5c9a572a950c82c66a.png)
通过网线将开发板的网孔连接到路由器上,串口连接的情况下输入ifconfig命令查看当前开发板的IP地址
![[图片]](https://img-blog.csdnimg.cn/direct/43790377dec74642b53e67d98f7bfe47.png)
PC端下载VNC Viewer软件或者就使用MobaXterm的VNC连接功能也行;
![[图片]](https://img-blog.csdnimg.cn/direct/1d57a4b9c7754040906fdb5475c7d731.png)
密码是默认的Mind@123
连接成功后:
![[图片]](https://img-blog.csdnimg.cn/direct/5770fd54f02f41e7a62921394bd7c5c9.png)
3.3 SSH连接
该方法相比只串口连接的好处在于通过网线和PC处于同一网段这样可以很方便地传文件。
SSH连接可以使用putty,这里我直接用了MobaXterm里的SSH连接功能:
填写好IP地址后,默认22端口即可
![[图片]](https://img-blog.csdnimg.cn/direct/91acd0c40e914ee3a6b76b5cc44028ff.png)
还需要输入登录账号和密码,直接用默认的HwHiAiUser账号登录:
![[图片]](https://img-blog.csdnimg.cn/direct/e13f7b0edc51419e888cba4979b0f6f5.png)
四、硬件配置
lscpu查看CPU信息,可见开发板搭载的是一颗64位4核CPU,具体型号不详
![[图片]](https://img-blog.csdnimg.cn/direct/f977515694df45cc95f1b4af20c2902e.png)
npu-smi info命令可以查看昇腾芯片 NPU 卡的信息,Device为310B4,芯片温度为46度
![[图片]](https://img-blog.csdnimg.cn/direct/10f349b782934057ae5a7c4b9a090d2c.png)
df-h查看磁盘的空间,开发板使用32G内存卡作为硬盘
![[图片]](https://img-blog.csdnimg.cn/direct/5e7018c9fd97444d8684c2b44f3647af.png)
free -m查看物理内存的大小和使用情况,Mem项显示物理内存一共7545MB,手头这个版本是8G内存的,还有16G版本可选
![[图片]](https://img-blog.csdnimg.cn/direct/6fbe10bd2f2d45de97c47230b9ea398d.png)
五、AI功能体验
官方镜像中预装了 Jupyter Lab 软件,并且预置了一些可以在 Jupyter Lab 软件中运行的 AI 应用样例。
JupyterLab作为一种基于Web的集成开发环境,可以使用它编写Notebook、操作终端、Markdown文本、打开交互模式、查看CSV文件及图片等功能。JupyterLab的执行文件被称作Notebook,它的后缀是.ipynb
切换到样例目录下:
cd /home/HwHiAiUser/samples/notebooks
![[图片]](https://img-blog.csdnimg.cn/direct/d9cd946dd46f4dbe970d146e20d7e336.png)
执行 start_notebook.sh 脚本启动 Jupyter Lab
启动成功后,复制登录 Jupyter Lab 的网址链接到浏览器中打开(注意是香橙派上的浏览器不是PC端的)
![[图片]](https://img-blog.csdnimg.cn/direct/b4fc6c40a80549ba96df3a1f4a0333a6.png)
登录 Jupyter Lab 后的界面如下所示, 左侧文件管理器中是 9 个 AI 应用样例和Jupyter Lab 启动脚本:
![[图片]](https://img-blog.csdnimg.cn/direct/6084d3d494734e68a018579196859238.png)
样例1、YOLOv5目标检测
在 jupyter lab 界面双击“01-yolov5” , 进入到该目录,再双击打开 main.ipynb, 在右侧窗口中会显示 main.ipynb 文件中的内容,按下图所示点击双三角符号运行样例:
![[图片]](https://img-blog.csdnimg.cn/direct/5a1820a63e894305b0c5dfc5d0d90ed4.png)
往下翻到“样例运行”小节,等待几秒后会展示识别结果:

这是一段赛车短视频,可以看到视频中出现的赛车都被识别出来了。
在 main.ipynb 文件中 infer_mode 的值可赋值为 image、 video 和 camera, 分别对应对图片、 视频、 USB 摄像头中的内容进行目标检测, 默认值为 video。
接下来我们尝试图片推理,infer_mode 的值改为image,并且img_path改为我们导入的图片
![[图片]](https://img-blog.csdnimg.cn/direct/dce973ac45384e46a143bc0c8b0a5021.png)
识别小狗(只识别出其中两只):
![[图片]](https://img-blog.csdnimg.cn/direct/bfe9526ae8074da5b713417438192c9e.png)
样例2、OCR文字识别
回到主目录,再双击“02-ocr” , 进入到该目录,再双击打开 main.ipynb,找到IMAGE_PATH,改成我们自己导入的图片名进行测试
![[图片]](https://img-blog.csdnimg.cn/direct/9f8b3c9c176545159dd82fceb0478366.png)
点击restart,等待结果:
![[图片]](https://img-blog.csdnimg.cn/direct/fb857fbbc4ef450ea13254f1e7a52a3d.png)
这是随便找的图片,可以看到还是成功识别出来了大部分,已经算是不错的了,要知道我们用专业的文字扫描软件也常有误判,这个跟字体,模型有关系。
样例3、cartoonGAN模型生成卡通图像
双击“05-cartoonGAN_picture ”,双击打开 main.ipynb,点击restart运行,等待结果:
转换前:
![[图片]](https://img-blog.csdnimg.cn/direct/070c1be116e7413fa887f6eef9c3af62.png)
转换后:
![[图片]](https://img-blog.csdnimg.cn/direct/df2ce5c9ea5a49fba467255af42b180b.png)
Tips
1、开发板上有2个按键分别是关机按键和复位按键,当机器出现问题死机了可以按关机按键进行关机。但该按键没有开机功能,在关机状态下想开机可以按一下RESET按键也可以开机
![[图片]](https://img-blog.csdnimg.cn/direct/412a6b6f07f94b3e8e8ee25b84f1dc8a.png)
2、机器刚开机时风扇会全速运行一小段时间,进入系统后切到自动调速模式风速就慢下来了
sudo npu-smi info -t pwm-mode
使用该命令可以查看风扇当前的模式是自动模式还是手动模式,一般默认是自动模式。
我的这块板子的自动模式不知为什么不起作用,板子开机一会后即使很烫了风扇也只能保持15的百分比速度运行而不会随温度变化。后来我切换到手动模式,手动调速到50%就没问题了,板子温度很快就降下来了
设置风扇模式为手动模式的命令如下:
sudo npu-smi set -t pwm-mode -d 0
设置风扇的调速比为50:
sudo npu-smi set -t pwm-duty-ratio -d 50
另外,设置的模式和调速比都有记忆功能,下次开机还是上次的配置。
使用感受
OrangePi AIpro 开发板是一款非常优秀的 AI 边缘计算开发板,其推进了 AI 部署的国产化进程,其算力是完全满足商业级产品的需求。经过这几天的使用,我认为香橙派AIpro是一款性能强劲,并且在AI算力上也是可圈可点,最高16G的LPDDR4X内存令树莓派等等熟知的Linux系列开发板望尘莫及,接口非常丰富,尤其是官方配备的散热器,风扇静音效果极佳且风力很强,散热效果很好,50%的转速就已经满足日常使用,该风扇可CPU智能控制转速,这项功能在一众开发板中也是独占鳌头。
香橙派官方为这款开发板准备了详细的资料供开发者阅读,其中用户手册的细节程度非常夸张,让我在整个体验过程上手非常顺畅。
在这款芯片上的核心部件中,出现了不少国产芯片的加入,在可预见的未来,希望我国科技实力和产业实现新的飞跃,让国产化更上一层楼。
相关文章:
香橙派AIpro测评上手指南
一、前言 首先非常荣幸受到邀请参加本次香橙派开发板的测评活动,除了令人眼前一亮,做工非常精细的开发板,举办方还非常贴心地准备了散热套件,以及烧录好系统的TF卡,甚至准备了电源适配器,数据线࿱…...
GBDT 算法【python,机器学习,算法】
GBDT 即 Gradient Boosting Decision Tree 梯度提升树, 是一种迭代的决策树算法,又叫 MART(Multiple Additive Regression Tree), 它通过构造一组弱的学习器(树),然后把多棵决策树的结果累加起来作为最终的预测输出。该算法将决策…...
软考 系统架构设计师系列知识点之SOME/IP与DDS(3)
接前一篇文章:软考 系统架构设计师系列知识点之SOME/IP与DDS(2) 本文内容参考: 车载以太网 - SOME/IP简介_someip-CSDN博客 https://zhuanlan.zhihu.com/p/369422441 什么是SOME/IP?_someip-CSDN博客 SOME/IP 详解系列&#…...
将AI大模型装进你的手机,你愿意么?
大数据产业创新服务媒体 ——聚焦数据 改变商业 AI大模型的发展,有两个方向,一个是模型越做越大,以规模来提升性能。还有一个重要的方向,就是通过将模型做小,来嵌入手机、电脑等计算终端,这同样是值得关注…...
前端面试题12-22
12 Proxy是什么,有什么作用? Proxy 是 ES6 (ECMAScript 2015) 引入的一种元编程特性。它允许你创建一个对象,该对象可以拦截和定义基本操作(例如属性查找、赋值、枚举、函数调用等)。Proxy 提供了一种机制,…...
【论文解读】Performance of AV1 Real-Time Mode
论文下载地址:Performance of AV1 Real-Time Mode 时间:2020.10 级别:IEEE 作者:Ludovic Roux 摘要 背景:COVID-19疫情增加了对数字互动的需求,使得实时或低延迟编解码器变得更加重要。现状:大多数编解码器,包括AV1,主要关注于编码效率,这是视频点播(VOD)的主要改…...
java处理中文脱敏
方法一,简单的,不计算文字长度去设置脱敏 public static String dataDesensitization1(String content){String regex "(.{2}).*(.{2})";return ReUtil.replaceAll(content, regex, matcher -> {try {if (CharSequenceUtil.isBlank(match…...
【Linux网络】端口及UDP协议
文章目录 1.再看四层2.端口号2.1引入linux端口号和进程pid的区别端口号是如何生成的传输层有了pid还设置端口号端口号划分 2.2问题2.3netstat 3.UDP协议3.0每学一个协议 都要讨论一下问题3.1UDP协议3.2谈udp/tcp实际上是在讨论什么? 1.再看四层 2.端口号 端口号(Po…...
Unity 生成模版代码
1、创建模版代码文本 using System.Collections; using System.Collections.Generic; using UnityEngine;public class ClassNameScritpItem : MonoBehaviour {public GameObject go;// Start is called before the first frame updatevoid Start(){go new GameObject();}// …...
【ai】chatgpt的plugin已经废弃
发现找不到按钮,原来是要申请: https://openai.com/index/chatgpt-plugins/ 发现申请已经跳转了,好像是废弃了? 不接受新插件了,但是openai的api 是可以继续用的。 https://openai.com/waitlist/plugins/We are no longer accepting new Plugins, builders can now create…...
2024年03月 Python(四级)真题解析#中国电子学会#全国青少年软件编程等级考试
Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,共50分) 第1题 运行如下代码,若输入整数3,则最终输出的结果为?( ) def f(x):if x==1:s=1else:s...
多旋翼无人机机场考哪些内容?
多旋翼无人机机场考试的内容主要包括理论和实飞两部分。 理论考试主要涵盖无人机相关的知识,包括无人机的原理、结构、操作规范等。 实飞考试则主要考察飞行技能,包括飞行操作、航线规划、飞行稳定性等。 具体来说,实飞部分可能包括使用GPS…...
【前端每日基础】day23——箭头函数
箭头函数是ES6(ECMAScript 2015)引入的一种新的函数表达式语法。相比传统函数,箭头函数有简洁的语法,并且不绑定自己的this、arguments、super或new.target。以下是详细介绍箭头函数的各个方面: 基本语法 单参数箭头函…...
27.Java中单例模式的实现方式
一、单例模式 单例模式(Singleton Pattern)是一种创建型设计模式,它确保一个类只有一个实例,并提供一个全局访问点来访问这个唯一实例。 单例模式中: 这个类只能有一个实例这个类必须自己创建自己的唯一实例这个类必须…...
C#面:当一个线程进入一个对象的方法后,其它线程是否可以进入该对象的方法?
一个线程在访问一个对象的一个synchronized方法时: 另一个线程可以同时访问这个对象的非同步方法。另一个线程不可以同时访问这个对象的普通同步方法。另一个线程可以同时访问这个对象的静态同步方法 ,即static synchronized修饰的方法 。另一个线程不可…...
express框架下后端获取req.body报错undefined
express框架下后端获取req.body报错undefined_express服务器post中data为undefine-CSDN博客 /*** 特殊说明:Express是一个单线程服务器器程序【必须存在指定的顺序调用,否则无法达到预期的效果】*//*** 第一步:创建一个Express实例对象,并且在匹配路由之…...
Element plus 低版本弹窗组件添加拖拽功能
在使用element plus 弹窗组件el-dialog 的时候,由于自己组件库版本过低,所以就会缺失某些功能,比如弹窗组件的可拖拽功能。因为某些原因element plus 组件库又不能升级,所以此时就需要自己为弹窗组件添加拖拽功能。共分为一下四个…...
计算机组成原理易混淆知识点总结(持续更新)
目录 1.机器字长,存储字长与指令字长 2.指令周期,机器周期,时钟周期 3.CPI,IPS,MIPS 4.翻译程序和汇编程序 5.计算机体系结构和计算机组成的区别和联系 6.基准程序执行得越快说明机器的性能越好吗? 1.机器字长,存储字长与指令字长 不同的机器三者…...
【STM32踩坑】HAL固件库版本过高导致烧录后无法运行问题
问题引入 目前STM32CUBEMX已经更新到了6.11版本,对应的固件库也一直在更新; 以STM32F1库为例,目前最新的库对应版本为1.8.5 但是我们会发现,如果直接使用1.8.5版本的固件库生成HAL源码后,烧录是可以烧录,但…...
芯片丝印反查
芯片丝印反查网 - IC芯片丝印,IC芯片代码,IC芯片印字,IC芯片顶标,SMD code,marking code,top mark芯查查-电子信息产业数据引擎 ic/芯片丝印反查网-芯查查...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
Oracle11g安装包
Oracle 11g安装包 适用于windows系统,64位 下载路径 oracle 11g 安装包...
篇章二 论坛系统——系统设计
目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...
ThreadLocal 源码
ThreadLocal 源码 此类提供线程局部变量。这些变量不同于它们的普通对应物,因为每个访问一个线程局部变量的线程(通过其 get 或 set 方法)都有自己独立初始化的变量副本。ThreadLocal 实例通常是类中的私有静态字段,这些类希望将…...
