前言
本文旨在评估OrangePi AIpro开发板在AI计算和视频解码方面的性能。通过一系列测试,我们将详细介绍开发板的硬件配置、系统烧录方法以及在不同任务下的表现。
开发板配置
http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro.html
CPU4核64位处理器+ AI处理器GPU集成图形处理器AI算力8-12TOPS算力内存LPDDR4X:8GB/16GB(可选),速率:3200Mbps存储• SPI FLASH:32MB• SATA/NVME SSD(M.2接口2280)• eMMC插槽:32GB/64GB/128GB/256GB(可选),eMMC5.1 HS400• TF插槽WIFI+蓝牙Wi-Fi 5双频2.4G和5GBT4.2/BLE以太网收发器10/100/1000Mbps以太网显示• 2xHDMI2.0 Type-A TX 4K@60FPS• 1x2 lane MIPI DSI via FPC connector摄像头2x2-lane MIPI CSI camera interface,兼容树莓派摄像头USB• USB 3.0 HOST x2• USB Type-C 3.0 HOST x1• Micro USB x1 串口打印功能音频3.5mm耳机孔音频输入/输出按键1x关机键、1xRESET键、2x启动方式拨动键、1x烧录按键40PIN40PIN 功能扩展接口,支持以下接口类型:GPIO、UART、I2C、SPI、 I2S、PWM风扇风扇接口x1预留接口2PIN电池接口电源Type-C PD 20V IN ,标准65W支持的操作系统Ubuntu、openEuler产品尺寸107*68mm重量82g

烧录系统
OrangePi AIpro
根据算力,分两块板子。
今天这块是下面的
8-12T
版本:
跳转到百度网盘的下载链接之后,选择最新的固件。
固件有
2.37G
的,还有
4.8G
的。分别是纯命令行控制的,和,带GUI界面的版本。
为了方便操作,这里选择
desktop
版本。
烧录需要使用
Etcher
,常用于烧录Linux固件。
- 建议去GitHub下载:https://github.com/balena-io/etcher

烧录IOS而非zip
对,我一开始烧错了。
解锁SD卡
本人在烧写的过程中,遇到SD卡被锁定的情况。
需要将小卡扣掰上去。
正常情况下烧录成功。
进入系统
部署顺利的话,上电就会自动开机。
默认密码为
Mind@123
。
体验官方 AI 应用样例
OrangePi_AI_Pro_昇腾_用户手册_v0.6.pdf
官方固件默认提供了AI应用样例。
根据官方文档,依次执行:
cd samplessh ./start_notebook.sh
板子环境可能不允许复制粘贴本文的内容,可以尝试
Tap
键补全文件名。
连同
token
复制到板子自带的浏览器中。
访问是基于浏览器的,所以也可以在自己的电脑上进行访问,需要知道开发板的
IP
地址。
局域网访问
jupyter
编辑
start_notebook.sh
:
- 修改
--ip 127.0.0.1为--ip 0.0.0.0。
文字识别测试
样例中已给出主要代码。点击运行,会依次执行每个单元格内的代码,就跟一个
.py
文件一样。
技术原理
样例采用的是CTC(Connectionist Temporal Classification)方法,常用于序列到序列的任务,如语音识别和
OCR
。
CTC
方法的主要步骤:
- 预处理:对输入的图像进行灰度化、二值化、去噪等预处理操作,增强文字区域的清晰度。
- 特征提取:使用卷积神经网络(
CNN)提取图像中的特征,将其转换为特征序列。 - 序列建模:将提取的特征序列输入到循环神经网络(
RNN)或长短期记忆网络(LSTM)中,捕捉序列之间的上下文信息。 CTC解码:使用CTC解码算法将网络输出的概率分布转换为最终的文字序列。CTC解码允许对齐输入和输出序列,即使两者长度不同,也能正确识别字符顺序。
CTC
的优点在于不需要对字符进行精确对齐,能够处理具有变长输入输出序列的任务。在OCR任务中,CTC方法特别适用于处理不同长度的文字行,减少了字符分割的复杂度。
运行样例,可见,可以在短时间内完成文字识别任务,用时为
7.6s
。
文字识别任务依赖于深度学习模型的强大计算能力和对图像处理的高效支持。
OrangePi AIpro
的
AI
处理器在处理
OCR
任务时能够充分利用硬件加速能力,显著提高了处理速度。此外,得益于其大容量内存和高带宽存储接口,能够快速读取和处理大批量的图像数据。
在整个
OCR
过程中,模型的前向推理时间是影响整体性能的关键因素。通过优化模型结构和使用量化技术,可以进一步提高推理速度和准确度。
视频解码测试
项目地址:https://gitee.com/ascend/EdgeAndRobotics/tree/master/Samples/VideoDecode
项目文档的指令是错的,部分路径文档未更新,本文已更正。
项目背景
视频解码是一个对计算性能要求较高的任务,本测试旨在评估OrangePi AIpro在处理高分辨率视频解码时的表现。视频解码涉及将压缩视频数据转换为可播放的格式,对处理器的计算能力和内存带宽提出了较高要求。
技术原理
视频解码的过程通常包括以下几个步骤:
- 读取压缩数据:从存储设备中读取视频文件。
- 解析视频流:解析视频文件中的头信息,获取视频流的编码方式、分辨率、帧率等信息。
- 解码视频帧:根据视频编码方式(如H.264、H.265等)逐帧解码,将压缩的比特流转换为原始的像素数据。
- 后处理:对解码后的图像进行必要的后处理,如颜色空间转换、缩放等。
在本次测试中,我们使用了一个38秒的1080p视频来评估OrangePi AIpro的解码性能。
操作步骤
依次执行:
- 克隆项目仓库:
git clone https://gitee.com/ascend/EdgeAndRobotics.git - 移动到视频解码
demo下:cd /EdgeAndRobotics/Samples/VideoDecode - 移动到
data文件夹中,用于存放待解码的视频:cd /data - 下载待解码的视频到文件夹下:
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/test.mp4 --no-check-certificate - 移动到脚本目录下:
cd ../scripts - 构建项目:
bash sample_build.sh - 运行项目:
bash sample_run.sh

对于
38s
的
1080p
视频,解码几乎在一瞬间完成。生成共
10
张
yuv
图片。
开发板表现
- 负载:在进行AI计算和视频解码任务时,OrangePi AIpro表现出稳定的计算能力,负载情况良好。在视频解码过程中,CPU的使用率较高,但未出现瓶颈,显示出开发板良好的多线程处理能力。
- 散热:在高强度任务运行过程中,开发板的散热性能优异,未出现过热现象。开发板配备的散热器和风扇在长时间高负载下保持了系统的稳定性。
OrangePi AIpro的优秀表现得益于其高效的硬件设计和优化的软件支持。其搭载的4核64位处理器和专用AI处理器在处理复杂的解码任务时能够并行工作,显著提高了计算效率。此外,开发板的内存带宽也为大数据量的处理提供了充分的支持。
在解码过程中,OrangePi AIpro采用了硬件加速技术,减少了对CPU的占用,提高了解码速度。这对于需要处理大量视频数据的应用场景,如视频监控、视频会议等,具有重要意义。
总结
无论是
ai
计算,还是视频解码,
OrangePi Aipro
都有不错的表现。
目前评测较浅,今后会有更基于这款开发板开发更多有意思的项目。
祝
OrangePi
越来越好,相信在充沛算力的支持下,会有更多基于
OrangePi
的项目涌现。
版权归原作者 WuShF.top 所有, 如有侵权,请联系我们删除。