人工智能与图像传感器

        随着人工智能时代的来临,相应的芯片产品和行业也产生了相应的新方向。

        在人工智能的各个分支中,机器视觉无疑是应用最广泛的方向,它支撑着诸如人脸检测、工业异常检测、手势识别等诸多重要的应用。顾名思义,机器视觉是使用机器学习/人工智能的方法来分析视觉信号,并且通过人工智能直接产生分析结果。因此,机器视觉天然就需要一个图像传感器来作为输入信号,而随着机器视觉和人工智能的逐渐发展,机器视觉与图像传感器芯片的结合成为“智能图像传感器”也是顺应了技术发展的脉络。如果我们进一步分析智能图像传感器,我们认为又可以分为两类。

  1. 第一类是图像传感器与人工智能计算相结合,即图像传感器模组除了可以输出图像之外,还可以直接输出人工智能算法计算的结果。这样的智能图像传感器我们可以称之外“人工智能赋能的图像传感器”,它们往往能做到非常低功耗的人工智能分析,因此在物联网和可穿戴式智能设备中有重要应用。
  2. 另一类智能图像传感器则是为人工智能应用专门设计的图像传感器,其输出的内容和方式往往与传统的图像传感器有区别。这类智能图像传感器可以称之为“为人工智能赋能的图像传感器”。这类图像传感器中的一种重要图像传感器是事件驱动传感器,它突破了传统图像传感器固定帧率的特性,从而可以为一些重要的工业和智能车应用提供支撑。

        当然,我们也可以预期会出现同时结合上述两类特性的智能图像传感器,为各类人工智能应用提供硬件支持。目前,Sony是在智能图像传感器领域布局最多的巨头,同时我们也看到了一些初创公司在这个方向持续地探索新的技术和应用。

一、人工智能赋能的图像传感器

        如前所述,图像传感器为机器视觉这一最重要的机器视觉应用提供输入信号。在传统的机器视觉芯片解决方案中,图像传感和人工智能算法的运行在不同的硬件上完成,图像传感器提供图像信号,而处理器或者AI加速芯片执行人工智能算法。然而,这样的做法在强调低功耗和能效比的移动端或IoT智能设备中,将会造成能量的浪费,并且难以处理一些需要常开(always-on)的应用场景。

        举例来说,如果拿目前流行的手机端机器视觉解决方案来说,通常的做法是,手机SoC中的主处理器AP打开图像传感器,图像传感器将图像信号发送给SoC,并且由SoC中的处理器,或GPU,或AI加速器来跑人工智能算法,并且输出结果。在这个过程中,能效比有几个瓶颈。首先是图像传感器必须把图像传送给SoC,这期间需要使用MIPI等接口,存在额外功耗开销。其次,是SoC在整个过程必须处于唤醒状态,还通常必须运行整个操作系统,因此即使AI加速器能以很高的能效比运行算法,但是整个过程中能量消耗最大的部分可能并不是人工智能算法,而是SoC处于唤醒状态并且运行整个操作系统带来的额外功耗。这样的功耗开销在手机端只需要偶尔运行机器学习的场景或许可行,但是在IoT和可穿戴设备中,尤其是需要执行常开式机器视觉算法的场合,就成为了瓶颈。

        人工智能赋能的图像传感器就可以解决这个问题。具体来说,这样的智能图像传感器在图像传感器模组中集成了人工智能算法的运行模块,因此可以直接输出机器视觉算法的结果,而这样运行机器视觉的方法也常被称为“传感器内运算(in-sensor computing)”。通过传感器内计算,机器视觉算法的运行单位从SoC换到了图像传感器,因此在运行机器视觉算法时,SoC无需处于唤醒状态,也无需运行操作系统,而是可以处于低功耗的待机状态。另一方面,传感器内运算由于整个系统比较简单,并没有运行操作系统等额外开销,并且有为机器视觉算法量身定做的加速器芯片模组,因此能效比可以做到很高。最后,在接口方面,通常可以实现由智能图像传感器在检测到重要输出时才去以中断的方式去唤醒SoC,并且只需要传递机器视觉算法运行的结果,因此数据传输的开销也大大降低了。

人工智能与图像传感器_第1张图片

        在人工智能赋能的图像传感器中,Sony已经于去年首先发布了带有传感器内计算功能的智能图像传感器IMX500,可望使用在各类需要低功耗高性能边缘机器视觉应用的领域。除此之外,Sony还发布了相应的开发平台Aitrios,能以订阅服务的形式为用户提供用于智能图像传感器的模型开发和部署服务。

二、赋能人工智能的图像传感器

        另一类新的智能图像传感器是可以赋能人工智能机器视觉的图像传感器。在传统的图像传感器中,帧率是固定的(通常在数十到上百帧每秒),即无论外部条件如何,图像传感器都会以同样的频率采集图像并且传输给机器视觉算法。然而,在工业检测(如振动监测)和智能驾驶等应用中,固定帧率得到的图像并不是最优化的图像采集方式。具体来说,工业检测和智能驾驶中,机器视觉最关注的是事件;当没有发生任何事件(例如,图像没有变化)时,即使以很低的帧率采集图像甚至不采集图像都可以。然而,当发生事件时(例如工业检测中机器开始振动,智能驾驶中出现来车),使用数十帧每秒的帧率又显得不够,而希望以千帧每秒甚至更高的帧率去采样。

        在这种需求中,事件驱动视觉传感器就是一种为机器视觉专门赋能的新智能图像传感器。顾名思义,事件驱动视觉传感器关注“事件”,因此在检测到相关事件发生时,可以以非常高的帧率(1000-10000 fps)来采集图像,而在没有事件发生时,则可以以很低的帧率采样以降低功耗。

        事件相机的最基本的原理,即:当某个像素的亮度变化累计达到一定阈值后,输出一个事件。这里强调几个概念:a) 亮度变化:说明事件相机的输出和变化有关,而与亮度的绝对值没有关系;b) 阈值:当亮度变化达到一定程度时,将输出数据,这个阈值是相机的固有参数。

        下面重点解释什么是一个“事件”。事件具有三要素:时间戳、像素坐标与极性。一个事件表达的是“在什么时间,哪个像素点,发生了亮度的增加或减小”。

        当场景中由物体运动或光照改变造成大量像素变化时,会产生一系列的事件,这些事件以事件流(Events stream)方式输出。事件流的数据量远小于传统相机传输的数据,且事件流没有最小时间单位,所以不像传统相机定时输出数据,具有低延迟特性。下面的动图揭示了事件相机与传统相机的成像的不同。

人工智能与图像传感器_第2张图片

        事件相机具有优势的典型场景包括实时交互系统,比如机器人与可穿戴设备,因为这些场景下的光照条件不可控,并且对于延时以及功率敏感。事件相机可以用于物体跟踪、识别以及手势控制,也可以应用在三维重建、光流估计、图像HDR和SLAM中,随着事件相机的发展,图像去模糊以及恒星跟踪也成为新的应用范围。

        2008年,诞生了第一款商用的事件相机。这么看来,事件相机从商用到现在也刚刚过了十来年。在传感器巨头领域,Sony在事件驱动传感器领域布局最多,在一年多前收购了瑞士的相关初创公司Insightness,而三星也在积极研发相关技术,并且在ISSCC等顶级芯片会议上发表了相关研究论文。初创公司领域,事件驱动视觉传感器领域最重要初创公司是法国公司Prophesee,该公司目前已经获得了来自博世、Intel、华为等业界巨头总计近七千万美元的投资,并且与各大公司进行合作。在今年九月,Prophesee更是和Sony强强联手推出了IMX636和IMX637。目前,许多商业公司致力于事件相机的发展,除法国prophesee外,有韩国Samsung、瑞士iniVation、中国CelePixel(芯仑科技)等。预计在未来我们会看到更多这样的事件驱动视觉传感器出现在市场上,为各类新机器视觉应用赋能。

你可能感兴趣的:(CMOS,图像传感器,人工智能,CIS)