中科慧眼副总经理、联合创始人孟然
“2017智能网联汽车暨汽车半导体高峰论坛”于12月15日在上海王宝和大酒店举办,中科慧眼副总经理、联合创始人孟然在会上发表了题为 ”自动驾驶的双目视觉感知设备的产品化之路“的演讲,以下为演讲内容。
孟然:大家都知道做自动驾驶实际上有三大领域,包括感知、融合与决策、执行和控制,我们只是做其中一小部分。在感知里面又分为各种各样的传感器,包括激光、视觉、红外、超声波、GPS、惯导、毫米波。视觉里又分为前向视觉、侧向视觉、单目视觉、双目视觉、360环视、行车记录、疲劳检测等等。我们的公司只是做其中一点点,就是这里面的双目视觉算法和双目视觉产品。
好多人会问毫米波、激光、超声波、单目视觉、双目视觉到底哪个会有前途,进行各种各样的对比,去问哪个公司做的好,哪个公司更有生命力。实际上所有传感器之间不具备可比性,为什么这么说?因为一个传感器做的好或者不好,本身是由这个传感器所应用的电磁波的物理性质决定的。比如我们用视觉做一个传感器,哪怕做到极致,视觉里面的弱点还是逃避不了的。激光也是如此、毫米波也是如此。我们将可见光称为视觉,不管单目视觉还是双目视觉都有同样的性质,在黑夜、低光、大雨、大雾情况下图像会降质,这与人眼是一样的。
有人问双目视觉在什么情况下会失效?实际上在两种情况下会失效。第一种是光的能量或者照度特别低的时候它会失效,就像人眼在黑夜看不到东西是一样的。与人眼类似(锥体细胞,杆体细胞),相机里面也是亮度、黄蓝、红绿(或者RGB)三个信道,所以它在低光的情况下同样会失效。
第二个我们叫同构,就是周期性出现的图案,比如说一片白茫茫的雪地,左右眼在匹配的时候就会出现失准。我们人眼观察物体的时候也会有一个感觉,凡是观察周期性的花纹的时候会眼花,因为左边的图案配到右边的图案配不准。所以我们希望更自然的场景,比如现在的会场,我左眼和右眼感受到的图像没有周期性的,左眼图案可以在右眼图案中找到唯一的匹配,从而得到视差。
双目视觉就是通过左右眼的视觉差异去判断距离。同一个场景,在右眼和左眼成像是一致的,只是在X方向存在一个视觉差异,这个视差会有对应关系,视差越大,这个物体离我越近,视差越小,这个物体离我越远,视差为零,这个物体离我无限远。双目与单目的区别,唯一的区别就是在于测距。双目是通过视差去测算隔离,单目是通过识别,通过大小的变化去估算距离。这是它们的差异。为什么要选择双目这个方向,实际上从2016年开始,在众多高端车型的配置中已经开始从原有的单目转成了双目,包括雷克萨斯、奔驰、宝马、路虎、捷豹等一些车型。现在我们在4S店看到的前向视觉传感器都是双目的。
单目是基于识别,既然是识别一定会有一个很庞大的样本库,当然我们所说的深度学习分类器只是一种分类器,分类器会决定分类的质量。以前有线性、非线性的,现在有深度学习。分类器越好,分类精度越高,准确率就越高。分类一定要针对标准物体,比如说汽车、摩托车、人。什么叫非标准物体?比如说一把椅子、一把桌子、一个柱子、一堵墙、一只猫、一只狗。非标准物体是指样本太多,无法统计的物体,而无法统计的东西就无法识别。
双目视觉是不依赖于视觉识别的,是通过视差测算距离。当然双目测算出了距离,但并不知道物体是什么,它只知道前面有个障碍物,出现在几米范围之内。它不依赖于样本库,不依赖于识别、分类器,是针对一切所有目标的测距,并不进行任何识别。
当然我们可以用双目系统的单个摄像头进行识别,但是从芯片效率上来讲,目前还达不到这种水平。单目实际上与双目并不矛盾,单目是双目的一部分,双目等于单目加立体感知。
将百度Apollo大脑植入中科慧眼双目系统,用于双目相机中单目图像的识别,这是我们跟百度正在联合做的事情。对于相机如果传感器不变,那么视角越大测算距离就越近,视角越窄测算距离越远。所以并不是测算距离越远越好,当然也不是越近越好,相匹配的光学系统就是最好的。望远镜是减少视角看的更远,显微镜是增加视角看的更近。
一个双目感知设备的视角、测距的选择与车速有关。比如车辆如果以120公里时速行进在高速上,则这时候测算距离可能要求是越远越好,例如80米;但是在园区低速驾驶时,可能视角要求会比较宽,因为速度只有30迈,这时候测距达到40米就够了。
大家对于视觉系统有一个误区,就是喜欢说测量距离,但是说距离不说视角,说距离不说误差是没有意义的。我可以看到500米,但是误差达到百分之一百,那有什么意义呢。我们说距离的时候一定要有视角、精度的限定。
这个是点云密度100万的,用在一类前装车上,这是我们在今年年底将会发布的产品,具体参数到时候会由百度阿波罗平台发布,我不在这里多说了。这是我们的SE C1后装产品,这是SE C2是我们跟某两款商务车做的一款前装产品,SE B1-Pro是我们与某平台联合研制的一款相机,最后一款SE B1YT是我们12月要发布的一款产品。
不管单目识别还是双目识别,实际上信息对于我们非常重要,就是图像的质量对于我们来讲非常重要。那么决定图像质量的有几点,一个是镜头本身,第二个是Sensor,还有一个最重要的是对Sensor的调校。我们有时候会发现不同的产品用了同一款系统,但是实际上效果差别非常大。
还有一点是需要注意:人眼看出来是好的图像,计算机并不认为是好的。计算机认为什么样是好的?有很好的对比度,所有的障碍物都有很好的对比度,所谓的对比度就是图像数值的差异。
机器友好实际上要高于人眼友好,比如说祛痘、大眼、美白、磨皮,实际上都是一种丢失信息的操作,我们希望要的是高动态、高信噪比、很好的显色性、高光抑制、低光增强等等的成像性能。
视觉与雷达又有什么区别?各有各的优点,雷达看的远、速度快,但它的问题是比较稀疏。视觉的优点是致密,是一种致密的点云,我们测算的是二维致密的点云。做一个比喻,我常常把雷达比作一个远程导弹,但是视觉更像比较密集的机枪或者火炮。如果我们打远的大的东西一定要有导弹,但是你要打眼前的小的东西一定要用枪。用在高速运行的时候,针对大的目标,雷达会预先预警,无关它致密不致密。针对小的目标,尤其是非标准的障碍物,譬如一个栏杆、小猫、小狗、小孩,近距离的视觉致密点云更加重要。所以在常见城市道路的行驶可能视觉起到的作用更大,但在高速公路的行驶雷达无疑是必不可少的。
双目里面的算法也是有分别的,比如说有基于面的,有基于边的。基于边的,你拿到的点只是边缘的测距点,基于面的是面的测距点。刚才杨老师也讲到了成本的问题,实际上做产品和做研究是不一样的。我们在学校的时候经常喜欢去打榜单,但是那些榜单完全是基于准确率的榜单。我们在做产品的过程中,一定要求效果与效率的平衡。通常,计算结果很好就代表你的算法很复杂,很复杂的话效率就会降低。当你要提高效率的时候,就必须要去简化算法,这时候效果又会降低。所以做产品时,一定要求效果与效率的平衡。另外一个需要平衡的是成本。
所以做产品这三个维度都必须考虑:成本、效果与效率。不考虑成本,追求极致的效果与效率,我觉得不是在做产品,应该是在做科研。目前我们基于GPU的C1第一代产品和二代产品分别成本是在1500元和1000元,这是在10000台的量产成本,如果产量大成本还会降低。
这是在生产过程中的几种设备。镜头的自动安装,还有双目相机的自动标定,还有坏点的自动检测,这些设备也是我们在做产品的过程中为配合产线自己做的产品研发。
问答环节
提问:我是一个业外人,我们是专门做安防视频的,我们专门做数字安防有三十年了。我们非常关注自动驾驶和辅助驾驶领域。有一点我想请教,你们现在用的是模拟摄像机还是数字摄像机?
孟然:在自动驾驶领域没有用模拟摄像机的,肯定是数字摄像机。
提问:那延时问题怎么解决?
孟然:这个延时非常小,我举一个例子,国内电压频率50赫兹,要求你的采集频率一定是50的倍数或者整除50,我们采集频率基本上是50,否则视频会有闪烁。1秒除以50等于20毫秒,如果车速每小时120公里,在20毫秒过程中会跑多远这个可以算一下(大约0.67米,编者注)。所以这个延时完全可以满足自动驾驶的要求。如果您每小时120公里,如果是每秒30帧采样,你应该是每走1米采一幅图。如果你是60帧采样,大概是半米进行过一次采集,这个延时是完全可以接受的。
提问:第二个问题,我们在安防行业做了这么多年,发现一个很大的问题,有些人在做硬件,有些人在做软件。现在百度、阿里他们做大数据,也开始做硬件;像海康、大华开始做算法,包括也在收购这种做服务驾驶的公司。在中国的业态下,BAT动作非常大。你觉得在面临这样的竞争的时候,咱们做自动驾驶的厂商会有怎样的对策?怎样面对这样的风险?
孟然:这个问题有点宏观,我谈谈我的看法。我认为合作是好的,合作是把对方的优势资源互补作为一个产品。我们实际上聚焦的特别窄,有很多人问你们是做自动驾驶?我说我们不是自动驾驶的公司,我们就是做传感器的,我们把双目传感器做到极致就OK了。所以我并不是特别在意跟各种平台去合作,实际上我们就是一个做双目感知传感器这么窄方向的一家公司,我们并不做自动驾驶,也不做ADAS,我们就只做传感器,我们就是一家做双目视觉感知的公司。
提问:咱们现在聚焦的是前装?
孟然:一代产品是后装,在外面有在卖。
提问:重点是后装?
孟然:重点是前装。
提问:现在前装跟阿波罗?
孟然:阿波罗是我们的合作伙伴之一。
提问:前装和后装中,你们往下做客户能买单的最大的障碍,或者是客户的关注点咱们有没有探讨过?
孟然:这个有点偏市场了,这个话题如果要是谈,几分钟我回答不了您,最起码要半小时到一小时。前装和后装有什么区别,自动驾驶和辅助驾驶有什么区别。说的粗俗一点,辅助驾驶是在一堆人里找坏蛋(危险障碍物),全自动驾驶是在一堆人里找好人(可行驶的安全区域)。我说的坏蛋是指障碍物,好人是指可行驶区域。换句话说,找坏蛋找不全的话,最后要依靠人自己去找,(辅助驾驶系统)找不全没有什么关系。但如果是自动驾驶在一堆人里找坏蛋你必须找全,找不全怎么办呢?你可以找好人呀(可行驶区域)。另外,辅助驾驶只关注当前车道,只关注正前方,因为我不知道你什么时候拐弯。但是自动驾驶不是,因为方向盘已经交给你了,你什么时候拐弯你是知道的,所以你肯定不止关注当前车道,还需要关注左边和右边两侧。所以辅助驾驶是找障碍物、找危险,自动驾驶是找可行驶区域,找安全,但是非可行驶区域就一定不可行驶吗?不是,但是我要找的可行驶区域一定可行驶,这是它的区别。
提问:您觉得现在后装客户买单最大的解决痛点在哪?
孟然:其实后装对于我们来讲不是客户买单,而是对于算法和生产过程的历练,如果你没有后装直接前装,没有算法的历练迭代还有对于生产工艺的迭代,前装厂不会给你这个机会的。
提问:就是说你们目前对于后装不是太投入?
孟然:是的,是因为有后装,才能把我刚才展示的产线、设备全对接起来。后装是对生产工艺、供应链的锻炼。
提问:杭州有一家也做双目,在网上做,好像现在买单的人不是太多?
孟然:您说这个问题,我确实没有太关注。