智能摄像头将迈入64 位处理技术
扫描二维码
随时随地手机看文章
智能摄像头技术正在逐步改变我们的生活,而未来,它将为我们彼此以及与周围世界的互动方式带来深刻的变化。从打造更安全、更高效的智慧城市,到实现安全、经济和绿色的无人驾驶技术,到在热带雨林中监控非法砍伐,这些场景都对先进机器视觉技术的需求日益增长。在多样而复杂的人工智能(AI)和机器学习(ML)应用场景对智能视觉系统的性能、实时性和可拓展性的推动下,摄像头系统越来越需要在端侧进行对图像、视频流以及其他传感器数据有效地进行分析处理,这就对摄像头硬件系统的处理能力的需求日益提高。简而言之,为了在边缘或终端摄像头上运行先进的AI工作负载,就需要更高性能的计算和智能数据处理技术,以满足高清成像、增强安全等应用需求。
随着笔记本电脑和智能手机的应用处理技术已经迁移到 64 位,智能摄像头也开始转向采用 64 位处理技术,使得利用更先进功能的前沿应用也可以在智能视觉系统中无缝平滑实现。例如,在世界各地的智慧城市中,我们看到摄像头能够运行AI算法来检测人、宠物、包裹、车牌和其他物体。而且,随着摄像头本地算力的提升以及AI技术在智能摄像头中应用的不断扩展,智能视觉处理工作负载不仅有可能在摄像头内置的 CPU以及日趋普遍的加速器上直接运行,而且这种边缘部署方式将越来越显示其优势,并有望成为主流。在这些技术发展的助力下,未来将有可能同时检测数百人或识别超速汽车的车牌,而无需再将大量数据传输到云端,影响处理的实时性。
为什么采用 64 位处理技术至关重要?
通过迁移至 64 位处理技术,可以更好地利用先进的64位CPU 硬件与身俱来的更高性能和效率。最重要的是,64 位 CPU 架构具有增强的寄存器支持和更大的内存映射。寄存器数量和宽度的增加意味着可以在减少内存访问次数的情况下处理更大的数据集,从而加快数据处理速度。更强的寄存器支持也意味着开发者可以利用先进的编译器优化技术,从而进一步提高性能。由于数据集在进出本地内存的交换会影响性能,因此,当提升的寄存器支持结合了 64 位架构带来的内存映射增加,软件就可以直接访问更多的本地数据进行处理,从而减少了对内存交换的需求。
随着智能摄像头的成像要求日益提高,低端摄像头和中高端摄像头分别开始采用 4K、8K 分辨率。从 1080p 提升至 4K 意味着在相同的编码方案下,摄像头传入视频流的数据率翻倍。此外,为了更好地识别物体,帧率需要从 15fps 增加到 30fps 甚至 60fps,对数据率和性能的需求也将相应地继续扩增。更高的帧率将使摄像头能够以更高的精度检测、识别和辨别更小的物体与快速移动的物体。从多个视频流进行同步 4K 编码的需求,也对 CPU 性能提出了更高的要求。而这些都能很好地通过 64 位处理器获得满足。
此外,为了满足成像和机器学习工作负载对于性能和带宽不断增长的需求,智能摄像头需要支持浮点运算。Armv8-A 64 位架构将单精度的每周期 FLOPS性能提高了 2 倍,双精度中提高了 5 倍,从而改善了用户体验。
另外,从 Armv8 架构中的可收缩矢量扩展(Scalable Vector Extension, SVE)和 Armv9 架构中的 SVE2 开始,Arm 通过对 Neon 的扩展在成像和机器学习方面取得了进展,这一点也很重要。
图 1:面向当前和未来智能摄像头的 Arm 64 位 CPU
提升机器学习性能
Arm 64 位架构(称为 AArch64)提供了更快、更大的内存访问,使机器学习模型能够更快地加载到内存。这种性能的提升可以加快执行来自智能摄像头的输入视频流的推理任务,从而更快地检测、识别和辨别图像中的物体。
为了充分利用视频编码器/解码器等片上加速器和处理器核心外部的机器学习硬件来实现高效的数据传输,必须优化内存带宽。提高系统内存流性能可以加快数据进出内存的速度,以供许多不同的硬件单元使用。图2显示了最常见的内存流基准,并展示了从 32 位 CPU 迁移到 64 位 CPU 时,性能可以提高 3.75 倍。
图 2:从 Cortex-A7 (32 位) CPU 迁移到 Cortex-A35( 64 位) CPU 时的内存流性能提升
实现高级安全功能
64 位 ARMv8-A 架构在其 CPU 中提供了原生安全功能,其中加密指令 AES、SHA 和 CRC 可以在软件加密的基础上提供 3 至11 倍的性能提升,可用于小粒度加密技术。随着 Arm 继续提高关键加密操作的性能,智能摄像头能够持续改进其加密算法,以支持物联网应用对隐私和安全的持续需求。
图 3:从 Cortex-A7 (32 位) CPU 迁移到 Cortex-A35 (64 位) CPU(带有加密扩展)时的加密性能提升
对开发者的影响:软件和工具
与所有其他应用领域一样,软件和工具也将持续在智能摄像头领域发挥着重要作用,为广大的开发者持续创新提供动力,使新功能和应用源源不断地产生。随着对 64 位 Linux 发行版的支持继续扩大,越来越多公司增加了对各种新功能的支持,如运行基于最新 Arm 架构的容器调度器。
此外,Arm 继续利用最新 CPU 中的新功能来增强开源的 GNU编译器工具链。Arm 还增加了对领先的计算机视觉、图像处理和机器学习开源库OpenCV的支持,从而赋能更多的开发者能够轻松开发智能摄像头应用和产品。
来自 Arm 和更广泛生态系统的支持
Arm 将持续在最新的 64 位架构规格版本中提供与数字信号处理、矢量处理、机器学习和安全有关的增强功能,所有这些都是未来几代智能摄像头需要的关键计算处理能力。
在所有智能摄像头中采用基于 64 位的 Arm处理器有诸多益处,其中关键的是可以得到来自生态系统的广泛支持。例如,AWS 已经通过其 AWS Sagemaker Neo 服务,在任何支持 64 位 Armv8-A 的设备上增加了对机器学习推理的支持,使得那些计划使用 AWS云服务进行机器学习部署的公司可从中受益。
Project Cassini 等生态系统计划解决了物联网部署的两个主要障碍:可扩展性和碎片化。对于芯片合作伙伴、ODM、OEM、ISV、系统集成商和开发者来说,Project Cassini 通过加快在不同的Arm 64 位平台上部署云原生应用,释放了边缘和物联网计算潜力。而要能充分利用 Project Cassini 和 SystemReady® 计划的优势, 64 位的计算平台是必不可缺的要素。
为了加速边缘设备的开发和部署,Arm在2021年10月发布了 Arm 物联网全面解决方案(Arm Total Solutions for IoT),其产品路线图呈现了包括 Arm 虚拟硬件在内的全面解决方案的愿景,使客户能够在芯片流片前启动软件开发的工作。
总结
如果您想要在智能摄像头生态系统中超越竞争对手,那么采用 64 位处理技术至关重要。Arm 乐于随时为开发者社区和合作伙伴提供支持,协助应对向 64 位处理技术过渡过程中的任何技术挑战。向 64 位迁移将会开创“双赢”局面。它将在性能、效率和安全方面为整个生态系统带来诸多裨益,并有助于摄像头满足未来的创新,进而改变我们的世界。