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

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

3天内不再提示

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

要长高 来源:embedded 作者:Martin Danzer 2022-05-07 17:33 次阅读

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

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

    关注

    4962

    文章

    18145

    浏览量

    286498
  • 机器人
    +关注

    关注

    206

    文章

    26819

    浏览量

    201018
  • 人工智能
    +关注

    关注

    1773

    文章

    43356

    浏览量

    230100
  • NPU
    NPU
    +关注

    关注

    2

    文章

    194

    浏览量

    18033
  • 边缘计算
    +关注

    关注

    22

    文章

    2758

    浏览量

    45935
收藏 人收藏

    评论

    相关推荐

    嵌入式人工智能的就业方向有哪些?

    联网ARM开发 NB-IoT开发及实战 七:python工程师,人工智能工程师 python语法基础 python核心编程 基于OpenCV的机器视觉开发 嵌入式人工智能渗入生活的方方面面,广泛应用
    发表于 02-26 10:17

    嵌入式系统发展前景?

    嵌入式系统发展前景? 嵌入式系统,从定义上来说,是一种专用的计算机系统,它被设计用来控制、监视或者帮助操作一些设备、装置或机器。在过去的几年
    发表于 02-22 14:09

    机器视觉系统中前光源与背光源的应用实例

    在机器视觉系统中光源是关键组成部分之一,在机器视觉系统中具有十分重要的作用。
    的头像 发表于 11-14 11:10 367次阅读
    机器<b class='flag-5'>视觉系统</b>中前光源与背光源的应用实例

    工业机器视觉系统中光源设计应用

    机器视觉系统主要由三部分组成:图像的获取、图像的处理和分析、输出或显示。而图像的获取是机器视觉核心,图像的获取系统则是由光源、镜头、相机三部分组成。
    发表于 11-03 12:34 265次阅读
    工业机器<b class='flag-5'>视觉系统</b>中光源设计应用

    嵌入式机器视觉系统中ARM与DSP的数据通信方法

    电子发烧友网站提供《嵌入式机器视觉系统中ARM与DSP的数据通信方法.pdf》资料免费下载
    发表于 10-18 10:19 0次下载
    <b class='flag-5'>嵌入式</b>机器<b class='flag-5'>视觉系统</b>中ARM与DSP的数据通信方法

    基于Linux的嵌入式视觉系统设计原理

    电子发烧友网站提供《基于Linux的嵌入式视觉系统设计原理.pdf》资料免费下载
    发表于 10-11 11:26 0次下载
    基于Linux的<b class='flag-5'>嵌入式</b><b class='flag-5'>视觉系统</b>设计原理

    如何快速设计和部署智能机器视觉系统

    和子系统,包括高性能硬件和先进的人工智能/机器学习(AI/ML) 软件。机器视觉从优化视频采集技术和视觉 I/O以满足应用需求开始,并延伸到多个图像处理管道以实现高效连接。机器视觉最终
    的头像 发表于 10-03 14:31 387次阅读
    如何快速设计和部署智能机器<b class='flag-5'>视觉系统</b>

    视觉系统的构成 机器视觉中常用的接口有哪些

    从机器视觉的定义可以推测出,一个摄像机和一个处理器结合在一起形成一个视觉系统。然而,这只是部分完整的描述。确实,视觉系统需要摄像机和处理器,但还有更多的组成部分。
    发表于 09-05 10:02 462次阅读
    <b class='flag-5'>视觉系统</b>的构成 机器<b class='flag-5'>视觉</b>中常用的接口有哪些

    机器视觉基础知识点总结:机器视觉嵌入式的关系

    机器视觉嵌入式系统是密切相关的。机器视觉是指计算机技术用于模拟人类视觉系统的能力,通过对图像或视频数据进行处理和分析来实现对物体、场景和动
    的头像 发表于 08-05 16:25 1768次阅读

    机器视觉系统包括哪些

    机器视觉系统包括哪些 机器视觉系统就是利用机器代替人眼来作各种测量和判断。它是计算机学科的一个重要分支,它综合了光学、机械、电子、计算机软硬件等方面的技术,涉及到计算机、图像处理、模式识别、人工智能
    发表于 06-29 11:33 529次阅读

    嵌入式视觉技术应用领域与挑战 嵌入式视觉技术让智能无处不在

    车辆正奔驰在蜿蜒的盘山公路上,周围美丽的风景使你沉浸其中。你突然注意到前方急拐弯处有一群徒步旅行者,而汽车的嵌入式视觉系统也同时检测到了他们,并迅速减速,以最佳的距离和速度,平稳安全地通过。 *文末
    的头像 发表于 06-08 19:45 935次阅读

    浅谈机器视觉系统集成时所涉及的各种技术

    准确地描述机器视觉系统需要完成的功能和工作环境,对于整个机器视觉系统的成功集成是至关重要的。对于需求的描述,实际定义了视觉系统工作的场景,而围绕这个场景设计1个系统来获取合适的图像,并
    发表于 05-09 09:57 208次阅读
    <b class='flag-5'>浅谈</b>机器<b class='flag-5'>视觉系统</b>集成时所涉及的各种技术

    机器视觉系统集成的关键要点有哪些?

    准确地描述机器视觉系统需要完成的功能和工作环境,对于整个机器视觉系统的成功集成是至关重要的。
    发表于 04-19 15:04 248次阅读

    嵌入式系统开发三大核心技术

    对于嵌入式系统开发,我想我们只要接触过嵌入式研发的人都是比较了解的,但是作为一个合格的嵌入式系统开发人员,你了解过
    的头像 发表于 04-13 15:39 1877次阅读

    嵌入式开发学习的6大阶段

    本帖最后由 cdhqyj 于 2023-3-29 13:55 编辑 嵌入式开发学习的6大阶段 第一阶段:嵌入式系统开发基础理论阶段目标掌握Linux操作系统的使用,精通使用C语言
    发表于 03-29 11:25