深入解析香橙派 AIpro开发板:功能、性能与应用场景全面测评

文章目录

  • 引言
  • 香橙派AIpro开发板介绍
    • 到手第一感觉
    • 开发板正面
    • 开发板背面
  • 性能
    • 性能概况
    • 性能体验
  • 应用场景
  • 移植操作系统
    • 香橙派 AIpro开发板支持哪些操作系统?
    • 烧写操作系统到SD卡中
    • 启动开发板的步骤
    • 查看系统提供的事例程序
    • 体验——开发的简洁性
  • 视频播放展示
    • ffmpeg简介
    • ffmpeg播放视频
      • 安装ffmpeg
      • 播放视频
  • 搭建Orange Ai Pro 垃圾检测项目
    • 下载所需要的源码
    • 运行样例
  • 使用体验与总结


引言

OrangePi AIpro这块开发板是业界首款基于昇腾深度研发的AI开发板,他有8/20TOPS的澎湃算力 是目前开发板市场中所具备的最大算力,今天非常荣幸拿到OrangePi AIpro开发板!!我们这次介绍它的功能、性能与应用场景,以及我们带大家移植操作系统并演示这块开发板学习简单、开发软件易学的特点

香橙派AIpro开发板介绍

到手第一感觉

首先,我们打开香橙派AIpro开发板的包装后,我们可以看到有这些东西:开发板主体盒子(里面带开发板)对应的数据线和充电头,这个充电头是20V+3.25A的最大功率,完全可以满足我们的开发板
在这里插入图片描述

开发板正面

下面这张图片就是我们开发板的主体,在这里我们可以看到一个大大的散热风扇,可见他的性能是非常的强大
在这里插入图片描述
在他有非常多的接口,无论是现在主流的Type-C接口,还是MicroUSB接口他都是有的,满足我们的不同的需求
除了这两个接口,他还有两个USB3.0,无论是接鼠标,键盘还是其他的比如硬盘这种设备都不在话下,可以保证稳定快速的传输速度
我们可以看到,这里还有HDMI接口,使用他可以让我们连接显示屏,然后我们可以对此进行一些我们普通电脑的操作,毫不夸张的说:他可以当作一个小型的电脑来使用,由此也可以得知他的性能是杠杠的
对于网络的连接,他不仅千兆网线,他还配备了无线网卡,他支持WiFi5+蓝牙4.2轻松应对各种数据接收

除了这些自带的接口,他还提供了对应外设的接线。比如:MIPI DSI 接口2个,MIPI CSI摄像头,看到这里,我想到:我插一个摄像头去就可以使用图像处理了啊,他的性能这么强大,使用图像处理肯定非常的不错

开发板背面

然后我们看到背面:
在这里插入图片描述
在背面他有一个256Mbit SPI Flash的存储芯片
然后他还有M.2 M-KEY的接口,对于M.2大家非常的熟悉,他就是我们电脑的固体硬盘的接口,我们可以插固体硬盘给他,然后我们就可以直接去使用
除了这些,他还有TF卡槽,这就是我们烧写系统需要使用的

性能

性能概况

  1. OrangePi AIpro(8-12T)采用昇腾AI技术路线,具体为4核64位Arm处理器+AI处理器,集成图形处理器,支持8-12TOPS AI(半精度(FP16):4 TFLOPS 整数精度(INT8):8 TOPS)算力
  2. 拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,板载 32MB 的 SPI Flash,Micro SD 卡插槽,M.2 M-Key 接口:可接 2280 规格的 NVMe SSD 或 SATA SSD
  3. 支持双4K高清输出。

性能体验

开发版的整体表现非常流畅,用户体验良好。

  1. 负载能力:能够实时处理60FPS的视频,同时推理一张640x640的图像大约只需15-20毫秒。目前尚未进行量化设计,精度仍为float16。完成整数量化后,性能预计会进一步提升。

  2. 散热效果:Orange AI Pro在散热方面表现出色,配备了散热风扇。连续运行3小时后,板子的温度依然较低,不会因过热影响芯片的工作,散热效果令人满意。

  3. 噪音水平:开机启动时会有6-10秒左右的较大声音,但在可接受范围内。平时运行各种AI模型时,风扇几乎无声,几乎感觉不到风扇的存在。

应用场景

  1. 香橙派 AIpro开发板他是一块AI开发板,毋庸置疑的可以使用我们AI功能,例如:AI计算,图像分类,目标识别,AI边缘计算、深度视觉学习及视频流AI分析、视频图像分析、自然语言处理等功能
  2. 香橙派 AIpro开发板他有高度集成的CPU,他可以轻松实现4K视频的输出,我们还可以使用他进行音视频开发
  3. 香橙派 AIpro开发板他还可以实现我们的物联网,例如:智能安防、智能家居等领域
  4. 香橙派 AIpro开发板还可以实现智能小车、机械臂、无人机等帮助我们工作的好手

香橙派 AIpro开发板功能是非常多的,这里只是列举了一部分,更多的需要大家自己探索

移植操作系统

香橙派 AIpro开发板支持哪些操作系统?

Orange Pi AIpro支持UbuntuopenEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。我们可以根据我们的需要来烧录对应的操作系统,烧录操作系统的方法非常的简单,下面给大家介绍

烧写操作系统到SD卡中

首先我们需要下载镜像文件:
下载镜像文件
我们可以下载ubuntu:
在这里插入图片描述
下载完我们就可以进行下步操作

在这个链接我们可以下载到我们烧写需要的软件balenaEtcher:Download balenaEtcher
在这里插入图片描述
在这里插入图片描述
下载打开后,我们可以去选择我们的镜像,选择我们的SD卡目录,非常的简单、快捷:
在这里插入图片描述
下面是我们的烧写的过程:
在这里插入图片描述
在这里插入图片描述
如下,我们就是烧录成功了,可以进行下一步操作
在这里插入图片描述

启动开发板的步骤

  1. 首先,你需要把你刚刚烧录好的SD卡插入开发板
  2. (可选)把你的HDMI线连接开发板和显示屏
  3. 插好充电器与MicroUSB(MicroUSB用于串口通信)
  4. 打开Mobaxterm软件,选择好对应的串口
  5. 等待开机,即可看到显示屏/串口输出了信息,然后我们就可以输入密码了
  6. 默认用户名为HwHiAiUser,默认密码为Mind@123

查看系统提供的事例程序

  1. 打开文件管理器
    在这里插入图片描述
  2. 在里面有个文件夹samples
  3. 里面有个notebook文件夹
    在这里插入图片描述
  4. 里面有视觉处理等非常多的事例,例如yolov5实例、OCR实例等等非常多
    在这里插入图片描述
  5. 我们在终端打开此文件夹,输入./start_notebook.sh,运行之后,里面有对应的链接,然后我们使用浏览器打开jupyter notebook,在左侧可以看到对应的文件夹
  6. 如果我们要运行01-yolov5,我们可以在jupyter notebook里面找到01-yolov5,然后打开里面的main.ipynb,里面就可以看到运行按钮了

体验——开发的简洁性

在上面我们可以看到,我们运行示例代码是非常的顺畅的,几乎我们不需要进行其他的操作即可运行我们学习代码。
香橙派 AIpro开发板配套的操作系统已经给我们安装好了我们可能会使用到的一些东西,非常的方便,这是在其它开发板不具有的
这可以提高我们开发的快速和简洁性,使我们的开发更加有效率

视频播放展示

ffmpeg简介

Fmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。 FFmpeg编码库可以使用GPU加速。

ffmpeg播放视频

安装ffmpeg

  1. 更新包管理器:sudo apt update
  2. 安装ffmpeg:sudo apt install ffmpeg
  3. 查看ffmpeg版本:ffmpeg -version

播放视频

ffmpeg播放视频使用的是ffplay
他可以播放本地视频:ffplay myvideo.mp4
他也可以播放rtsp视频

在这里我们播放一个本地视频给大家:

(base) HwHiAiUser@orangepiaipro:/media/HwHiAiUser/WD Elements$ ffplay 216134_small.mp4 
ffplay version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2003-2021 the FFmpeg developersbuilt with gcc 11 (Ubuntu 11.2.0-19ubuntu1)configuration: --prefix=/usr --extra-version=0ubuntu0.22.04.1 --toolchain=hardened --libdir=/usr/lib/aarch64-linux-gnu --incdir=/usr/include/aarch64-linux-gnu --arch=arm64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-librsvg --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-sharedlibavutil      56. 70.100 / 56. 70.100libavcodec     58.134.100 / 58.134.100libavformat    58. 76.100 / 58. 76.100libavdevice    58. 13.100 / 58. 13.100libavfilter     7.110.100 /  7.110.100libswscale      5.  9.100 /  5.  9.100libswresample   3.  9.100 /  3.  9.100libpostproc    55.  9.100 / 55.  9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '216134_small.mp4': f=0/0   Metadata:major_brand     : iso5minor_version   : 512compatible_brands: iso5iso6mp41encoder         : Lavf58.45.100Duration: 00:00:20.14, start: 0.000000, bitrate: 20252 kb/sStream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 20247 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 119.88 tbc (default)Metadata:handler_name    : ?Mainconcept Video Media Handlervendor_id       : [0][0][0][0]
(base) HwHiAiUser@orangepiaipro:/media/HwHiAiUser/WD Elements$ 

在这里插入图片描述

搭建Orange Ai Pro 垃圾检测项目

下载所需要的源码

  1. 首先需要下载我们的源码:Orange Ai Pro 垃圾检测项目,使用这个即可下载:git clone https://gitee.com/ascend/samples.git
  2. 接下来我们需要去获取它的训练模型:
# 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行(如果在310B芯片上进行转换,需要修改参数 --soc_version=Ascend310B1)。也可以参照上表在modelzoo中下载并手工转换,以了解更多细节。        
cd ${HOME}/samples/python/contrib/garbage_picture/model    
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com:443/003_Atc_Models/AE/ATC%20Model/garbage/mobilenetv2.air   
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/garbage_picture/insert_op_yuv.cfg
atc --model=./mobilenetv2.air --framework=1 --output=garbage_yuv --soc_version=Ascend310 --insert_op_conf=./insert_op_yuv.cfg --input_shape="data:1,3,224,224" --input_format=NCHW

在获取完之后,他会自己开始训练,我们只需要耐心等待即可
3. 接着我们下载样例所需要的图片,以供我们测试:

# 执行以下命令,进入样例的data文件夹中,下载对应的测试图片。
cd $HOME/samples/python/contrib/garbage_picture
mkdir data
cd data
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/garbage_picture/newspaper.jpg
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/garbage_picture/bottle.jpg    
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/garbage_picture/dirtycloth.jpg 
cd ../src  

运行样例

好的,我会尽量详细地解释这些步骤。

  1. 上传文件:首先,你需要将开发环境中的 garbage_picture 目录上传到运行环境中。例如,你可以将其上传到 /home/HwHiAiUser 目录。这可以通过 scp 命令完成。这里的 HwHiAiUser 是运行环境的用户名,xxx.xxx.xxx.xxx 是运行环境的 IP 地址。命令如下:
scp -r $HOME/samples/python/contrib/garbage_picture HwHiAiUser@xxx.xxx.xxx.xxx:/home/HwHiAiUser
  1. 登录运行环境:然后,你需要登录到运行环境。这可以通过 ssh 命令完成。命令如下:
    ssh HwHiAiUser@xxx.xxx.xxx.xxx
    
  2. 切换目录:登录后,你需要切换到 garbage_picture/src 目录。这可以通过 cd 命令完成。命令如下:
    cd ${HOME}/garbage_picture/src
    
  3. 运行可执行文件:然后,你需要运行 classify_test.py 文件。这可以通过 python3 命令完成。命令如下:
    python3 classify_test.py ../data/
    
  4. 查看结果:最后,你可以查看运行结果。运行完成后,会在 out 目录下生成带推理结果的 jpg 图片。你可以通过文件浏览器或者 ls 命令查看这些图片。

使用体验与总结

  1. 起初我以为部署过程会很复杂,需要大量查阅资料才能完成。然而,体验下来发现官方提供的材料和项目demo非常完善,基本上可以很快上手。各种环境的部署也有相应的详细文档,比我预期的难度要小得多。

  2. 在AI算力方面,推理速度非常出色,NPU的推理速度可以满足大部分实时处理需求,比如我们上面样例的图片推理训练,适合我进行一些DIY智能家居项目。

  3. 丰富的硬件功能,Orange AI Pro 配备了多种硬件接口,为开发更复杂的AI应用提供了更多可能性。

Orange AI Pro 强大的AI能力和便捷的使用体验给我留下了深刻的印象。未来,我希望能通过Orange AI Pro 创作出更多AI应用,感兴趣的朋友千万不要错过!

接下来,我也会利用Orange AI Pro 进行一些新的尝试和AI应用,希望能为大家提供一些参考意见。

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

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

相关文章

C++ 语法习题(2)

第三讲 循环语句 1.偶数 编写一个程序&#xff0c;输出 1 到 100之间&#xff08;包括 1 和 100&#xff09;的全部偶数。 输入格式 无输入。 输出格式 输出全部偶数&#xff0c;每个偶数占一行。 输入样例 No input输出样例 2 4 6 ... 100 参考代码: #include <i…

Kafka接收消息

文章目录 Acknowledgment读消息指定分区批量消费消息拦截 // 采用监听得方式接收 Payload标记消息体内容. KafkaListener(topics {"test"},groupId "hello") public void onEvent(Payload String event,Header(value KafkaHeaders.RECEIVED_TOPIC) Stri…

服务重启时容器未自动启动

1、容器重启策略 通过设置容器的重启策略&#xff0c;‌可以决定在容器退出时Docker守护进程是否重启该容器。‌常见的重启策略包括&#xff1a;‌ no&#xff1a;‌不重启容器&#xff0c;‌默认策略。‌always&#xff1a;‌无论容器是如何退出的&#xff0c;‌总是重启容器…

2024 辽宁省大学数学建模竞赛A题 风切变影响及处置 完整思路 代码结果分享(仅供学习)

风切变对航空安全会构成危害。航空人员需了解相关知识&#xff0c;掌握相应技术&#xff0c;从而在遭遇上述天气时最大程度的规避风险&#xff0c;保证飞行安全。 风切变是指在大气中相对比较短的距离内或时间段内产生的风速大小、方向大幅度变化的现象。通常将发生在距离地面…

白话无人驾驶:1风暴来袭

----->更多内容&#xff0c;请移步“鲁班秘笈”&#xff01;&#xff01;<----- 根据最新的消息&#xff0c;在2024世界人工智能大会上&#xff0c;上海发放了首批完全无人驾驶智能网联汽车示范应用许可&#xff0c;即“完全无人载人车牌照”。首批获得许可的企业包括Au…

mysql 字段为json字符串,转对象然后赛选查询案例

sql 案例 SELECT JSON_UNQUOTE(JSON_EXTRACT(remark, $.deviceIp)) AS ip FROM intellect_identify_camera where JSON_UNQUOTE(JSON_EXTRACT(remark, $.deviceIp)) 127.0.0.1 ;

外国程序猿是什么水平?印度/越南/泰国/菲律宾

外国程序猿是什么水平? 中国互联网企业在海外扩张中,会遇到哪些困难和问题? 文化的差异本地法律法规的问题产品定位的问题人员招聘的问题等等…… 文化的差异和法律法规只能去适应,产品定位可以做调研,参考竞争对手和竞品。 人呢?这是最不可控的因素! 这里所说的人肯定…

mybatis语法进阶1

日志的使用 我们在使用MyBatis的时候, 其实MyBatis框架会打印一些必要的日志信息, 在开发阶段这些日志信息对我们分析问题,理解代码的执行是特别有帮助的; 包括项目上线之后,我们也可以收集项目的错误日志到文件里面去; 所以我们采用专门的日志系统来处理. 步骤 导入坐标拷贝…

阿里云人工智能平台PAI论文入选OSDI ‘24

近日&#xff0c;阿里云人工智能平台PAI的论文《Llumnix: Dynamic Scheduling for Large Language Model Serving》被OSDI 24录用。论文通过对大语言模型&#xff08;LLM&#xff09;推理请求的动态调度&#xff0c;大幅提升了推理服务质量和性价比。 Llumnix是业界首个能灵活在…

第一次构建一个对话机器人流程解析(一)

1.问答机器人的组成 1.1 问答机器人的组成结构图 2. 问答机器人的组成-机器人的个人属性 所谓的机器人一般具备有个人的属性&#xff0c;这些属性固定&#xff0c;形成了机器人的个人偏好 在实现过程中&#xff0c;此处使用一个xml配置文件&#xff0c;配置了机器人的个人年…

如何选购一台云服务器

说明&#xff1a;基于博主本人经常在用云服务学习技术&#xff0c;许多博客里的技术分享也都是在自己购买的云服务器上操作的&#xff0c;本文介绍根据自己的经验&#xff0c;如何选购一台云服务器 选择产商 云服务可以选择阿里云、华为云、腾讯云、百度云&#xff0c;都是几…

296个地级市GDP相关数据(2000-2023年)

GDP相关数据&#xff1a;衡量地区经济活动的综合指标 国内生产总值&#xff08;GDP&#xff09;是衡量一个国家或地区经济规模和发展水平的核心指标。它反映了在一定时期内&#xff0c;所有常住单位生产活动的最终成果。 GDP的种类及其含义&#xff1a; 名义GDP&#xff1a;按…

昆明高校大学智能制造实验室数字孪生可视化系统平台建设项目验收

昆明高校大学智能制造实验室的数字孪生可视化系统平台建设项目&#xff0c;正是在这样的背景下应运而生。项目自启动以来&#xff0c;便受到了校方的高度重视和大力支持。经过数月的紧张筹备和精心实施&#xff0c;项目团队克服了种种技术难题&#xff0c;成功完成了系统的开发…

热题系列9

剑指 Offer 39. 数组中出现次数超过一半的数字 给一个长度为 n 的数组&#xff0c;数组中有一个数字出现的次数超过数组长度的一半&#xff0c;请找出这个数字。 例如输入一个长度为9的数组[1,2,3,2,2,2,5,4,2]。由于数字2在数组中出现了5次&#xff0c;超过数组长度的一半&am…

用 Kotlin 编写四则运算计算器:从零开始的简单教程

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

AI搜索助手心流正式上线 小程序版本、APP版本也将推出

7月10日&#xff0c;专为科研人员、高校教师和学生、职场人士研发的大模型应用产品心流正式上线。据了解&#xff0c;其产品定位为用户的AI搜索助手&#xff0c;提供智能搜索、知识问答、智能阅读、辅助创作等能力&#xff0c;旨在帮助用户提升工作和学习效率。 心流支持AI搜索…

AI绘画:midjourney快速生成符合心意的AI人物形象

生成人物的万能句式&#xff0c;包含**「人物的客观描述」「视角」「角度」「距离」「表情」「服装」「风格」「光源」**等内容&#xff0c;也可以只取其中部分的也会得到一个还不错的结果。 人物构图视角的选择 视角可以按照相机相对于被拍摄对象的位置&#xff0c;分为 正面…

微信小程序毕业设计-报刊订阅系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

网络(二)——套接字编程

文章目录 理解源IP地址和目的IP地址认识端口号认识TCP/UDP协议网络字节序socket编程接口socket 常见APIsockaddr结构 理解源IP地址和目的IP地址 在IP数据包头部中, 有两个IP地址, 分别叫做源IP地址, 和目的IP地址&#xff1b; 源IP即发送方的地址&#xff0c;目的IP即接受方的…

免费开源数字人生成工具

使用步骤更是简单到不行&#xff1a; 1. 输入图片&#xff1a;选择你想要生成动态视频的肖像图片。 2. 输入音频&#xff1a;提供与图片匹配的音频文件&#xff0c;EchoMimic会根据音频内容驱动肖像的动态效果。 3. 设置参数&#xff1a;一般保持默认设置即可&#xff0c;当然&…