【ATU Book-MemryX 系列】手把手教你玩 AI - 香澄派 Orange Pi 5 Plus + MemryX MX3 轻松上手人工智能 - Python 篇

一、概述

在当前科技迅速发展的环境中,人工智能(AI)技术日益普及,边缘计算 (Edge Computing) 也随之成为 AI 应用的核心支柱。传统云计算虽然具备强大的集中处理能力,但在大量数据传输和实时响应的需求下,延迟与带宽的瓶颈逐渐显现。因此,边缘计算的概念应运而生,通过将部分计算分配到数据生成端的应用,不仅显著降低延迟,还有效减轻网络负担,提升了应用的实时性与隐私性。

在这波边缘计算浪潮中,MemryX 加速卡以其卓越的浮点计算能力 (BF16) 及全面的软件服务,成为 AI 边缘计算的独树一帜的存在。过去传统边缘计算多集中于整数运算,但在实际应用中,仍有某些任务需要高度精确度,因此浮点运算的智能芯片将成为物体检测、图像识别和自然语言处理等边缘应用的理想选择。MemryX 于 2024 年提出了一套新的加速卡解决方案,能够在低功耗 (5 TFLOPS/W) 的情况下提供卓越的 AI 计算性能 (20 TFLOPS),逐渐成为边缘智能应用的关键推动者。

除了硬件性能,MemryX 还提供丰富的软件服务是一大亮点。其软件支持包括各模块评估、API 接口、驱动程序和多种开发工具,方便开发者快速集成并灵活调整 AI 运算需求。MemryX 的软件支持涵盖了从 MX3+ 芯片模拟性能 (Simulator)、权重精度调整 (Weight Precision)、模型裁剪 (Model Cropping) 工具以及模型库资源,能够帮助 MX3+ 运行性能达到最佳状态。

未来,MemryX 不仅在现有系统升级中扮演重要角色,还将成为边缘计算和 AI 深度整合的核心引擎。其强大的浮点运算能力和全面的软件服务,为用户提供即插即用的 AI 解决方案,开创边缘智能新时代。

本章节将向用户介绍如何安装 MemryX 以及 Python 的示例程序应用

、快速搭建 MemryX

(1) 硬件架构

将 MemryX MX3+ 2280 尺寸模块连接到 Orange Pi 的 M.2 插槽,并连接散热片 (heat sink)、屏幕 (screen)、摄像头 (USB Camera)、鼠标 (mouse)、键盘 (keyboard)、网线 (Ethernet Cable)。

(2)下载 Orange Pi 5 Plus 预构建镜像 (Ubuntu)

请至官方网站下载预构建镜像

下载 Orangepi5plus_1.0.8_ubuntu_focal_desktop_xfce_linux5.10.160.7z 并将其解压缩

Ubuntu适用版本:18.04 (Bionic Beaver)、20.04 (Focal Fossa)、22.04 (Jammy Jellyfish)

Linux 内核版本:5.10.x ~ 6.1.x

(3) 将 Ubuntu 系统烧录至 SD 卡

请将 SD 卡 (建议准备 16GB 以上的容量) 插入到 PC 端,并使用 Rufus 进行烧录。

(4) 进入 Ubuntu 系统并连接网络

烧录完成后,请将 SD 卡放入 Orange Pi 5 Plus。即可连接电源进入系统,并连接上网络。

(5) 安装 kernel-header 头文件

$ sudo apt install linux-headers-$(uname -r)

(6)安装 MemryX SDK 包

▲ 添加 GPG 密钥

$ wget -qO- https://developer.memryx.com/deb/memryx.asc | sudo tee /etc/apt/trusted.gpg.d/memryx.asc >/dev/null

▲ 添加软件至 APT 列表

$ echo 'deb https://developer.memryx.com/deb stable main' | sudo tee /etc/apt/sources.list.d/memryx.list >/dev/null

▲ 安装 MemryX MX3+ NPU 驱动程序

$ sudo apt update

$ sudo apt install memx-drivers

▲ 安装 MemryX MX3+ Runtime (C/C++)

$ sudo apt install memx-accl

▲ 安装 MemryX SDK 包(Python)

安装必要的包

$ sudo apt install python3.12-venv

(2)创建虚拟环境

$ python3 -m venv ~/mx

(3) 启动虚拟环境

$ . ~/mx/bin/activate

(4) 将必要的包安装到虚拟环境中

$ sudo apt install python3-pip

$ pip3 install --upgrade pip wheel

$ sudo apt install libhdf5-dev python3-dev cmake python3-venv

$ sudo apt install python3-pip

$ sudo apt install python3-numpy

$ sudo apt install python3-opencv

$ sudo apt install python3-matplotlib

$ pip install opencv-python

(5) 安装 MemryX MX3+ 运行时 (Python)

$ pip3 install --extra-index-url https://developer.memryx.com/pip memryx

(6) 验证环境

通过以下指令确认版本是否正确。

$ mx_nc –version

以下指令用于确认芯片状态。

$ mx_bench –hello

三、DEMO 实作展示 (Python)

请前往官网连接到 Tutorials 进行 DEMO 教学示范,并请连接一个 USB 摄像头进行展示。切记,记得进入 Python 的虚拟环境中。

(1) 深度估计

深度估计 (Depth Estimation) 展示了利用彩色影像图片来生成具有距离意义的深度图。

下载 depth_estimate.py 和 midas_v2_small.dfp 放入文件夹。

创建文件夹并复制文件

$ mkdir DepthEstimation_Python && cd DepthEstimation_Python

$ python3 depth_estimate.py

每秒运行约 29 帧,CPU 使用率约 200.3%,内存使用率约 0.1%(0.25 GB)

(2)姿态估计(YOLOv8)

肢体估计 (Pose Estimation) - YOLOv8是目前最热门的DNN算法,于2023年提出 [Ultralytics] 被设计用于计算人体肢体的节点位置与相关性。

下载并解压 Pose_Estimation_Python.zip

$ unzip Pose_Estimaton_Python.zip

$ cd Pose_Estimaton_Python
$ python3 app.py

每秒运行约 30 帧,CPU 使用率约 260.0%,内存使用率约 5.2%(0.83 GB)

(3)目标检测 (YOLOv7t)

物体检测 (Object Detection) - YOLOv7 Tiny是目前最热门的DNN算法,于2022年提出 [PDF] 被设计用于计算各种物体的位置与相关性。

下载并解压 object_detection_multistream_python_on_mx3.zip

$ unzip object_detection_multistream_python_on_mx3.zip

$ cd object_detection_multistream_python_on_mx3
$ python3 app.py

每秒运行约 29.8 帧,CPU 使用率约 198.2%,内存使用率约 4.7%(0.83GB)

Note : 若有 ImportError: cannot import name 'Simulator' from 'memryx' 问题,请至 yolov7.py 移除 from memryx import Benchmark,Simulator

(4)目标检测(YOLOv8S)

物体检测 (Object Detection) - YOLOv8 是目前最热门的 DNN 算法,于 2023 年提出 [Ultralytics] 被设计用于计算各种物体的位置与相关性。

下载并解压  yolov8_object_detection_python.zip

$ unzip yolov8_object_detection_python.zip

$ cd yolov8_object_detection_python
$ python3 app.py

每秒运行约 30 帧,CPU 使用率约 192.4%,内存使用率约 5.2%(0.83GB)

(5)人脸检测与情感分类

脸部与表情检测 (Face Detect & Emotion Classification) 是通过Mobilenet算法计算各种脸部表情之间的相关性,从而实现各种表情的分类。

下载 multimodel_python.tar.xz 和 models.dfp 放入文件夹。

$ tar -xvf multimodel_python.tar.xz --xz

将模型重命名为 face_det_emotion_recog.dfp

$ mv models.dfp multimodel_python/face_det_emotion_recog.dfp

$ python3 app.py

每秒运行约 30 帧,CPU 使用率约 200%,内存使用率约 0.1%(0.25 GB)

四、结语

MemryX MX3+ AI 加速卡提供高性能、低功耗且灵活的 AI 边缘计算解决方案特别适用于物体检测、视觉分析和实时监控等应用场景。通过浮点数运算(BF16)及内置10MB SRAM内存,能够在不占用主系统内存资源的前提下,确保运算精度,并提升AI模型的性能与可扩展性。

在 Python DEMO 测试中,单颗摄像头的物体检测仅需占用两颗 CPU 处理视频,而系统内存使用量仅为 5%,显示出 MemryX 芯片的高效运算与极低资源占用特性。如果研究深入一些,MemryX 提供强大的开发工具,开发者可以灵活切割 AI 模块的前后处理,甚至能将图像前处理交由 ISP(图像信号处理器)或 DSP(数字信号处理器)处理,从而进一步优化运算效率。Python 固然方便,但相比于 C++,性能略有些许差异!

MemryX MX3+ 的核心优势

● 高帧率运算:单张低功耗 M.2 卡可同时处理 10 路摄像头画面,支持多 AI 模型并行运行。

● 高精度与自动编译:一键完成 BF16 浮点模型编译,确保 AI 准确度,无需额外调整或重新训练。

● 原始模型保持完整:无需修改 AI 模型即可直接部署,并可选择模型剪枝与压缩来优化设计。

● 自动化前/后处理:自动识别并整合前后处理代码,减少开发与调试时间,提高部署效率。

● 优异的可扩展性:可单芯片运行,也可16芯片组合为逻辑单元,无需额外的PCIe交换器。

● 低功耗设计:单颗 MX3 芯片仅消耗 0.5W ~ 2.0W,4 芯片模块的功耗低于主流 GPU 的 1/10。

● 广泛的硬件与软件支持:兼容 x86、ARM、RISC-V 平台及多种操作系统,开发灵活性极高。

随着人工智能在零售、汽车、工业、农业和机器人等行业中的广泛应用,MemryX 正站在边缘计算技术的前沿,为客户提供卓越的性能和更高的价值。在未来,MemryX 将继续推动技术创新,成为AI 边缘计算领域中不可或缺的合作伙伴通过上述原厂提供的工具与示例,AI 不再是遥不可及的梦想,只需一步步按照示例步骤操作,就可以快速实现任何智能应用。若想试用或购买 MemryX 产品的新伙伴,请直接联系伊布小编!谢谢

五、参考文件

[1]MemryX 官方网站

[2] MemryX 开发者中心技术网站

[3]EE Awards 2022 亚洲金选奖

[4]MemryX - LinkedIn 官方账号

[5]MemryX_示例

如有任何相关MemryX技术问题,欢迎在博文底下留言提问!!

接下来还会分享更多MemryX的技术文章 !!敬请期待【ATU Book-MemryX系列】!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值