计算机视觉研究目标
视觉是人类获取信息的最主要方式。在视觉、听觉、嗅觉、触觉和味觉中,视觉接受信息的比例约占80%。
早在1966年,一位人工智能领域的先行者,时任麻省理工学院教师的马文·明斯基(Marvin Minsky),曾给他的本科学生部署了一个有趣的作业——“让计算机看懂世界”。在当时,他认为这是一个本科生在一个暑假就能完成的作业。但今天回顾起来,经过学术界和工业界无数同仁50年的努力,计算机视觉虽然经历了巨大的发展,但计算机还没有真正做到看懂这个世界。
对于计算机视觉系统而言,输入设备是视觉传感器(visual sensor),包括RGB传感器、深度(depth)传感器和激光雷达(lidar)传感器等,输出的是“对世界的理解”。
如今,计算机视觉领域呈现出很多新的发展趋势,其中最为显著的是应用的爆炸性增长。除了手机、个人电脑和工业检测之外,在智能安防、机器人、自动驾驶、智慧医疗、无人机、增强现实(AR)等领域都出现了各种形态的计算机视觉应用。
计算机视觉面临的挑战和机遇
虽然计算机视觉的应用爆炸性增长,但除了指纹识别、车牌识别和数码相机里面的人脸检测技术外,真正大规模成熟的应用还是屈指可数。其中主要的原因是技术的局限。近几年,随着深度学习在视觉领域的应用,很多技术都有巨大的提升。但我们发现计算机视觉依然面临着很多挑战。以ILSVRC 2016的物体检测(object detection)任务为例,最好结果的平均正确率(Mean Average Precision, MAP)只达到0.663。这意味着计算机自动给出图像中各种物体的外边缘矩形框的平均正确率为66%。这个结果虽然已代表了世界的最高水平,但是,这样的结果还只能用于一些对准确率要求不高的场景,还远达不到大规模应用的程度。在应用层面,正是因为视觉技术的不成熟不完善,所以其必须和其他技术结合,与具体的产品应用相结合,才能使视觉技术产生真正的应用价值。某种意义上,虽然经过了50年的努力,“计算机视觉”依然在路上,还远没有做到看懂世界,也没有真正大规模应用。
但机遇往往与挑战并存。计算机视觉的机遇主要体现在三个方面。第一,迎来了前所未有的关注和接踵而至的投资热潮。这些关注既来自风险投资公司、互联网公司等金融界、产业界,也来自各级政府。第二,大量的应用产生的海量数据将会促进计算机视觉技术的快速发展,而技术和应用的结合也会推动技术的成熟。第三,在这个领域,华人科学家无论在学术界还是在产业界都非常有影响,这是中国面临的一个非常大的机遇,在这个领域,中国可能取得在世界范围内的领先地位。所以,某种意义上,这个时代对计算视觉从业者而言也是最好的一个时代。
如何让机器看得更真更远?
如何让深度学习和数据形成良性的循环?
“模式识别”课程第一章会讲述模式识别处理流程,主要包括三个方面:原始数据的准备,特征提取,以及学习。特征提取又细分为预处理、特征抽取、特征选择三个模块。这个传统流程中最明显的一个特点是,特征和学习是分开的两个部分。然而,在现在的深度学习时代,特征和学习可以融合起来,变成特征学习,即用基于深度学习的特征表示,代替原来繁琐的预处理、特征抽取和特征选择以及学习的过程,这是一个巨大的进步。
这个进步带来的最大好处是,无论对人还是对车牌的识别系统而言,在方法上有可能做到非常相近甚至是完全一样,这就使得这个系统变得非常优雅,具有统一的系统框架。因为这个特征是由数据驱动学习出来的,而且是一层一层的非线性表示,层数可以不断地添加,所以能够很方便地得到很强的数据表示。深度学习代表了一种表示学习(learning of representation)的思想,这也是深度学习的最大优势。以人脸识别为例。人脸识别最早的一个方法叫特征脸,也就是主分量分析(PCA),这是在1991年左右发明的方法。人脸识别领域有一个非常著名的数据集LFW(Labeled Face in the Wild),特征脸方法在这个数据集上的错误率是40%。到了2013年,错误率降低至7%——这是传统方法的最好水平。2014年,通过深度学习在人脸识别的应用,不到一年时间,错误率由7%下降到了3%。到2015年,错误率下降到0.6%。深度学习使图像识别技术发生了翻天覆地的变化。
为什么深度学习方法能够取得如此大的成功呢?总结起来,有三个重要要素:算法、大规模数据和硬件平台。算法主要体现在出现了Dropout方法、Relu非线性神经元以及包括深度残差网络结构等技术,很好地克服了过拟合、梯度消失等难以训练的问题。关于数据,在传统时代数据量很小,只有几千,最多几万,即使用了非常强大的模型,也会遇到过拟合现象。表示能力强的模型需要大量的数据才能够训练好,否则就会出现过拟合现象。在云计算大数据时代,海量数据解决了大规模复杂模型训练的输入问题。从国际上著名的图像数据集的数据量增长情况来看,2007年,PASCAL VOC数据集拥有图像的数量是1万张左右,类别为十几类;现在最主流的数据集之一,ImageNet的数据量达到100多万张,类别是千的级别。公开数据集数据量的提升也促进了深度学习方法的发展和迅速推广。深度学习是人工深度神经网络学习的简称,也就是说,在深度学习出现之前,就已经有人工神经网络的方法了。早在20世纪90年代时,人工神经网络方法非常流行。但当时即使用很少量的数据训练一个很浅的人工神经网络,也要训练几周甚至几个月的时间,令人难以忍受。近年来,由于硬件的发展,特别是通用图形处理器(GPGPU)出现之后,用几百万数据训练一个几十层深度的深度学习模型,也可以在几天或一周内完成。无疑,硬件的发展促进了深度学习技术的大规模应用。
深度学习对大规模数据的依赖,并不是一个静态的过程。怎样让深度学习和数据形成一种良性的循环呢?在早期,先获得一些初始的数据,经过深度学习平台的训练得到一个模型。这个模型被应用到系统里,应用系统会反馈回来那些最应该被标注的数据,这些数据经过标注之后再被当作训练数据反馈到系统里面,从而形成一个由应用产生数据、数据推动模型发展、模型再反过来促进应用的这样一个良性的循环。
让“感”和“知”互动起来
谈到人的感知,一般认为“感”和“知”是连在一起的。简单来说,“感”就是我们的眼睛或者是一些视觉的传感器(sensor)得到信息的过程,比如获取图像的过程;而“知”是基于获取的信息得到对世界的理解。在目前普通的计算机视觉系统中,感是知的前一步,知不会影响感,二者之间没有相互作用。
对于监控场景,已有的很多监控摄像头获取的图像质量都非常差。即使我们的算法再好,也不能对这些图像蕴藏的信息进行自动识别。为此,我们做了一系列的实验。利用一部单反相机,分析1080P图像中,人脸距离相机不同距离时的脸部分辨率。图1(a)~(c)显示了人在不同距离的情况下,脸部分辨率的变化情况。以人与相机距离30米时为例,此时脸上的分辨率基本上只能判断出这是一张人脸,而完全无法分清人的身份。所以,对于1080P的普通监控摄像头,基本上只能做到三五米距离以内可识别人脸,再远一点就很难识别了。
图1 利用单反相机,分析1080P图像中人脸距离相机不同距离时的脸部分辨率
为了调研人脸分辨率对于人脸识别率的影响,我们参考了一篇公开的论文[1]。这篇论文用了一个比较经典的VGG模型来进行人脸表示,研究人脸识别率相对于分辨率的变化规律。如图2所示,横轴是分辨率,从0、25上升到250像素,纵轴是人脸验证的准确率。论文发现,当人脸的分辨率在75以下时,会对准确率有非常大的影响。当人脸的分辨率为25像素时,准确率只有70%;分辨率达到50像素的时候,准确率约为80%;当分辨率在100像素以上时,准确率可达到95%左右。这个实验从侧面验证了图像的分辨率是多么重要。除此之外,在低光照情况下,人脸图像会因为模糊、噪声等因素使得质量变差。
图2 LFW数据集上人脸分辨率与人脸识别精度的关系曲线
所以,一种直观的思路就是要提高目标的分辨率。但实际上,大家发现矛盾依然存在:如果想看得比较宽,则需要一部广角摄像机,广角摄像机又只能看得比较近;另一方面,如果我们希望看得远,则只能用一部窄视角的摄像机。窄视角的摄像机能看得远,但只能覆盖十几度范围的视角。宽和远,二者不可兼得。另外一种思路是提高摄像机的分辨率。这从理论上来讲是可行的,但是在实践中难以做到。一个4K分辨率的摄像头可以达到10米的范围,7K可以达到20米,但因为数据量的增加,会造成传感器成本巨大的提高,对网络传输和存储也会造成非常大的压力。因此,这个思路在工程上基本上是不可行的。
我们在思考这个问题的时候,由人眼得到了一些启发。对人眼而言,实际上有一个明确的感和知的过程。这个“感”,可以简单地称为sensing,即信息获取;“知”为understanding,也叫信息理解。图像感知,可以简单地理解为由图像采集和图像理解两个模块组成,这两个模块实际上是一个相互作用的动态过程。所以,我们设计的产品里面,也包含了两个模块,第一个用于模拟人眼的图像采集的过程,第二个用于模拟人眼图像理解的过程。我们采用基于深度学习的物体检测方法,检测图像里是否有我们感兴趣的人脸、人体或者汽车等目标,当我们对这个场景有所理解了之后,“知”的模块会反馈回来,去控制图像采集的部分,这样能够使得系统更聚焦于我们感兴趣的区域上,再经过一次新的“知”的过程,就得到了对场景里面物体更好的理解,并获取到更高质量的图像。对于在50米外的物体,在传统的相机里基本上处于完全看不清楚的状况。而在我们的相机里可以得到一个非常清晰的结果,分辨率能达到100~200像素,这对整个系统性能的提升是巨大的。对于感兴趣的物体,我们的产品可以使其有效分辨率达到等效100倍左右的提升。
我们把这个产品命名为人眼摄像机(FOVEACAM)。在世界范围内,这个产品都是划时代的。这个产品有三个特点:第一,可以看清很远的目标,在超远距离还可以达到高清特写的效果,比如,可以看到50米距离外清晰可识别的人脸、100米距离外人的全身特征;第二,支持70度视野的超大广角;第三,采用基于深度学习的目标检测技术,包括人脸、行人、汽车的检测都能够支持,它的所有运算都在嵌入式系统里。这部相机包含了完整的感和知的模块,而且在一个嵌入式系统里做到感和知相互作用,模拟了人眼的原理。
图3展示了我们实测的一些结果,其中图3(b)右侧有两列图像,左列是目标在普通相机中的图像,右列是在我们开发的相机中的效果。
图3 (a)FOVEACAM人眼摄像机外观 (b)FOVEACAM与普通相机的输出结果比较
计算机视觉大规模应用的必经之路
云、端、芯的渐进式发展
决定计算机视觉技术能否被大规模应用有两个因素,第一是准确率,第二是成本。只有很好地解决了这两个因素,视觉技术才会得到大规模的应用。从技术角度来讲,计算机视觉大规模应用的路径应该是一个从云到端再到芯片的渐进过程。
第一个阶段:云的方式。即运算发生在服务器端,无论是公有云还是私有云,摄像头的数据都被传回到服务器端进行处理和运算。这个方式最大的好处是能促进算法的快速落地,产生大量数据,帮助实现快速的迭代算法,促进算法的成熟,推动应用的发展。云的优势在于快速灵活,所以在早期应该采用云的方式。
第二个阶段:云+端的方式。通过端来帮助云做一些运算量比较少的工作,主要优势在于这样可以减少网络带宽,如果把所有的视频数据传回中心的话,网络带宽开销是非常大的;其次,基于云+端的方式可以把运算由中心分散到前端,这将是未来的一个重要趋势。
第三个阶段:采用芯片的方式。芯片能够降低成本,同时提高运算能力。但是芯片一定是在一个大规模应用状态下的终极阶段。这个结果是有条件的,就是必须等到算法成熟,而且大众也接受这种应用。如果过早地进行芯片化,把算法放到芯片上,本身就是有精度损失的,而且迭代更新速度会很慢,反而无法使得技术快速落地应用。这就是为什么强调计算机视觉技术是会遵循云、端、芯的渐进方式发展。
深入到场景中促进技术落地
从商业模式上讲,单纯的算法提供模式是没有未来的,只有深入到场景中才能促进技术的落地并且创造出最大的价值。有一句英语叫Eat our own dog food,直译是吃自己的狗食。这句话在互联网软件行业非常流行,意思是说,你做的东西必须自己去用它,这样才能把它用好。对算法来讲也是一样,如果我们做了一个算法提供给别人去用,别人并不了解这个算法,他们不太可能把这个算法真正用好。所以我们必须深入到场景中去,针对这个场景去改进我们的算法,这样才能促进技术的落地和应用。
在整个产业链中,单纯的算法提供模式实际上是没有办法持续的。随着技术的进步,比如深度学习,各家之间的差别已经没有那么大了,因此算法的优势是非常难保持的。比如在金融行业,人证比对是一个大家很看好的场景,但目前已经沦为了一个纯粹的算法比拼和成本比拼,竞争非常激烈。大家都很难保证自己比别人有明显的技术优势,这种情况下基本上变成拼成本,报价都非常低,最终损害了整个行业。对于算法在整个产业链中分得利益的情况,初期因为算法很稀缺,可以分得相对较多的利益,但量很难大起来。到了中后期,由于算法成熟,量虽然增加了,但算法在产业链里面分到的利润会变得很少。以车牌识别系统为例,在早期,一套车牌识别系统大概可以卖到几千元,而后期只能卖到几百元,甚至是免费赠送。
芯片方式和算法软件开发工具包(SDK)方式有一些相似的地方。芯片有两种模式,第一种是通用的芯片,第二种是非通用的,比如人脸识别芯片。假设是非通用方案的话,虽然门槛要比做纯算法SDK高,但是想保持垄断优势也不容易。芯片是一个产业,是一个生态,不仅仅在于要把芯片做出来,还要提供相关的工具链,以及销售的渠道。而对于通用的深度学习芯片而言,市场空间是巨大的,但面临的竞争必然也会非常大。对于深度学习预测(inference)芯片而言,已有的芯片公司,比如华为海思、高通或ARM,他们虽然在前瞻性上略差,但他们投入的资源非常大。考虑到芯片的研发周期比较长,一款芯片从设计到真正的成熟应用,至少需要一年多的时间,所以如何保持先发优势也是非常有挑战性的。不过我还是认为,芯片领域是一个巨大的市场,是计算机视觉未来大规模应用的重要一环。
从产业链的角度,只有深入到场景中才能够形成闭环,获得数据。只有拥有业务和数据之后才能形成真正的护城河。比如说,阿里和腾讯一定不是技术最好的公司,为他们服务的思科、华为、联通、中国电信这样的公司技术会更好,但最终却只有阿里和腾讯形成了生态,有了护城河。简单的算法提供,更像思科这种设备提供商的角色,在生态里面最终能获得的价值实际上是非常少的。 ■
参考文献:
[1] Parkhi O M, Vedaldi A, Zisserman A. Deep Face Recognition[C]//Proceedings of British Machine VisionConference. 2015:41.1-41.12
所有评论仅代表网友意见