浅谈嵌入式视觉系统的核心——NPU

描述

  眼睛是大自然进化杰作的结果。从感光视网膜到携带信息的视神经,再到分析神经系统——自然视觉是一项高度复杂的数据处理活动,它使用低功耗神经网络。对所见事物的智能抽象使人类和动物能够在几分之一秒内得出结论,眼睛捕捉到的可见光与他们的生活有什么相关性。这种自然智能的杰作用了数百万年的时间来进化。人工智能 (AI) 系统的开发人员需要更快地实现这一壮举。

  因此,人工智能加速应用程序的开发人员正在转向紧凑型和预配置的嵌入式视觉套件,这些套件以节能的方式结合了经过验证的人工智能硬件和软件。目前,人们对专用边缘计算解决方案特别感兴趣。对于 AI 加速系统,这是根据图像信息实时做出明智决策的神经痛点。通过基于云的分析绕道而行需要更长的时间,并且取决于持续的网络可用性。而在边缘,您始终处于动作现场,这使得在几分之一秒内自动获取和评估视觉图像数据成为可能。

  边缘解决方案必须稳健可靠

  对于这种视觉边缘计算系统来说,强大而可靠的硬件是绝对必要的,因为数据无法在受保护的空调环境中处理,就像云计算一样。无论是部署在户外还是在野外,在车辆上旅行还是坐在制造车间,视觉边缘计算系统都必须具有弹性。

  对 AI 视觉的需求来自视觉应用,例如农业中的成熟水果检测、制造业中的自动化产品检测、楼宇自动化中的访问控制或销售点零售购物车中的产品识别。基于边缘的实时分析优于人工检查,因为它每周 7 天、每天 24 小时工作。这些优势对于恶劣环境中的工业操作尤为重要。以监控风力涡轮机为例,或对生产过程进行安全相关的视频监控。麦肯锡的一项研究发现,人工智能系统还可以通过预测性维护将工厂利用率和生产力提高多达 20%。带有自动缺陷检测的视觉质量监控甚至可以将生产率提高多达 50%。

  所有这些应用程序的共同点是,它们必须在提供的图像、视频或机器数据中找到模式以进行决策。更重要的是,这些应用程序必须能够识别模式或对象,即使它们与模型 100% 不匹配。例如,必须正确识别交通标志,无论它是从哪个角度记录的,或者是否有一半被雪或泥土覆盖。这需要挖掘大量数据。

  标准 CPU 不适用于此类任务,因为它们针对具有最高数学正确性的一次计算过程进行了优化。因此需要另一种计算方法。人工智能需要人工神经网络来模仿大脑的直观工作方式。与必须准确计算所有内容和每个点以做出决定相比,这使得识别和决策制定速度更快。

  NPU——嵌入式视觉系统的核心

  神经形态处理器或神经处理单元 (NPU) 对于为边缘的深度学习和机器学习提供这种计算性能是必不可少的。NPU 擅长分析图像和模式,使其成为 AI 加速嵌入式视觉系统的中央计算单元。受大脑神经网络架构的启发,神经形态处理器是事件驱动的,只是偶尔需要电源。这意味着 NPU 仅消耗几瓦,即使对于最高的计算和图形任务也是如此。

  NPU 是高度专业化的计算核心,经过优化以执行机器学习算法。它们不仅可以处理高度并行的工作负载,还可以极快地计算重复性任务。这对于卷积神经网络很重要,因为卷积神经网络中的数据点必须在数千个范围内进行折叠。例如:在全高清图像中,大约需要处理 200 万像素。这需要每秒处理许多操作 (OPS),而 NPU 需要实现每秒数万亿次操作 (TOPS) 的性能才能满足边缘计算要求。但是,即使是极其强大的 CPU 也无法提供这种性能,这怎么可能呢?在这里,另一个区别点开始发挥作用:单个 AI 指令不像 x86 或 ARM CPU 等标准应用处理器的指令集那么复杂。因此,每个计算步骤消耗的资源没有 32 位或 64 位系统那么多。但最终,工程师在他们的应用中需要两者。

  为边缘定制的入门套装

  这就是为什么像 NXP 的 i.MX 8M Plus 这样的处理器将这样的 NPU 与四个标准 Arm Cortex-A53 内核和一个 Arm Cortex-M7 控制器集成在一起,以构建适合机器学习并可以高效执行 AI 算法的应用处理器。但在视觉应用中,只有当图像以必要的质量实时交付时,所有这些才有意义。因此,工程师还需要一个图像信号处理器 (ISP),以便在采集过程中对图像和视频进行预处理。这种预处理质量越高,NPU 中的后处理就越准确。因此,高质量的 ISP 不仅适用于高性能工业图像处理;在任何可以使用图像处理算法来产生更好的视觉效果的地方,这都是一个福音。

  人工智能加速的眼睛

  另一个重点是如何接收视觉数据。视觉数据通信的一种渠道是 MIPI CSI-2.0。如果该接口也预集成在处理器中,则不需要额外的转换器模块。这不仅简化了系统设计,而且还最大限度地减少了物理占用空间。小尺寸、低功耗和最小散热是基于人工智能的边缘视觉应用的基本要求,适用于物流和农业中的电池供电自动驾驶汽车等应用。

  同时,应用程序还应支持连接相机的不同通信标准,例如 USB 3 或 GigE 视觉,这些标准在机器人和质量检测的工业应用中很常见。特别是 GigE 视觉允许相机和 NPU 之间的距离更长。例如,这对于公共汽车和火车中的视频监控应用至关重要。

  专为人机交互而设计

  但是基于 NPU 的嵌入式视觉系统的应用范围远远超出了人或物体的识别。例如,手势和情感识别与自然语言处理相结合,将人与机器之间的交互通信应用提升到了一个新的水平。超短的响应时间和精确的本地化有助于优化工业制造中的机器人产品组装或仓库物流。并且配备了高安全标准,甚至可以在客户服务或医疗保健等敏感领域找到应用。

  构建块灵活性

  鉴于可能的嵌入式视觉应用的多样性,不言而喻,该领域的技术平台必须允许开发定制应用。一个通用的解决方案将不适合。因此,开发人员需要一组预配置的构建块,他们可以轻松地适应他们的个人需求。这些不仅应包括硬件组件,还应包括软件支持。

  在硬件方面,采用模块化计算机的模块化方法是一种广泛使用且高效的设计原则。计算机模块将所有必需的组件集成在一个应用就绪的构建块中:具有集成 NPU、ISP 和 MIPI CSI-2.0 支持的 SoC,例如 NXP 的 i.MX 8M Plus、RAM 和用于 USB 等附加接口的通用控制器,以太网和 MMC 在一个具有可扩展性能的标准化模块上。整个构建块被插入到特定应用的载板上,该载板只执行所需的外部接口,并且可以很容易地设计成适合所需的物理尺寸和坚固性。

  定制视觉

  如果这些模块不仅带有标准的 BSP,而且还带有对中间件和应用程序级别的全面软件支持,那么这些模块的设计是最容易的。为了获得最大的灵活性,开发人员还需要预配置工具,例如可用于 MIPI CSI-2.0 以及 USB 3 或 GigE 等其他工业相机标准的视觉相机 SDK。软件解决方案应集成推理引擎和库,例如 Arm 神经网络 (NN) 和基于开源的 TensorFlow Lite,以最有效地提供所需的 AI 发现。恩智浦 eIQ 机器学习环境等软件开发平台为开发人员提供了适用于恩智浦微处理器和微控制器的专用库和开发工具。

  凭借其 AI 入门套件(参见图 1),康佳特制作了一个具有集成软件支持的模块,可用于加速 NXP 处理器的实施。

  该套件的核心是一个信用卡大小的 SMARC 2.1 计算机模块 (COM)(图 2)。该模块基于 i.MX 8M Plus 处理器,可让开发人员快速、安全地将 AI 视觉引入其边缘应用程序。

  该模块适用于 -40 至 +85°C 温度范围内的工业应用,工作功耗低,仅为 2 至 6 瓦,并带有被动冷却功能。这使其非常适合各种户外和移动车辆应用。

  结论

  嵌入式视觉的集成对于人工智能加速系统的成功至关重要——无论它们部署在自动驾驶汽车、视频监控摄像头还是协作机器人中。开发人员可以使用预配置的嵌入式视觉构建模块(例如康佳特的 AI 入门套件)更轻松、更快速地创建自定义解决方案。康佳特与 Basler 合作开发的这个构建模块平台将 NXP i.MX 8 Plus 处理器与其集成的神经处理单元 (NPU) 相结合。

  Martin Danzer是康佳特的产品管理总监。他在德根多夫技术大学学习电气工程,在计算机模块的技术服务、开发管理和产品管理方面拥有 20 多年的经验,包括他在 Kontron 和 JUMPtec AG 的时间。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分