手把手教你快速玩转香橙派AIPro

news2024/9/20 8:40:42

什么是香橙AIPro?

OrangePi AIpro(8T)采用昇腾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算法原型验证、推理应用开发的需求。

img

img

开箱!开箱!

开发板到手的感觉就是,很精巧,很规整!

img

img

启动!启动!开搞!

img

准备工作

相关资料可以查看官方提供的参考资料 香橙派 AIpro 资料汇总

  • 下载开发板的 镜像

  • 烧录ubuntu镜像到SD卡中(官方推荐balenaEtcher)

img

  • 烧录完,把TF卡插入开发板。(注意后面的拨码开关)

img

  • 启动,LED指示灯绿色常亮,表示启动正常。刚开始风扇转的巨快,慢慢的平稳很多!

官方demo

在HwHiAiUser账户下,官方内置了9个demo,在notebook里面,大家可以仔细启动尝试。

cd ~/samples/notebooks
./start_notebook.sh
  • 01 yolov5目标检测
  • 02 ocr文字识别
  • 03 ResNet目标分类
  • 04 HDR图像曝光增强
  • 05 GAN卡通图像生成
  • 06 人体蛋白分类
  • 07 细胞图像分割
  • 08 Portrait的背景替换
  • 09 WeNet语音识别

训练与测试

  1. 通过SSH链接树莓派

管理账号:root
密码:Mind@123

普通账号:HwHiAiUser
密码:Mind@123

img

  1. 环境准备
  • 下载安装torch_npu、PyTorch2.1.0、torchvision0.16.0(这里板子是装好的)
  • 设置环境变量,确保程序能够找到Ascend AI处理器NPU相关必要的库文件和执行文件。
export DDK_PATH=/usr/local/Ascend/ascend-toolkit/latest
export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub

可以输入printven查看当前环境变量

  • 安装ffmpeg
apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev

img

  • 安装ACLLite库
git clone https://gitee.com/ascend/ACLLite.git

img

  • 打开ACLLite,运行bash build_so.sh进行编译安装

img

  1. 克隆代码仓库
git clone https://gitee.com/ascend/EdgeAndRobotics/

img

  • 打开下载好文件夹,安装python库
pip3 install -r requirements.txt
  • 设置环境变量减小算子编译内存占用
export TE_PARALLEL_COMPILER=1
export MAX_COMPILE_CORE_NUMBER=1

这里如果不减小算子,会报下面错误,超出内存
报错:

/usr/local/miniconda3/lib/python3.9/multiprocessing/resource_tracker.py:216: UserWarning: resource_tracker: There appear to be 97 leaked semaphore objects to clean up at shutdown

  • 在data文件夹中添加一张测试图片

img

  1. 训练
  • 安装对应版本的PyTorch2.1.0、torchvision1.16.0版本

torch_npu由于需要源码编译,速度可能较慢,可以使用官方提供 python3.9,torch2.1版本的torch_npu whl包

wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/torch_npu-2.1.0rc1-cp39-cp39-linux_aarch64.whl
pip3 install torch_npu-2.1.0rc1-cp39-cp39-linux_aarch64.whl
python3 main.py
  • 运行main.py 自动下载数据集

下载的Mnist数据集,数据集目录结构如下

img

可以在main.py里面修改参数

img

img

  • 将训练生成的mnist.pt转换mnist.onnx模型
python3 export.py

img

  1. 在线推理
  • 用我们下载的图片执行在线推理
cd ../onnxInfer/
python3 infer.py

img

推理结果如下:

[inferssession_time:347 pictures/s] [output:3]

infer.py加载数据和模型的关键代码

img

img

  1. 离线推理
  • 在omInfer/data 里面保存我们要测试的数据
cd omInfer/data
  • 将PyTorch框架的onnx转换为昇腾AI处理器能识别的模型(*.om)。

(1)将在线推理时导出的mnist.onnx模型拷贝到model目录下
(2)获取AIPP配置文件


wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/mnist/ecs/aipp.cfg

img

(3)模型转换

atc --model=mnist.onnx --framework=5 --insert_op_conf=aipp.cfg --output=mnist --soc_version=Ascend310B4

img

●–model:转换前模型文件的路径。
●–framework:原始框架类型。5表示ONNX。
●–output:转换后模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。
●–input_shape:模型输入数据的shape。
●–soc_version:昇腾AI处理器的版本。
(4)编译并获得推理结果

cd ../scripts 
bash sample_build.sh

img

bash sample_run.sh

img

这里在测试一张8.jpg(这里main好像只能读取jpg,png的图片识别不到)

总结

总体感觉香橙派AIPro开发板还是比较有趣的,从外观上就看起来整洁美观,论坛、文档都很齐全,可玩性比较高,后面有机会结合双目相机搞一下!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式 19 模板模式 Template Pattern

设计模式 19 模板模式 Template Pattern 1.定义 模板模式(Template Pattern)是一种行为设计模式,它定义了一个算法的骨架,将一些步骤的具体实现延迟到子类中。在模板模式中,定义了一个抽象类,其中包含了一个…

2024.5组队学习——MetaGPT(0.8.1)智能体理论与实战(中):订阅智能体OSS实现

传送门: 《2024.5组队学习——MetaGPT(0.8.1)智能体理论与实战(上):MetaGPT安装、单智能体开发》《2024.5组队学习——MetaGPT(0.8.1)智能体理论与实战(下)&…

2024年电工杯高校数学建模竞赛(A题) 建模解析| 园区微电网风光储协调优化配置

问题重述及方法概述 问题1:各园区独立运营储能配置方案及其经济性分析 经济性分析采用成本-效益分析方法,计算购电量、弃风弃光电量、总供电成本和单位电量平均供电成本等指标。 问题2:联合园区储能配置方案及其经济性分析 经济性分析采用成…

《Ai企业知识库》-rasa X安装使用

背景: Rasa X 是一个为构建、改进和管理对话式AI助手而设计的工具。它是Rasa开源机器学习框架的一个扩展,旨在实现“对话驱动开发”(Conversation-Driven Development)。Rasa X 主要特点包括: 交互式学习:…

百度智能小程序源码系统 关键词推广优化排名高 带完整的安装代码包以及搭建教程

系统概述 百度智能小程序源码系统是一套完整的解决方案,为用户提供了创建、发布和管理智能小程序的平台。它基于百度平台的先进技术,确保小程序在运行和展示方面具有出色的表现。 代码示例 系统特色功能 1.关键词推广优化:系统内置了强大的…

Day 40 Web容器-Tomcat

Tomcat 一:Tomcat简介 1.简介 ​ Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目 ​ Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器 ​ Tomcat是WEB容器/WE…

JVM(内存区域划分、类加载机制、垃圾回收机制)

目录 一. 内存区域划分 1.本地方法栈(Native Method Stacks) 2.虚拟机栈(JVM Stacks) 3.程序计数器(Program Counter Register) 4.堆(Heap) 5.元数据区(Metaspace) 二.类加载机制 1.加载 2.验证 3.准备 4.解析 5.初始化 "双亲委派模型" 三. GC 垃圾回收…

[自动驾驶技术]-7 Tesla自动驾驶方案之算法(AI Day 2022)

特斯拉在2022年AI Day上更新了感知规控算法模型,核心引入了Occupancy技术。下图是特斯拉活动日展示的主题内容,本文主要解读Planning和Neural Network部分。 1 规划决策 Interaction search-交互搜索 特斯拉在自动驾驶规划中使用了一种高度复杂和优化的…

SpringCloud整合Seata1.5.2

Windows下部署Seata1.5.2可参照博文&#xff1a;Windows下部署Seata1.5.2&#xff0c;解决Seata无法启动问题-CSDN博客 1. 引入依赖 <!-- 分布式事务 --> <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-st…

echarts配置记录,一些已经废弃的写法

1、normal&#xff0c;4.0以后无需将样式写在normal中了 改前&#xff1a; 改后&#xff1a; DEPRECATED: normal hierarchy in labelLine has been removed since 4.0. All style properties are configured in labelLine directly now. 2、axisLabel中的文字样式无需使用te…

近五年营收和净利润大幅“败北”,尚品宅配今年押注扩张加盟

​ 《港湾商业观察》廖紫雯 两个月前经历过高管公开信的尚品宅配&#xff08;300616.SZ&#xff09;&#xff0c;无论是2023年年报&#xff0c;还是今年一季报&#xff0c;虽然公司净利润表现尚佳&#xff0c;但收入端的持续承压仍然备受关注。 今年一季报&#xff0c;尚品宅…

Mac免费软件推荐

1. iTerm2 - 功能强大的终端 iTerm2 是一个功能强大且灵活的终端仿真器&#xff08;可替代系统默认终端&#xff09;&#xff0c;适合需要在 macOS 上进行大量终端操作的用户。其丰富的功能和高可定制性使得 iTerm2 成为许多开发者和系统管理员的首选工具。无论是处理多个会话…

RabbitMQ 之 死信队列

目录 ​编辑一、死信的概念 二、死信的来源 三、死信实战 1、代码架构图 2、消息 TTL 过期 &#xff08;1&#xff09;消费者 &#xff08;2&#xff09;生产者 &#xff08;3&#xff09;结果展示​编辑 3、队列达到最大长度 &#xff08;1&#xff09;消费者 &…

百度发布代码辅助工具,超强

不会用AI的程序员&#xff0c;会跟不会用智能手机的人一样 百度这个代码助手助手感觉还是不错的 https://comate.baidu.com/?inviteCodeijmce7dj 目前看下来这个代码助手是比较强的&#xff0c;比阿里的那个灵码好用&#xff0c;他可以引用到当前的文件&#xff0c;并且能分…

Spring Cache基本使用

Spring 从 3.1 版本开始定义缓存抽象来统一不同的缓存技术&#xff1b;在应用层面与后端存储之间&#xff0c;提供了一层抽象&#xff0c;这层抽象目的在于封装各种可插拔的后端存储( ehcache, redis, guava)&#xff0c;最小化因为缓存给现有业务代码带来的侵入。 一、Spring…

DRKCT复现

Osint 羡慕群友每一天 MISC 签到 扫码关注公众号&#xff0c;回复一下行 &#xff08;眼神要好&#xff0c; 我做题时没看见有个二维码&#xff09; 神秘的文字 把代码js运行一下 (用js的原因是前面给的动物代表的字符类似jsfuck代码) &#x13142;![]; &#x13080;!…

Daisy Chain

菊花链是双向和半双工的&#xff0c;因此在 COMH 和 COML 接口上有一个发送器 (TX) 和一个接收器 (RX)。TX 和 RX 功能由硬件根据器件的基底/堆栈检测自动控制。当接收到 WAKE ping/音调时&#xff0c;通信方向由 CONTROL1[DIR_SEL] 和 COMM_CTRL[TOP_STACK] 配置进行设置。 对…

如何处理网安发出的网络安全监督检查限期整改通知

近期&#xff0c;很多客户都收到了网安发出的限期整改通知。大家都比较关心的问题是&#xff0c;如何应对处理这些限期整改通知。后续是否有其他的影响&#xff0c;需要如何做进一步的优化整改和调整。今天就这些问题给大家做一些分享。 一. 为什么会有网安的网络安全检查 主…

系统管理、磁盘分区

系统管理 业务层面&#xff1a;为了满足一定的需求所做的特定操作。 硬盘是什么&#xff0c;硬盘的作用&#xff1a; **硬盘&#xff1a;**计算机的存储设备&#xff0c;机械硬盘是由一个或者多个磁性的盘组成&#xff0c;可以在盘片上进行数据的读写。 连接方式&#xff1a…

谈谈BlueStore的BitmapAllocator

背景 BlueStore在ceph里面承担了数据在底层磁盘上的读写任务&#xff0c;那它的功能里自然就有一块是管理磁盘空间使用的。说白了&#xff0c;就是记录&管理磁盘里哪些空间已经使用了&#xff0c;哪些空间还没有被使用。 目前官方的ceph里使用BitmapAllocator来管理磁盘空…