后摩尔时代的创新:在米尔FPGA上实现Tiny YOLO V4,助力AIoT应用
2024-11-21
118
来源:米尔电子
学习如何在 MYIR 的 ZU3EG FPGA 开发板上部署 Tiny YOLO v4,对比 FPGA、GPU、CPU 的性能,助力 AIoT 边缘计算应用。(文末有彩蛋)
一、 为什么选择 FPGA:应对 7nm 制程与 AI 限制
在全球半导体制程限制和高端 GPU 受限的大环境下,FPGA 成为了中国企业发展的重要路径之一。它可支持灵活的 AIoT 应用,其灵活性与可编程性使其可以在国内成熟的 28nm 工艺甚至更低节点的制程下实现高效的硬件加速。
米尔的 ZU3EG 开发板凭借其可重构架构为 AI 和计算密集型任务提供了支持,同时避免了 7nm 工艺对国产芯片设计的制约。通过在 ZU3EG 上部署 Tiny YOLO V4,我们可以为智能家居、智慧城市等 AIoT 应用提供高效的解决方案。
CPU GPU FPGA 架构对比
二、 了解 Tiny YOLO 模型及其适用性
YOLO(You Only Look Once)是一种实时物体检测模型,它通过一次性扫描整个图像,实现高效的对象识别。
而其简化版 Tiny YOLO V4 更适合嵌入式设备,具有较少的层数和参数。其轻量化特性更适合在资源受限的设备上运行,尤其在低功耗、实时检测的边缘计算设备中表现出色。
相比传统 GPU,FPGA 能在小面积和低功耗下实现类似的推理性能,非常契合 AIoT 应用。像米尔 ZU3EG 这样的 FPGA 开发板,通过底板和丰富接口的载板设计,非常适合高效的嵌入式低功耗数据处理。
Yolo V4 网络结构图
Tiny Yolo V4 网络结构图
(通过优化网络结构和参数,保持较高检测精度的同时,降低模型的计算量和内存占用)
三、 获取数据集和模型
可下载开源训练集或预训练模型。为了确保兼容性,建议将模型转换为 ONNX 格式,以便后续能在 FPGA 上完成优化。
Tiny YOLO 在 Darknet 上训练的截图
四、 通过 Vivado HLS 为 FPGA 准备模型
要将模型部署到 FPGA,需要将神经网络操作转换为硬件级描述。使用 Xilinx 的 Vitis HLS(高级综合)可以将 Tiny YOLO v4 的 C++ 模型代码的转化为 Verilog RTL(寄存器传输级)代码,从而将模型从软件世界带入硬件实现。
详细步骤:
将 YOLO 的每一层(如卷积层、池化层)映射为硬件友好的 C/C++ 结构。例如,将卷积映射为乘累加(MAC)数组,通过流水线实现并行化。
流水线(Pipelining):利用流水线来处理多项操作并行,减少延迟。 循环展开(Loop Unrolling):展开循环,以每周期处理更多数据,尤其在卷积操作中有效。 设置 DATAFLOW 指令,使层间独立处理。
将激活值和权重量化为定点精度(例如 INT8),而非浮点数。这在维持准确度的同时显著降低计算量,尤其适合 FPGA 的固定点运算支持。
Tiny YOLO 模型在 Vivado HLS 中的层层转化流程图
五、 使用 Vivado 综合与部署 Verilog 到 米尔的ZU3EG FPGA开发板
1.Vivado 中的设置:
将 HLS 输出的 RTL 文件导入 Vivado。
在 Vivado 中创建模块设计,包括连接AXI 接口与 ZU3EG 的 ARM 核连接。
2.I/O 约束与时序:
定义 FPGA 的 I/O 引脚约束,以匹配 ZU3EG 板的特定管脚配置。配置时钟约束以满足合适的数据速率(如视频数据 100-200 MHz)。
进行时序分析,确保延迟和响应速度达到实时要求。
3.生成比特流并下载到 ZU3EG:
生成的比特流可以直接通过 JTAG 或以太网接口下载到 ZU3EG。
将 Tiny YOLO 处理模块连接到 米尔ZU3EG开发板 的外设和接口
六、 在 FPGA 上测试并运行推理
通过连接的相机模块捕捉图像或视频帧,或者使用存储的测试视频。 使用 ZU3EG 的 ARM 核上的 OpenCV 对帧进行预处理,再将它们传入 FPGA 预处理后进行推理。
模型检测对象后,输出边框和类别标签。使用 OpenCV 将边框映射回原始帧,并在每个检测到的对象周围显示类别和置信度。
测量帧速率(FPS)和检测准确度。微调量化位宽或数据流参数,以优化实时需求。
Tiny YOLO 模型在 ZU3EG 上显示检测结果的实时输出,视频帧中标注了检测到的对象
七、 性能优化与调试技巧
内存访问:设计数据存储方式,最大限度利用缓存并减少数据传输,降低内存瓶颈。 降低延迟:重新评估关键路径延迟。若延迟过高,调整 Vitis HLS 中的流水线深度,并验证层间的数据依赖性。 量化改进:尝试 INT8 量化。Xilinx 的 Vitis AI 可帮助微调量化参数,以平衡准确性与速度。
不同优化配置对资源使用的影响
米尔MYC-CZU3EG/4EV/5EV-V2核心板及开发板
在MYIR 的 ZU3EG 开发平台上提供了一种高效的解决方案。利用 FPGA 独特的灵活性和低功耗优势,助力未来 AIoT 设备的普及和智能升级。
关注米尔电子公众号,后台回复FPGA,获取完整Tiny Yolo V4教程。
2024-11-28
FacenetPytorch人脸识别方案--基于米尔全志T527开发板
本篇测评由电子工程世界的优秀测评者“小火苗”提供。本文将介绍基于米尔电子MYD-LT527开发板(米尔基于全志T527开发板)的FacenetPytorch人脸识别方案测试。一、facenet_pytorch算法实现人脸识别深度神经网络1.简介Facenet-PyTorch 是一个基于 PyTorch 框架实现的人脸识别库。它提供了FaceNet模型的 PyTorch 实现,可以用于训练自己的人脸
2024-11-28
米尔出席openEuler Summit 2024,携全志T536和RK3562核心模组亮相
汇聚行业智慧,促进技术共享。2024年11月15日-16日,openEuler Summit 2024在北京中关村国际创新中心圆满落幕。本次大会由开放原子开源基金会(以下简称“基金会”)孵化及运营的openEuler社区协同产业伙伴共同主办,以“以智能,致世界”为主题,旨在汇聚全球产业界力量,推动基础软件根技术持续创新,共建全球开源新生态。米尔电子作为领先的嵌入式处理器模组厂商出席了此次活动,并发
2024-11-28
礼品丰厚,米尔将亮相2024瑞萨技术交流会议
工业自动化技术包罗万象,近年来国内“智慧工厂”浪潮不断推高PLC、伺服、数字电源、逆变器、EtherCAT、Profinet、功能安全、HMI等需求。掌握和精通一门颇具前景的前沿技术是嵌入式工程师职业进阶的不二法门,也是企业赢得市场竞争的关键。如果你是这些热门技术/话题的爱好者、项目开发者或专家,那么下面这场干货满满、礼品丰厚的年度工业技术盛会你绝对不容错过!以“智慧控制·绿色可持续”为主题,瑞萨
2024-11-21
后摩尔时代的创新:在米尔FPGA上实现Tiny YOLO V4,助力AIoT应用
学习如何在 MYIR 的 ZU3EG FPGA 开发板上部署 Tiny YOLO v4,对比 FPGA、GPU、CPU 的性能,助力 AIoT 边缘计算应用。(文末有彩蛋)一、为什么选择 FPGA:应对 7nm 制程与 AI 限制在全球半导体制程限制和高端GPU 受限的大环境下,FPGA 成为了中国企业发展的重要路径之一。它可支持灵活的AIoT 应用,其灵活性与可编程性使其可以在国内成熟的 28n
2024-11-21
追加名额丨米尔瑞芯微RK3576开发板有奖试用
米尔与瑞芯微合作发布的新品基于瑞芯微RK3576应用处理器的MYD-LR3576开发板免费试用活动加码啦~~米尔追加了2块价值849元的MYD-LR3576开发板发起试用活动您不仅可以免费体验还可以获得京东购物卡赶快点击链接报名吧~↓↓↓评测活动报名链接:EEWORLD电子工程世界:https://bbs.eeworld.com.cn/elecplay.php?action=show&op
2024-11-12
米尔RK3576开发板双十一特惠活动!
近日,米尔电子发布基于瑞芯微RK3576核心板和开发板,RK3576作为国产热门处理器,其高性能数据处理能力、领先的AI智能分析、强大的扩展性与兼容性受到广大开发者的关注。此次,米尔推出RK3576开发板特价活动,价格699元起,限量抢购。点击链接购买:https://detail.tmall.com/item.htm?id=8461721608876 TOPS超强算力,8核CPU赋能AI瑞芯微R
2024-11-12
有奖丨米尔 瑞芯微RK3576开发板免费试用
米尔与瑞芯微合作发布的新品基于瑞芯微RK3576应用处理器的MYD-LR3576开发板免费试用活动来啦~~米尔提供了7块价值849元的MYD-LR3576开发板发起试用活动您不仅可以免费体验还可以获得京东购物卡赶快点击链接报名吧~↓↓↓评测活动报名链接:面包板:https://mbb.eet-china.com/evaluating/product-193.html#report试用活动信息报名时
2024-11-07
配置上新!米尔-新唐MA35D1核心板512M DDR配置发布!
米尔在2024年8月推出了基于新唐MA35D1芯片设计的嵌入式处理器模块MYC-LMA35核心板及开发板。MA35D1是集成2个Cortex-A35与1个Cortex-M4的异构微处理器芯片。核心板采用创新LGA 252PIN设计,原生17路UART和4路CAN FD等丰富的通讯接口,可广泛应用于新能源充电桩、工程机械控制器、OBD汽车诊断仪、工业网关、运动控制器和电力DTU等场景。配置上新,容量
2024-11-07
基于OpenCV的相机捕捉视频进行人脸检测--米尔NXP i.MX93开发板
本篇测评由与非网的优秀测评者“eefocus_3914144”提供。本文将介绍基于米尔电子MYD-LMX93开发板(米尔基于NXP i.MX93开发板)的基于OpenCV的人脸检测方案测试。OpenCV提供了一个非常简单的接口,用于相机捕捉一个视频(我用的电脑内置摄像头)1、安装python3-opencvaptinstallpython3-opencv2、查看摄像头支持的格式与分辨率root@d
2024-10-31
低至5折!感恩相伴,助力产品长跑,米尔FPGA开发板大减价
文末有礼米尔电子作为行业领先的解决方案供应商,致力于打造高可靠性、长生命周期的FPGA SOM(System on Module)产品,满足工业、汽车、医疗,电力等严苛应用领域的需求。米尔设计开发硬件平台,接口驱动等底层软件作为中间件,客户仅需关注自身业务与行业应用层软件开发,极大减少设计难度,加快了上市周期。支持开发板样件,POC,量产定制,灵活满足客户不同阶段需求。1. 产品升级与性能提升米尔