电子说
计算机视觉发展的四个主要阶段
尽管人们对计算机视觉这门学科的起始时间和发展历史有不同的看法,但应该说, 1982年马尔( David Marr )《视觉》(Marr, 1982)一书的问世,标志着计算机视觉成为了一门独立学科。计算机视觉的研究内容,大体可以分为物体视觉(object vision)和空间视觉(spatial vision)二大部分。 物体视觉在于对物体进行精细分类和鉴别,而空间视觉在于确定物体的位置和形状,为“动作(action)” 服务。正像著名的认知心理学家J.J. Gibson 所言,视觉的主要功能在于“适应外界环境,控制自身运动”。 适应外界环境和控制自身运动,是生物生存的需求,这些功能的实现需要靠物体视觉和空间视觉协调完成。
计算机视觉40多年的发展中,尽管人们提出了大量的理论和方法,但总体上说,计算机视觉经历了4个主要历程。即: 马尔计算视觉、主动和目的视觉、多视几何与分层三维重建和基于学习的视觉。下面将对这4项主要内容进行简要介绍。
1.马尔计算视觉(Computational Vision)
现在很多计算机视觉的研究人员,恐怕对“马尔计算视觉”根本不了解,这不能不说是一件非常遗憾的事。目前,在计算机上调“深度网络”来提高物体识别的精度似乎就等于从事“视觉研究”。事实上,马尔的计算视觉的提出,不论在理论上还是研究视觉的方法论上,均具有划时代的意义。
马尔的计算视觉分为三个层次: 计算理论、表达和算法以及算法实现。由于马尔认为算法实现并不影响算法的功能和效果,所以,马尔计算视觉理论主要讨论“计算理论”和“表达与算法”二部分内容。马尔认为,大脑的神经计算和计算机的数值计算没有本质区别,所以马尔没有对“算法实现”进行任何探讨。从现在神经科学的进展看,“神经计算”与数值计算在有些情况下会产生本质区别,如目前兴起的神经形态计算( Neuromorphological computing),但总体上说,“数值计算”可以“模拟神经计算”。至少从现在看,“算法的不同实现途径”,并不影响马尔计算视觉理论的本质属性。
1)计算理论(Computational Theory)
计算理论需要明确视觉目的, 或视觉的主要功能是什么。上世纪70年代,人们对大脑的认识还非常粗浅,目前普遍使用的非创伤型成像手段,如功能核磁共振(FMRI)等,还没有普及。所以,人们主要靠病理学和心理学结果来推断生理功能。即使目前,人们对“视觉的主要功能”到底是什么,也仍然没有定论。如最近几年,MIT的 DiCarlo等人提出了所谓的“目标驱动的感知信息建模”方法(Yamins &DiCarlo et al. 2016a)。他们猜测,猴子IT区(IT: interiortemporal cortex, 物体识别区)的神经元对物体的响应(neuronal responses)“可以通过层次化的卷积神经网络”(HCNN: Hierarchical Convolutional Neural Networks )来建模。他们认为,只要对HCNN在图像物体分类任务下进行训练,则训练好的HCNN 可以很好定量预测IT 区神经元的响应(Yamins et al. 2014, 2016b)。由于仅仅“控制图像分类性能”对IT神经元响应(群体神经元对某一输入图像物体的响应,就是神经元对该物体的表达或编码)进行定量预测,所以他们将这种框架称之为“目标驱动的框架”。目标驱动的框架提供了一种新的比较通用的建模群体神经元编码的途径,但也存在很大的不足。能否真正像作者所言的那样,仅仅靠“训练图像分类的HCNN”就可以定量预测神经元对图像物体的响应,仍是一个有待进一步深入研究的课题。
马尔认为视觉不管有多少功能,主要功能在于“从视网膜成像的二维图像来恢复空间物体的可见三维表面形状”,称之为“三维重建”(3D reconstruction)。而且,马尔认为,这种重建过程不是天生就有的,而是可以通过计算完成的。J.J. Gibson 等心理学家,包括格式塔心里学学派( Gestalt psychology),认为视觉的很多功能是天生就有的。可以想想,如果一种视觉功能与生具有,不可建模,就谈不上计算,也许就不存在今天的“计算机视觉”这门学科了。
那么,马尔的计算理论是什么呢?这一方面,马尔在其书中似乎并不是介绍得特别具体。他举了一个购买商品的例子,说明计算理论的重要性。如商店结账要用加法而不是乘法。试想如果用乘法结账,每个商品1元钱,则不管你购买多少件商品,你仅仅需要付一元钱。
马尔的计算理论认为,图像是物理空间在视网膜上的投影,所以图像信息蕴含了物理空间的内在信息,因此,任何计算视觉计算理论和方法都应该从图像出发,充分挖掘图像所蕴含的对应物理空间的内在属性。也就是说,马尔的视觉计算理论就是要“挖掘关于成像物理场景的内在属性来完成相应的视觉问题计算”。因为从数学的观点看,仅仅从图像出发,很多视觉问题具有“歧义性”,如典型的左右眼图像之间的对应问题。如果没有任何先验知识,图像点对应关系不能唯一确定。不管任何动物或人,生活的环境都不是随机的,不管有意识或无意识,时时刻刻都在利用这些先验知识,来解释看到的场景和指导日常的行为和行动。如桌子上放一个水杯的场景,人们会正确地解释为桌子上放了一个水杯,而不把他们看作一个新物体。当然,人类也会经常出错,如大量错觉现象。从这个意义上来说,让计算机来模仿人类视觉是否一定是一条好的途径也是一个未知的命题。飞机的飞行需要借助空气动力学知识,而不是机械地模仿鸟如何飞。
2)表达和算法(Representationand Algorithm)
识别物体之前,不管是计算机还是人,大脑(或计算机内存)中事先要有对该物体的存储形式,称之为物体表达(object representation)。 马尔视觉计算理论认为,物体的表达形式为该物体的三维几何形状。马尔当时猜测,由于人在识别物体时与观察物体的视角无关,而不同视角下同一物体在视网膜上的成像又不同,所以物体在大脑中的表达不可能是二维的,可能是三维形状,因为三维形状不依赖于观察视角。另外,当时病理学研究发现,有些病人无法辨认“茶杯”,但可以毫无困难地画出茶杯的形状,因此马尔觉得,这些病人也佐证了他的猜测。从目前对大脑的研究看,大脑的功能是分区的。物体的“几何形状”和“语义”储存在不同的脑区。另外,物体识别也不是绝对地与视角无关,仅仅在一个比较小的变化范围内与视角无关。所以,从当前的研究看,马尔的物体的“三维表达”猜测基本上是不正确的,至少是不完全正确的,但马尔的计算理论仍具有重要的理论意义和应用价值。
简言之,马尔视觉计算理论的“物体表达”,是指“物体坐标系下的三维形状表达”。注意,从数学上来说,一个三维几何形状,选取的坐标系不同,表达函数亦不同。如一个球体,如果以球心为坐标原点,则球面可以简单表达为:x^2+y^2+z^2=1。 但如果观测者在x轴上2倍半径处观测,则可见球面部分在观测者坐标系下的方程为:x=2-sqrt(1-y^2-z^2)。由此可见,同一物体,选用的坐标系不同,表达方式亦不同。马尔将“观测者坐标系下的三维几何形状表达”称之为“2.5维表达”,物体坐标系下的表达为“三维表达”。所以,在后续的算法部分,马尔重点研究了如何从图像先计算“2.5维表达”,然后转化为“三维表达”的计算方法和过程。
算法部分是马尔计算视觉的主体内容。马尔认为,从图像到三维表达,要经过三个计算层次:首先从图像得到一些基元(primal sketch), 然后通过立体视觉(stereopsis)等模块将基元提升到2.5维表达,最后提升到三维表达。
下图总结给出了马尔视觉计算理论的算法流程:
由上图所示,首先从图像提取边缘信息(二阶导数的过零点),然后提取点状基元(blob, 线状基元(edge)和杆状基元 (bar), 进而对这些初级基元(raw primal sketch)组合形成完整基元(full primal sketch),上述过程为视觉计算理论的特征提取阶段。在此基础上,通过立体视觉和运动视觉等模块,将基元提升到2.5维表达。最后,将2.5维表达提升到三维表达。在马尔的《视觉》一书中,重点介绍了特征提取和2.5维表达对应的计算方法。在2.5维表达部分,也仅仅重点介绍了立体视觉和运动视觉部分。由于当双眼(左右相机)的相互位置已知时(计算机视觉中称之为相机外参数),立体视觉就转化为“左右图像点的对应问题”(image point correspondence), 所以,马尔在立体视觉部分重点介绍了图像点之间的匹配问题,即如何剔除误匹配,并给出了对应算法。
立体视觉等计算得到的三维空间点仅仅是在“观测者坐标系下的坐标”,是物体的2.5维表示。如何进一步提升到物体坐标系下的三维表示,马尔给出了一些思路,但这方面都很粗泛。如确定物体的旋转主轴等等,这部分内容,类似于后来人们提出的“骨架模型”(skeleton model)构造。
需要指出的是,马尔的视觉计算理论是一种理论体系。在此体系下,可以进一步丰富具体的计算模块,构建“通用性视觉系统”(general vision system)。只可惜马尔(Jan.15,1945 ~ Nov.17,1980 )1980年底就因白血病去世,包括他的《视觉》一书,也是他去世后出版的。马尔的英年早逝,不能说不是计算机视觉界的一大损失。由于马尔的贡献,所以二年一度的国际计算机视觉大会(ICCV: International Conference on Computer Vision)设有马尔奖(MarrPrize),作为会议的最佳论文奖。另外,在认知科学领域,也设有马尔奖,因为马尔对认知科学也有巨大的贡献。以同一人名在不同领域设立奖项,实属罕见,可见马尔对计算机视觉的影响有多深远。正如S. Edelman 和 L. M. Vaina 在《 International Encyclopedia of the Social & Behavioral Sciences 》中对马尔的评价那样,“马尔前期给出的集成数学和神经生物学对大脑理解的三项工作,已足以使他在任何情况下在英国经验主义二个半世纪的科学殿堂中占有重要的一席,…, 然而,他进一步提出了更加有影响的计算视觉理论”。所以,从事计算机视觉研究的人员对马尔计算视觉不了解,实在是一件比较遗憾的事。
2.昙花一现的主动和目的视觉
很多人介绍计算机视觉时,将这部分内容不作为一个单独部分加以介绍,主要是因为“主动视觉和目的视觉”并没有对计算机视觉后续研究形成持续影响。但作为计算机视觉发展的一个重要阶段,这里还是有必要予以介绍一下。
上世纪80年代初马尔视觉计算理论提出后,学术界兴起了“计算机视觉”的热潮。人们想到的这种理论的一种直接应用就是给工业机器人赋予视觉能力,典型的系统就是所谓的“基于部件的系统”(parts-based system)。然而,10多年的研究,使人们认识到,尽管马尔计算视觉理论非常优美,但“鲁棒性”(Robustness)不够,很难想人们预想的那样在工业界得到广泛应用。这样,人们开始质疑这种理论的合理性,甚至提出了尖锐的批评。
对马尔计算视觉理论提出批评最多的有二点:一是认为这种三维重建过程是“纯粹自底向上的过程”(pure bottom-up process),缺乏高层反馈(top-down feedback);二是“重建”缺乏“目的性和主动性”。由于不同的用途,要求重建的精度不同,而不考虑具体任务,仅仅“盲目地重建一个适合任何任务的三维模型”似乎不合理。
对马尔视觉计算理论提出批评的代表性人物有:马里兰大学的 J. Y. Aloimonos;宾夕法尼亚大学的R. Bajcsy和密西根州立大学的A. K. Jaini。 Bajcsy 认为,视觉过程必然存在人与环境的交互,提出了主动视觉的概念(active vision)。 Aloimonos认为视觉要有目的性,且在很多应用,不需要严格三维重建,提出了“目的和定性视觉”(purpose and qualitative vision) 的概念。 Jain 认为应该重点强调应用,提出了“应用视觉”( practicing vision)的概念。上世纪80年代末到90年代初,可以说是计算机视觉领域的“彷徨”阶段。真有点“批评之声不绝,视觉之路茫茫”之势。
针对这种情况,当时视觉领域的一个著名刊物(CVGIP: Image Understanding)于1994年组织了一期专刊对计算视觉理论进行了辩论。首先由耶鲁大学的M. J. Tarr和布朗大学的M. J.Black写了一篇非常有争议性的观点文章(Tarr & Black, 1994),认为马尔的计算视觉并不排斥主动性,但把马尔的“通用视觉理论”(general vision)过分地强调“应用视觉”是“短见”(myopic)之举。通用视觉尽管无法给出严格定义,但“人类视觉”是最好的样板。这篇观点文章发表后,国际上20多位著名的视觉专家也发表了他们的观点和评论。大家普遍的观点是,“主动性”“目的性”是合理的,但问题是如何给出新的理论和方法。而当时提出的一些主动视觉方法,一则仅仅是算法层次上的改进,缺乏理论框架上的创新,另外,这些内容也完全可以纳入到马尔计算视觉框架下。所以,从1994年这场视觉大辩论后,主动视觉在计算机视觉界基本没有太多实质性进展。这段“彷徨阶段”持续不长,对后续计算机视觉的发展产生的影响不大,犹如“昙花一现”之状。
值得指出的是,“主动视觉”应该是一个非常好的概念,但困难在于“如何计算”。 主动视觉往往需要“视觉注视”(visual attention),需要研究脑皮层(cerebral cortex)高层区域到低层区域的反馈机制,这些问题,即使脑科学和神经科学已经较20年前取得了巨大进展的今天,仍缺乏“计算层次上的进展”可为计算机视觉研究人员提供实质性的参考和借鉴。近年来,各种脑成像手段的发展,特别是 “连接组学”(Connectomics)的进展,可望为计算机视觉人员研究大脑反馈机制提供“反馈途径和连接强度”提供一些借鉴。
3.多视几何和分层三维重建(Multiple View Geometry and Stratified 3D Reconstruction)
上世纪90年代初计算机视觉从“萧条”走向进一步“繁荣”,主要得益于以下二方面的因素:首先,瞄准的应用领域从精度和鲁棒性要求太高的“工业应用”转到要求不太高,特别是仅仅需要“视觉效果”的应用领域,如远程视频会议(teleconference),考古,虚拟现实,视频监控等。另一方面,人们发现,多视几何理论下的分层三维重建能有效提高三维重建的鲁棒性和精度。
多视几何的代表性人物首数法国INRIA的O. Faugeras ( Faugeras O, 1993), 美国GE 研究院的R.Hartely (现已回到了澳大利亚国立大学)和英国牛津大学的 A. Zisserman。应该说,多视几何的理论于2000年已基本完善。 2000 年Hartley 和Zisserman 合著的书 (Hartley & Zisserman 2000) 对这方面的内容给出了比较系统的总结,而后这方面的工作主要集中在如何提高“大数据下鲁棒性重建的计算效率”。大数据需要全自动重建,而全自动重建需要反复优化,而反复优化需要花费大量计算资源。所以,如何在保证鲁棒性的前提下快速进行大场景的三维重建是后期研究的重点。举一个简单例子,假如要三维重建北京中关村地区,为了保证重建的完整性,需要获取大量的地面和无人机图像。假如获取了1万幅地面高分辨率图像(4000×3000),5 千幅高分辨率无人机图像(8000×7000)(这样的图像规模是当前的典型规模),三维重建要匹配这些图像,从中选取合适的图像集,然后对相机位置信息进行标定并重建出场景的三维结构,如此大的数据量,人工干预是不可能的,所以整个三维重建流程必须全自动进行。这样需要重建算法和系统具有非常高的鲁棒性,否则根本无法全自动三维重建。在鲁棒性保证的情况下,三维重建效率也是一个巨大的挑战。所以,目前在这方面的研究重点是如何快速、鲁棒地重建大场景。
1)多视几何( Multiple View Geometry)
由于图像的成像过程是一个中心投影过程(perspective projection),所以“多视几何”本质上就是研究射影变换下图像对应点之间以及空间点与其投影的图像点之间的约束理论和计算方法的学科(注意:针孔成像模型(The pinhole camera model)是一种中心投影, 当相机有畸变时,需要将畸变后的图像点先校正到无畸变后才可以使用多视几何理论)。计算机视觉领域,多视几何主要研究二幅图像对应点之间的对极几何约束(epipolar geometry), 三幅图像对应点之间的三焦张量约束(tri-focal tensor),空间平面点到图像点,或空间点为平面点投影的多幅图像点之间的单应约束(homography)等。在多视几何中,射影变换下的不变量,如绝对二次曲线的像(The image of the absolute conic),绝对二次曲面的像(Theimage of the absolute quadric), 无穷远平面的单应矩阵(infinite homography),是非常重要的概念,是摄像机能够自标定的“参照物”。由于这些量是无穷远处“参照物”在图像上的投影,所以这些量与相机的位置和运动无关(原则上任何有限的运动不会影响无限远处的物体的性质),所以可以用这些“射影不变量”来自标定摄像机。关于多视几何和摄像机自标定的详细内容,可参阅Hartley 和Zisserman 合著的书(Hartley & Zisserman,2000)。
总体上说,多视几何就其理论而言,在射影几何中不能算新内容。Hartley, Faugeras, Zissermann等将多视几何理论引入到计算机视觉中,提出了分层三维重建理论和摄像机自标定理论,丰富了马尔三维重建理论,提高了三维重建的鲁棒性和对大数据的适应性,有力推动了三维重建的应用范围。所以,计算机视觉中的多视几何研究,是计算机视觉发展历程中的一个重要阶段和事件。
多视几何需要射影几何(projectivegeometry)的数学基础。射影几何是非欧几何,涉及平行直线相交,平行平面相交等抽象概念,表达和计算要在“齐次坐标”(homogeneous coordinates)下进行,这给“工科学生”带来不小的困难。所以,大家要从事这方面的研究,一定要先打好基础,至少要具备必要的射影几何知识。否则,做这方面的工作,无异于浪费时间。
2)分层三维重建( Stratified 3D Reconstruction)
所谓的分层三维重建,如下图所示,就是指从多幅二维图像恢复欧几里德空间的三维结构时,不是从图像一步到欧几里德空间下的三维结构,而是分步分层地进行。即先从多幅图像的对应点重建射影空间下的对应空间点(即射影重建:projective reconstruction),然后把射影空间下重建的点提升到仿射空间下(即仿射重建:affine reconstruction),最后把仿射空间下重建的点再提升到欧几里德空间(或度量空间: metric reconstruction)(注:度量空间与欧几里德空间差一个常数因子。由于分层三维重建仅仅靠图像进行空间点重建,没有已知的“绝对尺度”,如“窗户的长为1米”等,所以从图像仅仅能够把空间点恢复到度量空间)。
这里有几个概念需要解释一下。以空间三维点的三维重建为例,所谓的“射影重建”,是指重建的点的坐标与该点在欧几里德空间下的坐标差一个“射影变换”。所谓的“仿射重建”,是指重建的点的坐标与该点在欧几里德空间下的坐标差一个“仿射变换”。所谓的“度量重建”,是指重建的点的坐标与该点在欧几里德空间下的坐标差一个“相似变换”。
由于任何一个视觉问题最终都可以转化为一个多参数下的非线性优化问题,而非线性优化的困难在于找到一个合理的初值。由于待优化的参数越多,一般来说解空间越复杂,寻找合适的初值越困难,所以,如果一个优化问题如能将参数分组分步优化,则一般可以大大简化优化问题的难度。分层三维重建计算上的合理性正是利用了这种“分组分步”的优化策略。以三幅图像为例,直接从图像对应点重建度量空间的三维点需要非线性优化16个参数(假定相机内参数不变,5个相机内参数,第二幅和第三幅图像相对于第一幅图像的相机的旋转和平移参数,去掉一个常数因子,所以5+2×(3+3)-1=16), 这是一个非常困难的优化问题。但从图像对应点到射影重建需要“线性”估计22个参数,由于是线性优化,所以优化问题并不困难。从射影重建提升到仿射重建需要“非线性”优化三个参数(无穷远平面的3个平面参数),而从仿射重建提升到度量重建需要“非线性”优化5个参数(摄像机的5个内参数)。因此,分层三维重建仅仅需要分步优化3个和5个参数的非线性优化问题,从而大大减小了三维重建的计算复杂度。
分层三维重建的另一个特点是其理论的优美性。射影重建下,空间直线的投影仍为直线,二条相交直线其投影直线仍相交,但空间直线之间的平行性和垂直性不再保持。仿射重建下可以保持直线的平行性,但不能保持直线的垂直性。度量重建既可以保持直线之间的平行线,也可以保持垂直性。在具体应用中,可以利用这些性质逐级提升重建结果。
分层三维重建理论可以说是计算机视觉界继马尔计算视觉理论提出后又一个最重要和最具有影响力的理论。目前很多大公司的三维视觉应用,如苹果公司的三维地图,百度公司的三维地图,诺基亚的Streetview, 微软的虚拟地球,其后台核心支撑技术的一项重要技术就是分层三维重建技术。
3)摄像机自标定(Cameraself-calibration)
所谓摄像机标定,狭义上讲,就是确定摄像机内部机械和光电参数的过程,如焦距,光轴与像平面的交点等。尽管相机出厂时都标有一些标准参数,但这些参数一般不够精确,很难直接在三维重建和视觉测量中应用。所以,为了提高三维重建的精度,需要对这些相机内参数(intrinsic parameters)进行估计。估计相机的内参数的过程,称为相机标定。在文献中,有时把估计相机在给定物体坐标系下的坐标,或相机之间相互之间的位置关系,称为相机外参数(extrinsic parameters)标定。但一般无明确指定时,相机标定就是指对相机内参数的标定。
相机标定包含二方面的内容:“成像模型选择”和“模型参数估计”。相机标定时首先需要确定“合理的相机成像模型”,如是不是针孔模型,有没有畸变等。目前关于相机模型选择方面,没有太好的指导理论,只能根据具体相机和具体应用确定。随着相机加工工艺的提高,一般来说,普通相机(非鱼眼或大广角镜头等特殊相机)一般使用针孔成像模型(加一阶或二阶径向畸变)就足以了。其它畸变很小,可以不加考虑。当相机成像模型确定后,进一步需要估计对应的模型参数。文献中人们往往将成像模型参数估计简单地认为就是相机标定,是不全面的。事实上,相机模型选择是相机标定最关键的步骤。一种相机如果无畸变而在标定时考虑了畸变,或有畸变而未加考虑,都会产生大的误差。视觉应用人员应该特别关注“相机模型选择”问题。
相机参数估计原则上均需要一个“已知三维结构”的“标定参考物”,如平面棋盘格,立体块等。所谓相机标定,就是利用已知标定参考物和其投影图像,在已知成像模型下建立模型参数的约束方程,进而估计模型参数的过程。所谓“自标定”,就是指“仅仅利用图像特征点之间的对应关系,不需要借助具体物理标定参考物,进行模型参数估计的过程”。“传统标定”需要使用加工尺寸已知的标定参考物,自标定不需要这类物理标定物,正像前面多视几何部分所言,使用的是抽象的无穷远平面上的“绝对二次曲线”和“绝对二次曲面”。从这个意义上来说,自标定也需要参考物,仅仅是“虚拟的无穷远处的参考物”而已。
摄像机自标定需要用到两幅图像之间的约束,如基础矩阵(fundamental matrix), 本质矩阵(essential matrix), 以及三幅图像之间的三焦张量约束等。另外,Kruppa 方程也是一个重要的概念。这些内容是多视几何的重要内容,后续章节将进行详细介绍。
4.基于学习的视觉(Learning based vision)
基于学习的视觉,是指以机器学习为主要技术手段的计算机视觉研究。基于学习的视觉研究,文献中大体上分为二个阶段:本世纪初的以流形学习( manifold Learning)为代表的子空间法( subspace method)和目前以深度神经网络和深度学习(deep neural networks and deep learning)为代表的视觉方法。
1)流形学习(Manifold Learning)
正像前面所指出的,物体表达是物体识别的核心问题。给定图像物体,如人脸图像,不同的表达,物体的分类和识别率不同。另外,直接将图像像素作为表达是一种“过表达”,也不是一种好的表达。流形学习理论认为,一种图像物体存在其“内在流形”(intrinsic manifold), 这种内在流形是该物体的一种优质表达。所以,流形学习就是从图像表达学习其内在流形表达的过程,这种内在流形的学习过程一般是一种非线性优化过程。
流形学习始于2000年在Science 上发表的二篇文章( Tenenbaum et al., 2000) (Roweis & Lawrence 2000)。流形学习一个困难的问题是没有严格的理论来确定内在流形的维度。人们发现,很多情况下流形学习的结果还不如传统的PCA (Principal Component Analysis),LDA( linear DiscriminantAnalysis ), MDS( Multidimensional Scaling)等。 流形学习的代表方法有:LLE(Locally Linear Embedding )(Roweis & Lawrence 2000),Isomap ( Tenenbaum et al., 2000), Laplacian Eigenmaps (Belkin & Niyogi, 2001)等。
2)深度学习(Deep Learning)
深度学习( LeCunet al. 2015) 的成功,主要得益于数据积累和计算能力的提高。深度网络的概念上世纪80年代就已提出来了,只是因为当时发现“深度网络”性能还不如“浅层网络”,所以没有得到大的发展。目前似乎有点计算机视觉就是深度学习的应用之势,这可以从计算机视觉的三大国际会议:国际计算机视觉会议(ICCV),欧洲计算机视觉会议(ECCV)和计算机视觉和模式识别会议(CVPR),上近年来发表的论文可见一般。目前的基本状况是,人们都在利用深度学习来“取代”计算机视觉中的传统方法。“研究人员”成了“调程序的机器”,这实在是一种不正常的“群众式运动”。牛顿的万有引力定律,麦克斯韦的电磁方程,爱因斯坦的质能方程,量子力学中的薛定谔方程,似乎还是人们应该追求的目标。
关于深度网络和深度学习,详细内容可参阅相关文献,这里仅仅强调以下几点:
(1)深度学习在物体视觉方面较传统方法体现了巨大优势,但在空间视觉,如三维重建,物体定位方面,仍无法与基于几何的方法相媲美。这主要是因为深度学习很难处理图像特征之间的误匹配现象。在基于几何的三维重建中,RANSAC (Random Sample Consensus)等鲁棒外点(误匹配点)剔除模块可以反复调用,而在深度学习中,目前还很难集成诸如RANSAC等外点剔除机制。笔者认为,如果深度网络不能很好地集成外点剔除模块,深度学习在三维重建中将很难与基于几何的方法相媲美,甚至很难在空间视觉中得到有效应用;
(2) 深度学习在静态图像物体识别方面已经成熟,这也是为什么在ImageNet上的物体分类竞赛已不再举行的缘故;
(3) 目前的深度网络,基本上是前馈网络(feedforwardNetworks)。不同网络主要体现在使用的代价函数不同。下一步预计要探索具有“反馈机制”的层次化网络。反馈机制,需要借鉴脑神经网络机制,特别是连接组学的成果。
(4) 目前对视频的处理,人们提出了RCNN (Recurrent Neural Networks)。 循环( recurrent) 是一种有效的同层作用机制,但不能代替反馈。大脑皮层远距离的反馈(将在生物视觉简介一章介绍)可能是形成大脑皮层不同区域具有不同特定功能的神经基础。所以,研究反馈机制,特别具有“长距离反馈”(跨多层之间)的深度网络, 将是今后研究图像理解的一个重要方向;
(5)尽管深度学习和深度网络在图像物体识别方面取得了“变革性”成果,但为什么“深度学习”会取得如此好的结果目前仍然缺乏坚实的理论基础。目前已有一些这方面的研究,但仍缺乏系统性的理论。事实上,“层次化”是本质,不仅深度网络,其它层次化模型,如Hmax 模型(Riesenhuber & Poggio,1999) HTM (Hierarchical Temporal memory)模型(George & Hawkins, 2009)存在同样的理论困惑。为什么“层次化结构”( hierarchical structure )具有优势仍是一个巨大的迷。
计算机视觉是使用计算机及相关设备对生物视觉的一种模拟。它的主要任务就是通过对采集的图片或视频进行处理以获得相应场景的三维信息,形象地说,就是给计算机安装上眼睛(照相机)和大脑(算法),让计算机能够感知环境。
1. 农业生产技术
在农业方面具有代表性的是收割机和洒水机的智能化使用,通过计算机视觉系统中的机器视觉部分分析谷物和农产品位置,识别适合的路径进行实施灌溉和收割等动作。同时,借助计算机视觉系统可以识别农场杂草位置,再除杂草喷洒药剂时可准确定位针对性喷洒,节省除草剂的同时,可以大幅度降低除草剂对于农产品的影响。
2.自动驾驶技术
目前自动驾驶已经成为热议的话题,自动驾驶技术也很大依托于计算机视觉,搭配雷达、超声传感器等获取更多路况信息、交通信息等。
3.有道和谷歌翻译软件
对于大多数从事与外语相关工作的人来说,有道和谷歌翻译软件并不陌生。通过手机的摄像头就能通过字符识别,来打到准确翻译的目的,此类的计算机视觉应用带来了极大的方便。
4.脸部识别
国内目前很多企业已经改变传统指纹打卡,应用了新的人脸识别技术,这项技术中也应用到了计算机视觉。除了企业应用人脸识别打卡以外,人脸识别也被应用在犯罪嫌疑人监控和安检等方面,为人们的生活带来巨大的便捷和保障。
5.医疗保健
医疗行业使用计算机视觉技术很常见,医学诊断时通过分析X射线等图像,及早的检测患者的情况并给予相对应的症状对策,不仅于此。相信我国的医疗行业将会在应用计算机视觉技术方面取得更加突出的成绩
6.制造业
自动化进程加快,制造业企业多数已经完成智能制造改革,其中计算机视觉在其中起到了至关重要的作用。
传统制造行业近年来基本多数已经完成自动化改革,计算机视觉技术不仅用于生产制造,同时对于设备的预测性维护也能起到重要的作用。通过对设备的监控,可以及时避免设备因故障或者损坏影响到生产的精度等。
全部0条评论
快来发表一下你的评论吧 !