行业的见解
智能相机越来越智能
发表11/21/2018
| By: Winn Hardin, Contributing Editor
对智能相机的需求比以往任何时候都大。2017年至2024年,全球智能相机市场预计将以18.2%的复合年增长率增长,届时将达到62亿美元。亚太地区和北美将主要推动增长。
这种大幅增长的原因是智能相机的多功能性,以及它们给系统集成商带来的机遇。与传统的机器视觉摄像机不同,智能摄像机将图像传感器、处理器和I/O组合在一个紧凑的外壳中,通常不比标准工业摄像机大。这些产品通常提供一套软件工具——来自相机制造商或第三方——允许系统集成商通过图形用户界面(GUI)对相机进行编程,以实现一些计算任务。
然而,究竟是什么构成智能相机的定义是相当主观的。实际上,所有相机都销往工业视觉市场体育的某种形式的智慧,无论它们是否都是智能摄像机的销售。这是由于在将它们传送到PC之前在图像上执行重要预处理功能的固有需要,以进行进一步处理。该固件预处理是具有相同传感器的摄像机之间的关键区分因子。
为了执行这些预处理功能,大多数工业摄像机功能现场可编程逻辑阵列(FPGA)硬件,与固件组合,使得许多功能,例如增益校正,噪声模式校正,抽取/分布和压缩以在相机内处理 -在PC上放置额外的处理负载。这种相机还经常携带自己的RAM,用于临时存储图像。这增加了数据稳定性,并且是一个重要因素,特别是在短时间内需要许多图像的应用中,因此具有高带宽。
图1:对智能相机的需求比以往任何时候都大。2017年至2024年,全球智能相机市场预计将以18.2%的复合年增长率增长,届时将达到62亿美元。亚太地区和北美将主要推动增长。图片提供:Research Nester。 |
复杂性增加
然而,从这些卑微的处理开始,相机设计人员继续以许多不同的方式对其相机添加进一步的处理能力。一种早期的方法是将低成本的多核处理器集成到相机中。虽然这些相机可能具有限制性计算能力,但他们在简单的独立应用中找到了一个家庭,例如测量和条形码扫描。
根据Matrox成像的产品经理,Matrox成像的产品经理,智能摄像机中使用的两个领先的处理器架构之间的主要区别 - 即X86和ARM - 是X86处理器在复杂的指令集架构(CISC)上构建,而ARM处理器遵循a减少指令集计算机(RISC)。RISC指令通常更简单,更快地执行(即,在单个时钟周期内)。同时,CISC指令更复杂,需要多个CPU周期来执行每个指令,但是有益于需要更少命令来执行更复杂的任务。
架构的选择相机供应商选择与公司支持的现有软件基数比任何硬件考虑都具有多么多。例如,Matrox成像在其智能相机产品中利用X86架构的性能,因为该公司更符合其实质性的现有编程专业知识和已经开发和磨练的软件。然而,由于诱人可能出现,调查交换硬件架构的工程师必须考虑重新开发和重新优化软件的成本。如果他们将其目前设计的计算机架构的余量缩短,则表现,效率和成本的增长必须响亮。
Teledyne DALSA智能视觉解决方案工业产品部产品经理Raymond Boridy表示,当今智能摄像机的主要架构包括CPU和FPGA,无论是X86处理器还是ARM处理器。CPU与FPGA的结合使开发人员能够将DSP核心集成到FPGA结构中,以及一个或多个专用的以客户为中心的IP核,这些核可以与DSP一起实时执行专门的图像处理功能。
已经表示,可以是足够的通用用于服务过多应用的智能相机架构可能不是最佳地适用于一个或多个高度专业化应用的应用。在某些情况下,用户可能会发现,在仔细的性能分析后,FPGA + DSP系统可能能够通过CPU / DSP或DSP配置提供显着的性能。最适合在特定硬件架构上运行的特定于应用程序的软件可能不太适合在更通用的一个上运行。
图2:对于利用深度学习技术的人工智能应用,智能相机内的GPU和FPGA的组合可能最适合这项任务。然而,一些供应商已经提供了使用在主流cpu上运行的深度学习技术来自动分类图像内容的功能,消除了对第三方神经网络库的依赖和对专用GPU硬件的需求。图像提供:matrix Imaging。 |
深度学习深入研究
虽然在短期内,智能摄像机的性能和能力只有逐步改善,但深度学习的概念可能会产生重大影响。根据Matrox Imaging的Perelli,对机器愿景的深度学习的普及迅速成为市场潮波,驾驶员是在运行这些深度神经网络所需的芯片(SOC)上的专用逻辑。
美国国家仪器公司(National Instruments)首席软件工程师埃里克·格罗斯(Eric Gross)对此表示赞同。格罗斯说:“我们每天使用的技术中,几乎每一个部分背后都在利用机器学习。”“所有主要的硅供应商都在竞相在他们的产品中加入专用电路,以加速这些业务。我认为智能相机将不可避免地采用这种技术,使它们更容易编程,也更强大。”
Matrox的Perelli认为,人工智能(AI)应用的苛刻性质可以从利用图形处理单元(GPU)的力量,帮助加速处理任务,例如神经网络系统用于深度学习的处理任务。他说,挑战将是创建一个足够强大的GPU,可以在智能相机的范围内运作。由于SoC设备存在一系列集成选项,因此在执行高级图像处理时,挑战将是使用正确的功能混合开发SOC。
Teledyne Dalsa的Boridy说,对于利用深度学习技术的AI应用程序,GPU和智能摄像机内的FPGA的组合可能更适合该任务。然而,一些供应商已经提供了使用在主流cpu上运行的深度学习技术来自动分类图像内容的功能,消除了对第三方神经网络库的依赖和对专用GPU硬件的需求。