目录
1.视觉对于生物界的重要作用
5亿4千年之后的一千万年间,物种数量呈现了爆发式增长,这是一个神秘的进化论,他们称为物种大爆炸,什么原因造成的呢?安德鲁提出了最令人信服的理论之一,他发现这一时期的动物发展了眼睛,开始出现视力。视力的出现让他们能够获得更多信息,也因此更容易生存繁衍
视觉在我们人类日常生活中扮演着重要角色,每天有70%的信息都是通过视觉获得的。
因而未来计算机视觉,就是要让计算机通过视觉来理解世界,是智能化的必不可少的一步。
2.人类对于计算机视觉的探索
2.1 20世纪50年代——研究生物视觉的工作原理
Hubel和Wiesel的一些研究成果,他们从电生理学的角度来分析猫咪的视觉皮层系统,那么为什么要选择可爱的小猫咪呢?是因为猫咪的视觉皮层系统和人类相似,从中发现了视觉通路中的信息分层处理机制,也就是它是一层一层提取信息的,最简单的信息在最前面提取,然后不断地对简单信息提取,逐渐就得到了高层次的抽象信息,其实这时候的人们就已经发现了神经网络的苗头了,神经网路也是受到生物视觉的分层处理机制的启发,逐渐走向成熟的额。
2.2 20世纪60年代——计算机视觉萌芽
计算机视觉始于上世纪60年代初,第一位计算机视觉博士Larry Roberts 发行了Block World这一组作品 ,撰写的论文“Machine perception of three-dimensional solids”中将物体简化为几何形状(立方体、棱柱体等)来加以识别(如图19-9所示)。当时人们相信只要提取出物体性状,并加以空间描述,就可以像搭积木一样推理出三维场景,研究范围遍布角点特征、边缘、颜色、纹理提取以及推理规则建立等很多方面,他们的想法很自然,既然我们要分类识别,那么我们就要发现每一类的特征,比如说是边缘特征等等
麻省理工发起夏季视觉计划,与会人员“雄心勃勃”地希望在一个暑假的时间里彻底解决计算机视觉问题,虽然理想很丰满,但现实很骨感,即使是相当聪明的一群人也低估了计算机视觉的难度,但这个计划激起了研究计算机视觉的浪潮,让其逐渐发展成为一个非常重要的领域
2.3 20世纪70年代——开创性提出识别流程
然后呢,在这一时期,来自麻省理工学院的视觉科学家vid Marr,写了一本书,将视觉识别过程划分为三个阶段
(1)处理诸如边缘之,斑点,块,末端,虚拟边界等简单结构
(2)深度信息,层级信息,局部表面信息
(3)根据表面和体积图元分层组织的3D模型
2.4 20世纪80年代——着眼于提取特征
20世纪80年代,逻辑学和知识库等理论在人工智能领域占据了主导地位。人们试图建立专家系统来存储先验知识,然后与实际项目中提取的特征进行规则匹配
让人们思考,视觉处理是怎样的?
2.5 20世纪90年代——图像分割
人们逐渐认为计算机视觉是一个有困难的学科,有的学者开始“转向”另一个看上去更简单点儿的方向—图像分割(Image Segmentation)。后者的目标在于运用一些图像处理方法将物体分离出来,以此作为图像分类的第一步。
2.6 21世纪初——各类经典算法出现
随着机器学习的兴起,CV领域开始取得一些实际的应用进展。例如,Paul Viola和Michael Johns等人利用Adaboost算法出色地完成了人脸的实时检测,并被富士公司应用到商用产品中;同时SPM、HoG(如图19-13所示)、DPM等经典算法也如“雨后春笋”般涌现了出来。
2.7 2010年后 计算机视觉取得长足进步
进步原因主要有:
-
计算机运算能力指数级增长
-
深度学习相关算法应用以及革新(为什么不是出现呢?是因为实际上网路在1998年已经出现了,但受限于计算力和数据量等因素,没有)
-
大型的数据库imageNet、PASCAL等超大型图片数据库(见图19-14)使得深度学习训练成为可能
与此同时,我们不得不提到的一个非常重要的比赛,就是斯坦福教授李飞飞他们发起的ImageNet 比赛,这个比赛提供了一个庞大的数据集、
在全球最权威的计算机视觉竞赛imageNet上,千类物体识别Top-5错误率在2010年和2011年时分别为28.2%和25.8%,从2012年引入深度学习之后,后续4年分别为16.4%、11.7%、6.7%、3.7%,出现了显著突破。
2012年经典网络ImageNet
2013年经典网络AlexNet
2014年经典网络GoogleNet ,VGG
2015年经典网络ResNet