如何用 All Programmable SoC 优化AR解决方案
2017-01-24
研究显示人类通过视觉与世界互动时,处理arget="_blank">图像的速度比处理书面文本等其他不同形式的信息要快许多倍。增强现实 (AR) 类似于其近亲虚拟现实(VR),能让用户增强对周边环境的洞察。它们之间的主要的区别是,AR 借助文本或其他可视对象等虚拟对象可丰富或增强自然界。这样能让 AR 系统的用户安全、更高效地与他们的环境互动。这与用户沉浸在人工创建的环境中的虚拟现实不同。增强现实和虚拟的结合常被描述为为用户呈现混合现实 (MR)。我们中的许多人在日常生活中已经不知不觉地用上了AR,例如我们的移动设备在进行道路导航时,或是玩精灵宝可梦GO等虚拟游戏时。
虚拟现实、增强现实和混合现实
当提及 AR 及其应用时,首先想到的事情之一是抬头显示器 (HUD)。它们被用于航空和汽车应用中,让用户无需低头看仪表盘就能看到相关的飞行器/汽车信息。抬头显示器是较简单的可用 AR 应用之一。拥有可穿戴技术等更高级功能的先进 AR 应用往往被称为智能增强现实,据 Tractica 预测,其市场规模到 2020 年将达到 23 亿美元。
增强现实应用和用例
AR正在进军众多应用领域,覆盖工业、军事、制造、医疗、社交和商业等不同行业,其大量的用例推动其被广泛采用。在商业领域,AR主要侧重于社交媒体提供应用,例如能够识别您交谈的对象并添加履历信息。AR 还能让消费者看到有时难以参观到的产品,例如汽车、游艇、建筑物等。
许多 AR 应用都离不开使用侦探佩戴的智能眼镜。这些智能眼镜能提高制造环境内的效率,例如便于替换操作手册,向用户展示如何组装零部件。在医疗领域,智能眼镜便于分享医疗记录以及创伤和损伤的详细状况,能为现场急救人员和后续急诊室人员提供治疗信息。
智能眼镜在工业环境中的使用实例
一个典型的例子是一家大型包裹物流公司。这家公司目前正在使用 AR 智能眼镜阅读发运标签上的条形码。在条形码扫描完毕后,智能眼镜能使用WiFi基础设施与公司服务器通信,判定包裹的最终目的地。在已知目的地后,智能眼镜能向用户提示包裹的堆放处,以便继续发运。
就算不考虑应用和用例,设计一款 AR 系统也会面临多重相互矛盾的要求,包括性能、安全、功耗和未来兼容性。如果设计人员要为 AR 系统提供理想的解决方案,这些都必须考虑到。
实现 AR 系统
这些复杂的 AR 系统要求能够连接多个摄像机传感器并处理来自这些传感器的数据,从而让系统了解周围环境。这些摄像头传感器还可能会工作在电磁频谱的不同频段上,例如红外或近红外。此外,这些传感器可能提供来自电磁频谱之外的信息,从而为检测移动和转动提供输入,例如 MEMS 加速计和陀螺仪,以及全球导航卫星系统(GNSS)提供的位置信息。融合来自多种不同类型传感器的信息的嵌入式视觉系统一般也称为异构传感器融合系统。AR 系统也要求高帧率,以及开展实时分析、逐帧提取和处理每帧所含信息的能力。提供满足这些要求的处理能力成为组件选择的决定性因素。
AR 系统剖析
All Programmable Zynq? -7000 SoC 或 Zynq? UltraScale+? MPSoC 用于实现 AR 系统的处理内核。这些器件本身属于异构处理系统,将 ARM 处理器和高性能可编程逻辑完美结合在一起。Zynq UltraScale+ MPSoC 属于新一代Zynq-7000 SoC,额外提供了一个 ARM? Mali-400 GPU。该系列中的某些成员还包含支持 H.265 和 HVEC 标准的硬化视频编码器。
这些器件能让设计人员使用处理器理想地细分系统架构,实现实时分析功能并传递给生态系统中的传统处理器任务。该可编程逻辑可用于实现传感器接口和处理,从而带来多重好处,具体包括:
·根据应用要求,并行实现 N 个图像处理流水线。
·任意连接,能定义和连接任意传感器、通信协议或显示标准,提供灵活性和未来升级路径。
要实现图像处理流水线和传感器融合算法,我们可充分运用 Vivado HLS 和 SDSoC等工具中提供的高层次综合功能。这些工具拥有包括 OpenCV 支持在内的各种专家级库。为缩短 AR 系统的上市时间,还可以利用广泛的第三方 IP。这些 IP 专为 AR、嵌入式系统和专门的赛灵思技术开发。这些 IP 模块的供应商中包括 Xylon。Xylon提供能在 Vivado 设计环境中迅速集成的 LogiBRICKS 系列 IP 核,同时提供便于系统快速启动和运行的拖放功能。另一 IP 模块供应商是 Omnitek,其提供一系列针对 AR 要求的关键环节的 IP 模块,例如实时折叠模块和 3D 处理模块。
设计人员还必须考虑 AR 系统的独特方面。它们不仅需要与观察用户周边环境的摄像头和传感器连接,还需要执行应用和用例所需的算法。同时它们还必须能够跟踪用户的眼睛,判断它们的视线,从而确定他们所注视的地方。这一般是通过增加观察用户面部的摄像头和实现眼睛跟踪算法来做到的。在实现后,该算法能让 AR 系统跟踪用户视线并确定要发送到 AR 显示器上的内容,从而高效利用带宽和满足处理要求。但是执行检测和跟踪本身就是高计算强度的工作。
大多数 AR 系统属于便携式无系留系统,而且很多时候属于和智能眼镜一样的可穿戴系统。这样如果在供电受限的环境中实现这样的处理功能,就会面临特有的难题。Zynq SoC 和 Zynq UltraScale+ MPSoC 系列器件都能提供最出色的单位功耗性能,通过实现多重选项之一,进一步降低运行功耗。在极端条件下,这些处理器能够进入可被任意一种源唤醒的待机模式,从而关断占器件一半资源的可编程逻辑。一旦 AR 系统检测到自己被闲置,这些选项都能实现,从而延长了电池使用寿命。在 AR 系统工作过程中,当前未被使用的处理器单元可以通过时钟门控来降低功耗。在可编程逻辑单元内,通过遵循简单的设计规则如高效使用硬宏、精心规划控制信号和在目前不需要的器件区域考虑使用智能时钟门控,也能实现极高的用电效率。
有几种 AR 应用,例如病患医疗记录共享或生产数据共享,要求在信息保障 (IA) 和威胁防范 (TP) 领域提供高安全等级,尤其是在 AR 系统具有高度移动性、可能被放错地方的情况下。信息保障要求我们能够信赖存储在系统里的信息以及系统发送和接收的信息。这样对于综合人工智能领域而言,我们需要使用 Zynq 的安全引导功能来实现加密,并使用 AES 解密、HMAC 和 RSA 验证来进行验证。只要设备正确配置和运行,开发人员就能够使用 ARM Trust Zone 和管理程序实现安全的、外人无法访问的正交环境。
在威胁防范方面,这些器件能使用系统内置的 XADC 来监测供电电压、电流和温度,以发现任何试图篡改 AR 系统的企图。如果发生这样的情况,Zynq 器件可提供多种选择,包括记录该企图、擦除安全数据,防止 AR 系统再次连接到支持性基础设施。
结论
AR 系统在商业、工业、军事等几大行业的应用正日趋普及。这些设备也为它们带来了高性能、系统级安全性和高能效等一系列自相矛盾的难题。将 Zynq SoC 或 Zynq UltraScale+ MPSoC 用作处理系统的核心,这些难题将迎刃而解。