当新手小白有了一块【香橙派OrangePi AIpro】.Demo

2024-06-03 14:52

本文主要是介绍当新手小白有了一块【香橙派OrangePi AIpro】.Demo,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当新手小白有了一块【香橙派OrangePi AIpro】.Demo

目录

  • 当新手小白有了一块【香橙派OrangePi AIpro】.Demo
  • 一、香橙派OrangePi AIpro概述
  • 1.简介
  • 2.引脚图
  • 二、“点亮”香橙派OrangePi AIpro
  • 1.官方工具下载
  • 2.官方镜像下载
  • 3.镜像烧录
  • 4.访问香橙派 AIpro
  • 三、香橙派OrangePi AIpro.测试Demo
  • 1.测试Demo1:Camera图像获取(USB接口)
  • 2.测试Demo2:CoreMark性能测试
  • 2.1 多核跑分测试
  • 2.2 单核跑分测试
  • 3.测试Demo3:YOLOv5目标检测
  • 四、使用小结
  • 1.官配的散热风扇静音效果极好,风力极强,散热极佳
  • 2.AI 算力强劲
  • 3.开发资料详细
  • 4.开发过程中遇到的问题(若上电后只亮一个LED,SD卡镜像加载的LED熄灭)

一、香橙派OrangePi AIpro概述

1.简介

  • OrangePi AIpro(8T)采用昇腾AI技术路线,高性能,低功耗

  • 具体为4核64位处理器+AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出,4核64位处理器 + AI处理器,速度更快,功耗更低,可为各类AI应用场景带来卓越的性能表现。

  • OrangePi AIpro(8T)具有8Tops AI算力,赋能各类AI场景

    • 高度集成CPU、AI计算、ISP、图形输出等功能,具有8TOPS AI算力,可以有效实现目标识别、图像分类等AI应用加速,可快速提升开发效率,降低开发成本。

    • Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。可广泛适用于AI教学实训、AI算法验证、智能小车、机械臂、边缘计算、无人机、人工智能、云计算、AR/VR、智能安防、智能家居、智能交通等领域。

img

  • OrangePi AIpro(8T)具有强大的连接性,引用了相当丰富的接口,易于扩展

    • 两个HDMI输出

    • GPIO接口

    • Type-C电源接口

    • 支持SATA/NVMe SSD 2280的M.2插槽、

    • TF插槽

    • 千兆网口

    • 两个USB3.0、一个USB Type-C 3.0、一个Micro USB(串口打印调试功能)

    • 两个MIPI摄像头、一个MIPI屏

    • 预留电池接口

    • 汇聚了MIPI DSI、MIPI CSI、USB 3.0、Type-C 3.0、HDMI 2.0、千兆以太网、支持SATA/NVMe SSD 2280的M.2插槽等各类流行的接口,可应用于外部设备控制和扩展。

img

img

2.引脚图

img

二、“点亮”香橙派OrangePi AIpro

1.官方工具下载

香橙派OrangePi官网下,找到“下载”选项并点击

img

往下滑,找到“官方工具”,点击下载进行提取

img

下载balenEther烧录工具MobaXterm访问工具

img

2.官方镜像下载

香橙派OrangePi官网下的下载界面,继续往下滑,就能看到官方镜像,一般选择Ubuntu进行下载

img

选择最新的即可,本文中选择的是最新的且带桌面系统的

img

3.镜像烧录

当镜像文件和烧录工具都下载好后,将SD卡插入电脑,打开balenEther烧录工具,选择对应的解压好的镜像文件.img和磁盘,进行烧录

img

完成烧录后,将SD插入香橙派中

img

4.访问香橙派 AIpro

烧录完成后,将SD插入香橙派 AIpro中,用micro USB将香橙派 AIpro和电脑相连接,或者用USB-TTL串口模块进行连接,并把开发板背面的两个BOOT拨把开关拨到右边,即选中SD卡加载模式

img

之后,打开MobaXterm软件,选择串口连接,波特率设置为115200

img

打开串口后,将香橙派 AIpro上电,就能看到打印的开机信息

img

输入登录的用户名:HwHiAiUser,登录密码:Mind@123,此时成功通过串口访问香橙派 AIpro

img

接着,进行WiFi连接操作,先输入nmcli dev wifi命令扫描当前附近WiFi热点(按q退出)

img

找到要连接的WiFi,准备好WiFi名和密码(WiFi名不要有空格,否则会找不到)

按q退出后,使用 nmcli 命令连接扫描到的 WIFI 热点,其中:

sudo nmcli dev wifi connect [wifi_name] password [wifi_passwd]
sudo nmcli dev wifi connect A password 123456789
  • wifi_name 需要换成想连接的 WIFI 热点的名字
  • wifi_passwd 需要换成想连接的 WIFI 热点的密码

img

连接成功后,找到它的ip地址(我这边是笔记本开的热点,在热点设置里找)

img

img

通过MobaXterm软件进行远程访问,使用ssh连接类型,填入刚才获取的香橙派 AIpro的ip地址,点击ok后输入用户名和密码即可登录

用户名:HwHiAiUser
密码:Mind@123

img

这边是通过另一个FinalShell软件进行远程访问,使用ssh连接类型,填入刚才获取的香橙派 AIpro的ip地址

用户名:HwHiAiUser
密码:Mind@123

img

“点亮”成功

img

三、香橙派OrangePi AIpro.测试Demo

下面进行香橙派OrangePi AIpro的Demo测试

1.测试Demo1:Camera图像获取(USB接口)

这是官方的一个测试例程——>官方测试例程传送门

HwHiAiUser用户登录开发板,登录成功后,HwHiAiUser用户命令行中,先切换到home目录下

cd ${HOME}     

然后,执行以下命令下载源码仓

git clone https://gitee.com/ascend/EdgeAndRobotics.git

img

接着,切换到样例目录下

cd EdgeAndRobotics/Peripherals/Camera/USBCamera

img

安装FFmpeg

sudo apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev

img

安装OpenCV

sudo apt-get install libopencv-dev

img

继续在当前样例目录EdgeAndRobotics-master/Peripherals/Camera/USBCamera下,执行编译命令,编译样例源码

g++ main.cpp -o main -lavutil -lavformat -lavcodec -lavdevice

编译命令执行成功后,在USBCamera样例目录下生成可执行文件main

img

把摄像头插入开发板,运行可执行文件,其中/dev/video0表示Camera设备,需根据实际情况填写:

当把一个摄像头插入开发板后,执行ls /dev/vi*命令可看到摄像头的vedio节点。

这里出现了两个设备节点:/dev/video0、/dev/video1,是因为一个是图像/视频采集,一个是metadata采集,因此本样例中在运行可执行文件时,选择图像/视频采集的设备节点/dev/video0。

img

sudo ./main /dev/video0

img

运行成功后,在USBCamera样例目录下生成yuyv422格式、1280*720分辨率的out.yuv文件

img

最后,执行如下命令,便可使用FFmpeg软件查看从Camera获取的图像

ffplay -pix_fmt yuyv422 -video_size 1280*720 out.yuv

但是,查看时需要香橙派 AIpro直接连接屏幕,我这里没有连接,所以就报错了

img

2.测试Demo2:CoreMark性能测试

CoreMark是一种专门为嵌入式处理器设计的基准测试工具,为嵌入式系统提供一个标准化的性能评估方法,以便在不同处理器和平台之间进行客观、公正的比较。

2.1 多核跑分测试

从github中下载CoreMark的源代码或者下载到本地再上传给香橙派 AIpro

git clone https://github.com/eembc/coremark 

之后,再进入该文件夹内,进行make编译

make XCFLAGS="-DMULTITHREAD=4 -DUSE_PTHREAD -pthread"

img

最后,执行该测试程序

./coremark.exe

img

可得到下面的性能测试数据,4个核心coremark分数累计为:30757.401000,核平均值为7689.35025

img

从目前拿到的Coremark统计资料来看,与树莓派相比,OrangePi AIpro的成绩还算不错

img

2.2 单核跑分测试

先清除上次编译生成的中间文件

make clean

img

然后,使用默认的编译选项编译(无并发执行选项,单线程)

make link

img

再次执行测试程序

./coremark.exe

可得到下面的性能测试数据,单核测试成绩为:11482.37455(在无并发下远超多核的核平均值)

img

3.测试Demo3:YOLOv5目标检测

官方镜像中预装了 Jupyter Lab 软件,我们可以在 Jupyter Lab 软件中运行的 AI 应用样例。

首先,进行VNC的桌面访问,先输入下面命令查看香橙派 AIpro的VNC是否打开(可以看到有以Xtightvnc开头的进程,说明VNC服务已经启动)

ps -ef | grep vnc

img

可以通过MobaXterm的VNC进行访问

img

VNC访问成功

img

切换到样例目录下,然后执行 start_notebook.sh 脚本启动 Jupyter Lab

cd /home/HwHiAiUser/samples/notebooks
./start_notebook.sh

img

启动成功后,复制登录 Jupyter Lab 的网址链接到浏览器中打开(注意是VNC上香橙派 AIpro的浏览器不是PC端的)

img

登录成功后,我们就能看到右侧的AI测试案例

img

在 jupyter lab 界面双击“01-yolov5” , 进入到该目录,再双击打开 main.ipynb, 在右侧窗口中会显示 main.ipynb 文件中的内容

img

按下图所示点击双三角符号运行样例,往下滑便能看到运行结果

在 main.ipynb 文件中 infer_mode 的值可赋值为 image、 video 和 camera, 分别对应对图片、 视频、 USB 摄像头中的内容进行目标检测, 默认值为 video。

img

四、使用小结

1.官配的散热风扇静音效果极好,风力极强,散热极佳

  • 首先,上电后,最惊喜的就是风扇的静音效果,几乎是没有一丝嘈杂

  • 其次,官方配备的散热器加上该高配风扇的风力很好的满足散热需求,估计50%的转速就已经满足日常使用

  • 该风扇可CPU智能控制转速,灵活性高

2.AI 算力强劲

香橙派AIpro搭载了一个相当强大的AI芯片,拥有优异的图像和自然语言处理性能。

  • 采用最新的人工智能加速器架构,可以提供高达 12 TOPS 的AI推理性能
  • 支持多种深度学习模型和框架,包括 TensorFlow、PyTorch 等主流框架
  • 拥有丰富的神经网络加速硬件单元,能够高效地执行卷积、全连接等核心神经网络操作
  • 配备了先进的模型压缩和量化技术,大幅减少了模型体积和内存占用
  • 具有出色的功耗管理能力,能够在功耗和性能之间进行灵活调配

总的来说,香橙派AIpro 可以提供非常强大的AI计算能力,非常适合在边缘设备上部署各种AI应用。

3.开发资料详细

开发手册: [OrangePi_AI_Pro_昇腾_用户手册_v0.3.1.pdf](D:\orange AIpro\OrangePi_AI_Pro_昇腾_用户手册_v0.3.1.pdf)

香橙派官方为这款开发板准备了详细的资料供开发者阅读,特别注重用户手册的细节,对开发者非常友好。

4.开发过程中遇到的问题(若上电后只亮一个LED,SD卡镜像加载的LED熄灭)

若上电后只亮1个LED灯,一般即SD卡位置的LED不亮

img

  • ①考虑重新烧录、烧录其他版本的镜像或换SD卡

  • ②检查开发板背面的SD卡BOOT1和BOOT2拔把开关是否拨到正确位置

  • ③返厂检修

这篇关于当新手小白有了一块【香橙派OrangePi AIpro】.Demo的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1027300

相关文章

linux 内核提权总结(demo+exp分析) -- 任意读写(四)

hijack_modprobe_path篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm     原理同hijack_prctl, 当用户执行错误格式的elf文件时内核调用call_usermod

linux 内核提权总结(demo+exp分析) -- 任意读写(三)

hijack_prctl篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   prctl函数: 用户态函数,可用于定制进程参数,非常适合和内核进行交互 用户态执行prctl函数后触发prctl系统

linux 内核提权总结(demo+exp分析) -- 任意读写(二)

hijack_vdso篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm     vdso: 内核实现的一个动态库,存在于内核,然后映射到用户态空间,可由用户态直接调用 内核中的vdso如果被修改

linux 内核提权总结(demo+exp分析) -- 任意读写(一)

cred篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   每个线程在内核中都对应一个线程结构块thread_infothread_info中存在task_struct类型结构体 struct t

linux 内核提权总结(demo+exp分析) -- ROP(二)

ret2usr CR4篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   smep: smep是内核的一种保护措施, 使得内核不可执行用户态代码 内核通过CR4寄存器的第20位来控制smep,

linux 内核提权总结(demo+exp分析) -- ROP(一)

基础ROP篇(linux 5.0.21) 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   内核提权与用户态攻击的区别 攻击流程 用户态攻击: 执行 system("/bin/sh") 获得shel

实例demo理解面向接口思想

浅显的理解面向接口编程 Android开发的语言是java,至少目前是,所以理解面向接口的思想是有必要的。下面通过一个简单的例子来理解。具体的概括我也不知道怎么说。 例子: 现在我们要开发一个应用,模拟移动存储设备的读写,即计算机与U盘、MP3、移动硬盘等设备进行数据交换。已知要实现U盘、MP3播放器、移动硬盘三种移动存储设备,要求计算机能同这三种设备进行数据交换,并且以后可能会有新的第三方的

作为刚从事Java开发的小白,需要掌握哪些技能

作为一个刚踏入Java开发世界的小白,面对各种技术和工具,你可能会觉得有点不知所措。但是别担心,我会给你一个简单清晰的路线图,让你可以有条不紊地掌握基本技能,逐步成长为一名Java开发者。 1. 扎实的Java基础 Java的基础是你迈向高级开发的重要基石,建议从以下几个方面着手: 语法和基础概念:比如变量、条件语句、循环、方法、数组、面向对象编程(OOP)等等。这些基础如同建房子的地基,越

wireshark安装及抓包新手使用教程

Wireshark是非常流行的网络封包分析软件,可以截取各种网络数据包,并显示数据包详细信息。常用于开发测试过程各种问题定位。本文主要内容包括:   1、Wireshark软件下载和安装以及Wireshark主界面介绍。   2、WireShark简单抓包示例。通过该例子学会怎么抓包以及如何简单查看分析数据包内容。   3、Wireshark过滤器使用。过滤器包含两种类型,一种是抓包过滤器,

类codepen的实现可拖拽窗口demo

首先说下思想 flex或者其他布局方式,实现左右分割布局,主盒子宽度100%,左右布局中包含一个分割条(可在布局容器中,也可以单独定义)为分隔条绑定鼠标点击事件,为document绑定鼠标移动事件和鼠标放开事件,通过监听鼠标移动事件和上一个状态保存下来的鼠标位置作对比,判断当前鼠标移动方向(往左还是往右)然后计算当前鼠标位置和鼠标点击位置的距离,来计算左右容器的变化,然后通过dom的方式设置宽度