当前位置: 首页 > news >正文

香橙派AIpro测评上手指南

一、前言

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

盒子内就是我们的主角OrangePi AIpro 开发板,主板上下都有泡沫缓冲垫,主板使用防静电包装,保护措施很完善:
[图片]

推荐资料:
香橙派官网
昇腾论坛 香橙派AIpro专题页

二、产品简介

OrangePi AIpro 开发板是香橙派联合华为精心打造的高性能 AI 开发板,其搭载了一颗高性能4核64位CPU+昇腾 AI 处理器,集成图形处理器,支持8TOPS AI算力,内存提供了 8GB 和 16GB LPDDR4X两种版本,可以外接最高 256GB eMMC模块,支持双4K高清HDMI输出,板载WiFi5+BLE4.2集成模块。
[图片]

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各个行业。
[图片]

[图片]

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):
[图片]

PC上打开MobaXterm,新建串口连接,选择CH343的USB串口,波特率填写为115200
在这里插入图片描述

如果在给开发板上电前打开串口,就可以抓到开机LOG:
在这里插入图片描述

输入用户名和密码就可以登录了:
[图片]

以root用户登录成功:
在这里插入图片描述

可以看到当前安装的是Ubuntu 22.04.3 LTS版本。

3.2 VNC连接

该方法适合没有HDMI屏幕但想通过桌面方式使用的朋友。
通过下面的命令检查vnc服务是否开启
ps -ef | grep vnc
可以看到有以Xtightvnc开头的进程,说明VNC服务已经启动。
[图片]

通过网线将开发板的网孔连接到路由器上,串口连接的情况下输入ifconfig命令查看当前开发板的IP地址
[图片]

PC端下载VNC Viewer软件或者就使用MobaXterm的VNC连接功能也行;
[图片]

密码是默认的Mind@123
连接成功后:
[图片]

3.3 SSH连接

该方法相比只串口连接的好处在于通过网线和PC处于同一网段这样可以很方便地传文件。
SSH连接可以使用putty,这里我直接用了MobaXterm里的SSH连接功能:
填写好IP地址后,默认22端口即可
[图片]

还需要输入登录账号和密码,直接用默认的HwHiAiUser账号登录:
[图片]

四、硬件配置

lscpu查看CPU信息,可见开发板搭载的是一颗64位4核CPU,具体型号不详
[图片]

npu-smi info命令可以查看昇腾芯片 NPU 卡的信息,Device为310B4,芯片温度为46度
[图片]

df-h查看磁盘的空间,开发板使用32G内存卡作为硬盘
[图片]

free -m查看物理内存的大小和使用情况,Mem项显示物理内存一共7545MB,手头这个版本是8G内存的,还有16G版本可选
[图片]

五、AI功能体验

官方镜像中预装了 Jupyter Lab 软件,并且预置了一些可以在 Jupyter Lab 软件中运行的 AI 应用样例。

JupyterLab作为一种基于Web的集成开发环境,可以使用它编写Notebook、操作终端、Markdown文本、打开交互模式、查看CSV文件及图片等功能。JupyterLab的执行文件被称作Notebook,它的后缀是.ipynb

切换到样例目录下:

cd /home/HwHiAiUser/samples/notebooks

[图片]

执行 start_notebook.sh 脚本启动 Jupyter Lab
启动成功后,复制登录 Jupyter Lab 的网址链接到浏览器中打开(注意是香橙派上的浏览器不是PC端的)
[图片]

登录 Jupyter Lab 后的界面如下所示, 左侧文件管理器中是 9 个 AI 应用样例和Jupyter Lab 启动脚本:
[图片]

样例1、YOLOv5目标检测

在 jupyter lab 界面双击“01-yolov5” , 进入到该目录,再双击打开 main.ipynb, 在右侧窗口中会显示 main.ipynb 文件中的内容,按下图所示点击双三角符号运行样例:

[图片]

往下翻到“样例运行”小节,等待几秒后会展示识别结果:
在这里插入图片描述

这是一段赛车短视频,可以看到视频中出现的赛车都被识别出来了。
在 main.ipynb 文件中 infer_mode 的值可赋值为 image、 video 和 camera, 分别对应对图片、 视频、 USB 摄像头中的内容进行目标检测, 默认值为 video。
接下来我们尝试图片推理,infer_mode 的值改为image,并且img_path改为我们导入的图片
[图片]

识别小狗(只识别出其中两只):
[图片]

样例2、OCR文字识别

回到主目录,再双击“02-ocr” , 进入到该目录,再双击打开 main.ipynb,找到IMAGE_PATH,改成我们自己导入的图片名进行测试
[图片]

点击restart,等待结果:
[图片]

这是随便找的图片,可以看到还是成功识别出来了大部分,已经算是不错的了,要知道我们用专业的文字扫描软件也常有误判,这个跟字体,模型有关系。

样例3、cartoonGAN模型生成卡通图像

双击“05-cartoonGAN_picture ”,双击打开 main.ipynb,点击restart运行,等待结果:
转换前:
[图片]

转换后:
[图片]

Tips

1、开发板上有2个按键分别是关机按键和复位按键,当机器出现问题死机了可以按关机按键进行关机。但该按键没有开机功能,在关机状态下想开机可以按一下RESET按键也可以开机
[图片]

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卡,甚至准备了电源适配器,数据线&#xff1…...

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 提供了一种机制&#xff0c…...

【论文解读】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/芯片丝印反查网-芯查查...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

Python 实现 Web 静态服务器(HTTP 协议)

目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...