一文读懂OrangePi AIpro体验测评与应用开发

在这里插入图片描述

文章目录

    • OrangePi AIpro 基本介绍
    • AI边缘计算产品对比
    • 性能测试体验
      • 1. 点亮系统
      • 2. Jupyter远程启动测试官方例程
      • 3. 官方例程在OrangePi AIpro上的运行效果
        • 1. YOLOv5 目标检测
        • 2. OCR 识别
        • 3. ResNet50 物体检测
        • 4. 图像增强模型测试
        • 5 CartoonGAN 图像风格迁移
    • 总结
    • 参考文档

OrangePi AIpro 基本介绍

OrangePi AIpro采用昇腾AI技术路线,具体为4核64位处理器+AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出。 Orange Pi 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各个行业。 Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。

AI边缘计算产品对比

从产品的定位来看, OrangePi AIpro定位是打造高性能AI边缘计算设备。同品类的其他厂商设备主要有NVIDIA Jetson TX1/TX2系列等边缘计算产品。
在这里插入图片描述
同类产品参数对比: 整体来看OrangePi AIpro 还是一款性价比很高的AI边缘计算产品

参数OrangePi AIproOrangePi AIpro NewJetson TX2Jetson Xavier NXJetson AGX Orin
AI算力8 TOPS(INT8) // 4 TFLOPS(FP16)20 TOPS1.33 TFLOPS21 TOPS275 TOPS
GPU华为昇腾 AI处理器华为昇腾 AI处理器256 核 NVIDIA Pascal™ 架构48 个 Tensor Core 的 384 核 NVIDIA Volta™ 架构64 个 Tensor Core 的 2048 核 NVIDIA Ampere 架构
CPU4 核 64 位 ARM 处理器* 核 64 位 ARM 处理器4核 ARM ® Cortex®-A57 MPCore6 核 NVIDIA Carmel Arm® v8.212 核 Arm® Cortex® A78AE v8.2
内存8GB 或 16GB LPDDR4X12GB 或 24GB LPDDR4X4GB 或 8GB LPDDR48GB 或 16GB LPDDR4X32GB 或 64GB LPDDR5
存储可外接 eMMC / NVMe SSD / SATA SSD16/32GB eMMC 5.116/32GB eMMC 5.164GB eMMC 5.1
其他外设蓝牙/WIFI/以太网/USB/HDMI/MIPI CSI摄像头蓝牙/WIFI/以太网/USB/HDMI/MIPI CSI摄像头WIFI/以太网/USB/HDMI/MIPI CSI摄像头WIFI/以太网/USB/HDMI/MIPI CSI摄像头WIFI/以太网/USB/HDMI/MIPI CSI摄像头
价格860元1500元1260元3360元13900元

性能测试体验

  • Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。

1. 点亮系统

  • 开发板支持从 TF 卡eMMCSSD(支持 NVMe SSD 和 SATA SSD)三种模式启动。

  • 这里使用的是 Orange Pi AIpro 默认在32G TF卡刷了 Ubuntu 22.04.4 LTS (GNU/Linux 5.10.0+ aarch64)
    点亮系统

  • 系统有4个CPU核 默认设置 Control CPU : AI CPU = 3 : 1

  • 可以根据的应用场景,设置对应的CPU比例模式

sudo npu-smi set -t cpu-num-cfg -i 0 -c 0 -v 0:4:0   // 4个Control CPU
sudo npu-smi set -t cpu-num-cfg -i 0 -c 0 -v 0:2:2   // 2个Control CPU
# 查询 CPU设置命令
 npu-smi info -t cup-num-cfg -i 0 -c 0
        Current AI CPU number          : 1
        Current control CPU number     : 3
        Current data CPU number        : 0    

在这里插入图片描述

watch -n 1 npu-smi info -t usages -i 0 -c 0
        Memory Capacity(MB)            : 7545
        Memory Usage Rate(%)           : 26
        Hugepages Total(page)          : 15
        Hugepages Usage Rate(%)        : 100
        Aicore Usage Rate(%)           : 0
        Aicpu Usage Rate(%)            : 0
        Ctrlcpu Usage Rate(%)          : 1
        Memory Bandwidth Usage Rate(%) : 0

2. Jupyter远程启动测试官方例程

cd  ~/samples/notebooks
bash start_notebook.sh  192.168.0.108 # 设置为自己系统对应的ip

在这里插入图片描述
在这里插入图片描述

3. 官方例程在OrangePi AIpro上的运行效果

1. YOLOv5 目标检测
  • YOLOv5系列中较为轻量的网络,适合在边缘设备部署,进行实时目标检测。
  • 从测试效果看设备的 Control CPU 、AI CPU、以及Memory的占用都是比较低的。

yolo5 模型运行效果

2. OCR 识别
  • 这里测试的OCR模式为:检测模型为CTPN,识别模型则是SVTR
  • CTPN模型基于Faster RCNN模型修改而来,而SVTR则基于近几年十分流行的Vision Transformer模型
  • 测试结果来看 单帧推理的速度 0.43s, 复杂一些的图片推理, 时间为1.57s
    在这里插入图片描述
    [图片]
3. ResNet50 物体检测
  • 这里测试的是一个 resnet50.caffemodel
  • 进行模型转换后测试单帧图像检测的速度为48ms, 速度还是很快的。
atc --model=resnet50.prototxt --weight=resnet50.caffemodel --framework=0 --output=resnet50 --input_format=NCHW --soc_version=Ascend310B1 --input_fp16_nodes=data --output_type=FP32 --out_nodes=prob:0

在这里插入图片描述

4. 图像增强模型测试
  • 初始化acl资源:在调用acl相关资源时,必须先初始化AscendCL,否则可能会导致后续系统内部资源初始化出错。
  • 对输入进行预处理:包括图像归一化、缩放、颜色转换操作。
  • 推理:利用AclLiteModel.execute接口进行推理。
  • 对推理结果进行后处理:包括形状变换、缩放、颜色转换操作,保存增强后图像。
    [图片]
5 CartoonGAN 图像风格迁移
  1. 初始化acl资源:在调用acl相关资源时,必须先初始化AscendCL,否则可能会导致后续系统内部资源初始化出错。
  2. 对图片进行前处理:在此样例中,我们首先根据图片路径,构造AclLiteImage类型的数据,再利用.jpegd和.crop_and_paste_get_roi转换图片格式、裁剪图片。注意由于模型输入是yuv格式,所以我们利用了AclLiteImageProc.jpegd将图片转为yuv,使得模型正常推理。
  3. 推理:利用AclLiteModel.execute接口对图片进行推理。
  4. 对推理结果进行后处理:包括两个步骤,即转换像素值值域以及将图片缩放到原图大小

在这里插入图片描述

总结

  • 整体来看OrangePi AIpro 还是一款性价比很高的AI边缘计算产品,正常的CPU运算和边缘端的AI推理都能很好的支持,比较适合AI硬件开发。
  • 依托华为昇腾的生态,能够方便各类主流模型的迁移和转化,方便各类AI应用的部署和应用。

参考文档

  • Orange Pi AIpro - 官方资料主页
  • 华为昇腾论坛-香橙派AIpro学习资源一站式导航

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/664025.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

.NET SK 如何给AI大模型添加搜索引擎功能?

普通的AI大模型的数据都是在一开始训练的时候决定的&#xff0c;所以大模型的数据来源都可能存在时效性。 下面我们会利用SK插件来给AI大模型添加联网功能。 准备工作 创建一个名称为5_SK_Plugin_Web的控制台项目 复制以下代码到5_SK_Plugin_Web项目文件中 <Project Sdk…

taskENTER_CRITICAL()分析

1. 临界段代码 //任务级的临界段代码保护 taskENTER_CRITICAL() taskEXIT_CRITICAL()//中断级的临界段代码保护 taskENTER_CRITICAL_FROM_ISR() taskEXIT_CRITICAL_FROM_ISR()2. 以STM32为例 &#xff08;1&#xff09;STM32有0~15&#xff0c;共16级中断&#xff0c;可嵌套…

数据结构算法 数组的实现与练习(C语言实现,Java实现)

文章目录 数据结构数组(顺序表)特点使用Java实现更高级的数组C语言实现总结优点缺点 例题[26. 删除有序数组中的重复项](https://leetcode.cn/problems/remove-duplicates-from-sorted-array/)[1. 两数之和](https://leetcode.cn/problems/two-sum/)[27. 移除元素](https://lee…

教育数字展馆助力全球教育传播,科技引领数字化教育潮流

一、教育数字展馆助力教育传播 1、提高教育资源的可及性 教育数字展馆通过VR和WEB3D技术&#xff0c;将丰富的教育资源呈现在用户面前。不论是名校的经典课程&#xff0c;还是专家的精彩讲座&#xff0c;均可通过教育数字展馆实现线上展示。用户只需登录平台&#xff0c;即可…

【解决】Tree prefab at index 8 is missing.

开发平台&#xff1a;Unity 2020 版本以上   问题描述 翻译&#xff1a;树预制体集合中第8位预制体丢失。   解决方法&#xff1a;修复丢失树资产 关联 Unity Terrier 组件使用&#xff0c;前往 树绘制工作区&#xff0c;检查 “树资产” 引用是否丢失&#xff1f;删除或重…

Mysql基础教程(10):LIMIT

MySQL LIMIT 用法与实例 在 MySQL 中&#xff0c;我们使用 LIMIT 子句来限定 SELECT 语句返回的行的数量。 MySQL LIMIT语法 该 LIMIT 子句可用于限制 SELECT 语句返回的行数。 LIMIT 接受一个或两个非负数正数作为参数。 LIMIT 子句的语法如下&#xff1a; LIMIT [offset,…

CDH6.3.2集成Flink1.12.2

一、Linux下载httpd服务并开启 yum install y httpd systemctl start httpd systemctl enable httpd 二、获取已制作好的安装包 flink-1.12.2-bin-scala_2.11.tar ​ FLINK_ON_YARN-1.12.2.jar ​ flink-shaded-hadoop-2-uber-3.0.0-cdh6.3.2-10.0.jar 三、集成CM 1.上传编…

K210视觉识别模块学习笔记2:固件的下载升级_官方数字识别例程导入方法

今日开始学习K210视觉识别模块:固件的下载升级_官方数字识别例程导入方法 主要学习如何升级固件库&#xff0c;在哪下载固件库&#xff0c;以及如何在TF卡正确导入官方例程&#xff1a; 亚博智能的K210视觉识别模块...... 本次最终目的是正确导入官方的数字识别例程&#xff0…

[GESP202306 四级] 幸运数

按照题目做就OK了&#xff08;本蒟蒻写得太烂了&#xff09; #include<bits/stdc.h> using namespace std; long long w(long long n) {if(n1||n0){return n*7;}n*7;long long tsgn,s0;while(true){s0;while(tsg!0){stsg%10;tsg/10;}if(s<9){return s;}tsgs;} } bool…

可编程晶体振荡器应用于车载倒车雷达

倒车雷达&#xff0c;即“倒车防撞雷达”&#xff0c;又称“"停车辅助装置”&#xff0c;是汽车停车或倒车时的安全辅助装置。它主要由超声波传感器、控制器和显示器等组成&#xff0c;可以通过声音或更直观的显示告知驾驶员周围的障碍物&#xff0c;解除驾驶员在停车、倒…

【软件测试】软件测试概念 | 测试用例 | BUG | 开发模型 | 测试模型 | 生命周期

文章目录 一、什么是软件测试1.什么是软件测试2.软件测试和调试的区别测试人员需要的素养 二、软件测试概念1.需求1.需求的定义2.测试人员眼中的需求 2.测试用例1.测试用例概念 3.BUG 软件错误4、开发模型和测试模型1.软件的生命周期2.开发模型1.瀑布模型2.螺旋模型3.增量、迭代…

2024年人工智能与机械自动化技术国际会议( ICAIMAT 2024)

2024年人工智能与机械自动化技术国际会议( ICAIMAT 2024) 会议简介 随着科技的飞速发展&#xff0c;人工智能和机械化自动化技术已成为全球产业升级和经济发展的重要动力。为了进一步促进国际交流与合作&#xff0c;推动人工智能和机械化自动化技术的创新与应用&#xff0c;我…

2024年艺术鉴赏与科学教育国际会议(ICAASE 2024)

2024年艺术鉴赏与科学教育国际会议 2024 International Conference on Art Appreciation and Science Education 【1】会议简介 2024年艺术鉴赏与科学教育国际会议是一场集艺术、科学和教育于一体的国际性学术盛会。本次会议旨在推动艺术鉴赏与科学教育领域的深入交流与合作&am…

电脑提示缺少vcruntime140_1.dll的解决方法,总结7种有效方法

vcruntime140_1.dll是Microsoft Visual C 2015运行时库的一部分&#xff0c;它为使用Visual Studio 2015开发的应用程序提供了必要的运行时组件。该文件支持C程序的执行&#xff0c;包括内存管理、输入输出操作以及多线程功能等。缺失或损坏此文件可能导致应用程序无法启动或运…

Redis实战篇3:优惠券秒杀

说明 该实战篇基于某马的Redis课程中的《某马点评项目》。非常适合有相关经验、缺少企业级解决方案&#xff0c;或者想要复习的人观看&#xff0c;全篇都会一步一步的推导其为什么要这么做&#xff0c;分析其优缺点&#xff0c;达到能够应用的地步。 本实战篇中心思想就是把项目…

谷歌Material Design设计标准指南

Material Design是谷歌的Android设计规范。虽然这种优秀的设计语言应用于Android&#xff0c;但它的本质被许多设计师借鉴&#xff0c;并用于自己的设计。它是一个广泛的UX、UI设计师必须学习优秀的设计规范。 现在&#xff0c;Material Design设计规范已正式内置为即时设计&a…

MySQL -- SQL笔试题相关

1.银行代缴花费bank_bill 字段名描述serno流水号date交易日期accno账号name姓名amount金额brno缴费网点 serno: 一个 BIGINT UNSIGNED 类型的列&#xff0c;作为主键&#xff0c;且不为空。该列是自动增量的&#xff0c;每次插入新行时&#xff0c;都会自动递增生成一个唯一的…

【AIGC】大型语言模型在人工智能规划领域模型生成中的探索

大型语言模型在人工智能规划领域模型生成中的新应用 一、引言二、LLM在规划领域模型生成中的潜力三、实证分析&#xff1a;LLM在规划领域模型生成中的表现四、代码实例&#xff1a;LLM在规划领域模型生成中的应用五、结论与展望 一、引言 随着人工智能技术的迅猛发展&#xff0…

String类详解

前言&#xff1a;String类是表示字符串的类&#xff0c;String类的内部也提供了非常多的方法来供程序员使用。 String类还有一大特性&#xff0c;就是不可变性。只要使用string创建了字符串&#xff0c;就不可以修改。为string类提供了一层安全性。&#xff08;对于" &qu…

Android 11.0 系统设置语言和输入法菜单Launage语言列表增加支持多种英语语言功能

1.前言 在11.0的系统ROM产品定制化开发中,在系统中的语言和输入法菜单中,在添加语言的默认列表中对于同一类型的语言就可以会出现一中语言,比如多种英语类型 就显示的不全,所以要求显示所有的英语类型,这样就需要了解语言列表的加载流程然后加载所有的英语类型,接下来具…