计算机视觉的进步
尽管物体的位置、大小、方向和受到的光照不同,我们却很少在识别物体时感到吃力。计算机视觉研究中最早的想法之一是将物体的模板与图像中的像素进行匹配,但是这种方法收效甚微,因为同一物体不同角度的两个图像中的像素并不匹配。例如,参考图2–2中的两只鸟。如果你将一只鸟的影像覆盖到另一只鸟上,你可以找到一块匹配的部分,但其余部分就完全对不上了;但是如果有另一个种类的鸟相同姿势的图像,你却可以得到相当好的匹配结果。
计算机视觉的进步是通过关注特征而非像素来实现的。例如,赏鸟者必须具备专业水平才能区分只在一些细微处略有差异的不同鸟类。一本关于鸟类鉴别的实用畅销书中只有一张鸟的照片,却有许多示意图指出了各种鸟之间的细微差别(见图2–3)[3]。 一个好的特征是指一种鸟类独有的特征,但是如果在别的种类中也可以找到这些特征,那么就要靠翼带、眼纹和翼斑的独特标记组合来区分。当这些标记组合为近亲种类所共享时,就要根据叫声和歌声进一步区分。鸟类的草图或彩绘能更好地将我们的注意力引导到相关的区别特征上,相比之下,鸟类照片里则布满了数百个不太相关的特征。


图片来源:Peterson, Mountfort, and Hollom, Field Guide tothe Birds of Britain and Europe,5th ed., p.16。
这种基于特征的识别方法存在的问题,不仅在于针对世界上数万种不同物体开发特征检测器是非常耗费人力的,而且即便使用最精确的特征检测器,被部分遮挡住的物体的图像也会产生歧义,这使得识别混乱场景中的物体成了计算机所面临的一项艰巨任务。
20世纪60年代,没有人能想到我们要花上50年,计算机的运算能力需要提升100万倍,才能让计算机视觉达到人类的水平。当时有一种带有误导性的直觉,认为编写计算机视觉程序很容易。这种直觉是基于我们认为很简单的行为,例如看、听、四处走动——但这些行为是经过了几百万年的自然进化才实现的。让早期AI先驱十分懊恼的是,他们发现计算机视觉问题非常难以解决。相比之下,他们发现通过编写程序让计算机证明数学定理要容易得多——这个过程曾被认为需要最高水平的智能——因为计算机处理逻辑问题的能力比人类要强得多。逻辑思维是进化后期的产物,即便对于人类,也需要接受从逻辑命题到得出严谨结论的长期训练。然而,对于大多数我们所面临的生存问题,从以往经验中总结出的解决方案,在大部分时间都能发挥作用。






本书评论