香橙派AIpro-携手华为-为AI赋能

文章目录

  • 香橙派AIpro-携手华为-为AI赋能
    • 开箱和功能介绍
      • 开箱
      • 功能介绍
    • 环境搭建
      • 镜像烧录
      • 进入系统
    • 测试项目YOLOv5
      • 部署YOLOv5识别单张图片
      • 实时识别视频
      • 使用Ascend测试yolov5
    • 产品评价

香橙派AIpro-携手华为-为AI赋能

今天新入手了一款香橙派AIPro,让我们一起跟着文章体验一下不一样的

开箱和功能介绍

开箱

香橙派AIpro包装是比较精致的,一共包含开发板,65W充电器和充电线一根,开发板中有一个32G的内存卡,里面是包含自带的系统。
在这里插入图片描述
主板对比,香橙派和我手中现有的AI板 Alinx zynq7000相比,体积更小,且不需要接入外置模块即可使用串口进行通信,整体结构更干净整洁。接通电源之后,香橙派的风扇声音也较小,且正常运行时在我的环境下,感知不到风扇的声音。
在这里插入图片描述

功能介绍

OrangePi AIpro(8-12T)采用昇腾AI技术路线,具体为4核64位处理器+AI处理器,集成图形处理器,支持8-12TOPS 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算法原型验证、推理应用开发的需求。

  • 硬件规格参数:
硬件参数
CPU4核64位处理器+ AI处理器
GPU集成图形处理器
AI算力8-12TOPS算力
内存LPDDR4X:8GB/16GB(可选),速率:3200Mbps
存储1.SPI FLASH:32MB SATA/NVME SSD
2.(M.2接口2280)
3. eMMC插槽:32GB/64GB/128GB/256GB(可选),eMMC5.1 HS400
4.TF插槽
WIFI+蓝牙Wi-Fi 5双频2.4G和5G
BT4.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,兼容树莓派摄像头
USBUSB 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
  • 产品图
    在这里插入图片描述

环境搭建

镜像烧录

接下来我们到官网去下载一个镜像,将其烧录到内存卡中,并且等待烧录完成,
注意: 我使用的是win11操作系统,使用香橙派资料提供的烧录工具烧录一直失败。但是也是可以进系统的。记得要使用管理员方式去启动烧写工具,不然可能即使显示烧写成功,也无法进入系统。
香橙派资料下载地址
烧录工具下载地址
在这里插入图片描述
在这里插入图片描述

进入系统

  • 进入系统: 接上电源等待开机之后进入系统,之后输入密码Mind@123即可进入系统,我这里烧录的是香橙派提供的Ubuntu镜像
    在这里插入图片描述

  • 配置WIFI模块:使用图形界面连接上WIFI之后查看对应的地址

在这里插入图片描述

  • 查看地址并使用远程ssh连接
    在这里插入图片描述
    在这里插入图片描述
  • 下载pycharm: 测试网络模块,并且下载pycharm,可以看到可以正常进行互联网的访问
    在这里插入图片描述
  • 打开pycharm:香橙派的Ubuntu环境还是比较全的,可以正常的使用MobaXterm进行远程打开pycharm
    在这里插入图片描述

测试项目YOLOv5

香橙派自带的conda的base安装的python环境是3.9.2,我们这里就使用这个环境来测试,如果你想更换的话请使用下面的命令自行更换环境

conda create -n name python=version

部署YOLOv5识别单张图片

  • 先到github上去下载yolov5
  • 将下载的zip文件传到香橙派中
  • 解压
unzip yolov5-master.zip
cd yolov5-master
  • 检查pip位置是否正确
which pip
# (base) HwHiAiUser@orangepiaipro:~/Documents/yolov5-master$ which pip
# /usr/local/miniconda3/bin/pip
  • 安装对应的库,这里面的错误我们先忽略。经过实验,这两个错误并不会影响运行。
pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

在这里插入图片描述

  • 识别单张图片 : 这个里面的yolov5m-seg.pt如果不存在,会自动到github上去下载,但是速度极慢,建议是下载好,然后指定对应路径的pt文件
python segment/predict.py --weights yolov5m-seg.pt --data data/images/bus.jpg

在这里插入图片描述

  • 观察输出:通过对比识别结果和原始图片,我们会发现YOLOv5模型在识别效率和精度方面表现非常出色。无论是公交车的轮廓还是细节,模型都能够准确地识别并标注出来,显示了其强大的图像处理能力。
# Fusing layers...
# YOLOv5m-seg summary: 301 layers, 21971597 parameters, 0 gradients, 70.8 GFLOPs
# image 1/2 /home/HwHiAiUser/Documents/yolov5-master/data/images/bus.jpg: 640x480 4 persons, 1 bus, 2052.6ms
# image 2/2 /home/HwHiAiUser/Documents/yolov5-master/data/images/zidane.jpg: 384x640 2 persons, 1 tie, 1660.7ms
# Speed: 4.7ms pre-process, 1856.6ms inference, 13.7ms NMS per image at shape (1, 3, 640, 640)
# Results saved to runs/predict-seg/exp3

实时识别视频

  • 使用yolo对视频进行实时监测
    修改源码detect.py的361行
parser = argparse.ArgumentParser()parser.add_argument("--weights", nargs="+", type=str, default=ROOT / "yolov5s.pt", help="model path or triton URL")# parser.add_argument("--source", type=str, default=ROOT / "data/images", help="file/dir/URL/glob/screen/0(webcam)")parser.add_argument("--source", type=str, default=ROOT / "data/video", help="file/dir/URL/glob/screen/0(webcam)")parser.add_argument("--data", type=str, default=ROOT / "data/coco128.yaml", help="(optional) dataset.yaml path")parser.add_argument("--imgsz", "--img", "--img-size", nargs="+", type=int, default=[640], help="inference size h,w")parser.add_argument("--conf-thres", type=float, default=0.25, help="confidence threshold")parser.add_argument("--iou-thres", type=float, default=0.45, help="NMS IoU threshold")parser.add_argument("--max-det", type=int, default=1000, help="maximum detections per image")parser.add_argument("--device", default="", help="cuda device, i.e. 0 or 0,1,2,3 or cpu")parser.add_argument("--view-img", action="store_true", help="show results")parser.add_argument("--save-txt", action="store_true", help="save results to *.txt")parser.add_argument("--save-csv", action="store_true", help="save results in CSV format")parser.add_argument("--save-conf", action="store_true", help="save confidences in --save-txt labels")parser.add_argument("--save-crop", action="store_true", help="save cropped prediction boxes")parser.add_argument("--nosave", action="store_true", help="do not save images/videos")parser.add_argument("--classes", nargs="+", type=int, help="filter by class: --classes 0, or --classes 0 2 3")parser.add_argument("--agnostic-nms", action="store_true", help="class-agnostic NMS")parser.add_argument("--augment", action="store_true", help="augmented inference")parser.add_argument("--visualize", action="store_true", help="visualize features")parser.add_argument("--update", action="store_true", help="update all models")parser.add_argument("--project", default=ROOT / "runs/detect", help="save results to project/name")parser.add_argument("--name", default="exp", help="save results to project/name")parser.add_argument("--exist-ok", action="store_true", help="existing project/name ok, do not increment")parser.add_argument("--line-thickness", default=3, type=int, help="bounding box thickness (pixels)")parser.add_argument("--hide-labels", default=False, action="store_true", help="hide labels")parser.add_argument("--hide-conf", default=False, action="store_true", help="hide confidences")parser.add_argument("--half", action="store_true", help="use FP16 half-precision inference")parser.add_argument("--dnn", action="store_true", help="use OpenCV DNN for ONNX inference")parser.add_argument("--vid-stride", type=int, default=1, help="video frame-rate stride")opt = parser.parse_args()opt.imgsz *= 2 if len(opt.imgsz) == 1 else 1  # expandprint_args(vars(opt))return opt
  • 执行下面的命令:等待完成
python segment/predict.py --weights ~/Documents/yolov5m-seg.pt --source ~/Downloads/test.mp4

在这里插入图片描述

YoloV5测试视频

使用Ascend测试yolov5

测试项目下载地址

# 配置程序编译依赖的头文件与库文件路径
export DDK_PATH=/usr/local/Ascend/ascend-toolkit/latest 
export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub
# 安装对应的库
apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev
# 安装ACLLite
# 拉取ACLLite仓库,并进入目录
git clone https://gitee.com/ascend/ACLLite.git
cd ACLLite
# 设置环境变量,其中DDK_PATH中/usr/local请替换为实际CANN包的安装路径
export DDK_PATH=/usr/local/Ascend/ascend-toolkit/latest
export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub
# 安装,编译过程中会将库文件安装到/lib目录下,所以会有sudo命令,需要输入密码
bash build_so.sh
# 解压之后进入yolo文件夹
cd EdgeAndRobotics/Samples/YOLOV5MultiInput
export TE_PARALLEL_COMPILER=1
export MAX_COMPILE_CORE_NUMBER=1# 下载并且转换相关的模型
cd model
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/yolov5s_nms.onnx --no-check-certificate
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/aipp.cfg --no-check-certificate
atc --model=yolov5s_nms.onnx --framework=5 --output=yolov5s_nms --input_shape="images:1,3,640,640;img_info:1,4"  --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg
# 准备测试视频
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# 在HDMI连接屏幕场景,执行以下脚本运行样例。此时会以画面的形式呈现推理效果。
bash sample_run.sh imshow
# 在直连电脑场景,执行以下脚本运行样例。此时会以结果打屏的形式呈现推理效果。
bash sample_run.sh stdout
  • 模型转换结果
    在这里插入图片描述
  • 模型输出结果
    在这里插入图片描述

产品评价

香橙派AiPro是一款功能强大的AI开发板

  • 性能强劲:香橙派AiPro采用了昇腾AI技术路线,配备了4核64位处理器+AI处理器,并集成了图形处理器。它支持高达8TOPS的AI算力,并拥有8GB/16GB LPDDR4X内存,可以外接多种容量的eMMC模块12。这些配置使得香橙派AiPro在AI算法原型验证、推理应用开发等方面表现出色。
  • 丰富的接口和拓展性:香橙派AiPro配备了相当丰富的接口,包括两个HDMI输出、GPIO接口、Type-C电源接口、支持SATA/NVMe SSD 2280的M.2插槽、TF插槽、千兆网口、USB接口等,还预留了电池接口。这些接口赋予了香橙派AiPro强大的可拓展性,使其能够适应多种应用场景。
  • 支持多种操作系统:香橙派AiPro支持Ubuntu、openEuler等操作系统,这为用户提供了更多的选择空间,同时也方便了用户根据自己的需求进行开发和部署。
  • 使用体验:香橙派AiPro的包装盒精致小巧,官方提供了完整的配件,包括开发板、适配器和充电器等。开发板上的静音风扇效果良好,开机时噪音短暂,之后几乎无声。WIFI和蓝牙的天线扣设计位置也相对方便。在实际使用中,用户可以通过HDMI接口连接开发板显示,也可以通过SSH等方式远程连接。

综上所述,香橙派AiPro是一款性能强劲、接口丰富、拓展性强、支持多种操作系统的AI开发板。如果你正在寻找一款功能强大的AI开发板,香橙派AiPro是一个不错的选择。

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

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

相关文章

【iOS】—— 消息传递和消息转发

【iOS】—— 消息传递和消息转发 1. 消息传递SEL选择子IMP快速查找汇编代码查找过程总结消息转送快速查找IMP 慢速查找总结消息传递慢速查找IMP 2. 消息转发动态决议动态解析添加方法 快速转发慢速转发 总结动态决议消息转发消息的三次拯救 1. 消息传递 在iOS中,消…

python 获取Shopee虾皮商家店铺商品列表 虾皮api数据采集

此api接口可用于获取虾皮平台商家店铺的商品列表,目前land参数支持id、vn、my、th、sg、ph、tw(印尼、越南、马来、泰国、新加坡、菲律宾、台湾)。 若有需要,请点击文末链接联系我们。 详细采集页面如下https://shopee.tw/yuesh…

【Python】数据处理(mongodb、布隆过滤器、索引)

数据 数据预处理 df pd.read_csv(file_path, encodingANSI) csv的编码方式一定要用 ANSI。要不然会出现各种报错 import pandas as pd from datetime import datetime# 读取CSV文件 file_path book_douban.csv df pd.read_csv(file_path, encodingANSI)# 定义一个函数来…

【信号频率估计】MVDR算法及MATLAB仿真

目录 一、MVDR算法1.1 简介1.2 原理1.3 特点1.3.1 优点1.3.2 缺点 二、算法应用实例2.1 信号的频率估计2.2 MATLAB仿真代码 三、参考文献 一、MVDR算法 1.1 简介 最小方差无失真响应(Mininum Variance Distortionless Response,MVDR)算法最…

最新开源的解析效果非常好的PDF解析工具MinerU (pdf2md pdf2json)

毫不夸张的说 PDF解析工具MinerU是照进RAG黑暗中的一道光——这是我对它的评价。我测过太多了文档解析工具! 最近在做文档解析的工作。看了很多的开源的文档解析的工具,版面分析的工具,其中包括paddelpaddel这样30kstar的明星工具。但是效果都…

electron项目中实现视频下载保存到本地

第一种方式:用户自定义选择下载地址位置 渲染进程 // 渲染进程// 引入 import { ipcRenderer } from "electron";// 列表行数据下载视频操作,diffVideoUrl 是视频请求地址 handleDownloadClick(row) {if (!row.diffVideoUrl) {this.$message…

【数据结构】二叉树———Lesson2

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…

网安小贴士(17)认证技术原理应用

前言 认证技术原理及其应用是信息安全领域的重要组成部分,涉及多个方面,包括认证概念、认证依据、认证机制、认证类型以及具体的认证技术方法等。以下是对认证技术原理及应用的详细阐述: 一、认证概述 1. 认证概念 认证是一个实体向另一个实…

【初阶数据结构】掌握二叉树遍历技巧与信息求解:深入解析四种遍历方法及树的结构与统计分析

初阶数据结构相关知识点可以通过点击以下链接进行学习一起加油!时间与空间复杂度的深度剖析深入解析顺序表:探索底层逻辑深入解析单链表:探索底层逻辑深入解析带头双向循环链表:探索底层逻辑深入解析栈:探索底层逻辑深入解析队列:探索底层逻辑深入解析循环队列:探索…

Chromium CI/CD 之Jenkins实用指南2024 - 常见的构建错误(六)

1. 引言 在前一篇《Chromium CI/CD 之 Jenkins - 发送任务到Ubuntu(五)》中,我们详细讲解了如何将Jenkins任务发送到Ubuntu节点执行,并成功验证了文件的传输和回传。这些操作帮助您充分利用远程节点资源,提升了构建和…

CrossKD: Cross-Head Knowledge Distillation for Dense Object Detection

CrossKD:用于密集目标检测的交叉头知识蒸馏 论文链接:https://arxiv.org/abs/2306.11369v2 项目链接:https://github.com/jbwang1997/CrossKD Abstract 知识蒸馏(Knowledge Distillation, KD)是一种有效的学习紧凑目标检测器的模型压缩技术…

Uniapp 组件 props 属性为 undefined

问题 props 里的属性值都是 undefined 代码 可能的原因 组件的名字要这样写,这个官方文档有说明

【转盘案例-弹框-修改Bug-完成 Objective-C语言】

一、我们来看示例程序啊 1.旋转完了以后,它会弹一个框,这个框,是啥, Alert 啊,AlertView 也行, AlertView,跟大家说过,是吧,演示过的啊,然后,我们就用iOS9来做了啊,完成了以后,我们要去弹一个框, // 弹框 UIAlertController *alertController = [UIAlertContr…

爬虫案例(读书网)(下)

上篇链接: CSDN-读书网https://mp.csdn.net/mp_blog/creation/editor/139306808 可以看见基本的全部信息:如(author、bookname、link.....) 写下代码如下: import requests from bs4 import BeautifulSoup from lxml import etreeheaders{…

【中项】系统集成项目管理工程师-第2章 信息技术发展-2.1信息技术及其发展-2.1.1计算机软硬件与2.1.2计算机网络

前言:系统集成项目管理工程师专业,现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试,全称为“全国计算机与软件专业技术资格(水平)考试”&…

内部类+图书管理系统

内部类图书管理系统 1. 实例内部类1.1 实例内部类的结构1.2 实例内部类的一些问题1.2.1 如何在main中创建实例内部类对象?1.2.2 内部类成员变量被static修饰问题?1.2.3 内部类和外部类变量重名的调用问题?1.2.4 外部类访问内部类变量的问题 2…

HiFi-GAN——基于 GAN 的声码器,能在单 GPU 上生成 22 KHz 音频

拟议的 HiFiGAN 可从中间表征生成原始波形 源码地址:https://github.com/NVIDIA/DeepLearningExamples 论文地址:https://arxiv.org/pdf/2010.05646.pdf 研究要点包括 **挑战:**基于 GAN 的语音波形生成方法在质量上不及自回归模型和基于流…

Linux网络——TcpServer

一、UDP 与 TCP 在现实生活中,Udp 类似于发传单,Tcp 类似于邮局的挂号信服务。 1.1 UDP(用户数据报协议) 无连接:发放传单时,你不需要提前和接受传单的人建立联系,直接把传单发出去。不可靠&…

Spring Boot1(概要 入门 Spring Boot 核心配置 YAML JSR303数据校验 )

目录 一、Spring Boot概要 1. SpringBoot优点 2. SpringBoot缺点 二、Spring Boot入门开发 1. 第一个SpringBoot项目 项目创建方式一:使用 IDEA 直接创建项目 项目创建方式二:使用Spring Initializr 的 Web页面创建项目 (了解&#…

低代码中间件学习体验分享:业务系统的创新引擎

前言 星云低代码平台介绍 星云低代码中间件主要面向企业IT部门、软件实施部门的低代码开发平台,无需学习开发语言/技术框架,可视化开发PC网页/PC项目/小程序/安卓/IOS原生移动应用,低门槛,高效率。针对企业研发部门人员少&#…