自动驾驶、机器视觉、人工智能这些热词的背后,存在着一个常人容易忽略而又极其致命的漏洞:作为最前端的通用性技术,人们从来没有为机器打造过它们的“眼球”。
简单的例子——我们任何用来做现有图像和视频录入的前端硬件,无论是大到ImageNet这样具备行业公信力的据库,还是小到只是把玩开源算法进行机器视觉应用初探的个人发烧者,是不是都有一些拿来主义了?
我们简单地拿着为了取悦人眼而设计的各类全幅高像素高对比度的视觉传感器来录入我们的机器“需要”的车道线判断、人脸识别、动态监测等各类数据,却从来没有出现过质疑的声音。真的是匪夷所思。如此以往,在带来了大量的与事件和决策本身完全无关的冗余数据和运算压力的同时,导致整体模组(尤其是内存、GPU)的成本上涨,而系统效能和鲁棒性却往往令人担忧。
在大量计算力的堆砌之下,我们看起来似乎已经实现了机器视觉。但在各个新玩家把自己的demo插在运算能力逆天的电脑上做live演示并大笔融资的时候,一个担忧也油然而生:边缘预算和真正的感知商业化主动权是不是都要在NVIDIA手里了?
如果说原来的各种为人服务的图像记录技术有羁绊是“迫不得已”,那么我们现在是不是应该想办法抛开这份羁绊了?
机器“眼球”的重生
原来体积庞大但有效信息很少的监控视频数据上百倍缩减;在纳秒级的物理极限捕捉影像的变化,甚至可以拍到子弹的轨迹;强光和弱光环境都能很好适应,甚至能够看清明亮霓虹灯中的广告字,在夜间也保持着相当的灵敏度。听起来似乎很玄幻,但已经有公司将它们转变为了现实。
雷锋网上面提到的这家公司名字叫做上海芯仑光电科技,其核心技术是一种新型的预处理动态图像传感器(DVS)。作为平台化技术,可以有多种应用模式和形态。这种传感器通过精密的电路布局和并行运算能力搭配业界独树一帜的读出原理使得其速度不受传统的曝光时间和帧速率限制,可以有效的过滤背景冗余数据,从而多至成千倍的节省运算数据流,降低系统成本,使实时处理的难度大大降低。而更为关键的是在兼顾了架构优势的同时还会向后端输出多维度信号(X,Y,A,T)和多模式(图像、动态、光流)数据,让配套应用的开发和部署变得简便。
该传感器产品命名为 CeleX 系列,已完成多轮流片,现在已经达到768x640(50万像素)的VGA标准,已经可以适用于大部分的机器视觉应用场合。下一代预计明年第一季度流片,分辨率为1280x800(100万像素)甚至更高,最终可在全幅画质和图片细节上与传统的图像传感器分庭抗礼。
传统图像传感器记录的是阵列中像素点在曝光时间内的总亮度值,而DVS传感器则观察每个像素点的光强是否随时间有细微的变化。这种区别可以用众所周知的一个数学常识来表达:积分和微分,而积分常常会把一条波动的曲线的特征丢失,而这恰恰是对运动物体的检测至关重要的。最终的结果是,CeleX传感器在其特殊的“动态模式下”能够独立自主地记录50万像素画面中每个像素点的每次变化。同理,假如画面中单个像素点的数据没有变化,那么传感器将只保留之前的记录数值。
通过这种完全不同于传统图像传感器“所有像素一起记录数据”的工作方式,CeleX也获得了很多新特点。
(注:本文中出现的GIF均为上一代CeleX Sensor拍摄,图像分辨率384x320)
高尔夫球击打,能够捕捉挥杆整个过程
壁球,以同样的速度拍摄时,能够完整显示网球的移动轨迹
传统传感器中,图像的记录实际存在固定的帧率,即以某个频率对阵列的所有像素点采样一次,不管这个点的光强有没有发生变动。在CeleX中,各个像素点在同步工作,都在试图回答一个问题: “我”这个像素点有没有运动发生? 如果是,那个这个像素点就会主动要求被读取。可以想象,在极端情况下,静态的像素点可以一百年不必被读出。这样,芯片的输出数据就没有帧率的概念了,运动频繁的点读出次数也会增多。被选中的像素通过一个高速的通道读出,就像是一串流动的3维点云。
2、剔除冗余数据
维多利亚港夜景,码头和部分建筑(非动态数据)“消失”
因为CeleX传感器在“动态模式”下只记录变化的数据,所以实际上CeleX传感器输出的都是“有用的数据”,用户也无需再在机器视觉的后端部分浪费宝贵的运算资源和时间,构建复杂的算法,进行图像冗余数据的排除。
3、优异的突然亮暗环境成像
维多利亚港摩天轮,能够显示中间传统过曝位置的图像变化
出入隧道瞬间,不受光照强烈变化影响,仍可以捕捉路面信息
在极暗场景下,也可以清晰显示部分物体的移动
像素点单独获取数据引来的质变,像素点之间不再受统一的成像参数(白平衡、感光度)影响,在图像存在过曝源、过暗的情况下,依旧能够利用单个像素点的改变读出整个画面的特征。
4、空间和时间域连续性
香港山路测试,完整捕捉道路划线等内容
在传统台式机7200转磁盘上画字,能够完整捕捉并且生成清晰的瞬间画面
对物体的跟踪是计算机视觉的一个大问题,之所以成为问题,根源就在于传统相机的曝光时间和帧率: 它在2个帧之间有一段时间是不采样的。在这个空窗期内,物体会继续运动,如果运动的太快太远,要对物体进行标定和跟踪就会消耗巨大的计算量,有时不得不在物体的周围的大范围内做暴力搜索。而DVS在时间和空间域上是连续工作的,有效的像素跟着物体同步运动,其运动路径上的所有像素点都会被读出。
简而言之,因为传统的机器视觉中需要在普通的图像基础上进行大量软计算。即便花时间打磨算法,但因为从算法到硬件还需要一系列API连通,并且受制于传统帧率的制约和全幅图像带来的数据压力,系统整体效率不高而且容易出错。而CeleX实际上将原来后端的算法固化,内嵌到到传感器前端完成预处理,效率非常高。
根据芯仑光电科技给出的信息,在同样的预算平台和制动需求上模拟FCW功能,120公里的工况下,对比传统技术路径,芯仑方案可以节省出额外七米的制动距离。
芯仑光电的前身是于2015年在新加坡成立的Hillhouse Technology公司。芯仑于2017年7月整体落地上海。董事长兼首席科学家陈守顺博士在新加坡南洋理工大学领导着一个国际领先的团队,长期从事智能图像传感器和系统的研究,成功设计了30余款不同用途的传感器。
本文所说的CeleX传感器的故事开始于陈博士在香港科技大学攻读博士学位期间,从那时起,他就在研究一种新的图像传感器,如何通过一种类似于神经元突触信息传递方式,将像素阵列的电信号读出芯片外。经过耶鲁大学博士后课题的研究,他对这一问题的理解更加深入了。这一梦想直到在2011年底获得了验证,并且让第一颗64x64的原型芯片面世。之后在整个团队的不断优化迭代之下,将产品发展到了第四代。最新一代芯片,命名为CeleX-IV。
CeleX-IV 传感器正面(左)、背面(右)照
CeleX-IV采用0.18um CMOS Image Sensor工艺,拥有目前同类产品中最高的分辨率,达到50万像素(768x640),单像素点尺寸为18um x 18um,100MHz高速双读出通路,可以提供三种工作方式,分别为传统的“图像模式”,专为机器视觉而生的“动态模式”,和独家绝技光流模式。
目前全球总共有三个团队有完整地开发动态视觉传感器(Dynamic Vision Sensor)的能力。除了本文中提到的芯仑科技之外,这一领域主要还有两家公司:IniLabs和Chronocam。三家公司目前都处于初创阶段。
在对运动物体的识别上,三家殊途同归,采用的都是仿视网膜的动态像素点探测技术,以类似于神经突触信息传递方式,通过异步的电脉冲读取到芯片外。三家也都能做到跟传统技术路径的兼容,也即产生全副的画面,但采取的技术路径不同。
Inlilabs整合了主动像素传感器(APS)技术,开发了DAVIS芯片系列。Chronocam采用了脉冲宽度调制(PWM)技术,推出了ATIS芯片。而芯仑采用的是对数编码图像传感器,同时在芯片中融合了光流算法。芯仑的方案克服了图像/动态两种模式在空间和时间域失配的问题,更加有利于多维度(动态,图像,光流)信息融合,提高算法的效率。后者目前拥有全行业最高的分辨率、读出带宽、图像和动态模式的一致性。
因为是对机器“眼球”的一次重造,所以实际上DVS的应用范围相当广泛。包括自动驾驶、无人机防撞系统、体感和人机交互工业过程控制、爆炸/碰撞分析、高速运动物体轨迹记录与实时分析等。相比于传统的图像传感器,芯仑的图像传感器芯片成本不会比它们高。同时还节省了大量后端处理的计算成本,并大幅提高效能。这对于追求技术差异化,和寻找解决传统图像传感器痛点的应用厂商来说,是革命性的突破。
因为相应产品还在不断完善过程中,所以芯仑其实也在寻找合适的内外部应用开发伙伴,并且希望将传感器上的优势转化为商业化成果。芯仑还向雷锋网透露,目前团队的应用层面的开发重点是一款专注车内场景的产品,将在之后的合适时间披露更多信息。
由于摄像头和感知能力所带来的市场格局变化(尤其是自动驾驶),对于部分开发CV底层基础技术公司的有重大影响,CV领域能力的一次重要释放。立足中国、着眼世界,芯仑光电和它们所代表的DVS,必将会给整个机器视觉产业带来深远的影响。
如果你想更加深入了解芯仑,或者与他们取得联系,可以在“雷锋网”公众号后台回复“芯仑”获取联系方式。