继“让机器听懂你的声音”,钛坦白又请来六位钛客,探讨如何让机器看懂这个世界。本文根据格灵深瞳技术副总裁邓亚峰在钛坦白的分享整理。
邓亚峰具有15年人工智能特别是计算机视觉方向的研发经验,发表论文十余篇,获得专利授权95项。曾是百度深度学习研究院的科学家,带领团队开发出世界第一的人脸检测、人脸识别算法,开发出的算法和系统服务于亿级别用户产品。格灵深瞳是一家视频大数据产品和方案提供商,致力于将计算机视觉和深度学习技术应用于商业领域,产品包括皓目行为分析仪、威目视图大数据平台、威目车辆大数据系统、威目视频结构化系统、威目人脸识别系统、深瞳人眼摄像机等。
以下是邓亚峰在钛坦白的分享:
大家好,今晚我分享的题目是“如何让机器看得更真更远?”希望通过格灵深瞳在计算机视觉领域的一些尝试和经验与大家交流怎么能使得计算机视觉技术可以大规模应用。
先简单介绍下。格灵深瞳是2013年4月份由创始人赵勇在北京创立的,是一家同时具备计算机视觉技术、深度学习技术以及嵌入式硬件研发能力的公司,主要关注的领域包括公共安全、智能交通、金融安防等,同时公司在无人驾驶、机器人和智能医疗方面也进行了深入的布局。
计算机视觉的研究目标和应用趋势
大家知道,视觉是我们人类获取信息最主要的方式,在视觉、听觉、嗅觉,触觉和味觉中,视觉接受信息的比例大概是占到百分之八十几,处于绝对领先的地位。
远在1966年的时候,有一个人工智能领域的先行者叫Marvin Minsky,他是MIT的老师,他给他的本科学生部署了一个有趣的作业“Link a camera to a computer and get the computer to describe what it saw”,翻译成中文就是“让计算机看懂世界”。在当时,他认为这是一个本科生在一个暑假就能完成的作业。但是已经过去了50多年的时间,经过了无数学术界和工业界同仁的努力,我们发现,计算机视觉还是一个非常热但并没有真正成熟的领域。
对于计算机视觉系统而言,输入实际上是visual sensor(视觉传感器),包括比较常见的RGB传感器,也包括其他比如depth(深度)以及lidar(激光雷达)等传感器。计算机视觉系统接收一个信号输入之后,输出的是Understanding of the world,也就是对世界的理解,这实际上是计算机视觉的目标。
在当今这个时代,计算机视觉领域呈现出很多新的趋势,其中最为显著的一个,就是应用的爆炸性增长。除了手机、个人电脑和工业检测之外,计算机视觉技术在智能安防、机器人、自动驾驶、智慧医疗、无人机、增强现实(AR)等领域都出现了各种形态的应用方式。计算机视觉迎来了一个应用爆炸性增长的时代。
计算机视觉技术面临的挑战和机遇
- 挑战
对计算机视觉来讲,虽然历经了六十年的发展,但是到今天为止,真正的大规模成熟应用还是屈指可数,比如指纹识别、车牌识别或者数码相机里面的一些人脸检测技术。这里面很大的原因是技术的局限。近几年,随着深度学习在视觉领域的应用,很多技术都取得了巨大的提升,但我们发现还面临着很多技术上的挑战。
比如说以ILSVRC2016(就是我们经常提到的ImageNet竞赛,它是视觉领域最重要的竞赛之一,每年会举办一次)的Object detection即物体检测任务为例,最好的结果MAP达到0.663,这实际上意味着,计算机自动给出图像中的各种物体的外边缘矩形框,这个结果的平均正确率是66%左右。这个结果实际上代表着世界范围内的最高水平,但我们知道这样的结果,还只能用于一些对准确率要求不是特别高的场景,还远没有达到大规模应用的程度。
同时,在应用层面,我们最终要实现的是用户价值,一方面只有视觉技术的话其实是不够的,另外一方面,也不需要等待视觉技术完全成熟才能够被使用。正是因为视觉技术的不成熟不完善,就必须和其它技术结合,必须和产品应用结合,才能使得视觉技术真正产生应用价值。
总结为一句话就是即使经过了60年的努力,我们依然在路上,我们还没有真正达到目标。
- 机遇
计算机视觉领域近几年面临的机遇有:
第一,我们整个计算机视觉领域迎来了前所未有的关注和接踵而来的投资热潮。这些关注既来自于风险投资、互联网公司和传统公司,还吸引了国家政府前所未有的关注,甚至连普通民众也开始关注和讨论这个领域。这些关注和相继而来的投资必然会促进这个领域的技术进步和应用发展。
第二,计算机视觉领域的应用呈现了爆发式的增长态势。我们刚才已经提到在安防监控、高度的自动化驾驶、增强现实、医疗图像、机器人工业视觉、移动互联网等领域都有众多的计算机视觉应用产生,这些应用里面产生的海量数据,将会促使计算机视觉技术加速发展,而技术和应用的结合也会推动技术的成熟落地。
第三,从世界范围来讲,我们华人在计算机视觉领域无论在学术影响上还是在创业公司领域都处于一个领先的地位,这使得我们有可能和美国一起去争夺这个世界人工智能的制高点,这是中国未来面临的一个非常巨大的机遇。
总之,对于我们这些做计算机视觉的人来讲,这是一个做计算机视觉最好的时代。
怎么样让机器看得更真更远?
- 如何让深度学习和数据形成良性的循环?
如果大家学过一门叫作《模式识别》的课程,第一节就会讲述一个基本的处理流程,里面包括三个方面的内容——原始数据的准备、特征提取、学习。特征提取里面可以细分为预处理、特征抽取、特征选择这样三个模块。这里面最明显的特征是,这个流程里面,特征和学习是分开的两个部分。这是传统的模式识别方法,换句话说是传统的计算机视觉图象识别的流程。而在深度学习的时代,最大的不同是什么呢?就是我们可以把特征和学习融合起来,变成特征学习,就是用基于深度学习的特征表示代替原来繁琐的预处理、特征抽取和特征选择以及学习的过程,这实际上是一个很巨大的进步。
这个进步的最大的好处就是,原来的特征完全是领域专家根据他对领域的理解去手工设计出来的,对不同的物体比如人脸和车牌,用的是完全不同的两种特征。一方面,需要为人脸或者车牌分别做两套方法,另外一方面,这个特征本身依赖于人对数据的理解,加上学习本身用的是非常浅层的表示,无法用复杂的非线性模型更好的刻画和表示数据,最终得到的表示能力并不是特别强,限制了算法的表现。而在深度学习时代,特征完全是基于数据去驱动,去学习出来的,对人或者对车而言,在架构或者方法上有可能做到非常相近甚至是完全一样的,这就使得这个系统变得非常的优雅。同时因为这个特征是由数据驱动去学习出来的,而且他是一层一层的非线性表示,这个层可以不断的添加,所以能够很方便的得到对一个数据非常强的表示。这实际上是深度学习最大的优势。
实际上2012年是深度学习在计算机视觉领域应用的一个节点。虽然从2006年左右开始,深度学习已经开始在语音识别方面得到应用,但是那个时候在计算机视觉领域大家都很置疑这个方法,原因是因为大家觉得他没有什么可解释性。但是真正的一个影响力的事件是在2012年的时候,深度学习的鼻祖之一Hinton让自己的学生Alex用深度学习方法最终在ImageNet竞赛上面使得错误率达到了15%。而在2011年的时候大概是25%的错误率,下降了10%,而在2010年的时候这个错误率大概是30%。
在传统方法时代,每年错误率的下降是非常小的,而真正用了深度学习之后,大家发现错误率的下降变得非常的快速。即使是在2012年之后,比如说到了2013年和2014年,大家发现在深度学习方法的推动下,这个错误率还会有非常明显的降低,可以达到每年百分之五十左右的一个相对错误率的降低。也就是说用了深度学习方法之后,大家发现在图像识别任务上,技术的推进变得比原来快得非常多。
另一个例子是人脸识别。人脸识别最早的一个著名方法叫特征脸,也就是PCA(主分量分析),是非常经典的方法,这大概是在1991年左右发明的方法。人脸识别领域有一个非常著名的数据集,叫作LFW(Labeled face in the wild),特征脸方法在这个数据集上面的错误率是40%。到了2013年的时候这个错误率大概是7%,是传统方法的最好水平。经过20年左右的努力,错误率下降了五倍多。在2014年的时候,深度学习方法开始应用到人脸识别上面,不到一年的时间,错误率一下子由7%下降到了3%,有超过50%的下降,到2015年这个错误率到了千分之六左右,不到两年下降了10多倍。可以看到用了深度学习方法以后,人脸识别领域的错误率下降也非常的明显。
总之,深度学习使得整个图像识别领域发生了一个翻天覆地的变化。
为什么深度学习方法能够这么成功呢?总结起来最重要的三个要素是:深度学习算法、大规模数据和硬件平台。深度学习算法大家比较好理解;关于数据,因为在传统的时代数据量很小,只有几千或者几万,即使用了非常强大模型,也会遇到过拟合的现象,表示能力强的模型需要大量的数据才能够训练好,否则就会出现过拟合现象;硬件平台方面,在深度学习出现之前,已经有人工神经网络的方法了,那是在九几年的时候,神经网络方法非常流行,当时训练一个人工神经网络,即使是很少量的数据,大概也要训练一个月到三个月的时间,非常难以忍受。而近年来,由于有了非常好的硬件平台,特别是GPU之后,大家发现训练一个很大的深度学习模型也可以很快训练完成,比如一周就可以出结果。这样使得这个方法容易被大家接受从而在工程上使用。
我们还可以以一个国际上通用的数据集的数据量的增长来看,在最早的时候,比如说像PASCAL VOC数据集的量级大概是一万左右的图像大概十类左右,那是2007年左右。而到了近期,比如讲ImageNet的数据量大概能够到100多万,然后类别的话大概是千的级别,这是这两个时期最著名的两个数据集。公开数据集数据量的提升本身也促进了深度学习方法的发展和迅速推广。
谈到深度学习对大规模数据的依赖,这并不是一个静态的过程。我们怎么样能够让深度学习和数据形成一种良性的循环呢?在初期,我们需要一些初始的数据,这个数据可能是几十万级别或者到几千万级别的数据,这个数据经过深度学习平台的训练,得到了一个模型,这个模型被应用到系统里边去,这个应用系统会反馈到那些最应该被标注或者最应该被使用的数据,这些数据经过标注之后再被当作训练数据反馈到系统里面去,这样形成从应用到数据到算法的正循环。这样可以达到一个由应用产生数据,数据推动模型的发展,模型再反过来促进应用的发展的正循环。
所以在这个时代,我们一提到计算机视觉,深度学习就已经成为标配。虽然大家在置疑说后面也许会有别的方法把深度学习的方法代替掉,或者深度学习的热潮会冷却下来,我承认深度学习领域不会一直如此快速的发展,也会遭遇低潮,也会出现更好的方法,但是深度学习代表了一种learning of representation的思想,这个思想是不会过时的,换句话讲,深度学习已经成为一个标配,哪怕后面的方法再变化也不会被完全的淘汰,只是会被发展会被继承。
- 深度学习遇到depth
在格灵深瞳,我们的目标是让计算机看懂世界。在一些复杂的场景下,我们怎么样去理解人的行为,是我们一直以来非常关心的一个问题。对于图像识别而言,我们最常用的传感器是RGB传感器。除此之外,还有一种传感器,不仅有RGB信息,还有depth信号,一般叫作RGBD传感器,基于RGBD信号的图像识别我们一般叫作3D图像识别。
对于纯粹的只利用RGB信息的方法我们叫2D的方法。2D的方法一般有几个缺陷:第一个是在没有可见光的情况,比如说特别黑的时候他就没办法工作;第二个,因为他缺少深度的信息,当我们拍一张照片的时候,会出现近处的车模会显得更大一些,远处的一个真实的车辆反而显得更小一些,这时候这个系统没有办法分清近的是车模还是远处的是车模,他把深度的信息丢失了。而且更重要的是他没有办法处理遮挡和交叠的情况。所以基于普通的RGB的输入,一般而言只能做一些非常特定的场景(比如垂直向下的人头计数等等),而且即使这样的情况下,也需要很巨大的运算量。哪怕是用了深度学习的方法能把效果做得很好,但运算量也会非常大。如果我们需要在嵌入式设备上做复杂的轨迹分析或者行为分析的话,只有深度学习其实是不够的。
在格灵深瞳,我们实际上是做了一套基于叫depth proposal的深度学习的物体检测方法。给大家简单地介绍一下这个方法:第一步我们基于depth输入来做前景提取的工作,得到里边潜在的目标区域,之后我们会做一个投影变换,因为我们知道了3D的信息之后,我们可以把潜在的目标投影到水平平面上去,之后我们结合RGB的方法产生一些proposal,因为实际中会产生一些干扰和误识别,我们后面使用深度学习的方法去做proposal的后处理过滤,这样的话就能做一个快速且效果好的多目标检测器,基于多目标检测和跟踪,可以进一步做比较复杂的行为分析的工作。
我们发现,如果纯用深度学习的方法直接来做这样的复杂场景的话,因为会遇到各种各样的问题,比如说遮挡的问题,还有两个人连接到一起的问题,所以如果用直接的深度学习方法很难在这种场景下处理的特别好,运算速度也是特别慢。我们发现结合了这种depth的方法之后,深度学习方法的威力会发挥的更好,而且这个运算速度是特别快的。
下图是我们的一些识别结果,左上角子图是采集到的RGB图像,上面绘制了最终的跟踪结果,大家可以看到每个人身体上会有一个圈表征说这是一个人,实际上这是一个3D的圈,图像里边右上角子图里面的橙色和深蓝色显示的是远近的区别。左下角子图的扇形区域里面,大家可以看到每个人的位置,这是一个垂直向下的视角。由于现实场景中存在非常大的遮挡,如果单纯用2D的方法是不可能做成这个样子的。我们可以做到在非常复杂的场景下,对几十个人中的每个人都进行跟踪,从而对每个人的行为进行分析。如果需要的话,基于这个depth sensor,再结合RGB的信息,我们可以对每个人的骨架进行分析,可以做手、脚或者头级别的更精细的动作分析。
最终我们开发的产品叫作皓目行为分析仪。这个产品主要针对的是银行或者商业上一些需要对人的行为进行分析的场景。比如分析银行ATM上是否有人做一些不合法的行为,或者银行加钞间里面是否有人违规操作等。下图是我们实际的产品,可以看到,在depth sensor上面接了一个小盒子,我们所有的运算都是发生在这个小盒子里的,也就是说用一个非常小规模的嵌入式的系统,就可以完成非常复杂的一个分析。这里边最大的体会,就是把depth信息和深度学习结合起来。我们并不认为深度学习万能到可以解决一切的问题。
- 让“感”和“知”互动起来
我们讲人的感知,一般是认为“感”和“知”是连在一起的。简单的说,“感”就是我们眼睛或者是一些视觉的sensor得到信息的过程,比如说获取图像的过程;而“知”是基于获取的信息得到对世界的理解。在一般的视觉系统里面,感是第一步,知是第二步,两个之间是没有相互作用的。感是知的前一步,知不会影响感。普通的视觉系统基本上都是这样一个逻辑。下面,我想以我们实际做的一个产品来介绍我们对这件事情的理解。
在介绍我们的产品和技术之前,我请大家看一个实际的例子。这是几年前很著名的波士顿爆炸案的一个例子。左上角这张图里面,实际上是两个犯罪嫌疑人在离他只有几米距离,而且是视角最好的一个传统的监控摄像机里边的图像。大家看到右边这个从这个摄像头中获取得到的人脸区域的图像,质量非常差。下面这些图是他们在其它现场数码相机和社交媒介中的图像。简而言之,对于监控场景,在我们现在已有的监控摄像头里边,很多获取的图像质量都非常的差,这样的质量即使我们的算法再好,都很难正确识别,这里面的信息是不足够进行自动识别的。
为此,我们还做了一系列的实验,我把这些结果分享给大家看一下。我们利用一个单反相机,分析1080P图像中,人脸距离相机不同距离时的脸部分辨率。第一张图里面,人距离相机是十米左右,这时脸上的分辨率大概是36×36。在第二张图里面,人处于距离相机20米左右的距离,人脸的分辨率大概是18×18。第三张图里面,人处于距离相机30米左右距离的时候,人脸的识别率大概是12×12。总之,在这三张图中,显示了人在不同的距离的情况下,脸部分辨率的变化情况,当人在30米左右的情况下,脸上的分辨率基本上只能判断这是一张人脸,但是已经完全分不清他是谁了。这是单反的情况,对于1080P的普通监控摄像头,基本上只能做到三五米距离下可识别,再远一点基本上已经很难进行识别了。
为了调研人脸分辨率对于人脸识别率的影响,我们参考了一篇公开的论文。这篇论文用了一个比较经典的VGG模型来进行人脸表示,然后研究当人脸的分辨率降低的情况下,人脸的识别率大概是什么规律。下面这张图像,横轴是分辨率,从0、25、50、75到100最高到250像素,纵轴就是人脸验证的准确率(accuracy),论文发现当人脸的分辨率在75以下的时候会对准确率有非常大的影响。比如说在人脸的分辨率达到50的时候,这个准确率大概只有80%多,如果到25像素,准确率则只有70%多。而当人脸的分辨率在100像素以上的时候,准确率可以达到95%左右。这个实验从侧面验证了对人脸识别而言,图像的分辨率是非常重要的。而且不仅仅是图像的分辨率,在低光照情况下,人脸的模糊、噪声等质量都会变得很差。
所以一种直观的思路就是我们要提高目标的分辨率。但实际上,大家发现这是矛盾的。就是如果我们想看得比较宽的话,我们就需要一个比较广角的摄像机,而这个广角的摄像机基本上只能看得很近,比如说可以看到三五米处的物体。另外一方面,我们希望看得很远的话,我们只能用一个非常窄视角的相机,这样的话我们能看到很远但却只能覆盖十几度范围的视角。宽和远这两者是不可兼得的。
还有一种思路,就是去提高摄像机的分辨率。这个在理论上来讲是可行的,一个4K分辨率的摄像头可以做到10米的范围,7K可以做到20米。但是在实际当中其实是非常难做到的,因为提高摄像机的分辨率,会造成数据量的增加,使得传感器的成本有巨大的提高,此外,对网络传输和存储也会造成非常大的压力。所以说,这个思路在工程上来讲基本上是不可行的。
我们在思考这个问题的时候,由人眼得到了一些启发。对人眼而言,实际上有一个明确的感和知的过程。这个感我们可以简单的叫sensing,即信息获取,然后知的话就是叫understanding,也叫信息理解。图像感知,可以简单理解为由图像采集和图像理解两个模块组成,这两个模块实际上是一个相互作用的动态过程。
所以,我们设计的产品里面,也包含了两个模块:第一个模块是去模拟人眼的图像采集的过程,第二个模块是去模拟人眼图像理解的过程。对我们这个系统来讲,首先是一个图像采集部分,在之后,会经过一个图像理解的过程,比如我们采用基于深度学习的物体检测方法去检测图像里面是否有我们感兴趣的人脸、人体或者汽车这些目标,当我们对这个场景有所理解了之后,知的模块会反馈回来去控制图像采集的部分,这样能够使得我们系统更聚焦于我们感兴趣的区域上,再然后经过一次新的知的过程,就得到了对场景里面物体的更好的理解并获取到更高质量的图像。对于在50米外的物体,在传统的相机里基本上是一个完全看不清楚的状况。而在我们的相机里基本上可以得到一个非常清晰,比如说100到200象素分辨率的结果,这对整个系统的提升是非常巨大的。最终,我们的产品可以对感兴趣的物体的有效分辨率,有等效100倍左右的提升。
这个产品,我们命名为人眼摄像机(FOVEACAM),如文章头图。
这个产品的特点:第一是可以看清很远的目标,在超远距离还可以达到高清特写的效果,比如在50米距离的时候可以得到清晰可识别的人脸,在100米距离的时候,可以看清这个人全身的特征;第二是支持超大广角到70度的视野;第三是它的所有运算都发生在嵌入式系统里面,采用了基于深度学习的目标检测技术,包括人脸、行人、汽车,都能够支持。这个相机包含了完整的感和知的模块,而且在一个嵌入式系统里面做到感和知相互作用,模拟了人眼的原理。下面图中显示了我们实测时的一些结果,其中右侧两列图像,左侧是普通相机中的目标的图像,而右侧是我们的相机中的效果。
我们实测了这个产品和我们的人脸识别引擎配合的效果。大概2016年10月份的时候,我们当时是第一次对外进行人眼摄像机这个新产品的发布,就请了大概几十位的媒体记者到我们公司来,在他们没有觉察的情况下,我们把他们的人脸抓拍放到我们的后台数据库中,再请大家现场在摄像头里面拍摄他们的人脸和库里的抓拍人脸去比对,结果识别率基本上是100%。大家都很惊讶的说,自己不知道已经被偷偷拍摄了。当时很多女士抱怨最多的是你们趁我不注意抓拍的效果不够美观,让我们是不是可以做一些美化之类的处理。
- 少即是多
整个人工智能领域非常大,整个计算机视觉领域也非常大,比如说图像识别有几千类甚至可以定义出上万类。对一个创业公司来讲我觉得最应该做的事情就应该是聚焦。格灵深瞳在视觉领域关注的主要目标就是人脸、人体和汽车。
原因也比较简单:第一是因为通用的图像识别技术,在短期之内是难以成熟的,如果说大公司的一些研究院或者学校的老师来做这些事情的话,我肯定是非常支持的,但是对于一个创业公司来讲做这些事情其实是需要商榷的。因为如果没办法产生商业价值的话,对创业公司而言就是一种浪费;第二是因为从价值角度,我们发现在现实社会中,最常见的物体主要是两个,一个是人,一个是车,而车背后实际上也是人,而人可以细分为人体和人脸这两个最重要的目标。人体、人脸和汽车是现实社会中最为常见而且是最有分析价值的物体;第三是从技术可重用角度,人体、人脸和汽车都是刚体,在方法上也有很多相近之处,而且他们也是最容易做到成熟的技术。
下面我简单的给大家介绍一下我们在这方面的探索和工作。
在智慧城市、平安城市、国家安全、公共安全以及智慧交通领域,我们布设了很多摄像头,这些摄像头数据目前主要是用于存储和查看,如果想理解里面发生了什么事件,或者希望自动找到某一个目标车或者人,还主要依赖人工操作。我们做了一个威目视图大数据分析系统,可以自动完成对人和车等的抓取、识别和检索。对车的识别,既包括对车辆类型的分类,比如小汽车/大汽车/大卡车这样的分类,也包括对车牌号的识别,还包括对主品牌/子品牌的识别,比如主品牌是奥迪,子品牌是A6,还可以包括年份。此外还包括车身颜色、遮阳板、纸巾盒、小挂件等等的识别。
我们的系统有几个特点,第一个是车头车尾是双向识别的,只需要一个模型,不需要手工切换;第二个是白天和黑夜都能识别;第三个是识别的角度,可以支持到正负25度左右;第四,车辆品牌能够支持到4000多种。我们在最近的一些应用中发现,我们的系统在傍晚,即使天非常暗,车灯非常晃眼的情况下,对车的检测和抓取也可以达到接近100%的抓取率。
除了上面提到的车,人也是我们非常关注的物体。我们在人体方面做了很多工作,包括检测跟踪,包括属性分析,另外还包括一些人体ReID相关的工作,就是用人体的图像去搜同一个人的其它人体图像,我们在一个公开的人体ReID数据集上面,目前做到了世界最好的结果。在这里不一一赘述了。
说到这些,还有一个不得不提的目标,就是人脸。在之前的钛坦白分享中,大家已经探讨了很多这方面的内容。我本人从2002年开始就做人脸识别,到今天已经有15年左右的时间。人脸是我们人一生中见到最多的物体。人脸的技术包括人脸检测、跟踪、定位、识别,行业里有很多友商也都在做这一块的内容。对格灵深瞳来讲,我们对人脸识别有一个期待。我不知道大家有没有看过一部片子叫《速度与激情7》,这里边提到了一个系统叫天网(SkyNet),这个系统可以潜入到任何一个摄像头里面去通过人脸识别方法找到想找的人。这实际上代表了我们对人脸识别这个技术的一个最完美的畅想,我们也一直向这个目标努力。我想强调的一点是,人脸识别并不仅仅是一个算法问题,所以我们才做了人眼摄像机。我们认为人脸识别想真正大规模实用,是一个结合软件和硬件的完整解决方案。如果不改变前端的图像采集部分,仅仅是做算法的话,哪怕是深度学习,假设抓取的脸只有十几个像素,这个信息不不足以表示人与人之间的差别的话,在软件算法上再怎么做都是不可能成功的。
- 由感知到行动
我们刚才讲的所有的事情其实都是关于感知。感知是指图像输入以后经过分析,我们能够理解这个图像里边是有什么样的物体,发生了什么样的事情,或者这是哪个人,他的车牌号是多少。但在我们真实的世界里面,除了理解之外,也需要产生行动去影响环境,这才能创造更大价值。对格灵深瞳而言,我们正在尝试做一些机器人相关的事情,我们之前还做了无人驾驶相关的事情。很多人可能已经知道,在无人驾驶方面,因为我们希望去做无人驾驶汽车,而不是ADAS器件,所以,这块业务我们通过引入更多的领域专家来一起做,最终成立了驭势科技。这是一家在无人驾驶领域非常有影响力的创业公司。
我们希望,由视觉的感知扩展到行动,通过机器人或者无人驾驶这些产品让视觉技术能够产生更大的价值,这也是格灵深瞳的愿景。
计算机视觉大规模应用的必经之路
我本人做计算机视觉技术已经15年了,对这个行业是非常有感情的,我一直非常希望能够见到计算机视觉能够大规模被应用。而今天其实还没有达到这样的一个状态。
首先,决定计算机视觉技术能否被大规模应用的两个因素,第一是准确率,第二是成本。只有当这两个因素都被解决得很好的时候,视觉技术才会被大规模的应用。
从技术的角度来讲,我会认为计算机视觉大规模应用的路径应该会是一个从云到端到芯片的渐进方式。
- 云的方式,其实就用类似服务器,不管是公有云还是私有云的方式,摄像头的数据传回到服务器端进行处理进行运算。这个方式最大的好处能促进算法的快速落地,能够产生大量的数据,而且能够帮助快速的迭代算法,促进算法的成熟,推动应用的发展。云的主要优势在于快速灵活,所以在早期应该采用这种云的方式。
- 云+端的方式,通过端来帮助云做一些运算量比较少的一些事情。他的主要优势第一个可以减少网络带宽,如果把所有的视频数据传回中心的话,网络带宽开销是非常大的,第二基于云加端的方式可以把运算由中心分散到前端,这个我个人认为一定是未来的一个重要趋势。
- 芯片的方式。芯片方式一定是能够降低成本,同时提高运算能力。但是我认为,芯片方式一定是在一个大规模应用状态下的终极阶段,这个结果是需要条件的,就是必须等算法成熟,而且应用也比较被大众所接受了之后才会达到的一种状态。如果过早的进行芯片化,本身把算法放到芯片上,本身就是有精度损失的,而且,迭代更新速度会很慢,反而无法使得技术快速落地应用。这就是我为什么会强调计算机视觉技术是会遵循云、端、芯的渐进方式。
从商业模式上讲,我认为单纯的算法提供模式是没有未来的,只有深入到场景中才能促进技术的落地并且创造出最大的价值。
有一句英语叫eat our own dog food,即吃自己的狗食。这句话在互联网软件行业非常流行,意思是说,你做了一个东西你必须自己去用他,这样才能把它用好。所以对我们算法来讲也是同样的,如果我们做了一个算法提供给别人去用,别人并不了解这个算法,他们不太可能把这个算法真正用好,所以我们必须深入到场景中去,针对这个场景去改进我们的算法,这样才能促进技术的落地和应用。
在整个产业链中,单纯的算法提供模式实际上是没有办法持续的。随着技术的进步,比如今天讲的深度学习,大家之间的差别已经没有那么巨大了,算法的优势是非常难保持的。比如在金融行业,人证比对是一个大家很看好的场景,但目前已经沦为了一个纯粹的算法比拼和成本比拼,竞争非常充分。大家都很难保证自己比别人有非常大的技术优势,这种情况下基本上大家变成最后拼成本,报价都报的非常的低,最终损害了整个行业。
对于算法在这个产业链分得的利益,初期的时候,因为算法很稀缺,可以分得相对多的利益,但量很难大起来,到了中后期,由于算法成熟,量虽然增加了,但算法在产业链里面分的利益会变得很少。以车牌识别为例,早期的车牌识别一套大概可以买到几千元,后期只能买到几百元,甚至是免费送。
芯片方式和算法SDK方式有一些相似的地方。芯片有两种模式,第一种是通用的芯片,第二种是非通用的,比如说人脸识别芯片。假设是非通用方案的话,虽然芯片门槛要比做纯算法SDK要高,但是想保持垄断优势也不是非常容易的事情。芯片是一个产业,是一个生态,不仅仅在于要把芯片做出来,还要提供相关的工具链,还要有销售的渠道。而对于通用的深度学习芯片而言,市场空间是非常巨大的,但面临的竞争必然也会非常大。对于深度学习预测(inference)芯片而言,已有的芯片公司比如华为、海思、高通、ARM,他们虽然在前瞻性上面略差,但他们对资源的投入会非常巨大。考虑到芯片的周期比较长,一款芯片从设计到真正的成熟应用至少需要一年多的时间,所以如何保持先发优势也是非常有挑战的。不过我还是认为,芯片领域是一个非常巨大的市场,是计算机视觉未来大规模应用的重要一环。
从产业链的角度,只有深入到场景中才能够形成闭环,获得数据,而且只有有了业务和数据之后你才能形成真正的护城河。一个类比其实是现在的阿里和腾讯,阿里和腾讯一定不是技术最好的公司,为他们服务的思科、华为、联通、电信这样的公司技术会更好,但最终只有阿里和腾讯形成了生态,有了护城河。简单的算法提供,更像思科这种设备提供商的角色,在生态里面最终能获得的价值实际上是非常少的。
钛坦白群友互动:
Q:邓总,想请教一下,目前还没有看到格灵深瞳特别强调在自动驾驶方面的应用与开发,重点主要是在安防监控、人脸识别、车辆识别方面,这背后的逻辑和思考是怎样的?
邓亚峰:实际上格灵深瞳在创业初期很早的时候,就在自动驾驶方面进行了投入。我们在思考和研究之后发现,自动驾驶如果只是做ADAS器件的方式,并不是特别好的一条路径,所以我们最终选择了要自己去做一个自动驾驶汽车。如果做一个自动驾驶汽车的话,在格灵深瞳内部来做,应该不是最好的选择,所以我们把自动驾驶的团队孵化了出去,吸引了吴甘沙和姜岩等更多人才一起创立了驭势科技,驭势科技目前发展得非常好。可以简单理解成,格灵深瞳的自动驾驶是在驭势科技去实现的。
Q:麻烦把人眼摄像机的原理再讲一下。
邓亚峰:简单来讲,普通的相机,或者看得比较广,但看得很近,比如说普通监控摄像机,他看得比较广,大概是一个七八十度这样的视角范围,但他只能看到3-5米左右的范围;或者看得远,但是视角只有几度,比如说一个定焦单反相机。我们的这个相机,第一是要能关注很广的范围,第二是能自动确定视场里面最应该关注的目标是哪个,然后让相机聚焦到最应该关注的那个目标上去,从而能够在这个目标上得到特别高的分辨率,进而得到一个非常好的识别效果。这个技术在行业内是独创的。
Q:如何看待安防市场?
邓亚峰:大家对安防其实关注蛮多的,我们对安防行业的一个判断:第一安防是个刚需的市场,这个市场非常的巨大,有数千亿规模,而且这里面非常刚需的一点是智能化做得很不好,监控数据虽然我们存储下来了,但是并没有真正被理解和分析,还处于一个非常低效的阶段。这里边一定有一个非常巨大的市场。
第二、在深度学习出现之前,技术上是很难做的非常好的。所以说可以理解成这是刚需,原有的技术又满足的不好,而现在的技术发展已经能让我们在很多场景下能够满足这个市场的需求了。所以他是一个潜在的巨大需求。正是基于这样的判断,我们投了比较多的精力在这个方向上。但这并不等于说格灵深瞳要把自己定位成是一个安防公司,我们只是觉得说对计算机视觉的几个方向来讲,比如说自动驾驶、安防、机器人、医疗和增强现实而言,安防市场应该是落地最快,最容易实现商业价值的一个方向。所以,我们会很关注。
Q:深度学习的这个技术的上限在哪里?
邓亚峰:如果考虑到深度学习本身的表示能力可以通过增加非线性层来扩展,可以认为这个技术没有明显的上限。但深度学习显然有其适合的应用场景和局限。此外,深度学习技术发展到今天,某种意义上来讲,短期到达了一个瓶颈期。虽然有些新兴的领域,包括序列学习、强化学习、非监督学习,都有了一些进展。但这些技术目前还更多限于学术上的进展,真正能在实际应用上产生巨大改变还需要时间。这实际上是这个技术最大的上限。但我相信,因为大家非常关注这个领域,中长期还是可能会有巨大的进步产生。
在这个时间点的话,深度学习最大的挑战是我们怎么把这些深度学习技术真正能够成熟应用。因为即使深度学习技术不会再突破性发展,如果我们可以用海量的数据去训练,并且有更好的硬件用于保证更深更强的网络实时预测的话,它的潜力其实就是无限的。
Q:嵌入式设备成本会不会很高,此外模型更新怎么办?
邓亚峰:关于成本,嵌入式设备有很多选择,有的成本确实非常高,但有的成本在这个阶段是能够被接受的。这个阶段的话,智能的设备/产品本身就偏高端一点,用户对成本本身也有一些预期,肯定不能和传统的摄像头直接去对比。关于模型更新,现在的很多设备都是连接上网络上面的,用一些在线更新的方式去做就好了,这并没有什么难的。
(本文独家首发钛媒体,根据格灵深瞳技术副总裁邓亚峰在钛坦白上的分享整理)
………………………………………………
钛坦白第28期“AI已来,让机器看懂这个世界”,六位钛客的精彩分享已经结束,干货会陆续发布:https://www.tmtpost.com/tag/1508094
钛坦白2017年,精彩分享继续!
推荐钛客、赞助、合作:请与钛坦白负责人佳音联系,邮箱jiayinge@tmtpost.com
根据《网络安全法》实名制要求,请绑定手机号后发表评论