0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何通过生产就绪平台快速构建和部署自适应边缘视觉应用

海阔天空的专栏 来源:Stephen Evanczuk 作者:Stephen Evanczuk 2023-10-03 14:24 次阅读

作者:Stephen Evanczuk

在越来越多的嵌入式视觉应用中,如机器视觉、安保、零售和机器人人工智能AI) 在基于边缘的智能摄像头上的应用已迅速获得认可。虽然可获得机器学习(ML) 算法的迅速出现帮助迎来了人们对 AI的这种兴趣,但开发人员仍难以在满足紧迫的项目时间表的同时,在保持低功耗的情况下为基于边缘的应用提供高性能。

更为复杂的是,由于应用需求的快速变化和演化算法的持续改进,即使是新部署的解决方案也会迅速成为次优方案。

本文将介绍 Xilinx 提供的灵活系统级模块 (SOM)解决方案,开发人员能用它来快速实现边缘部署的智能摄像头解决方案。文中展示了他们如何能够更容易地调整这些解决方案,以应对不断变化的需求,而不影响对延时和功耗的关键要求。

加快视觉应用的执行

Xilinx 的 Kria K26 SOM 基于定制的 Zynq UltraScale+ 多处理器片上系统(MPSoC),提供了强大的嵌入式处理系统,其中包括一个 64 位四核 Arm Cortex-A53 应用处理单元 (APU)、一个 32 位双核 Arm®
Cortex®-R5F 实时处理单元 (RPU) 和一个 Arm Mali-400MP2 3D 图形处理单元 (GPU)。SOM 将 MPSoC 与四千兆字节的64 位宽双倍数据速率 4 (DDR4) 存储器和相关的存储控制器以及多个非易失性存储器 (NVM) 器件结合起来,包括 512 兆位 (Mb)的四路串行外设接口 (QSPI) 存储器、16 千兆字节 (GB) 的嵌入式多媒体卡 (eMMC) 存储器和 64 千位 (Kb) 的电可擦除可编程只读存储器(EEPROM)(图 1)。

1.png

图 1:Xilinx 的 Kria K26 SOM 将定制的 Zynq UltraScale+ MPSoC 的广泛处理能力与可信平台模块 2.0
(TPM2) 以及动态和非易失性存储器相结合。(图片来源:Xilinx)

Xilinx 通过广泛的可编程逻辑系统补充其处理和存储器资产,该系统包括 256K 系统逻辑单元、234K 可配置逻辑块 (CLB) 触发器、117KCLB 查找表 (LUT),以及分布式随机存取存储器 (RAM)、块 RAM 和 ultraRAM 块等各种配置共计 26.6 兆位 (Mb)的存储器。此外,可编程逻辑系统包括 1,248 个数字信号处理 (DSP) 片、四个收发器以及一个 H.264 和 H.265 的视频编解码器,能够支持多达32 个流的同时编/解码,在 60 帧/秒 (fps) 的情况下总像素达 3840 x 2160。SOM 的两个 240 针连接器通过用户可配置的输入/输出(I/O) 提供对功能块和外设的随时访问。

这种处理器内核、存储器和可编程逻辑的组合提供了独特的灵活性和性能水平,克服了高速执行 ML 算法所用 GPU 的主要缺点。不同于 GPU的固定数据流,开发人员可以重新配置 K26 SOM 数据路径,以优化吞吐量并减少延时。此外,K26 SOM 的架构特别适合于处于不断增加的 ML应用核心的稀疏网络

K26 SOM 的可编程性还解决了存储器瓶颈问题,这些瓶颈既增加功耗,又限制存储器密集型应用的性能,如使用 GPU、多核处理器甚至高级 SoC的传统架构构建的 ML。在使用这些传统器件设计的任何应用中,外部存储器通常占系统功耗的 40% 左右,而处理器内核和内部存储器通常各占 30%左右。相比之下,开发人员可以利用 K26 SOM 的内部存储器块和可重构性来实现几乎不需要外部存储器访问的设计。因此,与传统器件相比,性能提高,功耗降低(图2)。

2.png

图 2:虽然基于嵌入式 CPU 和典型 SoC 的系统需要多次以高功耗访问存储器来运行其应用,但基于Xilinx Kria的系统则采用高效视觉管道,其可设计为避免任何 DDR 访问。(图片来源:Xilinx)

除了高性能、低功耗和广泛的可重构性外,K26 SOM 有助于确保敏感应用的智能摄像头设计的安全性。除了 SOM 内置 TPM 安全器件外,MPSoC还集成了一个专用配置安全单元 (CSU),支持安全启动、篡改监控、安全密钥存储和加密硬件加速。CSU、内部片上存储器 (OCM)和安全密钥存储共同提供了安全基础,以确保实现安全启动的硬件信任根和用于应用执行的可信平台。

K26 SOM的广泛功能为实施基于边缘的苛刻应用提供了强大的基础。然而,每个应用都有自己的要求,即与一组特定应用的外设和其他元器件相关的特性和功能。为了简化特定应用解决方案的实施,K26 SOM 可专门插入一个能承载其他外设的载卡中。Xilinx 通过其基于 Kria K26 的 KV260 视觉 AI 入门套件展示了这种方法。

入门套件简化了视觉应用的开发

Xilinx 的 KV260 视觉 AI 入门套件包括一个插入到以视觉为中心的载板的 K26 SOM,该套件提供了一个开箱即用的平台,专门用于即时评估和快速开发智能视觉应用。尽管 K26 SOM
提供了所需的处理能力,但入门套件的载板提供了电源管理,包括上电和复位定序,以及用于摄像头、显示器和 microSD 卡的接口选项和连接器(图 3)。
1.png

图 3:Xilinx 的 KV260 视觉 AI 入门套件使用插入到以视觉为中心的载板的 K26
SOM,提供了一个完整的智能视觉解决方案。(图片来源:Xilinx)

除了多个接口外,载板还通过其 Raspberry Pi 连接器和一对图像访问系统 (IAS) 连接器提供多摄像头支持。其中一个连接器链接到一个专用
onsemi 1300 万像素 AP1302 图像传感器处理器 (ISP),其能应对所有图像处理功能。

为了进一步加快实现基于视觉的应用,Xilinx
通过各种预置加速视觉应用以及一套全面的软件工具和库(以便进行定制开发),来支持这种预定义的视觉硬件平台。

加速应用提供即时解决方案

为了即时评估和快速开发加速视觉应用,Xilinx
提供了几个预置应用,其中演示了几个流行用例的执行,包括使用其可编程逻辑的智能摄像头人脸检测、行人识别和跟踪、缺陷检测以及使用 MPSoC
处理系统的成对关键字识别。在 Xilinx Kria
应用商店中,每个应用都为其特定用例提供了完整的解决方案,并配有相应的工具和资源。例如,智能摄像头人脸检测应用使用 KV260 载卡的内置 AR1335
图像传感器和 AP1302 ISP 来采集图像,并由载卡的 HDMI 或 DisplayPort (DP) 输出来渲染结果。对于人脸检测处理,应用配置了 K26
SOM,以提供视觉管道加速器和预置的机器学习推理引擎,用于人脸检测、人员计数和其他智能摄像头应用(图 4)。

2.png

图 4:预置的加速应用可从 Xilinx Kria 应用商店下载,可在 KV260入门套件上立即运行,为人脸检测等视觉使用模型提供完整的解决方案。(图片来源:Xilinx)

来自 Xilinx 应用商店的预置加速应用提供完整的实施和支持,让开发人员能够在一小时内完成设计并运行,即使缺乏 FPGA经验也没问题。评估应用时,他们可以使用所提供的软件堆栈来修改功能,以探索替代解决方案。对于更广泛的定制开发,Xilinx 提供了一套全面的开发工具和库。

AI 开发环境和工具加速定制开发

对于基于 AI 应用的定制开发,Xilinx 的 Vitis AI开发环境提供了优化的工具、库和预先训练的模型,可用作更专业的定制模型的基础。对于运行时操作环境,Xilinx 基于 Yocto 的 PetaLinux 嵌入式Linux 软件开发套件 (SDK) 提供了构建、开发、测试和部署嵌入式 Linux 系统所需的全套功能。

Vitis AI 环境针对没有 FPGA 经验的专家和开发人员而设计,将底层硅硬件的细节抽象化,让开发人员能够专注于建立更有效的 ML模型。事实上,Vitis AI 环境与开源 Apache Tensor 虚拟机 (TVM)深度学习编译器堆栈集成,让开发人员能够将他们的模型从不同的框架编译到处理器、GPU 或加速器。开发人员使用带有 TVM 的 Vitis AI,可以用加速视觉功能增强其现有设计,将深度学习模型等计算密集型视觉工作负载卸载到 Kria SOM。为了帮助开发人员进一步优化其深度学习模型,Xilinx的 AI 优化工具可以对神经网络进行修剪,以降低每秒十亿次运算 (Gops) 数的复杂性,提高每秒帧数 (fps),并减少过度参数化的模型,其中将模型压缩高达50 倍,而对平均精度 (mAP) 所代表的准确性几乎没有影响(图 5)。

1.png

图 5:Xilinx Research 的一项案例研究表明,使用 Xilinx AI 优化工具进行几次迭代修剪,就可以迅速降低神经网络在 Gops数上的复杂性,同时提高每秒帧数,而这一切对准确性几乎没有影响。(图片来源:Xilinx)

对于定制视觉应用的实现,Xilinx 的开源 Vitis Vision 库在 Xilinx 平台上进行了高性能和低资源利用的优化,提供了一个基于OpenCV 的熟悉界面。在分析方面,Xilinx 的视频分析 SDK 应用框架帮助开发人员建立更有效的视觉和视频分析管道,而不需要深厚的 FPGA知识。视频分析 SDK 基于广泛采用的开源 GStreamer 框架,开发人员可以用它快速创建自定义加速内核,作为 GStreamer 插件集成到 SDK框架。

典型的嵌入式开发人员使用这些工具,无论是否有自定义加速内核,都可以很容易地组装自定义加速管道。

总结

计算密集型 ML算法使智能视觉技术能够在边缘运行的多种应用中使用,但要满足基于边缘的视觉系统的高性能、低功耗和适应性的要求,开发人员面临着多种挑战。Xilinx 的 Kria K26 SOM 解决方案为加速高级算法提供了硬件基础,同时又不超出严格的功耗预算。开发人员使用基于 Kria K26的入门套件和预置应用,可以立即开始评估智能视觉应用,并使用全面的开发环境来创建自定义边缘设备解决方案。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5068

    文章

    19008

    浏览量

    302916
  • 存储器
    +关注

    关注

    38

    文章

    7447

    浏览量

    163579
  • ML
    ML
    +关注

    关注

    0

    文章

    144

    浏览量

    34597
收藏 人收藏

    评论

    相关推荐

    如何快速部署边缘就绪的机器学习应用

    作者:Stephen Evanczuk 机器学习 (ML) 为创造智能产品提供了巨大的潜力,但神经网络 (NN) 建模和为边缘创建 ML应用非常复杂且困难,限制了开发人员快速交付有用解决方案的能力
    的头像 发表于 10-03 14:29 549次阅读
    如何<b class='flag-5'>快速</b><b class='flag-5'>部署</b><b class='flag-5'>边缘</b><b class='flag-5'>就绪</b>的机器学习应用

    如何在自己的固件中增加wifi自适应性相关功能,以通过wifi自适应认证测试?

    目前官方提供了自适应测试固件 ESP_Adaptivity_v2.0_26M_20160322.bin 用于进行 wifi 自适应认证测试. 请问如何在自己的固件中增加 wifi 自适应性相关功能,以
    发表于 07-12 08:29

    【Banana Pi M1+申请】阈值自适应视频边缘检测算法的嵌入式快速实现

    申请理由:本人已经成功完成阈值自适应视频边缘检测算法的FPGA快速实现,但FPGA也有很多局限性,所以想将硬件平台从FPGA换成香蕉派。相信会有全新的体验,和更加快捷的开发途径。项目描
    发表于 06-20 15:55

    如何搭建DotNet Core 21自动化构建和部署环境

    边缘化搭建DotNet Core 21 自动化构建和部署环境(上)
    发表于 04-23 14:53

    构建一种低功耗小基站和适变型边缘计算MEC网络平台

    的核心技术支撑下,共同构建面向垂直行业的5G高规格低功耗小基站和适变型边缘计算MEC(Mobile Edge Computing)网络平台。5G标准通过支持大带宽、高阶MIMO、高阶调
    发表于 09-08 14:12

    LabVIEW开发自适应降噪ANC

    。本文介绍使用自适应筛选器工具包的ANC的一些实际示例。 ANC应用程序使用自适应过滤器,这些过滤器的系数会根据特定标准自动调整。通过一些最小均方(LMS)、归一化LMS和递归最小二乘法(RLS)等方法
    发表于 11-30 19:38

    基于自适应边缘提取的人眼定位方法

    本文提出了一种基于自适应边缘提取的人眼定位算法。首先通过高斯平滑滤波对原始图像进行预处理,然后利用Robert 算子进行边缘提取,并且以边缘
    发表于 07-16 09:21 19次下载

    一种新的快速自适应车牌定位方法

    针对现存车牌定位方法自适应性差和鲁棒性不强的情况,本文提出了一种新的快速自适应车牌定位算法.此算法结合图象中车牌区域的纹理特征、灰度和边缘投影信息定位车牌,经
    发表于 08-26 08:19 27次下载

    超大视场自适应快速对焦算法

    超大视场自适应快速对焦算法,毕业论文分享。
    发表于 05-12 14:25 0次下载

    自适应快速最大信息系数算法实现

    自适应快速最大信息系数算法实现
    发表于 01-07 20:49 0次下载

    基于模糊自适应PID算法的快速充电系统设计_孙莉莉

    基于模糊自适应PID算法的快速充电系统设计_孙莉莉
    发表于 01-13 21:36 1次下载

    面向边缘检测的限制型自适应SUSAN算法

    segment assimilating nucleus,USAN),并经过单一阈值判断,非边缘点易被误判为边缘点,导致算法的低鲁棒性。针对此问题,提出了结合自适应门限算法和阈值选择策賂的限制型
    发表于 05-12 14:22 2次下载

    自适应平台Adaptive Platform资料汇总

    自适应平台Adaptive Platform资料汇总
    发表于 07-22 11:19 2次下载

    Dialog半导体公司为Xilinx Kria K26自适应系统模块提供电源管理方案

    赛灵思的Kria自适应SOM产品组合是可随时投产的小型嵌入式板卡,可在基于边缘的应用中实现快速部署
    发表于 08-30 10:03 2281次阅读

    如何使用生产就绪平台边缘快速构建和部署自适应视觉应用程序

    发表于 11-24 19:25 0次下载
    如何使用<b class='flag-5'>生产</b><b class='flag-5'>就绪</b><b class='flag-5'>平台</b>为<b class='flag-5'>边缘</b><b class='flag-5'>快速</b><b class='flag-5'>构建和</b><b class='flag-5'>部署</b><b class='flag-5'>自适应</b><b class='flag-5'>视觉</b>应用程序