计算机视觉和场景识别的前世今生
计算机视觉和场景识别的前世今生
“照片上呈现的是哪里”,所有人会说“球场”。从这张照片中你看到了什么?要么科比,要么韦德。为何脱口而出科比和韦德?而不是其他。这里不仅有科韦,其他球员、篮球架、木地板等均在图片内。从这个图片中,我们做一个分割,球场则是图片的场景,而科比和韦德则是场景中的物体,观众席可以看做是背景。人的眼睛是如何把这些背景和物体区分开来的,又是什么原因把注意集中在科比韦德两人。我们的眼睛可以做到这些,那么计算机能否识别图片内容。
计算机视觉(computer vision)是模拟人类视觉的人工智能技术,用机器来“看”图像,“理解”图像。我们知道电脑中的所有图片都是由无数像素点组成,说白了就是一团马赛克。因此计算机自身并没有画面概念,它也无法欣赏到科比如此帅气的后仰绝杀(其实知图君的后仰跳投也蛮帅,好自恋)。人类经过数千万年的进化,早已拥有了复杂而精密的识别和传感系统;而对只有寥寥几十年历史的计算机而言,利用计算机视觉技术让它看懂图像是一件很复杂的事情。计算机场景识别的发展之路才刚刚开始,今天,知图君就带童鞋们一起,了解一下何为场景识别。我们先从人眼讲起,然后延伸到计算机视觉模拟。
1、场景与物体
人眼看事物,首先要通过对眼前所有事物进行捕捉和收录,然后把信息传送到大脑。场景识别(scene understanding),研究如人类何知觉和加工复杂的真实环境信息。场景包括背景(background)和物体(objects)两个重要的组成部分。场景中的背景是指宽广的、静止的表面和结构,比如:山、天空、墙壁等都可以成为背景。场景中的物体是指比例较小的不连续物体。对于场景中背景与物体的定义是相对而言的,没有绝对的标准限定。比如,一个办公桌在办公室场景可以作为物体。但是如果视野只关注这张办公桌,那它也可以作为一个场景,这时办公桌上的笔记本电脑就成为了这个场景中的物体。大部分研究一般采用正常人视野能看到的环境作为选择场景的依据。那么肉眼是如何区分背景和物体,如何把物体和背景分割开来的?这个问题一直让研究者不解。
从20世纪起,通过对眼动、心理学、神经科学等领域进行研究,学术界对人类视觉的认知逐渐趋于成熟。肉眼识别场景是大自然赋予人类与生俱来的天赋,无需刻意练习,而利用计算机完成对场景的识别却是一项难度极高的挑战,因此,基于人们对人类视觉的研究,科学界开始利用计算机模拟视觉和脑部机制的算法和模型。
2、眼动研究
早在1879年,法国巴黎的眼科医生Louis Émile Javal发现人们在阅读文字的时候,眼睛的注视点并不是平滑的划过所注视的文字,而是在某一点停留一段时间,然后进行一次次快速眼动切换。那么人们的眼睛遇到哪些单词时会停下来?在这些单词上会停留多长时间?眼睛什么时候会回顾前面已经看到过的单词?这些问题在 20 世纪得到了广泛的研究。20世纪中期,前苏联心理学家阿尔弗雷德•雅布斯(Alfred•Yarbus)在自己的著作中描述眼睛的注视点与人们的注视兴趣:“眼动与所看到的内容几乎是完全独立的”。当人们在看一幅图像时,眼动轨迹取决于所执行的视觉搜索任务。注视点通常在一个某些固定的点之间来回跳动,比如在注视一幅人脸照片时,人们的眼睛往往会在照片中人的眼睛和嘴巴附近来回跳动。如果要求被试者执行特定的视觉搜索任务:如让其看对面的三个人穿了什么颜色的裤子时,被试者的眼睛会集中在图像中与问题相关的区域。
雅布斯等人对视觉的研究更多的是在眼球运动轨迹层面,均为直接对眼睛进行观察,鲜有对视觉注意进行研究。当我们看到一个绿色正方形和黄色圆圈时,是什么让我们判断出正方形是绿色的,圆圈是黄色。而不是相反的呢?
3、视觉注意
加上浓眉、齐刘海、大眼睛的小贤瞬间妖娆性感,英气直逼范爷。如果换成短发、圆脸、小胡子,小贤大概就成范伟了吧。
物体形状、颜色等属性在不同的脑区加工,为了把物体知觉整合为一体,需把散布于各脑区的信息组合起来,此即“binding problem”。陈赫秒变范爷,其中重要一点就是陈赫的照片加了范冰冰的发型、衣服、眉毛等重要特征,当所有特征绑定在一块时,于是产生了这种毫无违和的冰冰即视感。binding problem存在一重要证据就是分散注意或注意过载条件下,物体诸特征不能在正确位置上整合,产生物体特征彼此交换的现象,即特征的错觉性结合(illusory conjunction,简称IC)。目前,不同学者对捆绑认知机制,尤其是注意在捆绑中作用的看法存在差异。Terisman认为,IC是被分解的视觉特征在重新组合成整体直觉过程中特征交换的结果,而注意对避免IC的产生有重要作用。对此,他们提出著名的特征整合合理理论,并用一系列实验检验。
1977年安娜•特丽斯曼(Anne M. Treisman)做了这样一个实验:首先,她证实了红色字母可以在由纯绿色字母构成的背景中跳出,即突显出来。如果所有字母的颜色均相同,单个字母T可以在字母S的背景中跳出。然后,他们给被试者一个较为复杂的任务:一半是绿色字母T,另一半是红色字母S,此外,中间还夹杂着一些红色字母T。被试者的任务是找出红色字母T,这时被试者必须寻找颜色(红)和形状(T)两者结合在一起的字母,而这种结合不能立刻跳出,要发现红色字母T需要一段时间,而且干扰项数目越多,所需时间越长。这种情况被称作:串行搜索机制的证据,即为了判断一个字母既为红色又是T形,注意系统在一个时刻只能看一个字母。
起初特里斯曼认为,前注意加工是以平行的方式把视野内物体的形状、运动、颜色等简单特征记录在某些特有的子系统中。然后,集中注意以某种方式把这些视野内的特征整合到一起。后期的实验发现,对特征的整合结果并不一定会完全正确,有时候特征整合所允许的时间非常短,大脑就会出现差错。有时候它会张冠李戴,把一些物体的特征错误地整合到一起,最终给出一个虚假的组合。在授课时,特丽斯曼用一张快速呈现的幻灯片来演示这种现象。该幻灯片呈现的是一位黑发的红衣女郎。可是,观众中总有几位非常自信地称,他们看到的是一位红发女郎。女郎的毛衣的颜色被错误地“移植”到了头发上,因而产生了幻觉组合。
于是可以得出这样一个结论:如果物体足够“突出”,则把注意的探照灯移到该物体所在的地方或移到该物体作为注意的第一步。如果物体并不突出,系统就可能会遇到选择目标困难的问题,在经过了多次尝试,花费较多时间后才能发现目标。而且注意系统容易受到其他因素的干扰,因而容易出错。这个结论也为后期计算机场景识别的算法提供了一定的依据。
4、意识的研究
《后会无期》里有这样一句话:你连世界都没观过,哪儿来的世界观。人类大脑对世界的认知,都是来自于我们的眼睛。那么计算机对图像的认知从哪里来?
我们把一个三岁小孩的眼睛看成生物相机,大约每200毫秒,眼睛便能收录一张照片,从婴儿到三岁期间,一个孩子就已经见过数以亿计的来自现实世界的图像。因此,斯坦福大学的李飞飞得出一个结论:人类大脑对物体做出迅速的识别,主要是源于人类大脑用眼睛收录了无数现实世界的图像,因此靠记忆和举一反三完成了对大自然的认知和识别。人类为何可以轻松完成对场景的识别、对背景和物体进行分割。正是因为人的大脑里储存了无数场景的照片,同时复杂的神经系统对其进行分割与处理。那么我们的视觉神经系统到底是什么样的?那么今天知图君带你进入人类意识和计算机的“大脑”中,一同深入见证场景识别。
上文提到,依托于常规实验对视觉注意进行的研究虽能说明一定问题,但其结论并没有足够理论的支撑。因此,部分心理学家与生物学家开始着手研究视觉与意识以及神经科学的关联。与此同时,计算机模拟人类视觉也开始登上舞台。
加州理工学院认知和行为生物学教授克里斯托夫•科赫(Christof Koch)在《意识探秘》一书中探讨了动物和人主观心智的生物学基础,并提出了一种意识研究的框架——用实验方法找出表达意识的神经相关物。以视知觉研究为切入点,结合注意、记忆、自动行为、失认症和“裂脑人”等病理现象的研究,总结了意识研究的科学基础。
科赫的研究方向是意识产生的神经基础,即哪些神经细胞参与了意识的产生与活动,并提出“意识的神经相关物(NCC)”概念。其通过实验找出足以引起特定有意识知觉的神经活动及其机制的最小集合。意识的产生会有无数的生物学过程参与。因此研究意识的神经相关物时,须把相关因素分为两种:前提因素和特异性因素。前提因素是指产生任何形式的意识都必须要有系统和营养条件;而特异性因素则是产生某种特殊的有意识知觉所需要的要素。通俗点讲就是找出哪些神经元以及哪些大脑区域参与了意识的形成,以及形成特殊意识的神经生物学基础,在此基础上探讨它们的活动规律。由于大脑功能众多,感觉输入器官也是多种多样,为了系统研究意识,科赫从视觉意识的发生开始了意识的探秘之旅。多年来,人类对于视觉经验的研究已经初步揭示了视觉意识产生的神经机制,很多相关成果取得了广泛的共识。在这个过程中科赫发现到:如果初级视皮层(V1)毁损,那么人将看不到任何东西,但V1对视觉意识却没有贡献,因此,V1不是意识的神经相关物(NCC)的一部分。我们在现实生活中也能遇到这种情况:当你的眼睛视觉正常时,能看到某物,却没有意识到它,所以看是很复杂的现象。从视觉的窗口深入到意识大楼,意识又是由于无数的神经砖瓦构成。科赫通过对视觉意识的神经相关物的研究,提出了视觉从刺激到意识再到表征的完整链条,这些都为我们理解大脑意识现象提供了很好的理论说明。
5、计算机模拟人类视觉
Laurent Itti是克里斯托夫•科赫的博士研究生,其建立了一个模拟视觉注意的脑部机制部署计算机模型,把视觉从对人的研究衍生到用计算机模拟人的视觉。计算机视觉算法诞生后,就存在着如何模拟肉眼去识别场景的问题,因此前人对眼动、心理学等方面的实验,为场景识别奠定了基础。
从某种程度上讲,我们眼前的大自然是由海量图像数据构成,面对这些图像时,我们并不是把注意力集中在眼前整个画面当中,而是选择性的关注一小部分。类如最近高考,整张试卷虽在每个考生的视线内,但考生的视觉注意力只能集中在一道题目上,忽视了其他考题。考卷问题属于有意注意,与此同时,也存在无意注意情况。当我们在电脑面前盯了许久,会朝窗外看看远处的风景,此时大脑并没有给眼睛明确的指令去看哪些物体,而是给出这样的指令“随便看看,放松放松”。但在我们看窗外时,会不自觉的选定注意一个或者一些物体,这时研究者们好奇大脑和眼睛为何会无意识的选择这些物体。因此,研究者认为有必要直接检测出这些容易引起人注意的物体和区域,做出统计,以便于获得高效的处理结果。人类可以很容易判断图像中的显著性区域,并注意到图像的重要部分。了解了人类视觉的选择性注意机制和感知组织原则,并通过计算检测图像的显著性区域,根据显著性图像来优先分配图像分析与合成所需的计算资源。提取出的显著性图像可以广泛应用于许多计算机视觉领域的应用,包括对兴趣目标物体图像分割,目标识别,自适应压缩,内容感知图像编辑和图像检索等。显著性源于视觉的独特性、不可预测性、稀缺性以及奇异性,并且是由颜色、梯度、边缘、边界等图像属性所致。视觉显著性和我们如何感知、处理视觉刺激紧密相关。因此当时的场景识别算法均基于视觉显著性原理。
6、场景识别算法的突破
2007年,侯晓迪于提出了频域残差法(Spectral Residual),引起研究者的强烈关注。他在CVPR发表的《Saliency Detection: A Spectral Residual Approach》提出了一个图像视觉显著性的简单计算模型,这个模型与Laurent Itti提出的模型截然不同,Itti模型对于图像视觉显著性主要关注整幅图片突出的部分,通过各种特征的融合提取显著性图,而侯晓迪的这个模型关注的点并不在一张图片里突出的地方,而是背景,观察是否大部分图片的背景在某个空间上都满足什么变化,最后剔除背景,自然就只剩下图片突出的部分了,这篇文章之所以简单,是因为它只需要5行matlab代码就可以得到想要的结果,也没有很复杂的公式变换,都是图像处理基本的变换公式。
后期侯晓迪去加州理工攻读PHD,师从克里斯托夫•科赫(Christof Koch),并于2012年发表论文:《Image Signature Highlighting Sparse Salient Regions》,把07年用5行matlab代码进一步优化到只有1行。更重要的是,文章借助2005年Candes和陶哲轩提出的压缩感知定理,从理论上证明了其可行性。
无论是从阿尔弗雷德•雅布斯(Alfred•Yarbus)对眼动研究,Christof Koch对人脑的研究,还是侯晓迪对算法的突破。这些研究均为场景识别做出了巨大的贡献。场景识别未来将如何发展,将会出现在哪些领域,并如何改变世界,我们拭目以待。