计算机视觉研究如何从图像中获得关于世界的信息。它的困难始终来自一个不对称关系:相机把三维场景记录成二维图像,机器却需要从这些不完整的记录中推断物体、空间、运动与事件。物体换个角度会变样,阴影会产生额外边界,遮挡又会让真正的边界消失。

六十多年来,研究者对这道问题给出了不同答案。有的从成像几何出发恢复场景,有的设计便于识别的图像特征,有的让模型从大量样本中学习,还有的把观察放进主动行动中。它们的兴衰与当时能处理的数据、可用算力和怎样检验结果密切相关。

计算机视觉从早期场景分析到统计识别、深度学习及预训练的发展节点

图 1 计算机视觉方法史的代表性节点。年代表示研究出现或取得重要进展的时期,不表示前一种研究在此结束;几何、识别与学习路线长期交错。

1960 年代:把图像变成场景描述

1963 年,Lawrence Roberts 在 MIT 完成了《Machine Perception of Three-Dimensional Solids》博士论文。论文题目已经明确了一项早期目标:让计算机从图像获得三维实体的信息。1966 年,Seymour Papert 的夏季视觉项目又把工作安排为图地分离、区域描述和物体识别。从中可以看到,当时的研究希望连接图像中的线条、区域与场景中的对象。(Papert, 1966; Roberts, 1963)

这种研究路径有很自然的理由。若能找到物体的边缘,再理解边缘如何连接,就有希望推断表面和形状。但真实图像很快带来困难。图像里的一条线可能来自物体轮廓,也可能只是阴影或表面花纹;同一个对象的可见部分又会随观察位置变化。把像素变成可靠的物体描述,需要处理这些歧义。

早期的人工智能场景分析与模式识别也没有完全相同的目标。恢复物体在空间中的结构,与根据样本区分字符或类别,要求的中间结果不同。后来的视觉研究会反复在这两类需求之间展开。

1970—1980 年代:视觉需要怎样的理论

David Marr 试图把视觉组织成一套可计算、可检验的研究方案。他在 1977 年的《Representing Visual Information》中提出,从描述亮度变化与局部结构的初始简图,走向描述可见表面深度与朝向的 2.5 维简图,再到以对象为中心的三维表示。这里的“2.5 维”指观察者当前可见的表面信息,尚未包含物体背面等完整三维结构。(Marr, 1977)

这套方案的雄心在于解释,图像信息怎样逐步变成对世界的描述。它要求研究者说明每种表示包含什么,以及立体视觉、运动、明暗等线索怎样支持相应计算。1982 年出版的《Vision》汇集了这一研究纲领。理解它的历史作用,需要同时看到它关于视觉表示的具体设想,以及它提出的分析方法。(Marr, 2010)

Marr 区分计算目标、表示与算法、物理实现三个分析层次。目标层问系统要计算什么、为什么;算法层问采用什么表示和步骤;实现层问计算如何由物理系统完成。三个层次用于分析同一个视觉系统。例如,估计表面朝向是目标,利用明暗或双目对应是算法选择,神经回路或处理器则涉及实现。(Torralba et al., 2024)

Marr 的三个分析层次分别考察目标、表示与算法及物理实现

图 2 Marr 的分析层次。它们与“初始简图、2.5 维简图、三维表示”是两组不同的概念;后者是一套具体的视觉表示方案。

与此同时,研究者也把一些视觉难题转化为带明确假设的数学问题。Horn 与 Schunck 在 1980 年的光流报告中指出,仅凭一个位置上的图像变化,不足以确定二维运动的两个分量。他们加入运动场大体平滑的约束,以求得解。这说明早期视觉方法已经在研究一个重要问题:图像本身提供多少证据,还需要哪些假设。(Horn & Schunck, 1980)

1980 年代后期:观察者也可以改变问题

如果只接收给定照片,许多视觉问题存在歧义。主动视觉提出另一种研究方式,让观察者控制图像采集过程,利用传感器位置或方向的变化取得更有用的信息。Aloimonos、Weiss 与 Bandyopadhyay 于 1988 年发表的《Active Vision》明确研究了这种控制如何改变视觉计算的条件。(Aloimonos et al., 1988)

这一转向把视觉与行动联系起来。系统可以为了确定深度而选择观察方式,也可以为了当前任务只获取必要信息。视觉研究由此拥有了不同的出发点:既可以研究如何从给定图像恢复场景,也可以研究怎样观察才更容易完成任务。

因此,关于完整场景表示、任务相关信息和主动观察的分歧,早在大规模深度学习之前就已存在。后来研究趋于多元,不能归结为某一年一套统一理论突然失败。

1990—2000 年代:识别成为可训练、可测量的问题

面对背景复杂、外观变化很大的照片,研究者逐渐发展出大量针对具体任务的识别系统。常见做法是先把图像转换为特征,再让统计分类器从样本中学习判别规则。这里已经存在机器学习,只是特征提取与分类往往分开设计。

2001 年的 Viola–Jones 人脸检测是一个清楚的例子。它用积分图快速计算简单图像特征,用 AdaBoost 选择特征并训练分类器,再通过级联尽早排除大量背景窗口。该工作的价值同时涉及识别与计算效率,目标是在图像中快速找出人脸。(Viola & Jones, 2001)

局部特征也在这一时期成熟。SIFT 的 2004 年论文系统描述了尺度与旋转不变的关键点特征,服务于不同视图之间的匹配和对象识别。2005 年的 HOG 则通过局部梯度方向统计与归一化,配合线性支持向量机研究行人检测。这些方法把对外观变化的处理落实在描述子里,再由后续学习或几何步骤完成任务。(Dalal & Triggs, 2005; Lowe, 2004)

“先设计特征,再学习判别”的分工,让算法可以在可控的表示上训练和比较。它的限制也由此产生:当类别、背景和形变更复杂时,研究者需要不断寻找更合适的特征组合。详细机制见 经典特征与几何。

一条并行路线:神经网络在 2012 年以前已经发展

1980 年的 Neocognitron 已采用层级神经结构,研究如何在输入位置发生变化时识别图案。它受到视觉神经系统研究的启发,采用无教师的自组织学习,并非后来反向传播训练的现代 CNN。(Fukushima, 1980)

到 1998 年,LeCun 等人的文档识别论文系统展示了 LeNet-5,以及利用梯度学习训练识别系统的方法。局部连接、权重共享和下采样帮助模型从像素学习特征,研究对象包括手写数字与支票识别。(LeCun et al., 1998)

这些工作与手工特征、统计分类路线在时间上重叠。后来的深度视觉继承了它们关于可学习层级表示的探索,同时面对规模更大、变化更多的自然图像。把神经网络的起点放在 2012 年,会切断这段实际延续的历史。

2005—2010 年代初:数据集和评测改变研究条件

算法要取得共同认可,需要在大家都能检查的任务上比较。PASCAL VOC 从 2005 年开始组织视觉对象类别挑战,提供图像、标注和共同评价程序,使分类与检测方法能够在相同规则下接受检验。(Everingham et al., 2010)

2009 年的 ImageNet 论文则把互联网图像、WordNet 类别层级和人工核验结合起来,建设大规模图像数据库。(Deng et al., 2009) 它与后来以其部分数据组织的 ILSVRC 挑战需要区分:数据库提供图像和类别资源,挑战进一步规定训练、测试和竞赛任务。(Russakovsky et al., 2014)

这类基础设施使研究发生了实质变化。团队可以在共同数据上训练,在未用于训练的图像上检验结果,追踪改进是否具有可重复性。标签与指标也规定了当时“进步”的含义。整图分类成绩衡量类别预测;检测还要求定位;分割进一步要求像素级结果。研究领域因此既获得了比较标准,也形成了各自专门发展的任务。

2012 年之后:从学习分类器到学习整个表示

AlexNet 在 2012 年把深层卷积网络、大规模图像训练和高效 GPU 实现结合起来,取得了显著的图像分类结果。它承接了早期卷积网络的思路,但在自然图像识别的规模上展示了端到端学习表示的力量。(Krizhevsky et al., 2012)

这个变化影响了研究者怎样改进系统。此前常要分别改描述子和分类器;联合训练让输出误差可以影响前面的特征提取层。表示的数值越来越多地由数据决定,架构与训练目标仍由研究者设计。

随后,研究重点扩展到更深的网络和更复杂的输出。2015 年公开、2016 年正式发表的 ResNet 通过残差学习改善深层网络的优化;2015 年的全卷积网络 FCN 则把分类网络学到的表示迁移到逐像素语义分割。这些进展使可学习表示从整图类别判断进入更多视觉任务。(He et al., 2016; Long et al., 2015)

2020 年前后:规模化预训练出现多条路线

随着预训练规模增长,研究者重新考察图像模型应当采用怎样的结构。2020 年公开、2021 年正式发表的 Vision Transformer 把图像组织为小块序列,通过自注意力计算块之间的关系,并在大规模预训练后迁移到识别任务。它使 Transformer 成为视觉骨干网络的重要选择,具体的数据与结构问题见 视觉 Transformer。(Dosovitskiy et al., 2021)

训练资料的利用方式也在变化。2020 年的 SimCLR 从同一图像的不同增强视图学习表示;2021 年公开的 MAE 遮住部分图像,让模型学习重建缺失内容。这两种工作都利用图像自身构造学习信号,使预训练不必为每张图像提供人工类别标签。(Chen et al., 2020; He et al., 2021)

2021 年的 CLIP 探索从互联网图文配对中学习视觉概念,并用自然语言描述将表示迁移到新类别。读者可以用文字指定待识别概念,模型的使用范围因而从预先固定的类别表向更开放的语义接口扩展。其历史位置属于大规模图文监督与迁移学习的发展,相关机制见 图文对齐学习。(Radford et al., 2021)

这一时期的共同变化,是先从大量资料中学习可复用表示,再将其适配到不同任务。研究中的“通用性”越来越需要通过跨任务、跨数据的迁移结果来衡量。它仍然受训练资料、任务形式和评价范围约束。

三维、生成与交互继续发展

三维视觉没有在识别研究兴盛之后结束。2020 年的 NeRF 从已知相机位姿的多张图像优化连续场景表示,再借助体渲染合成新视角。它把神经表示与成像几何结合起来,延续的是从图像理解、表示和重现空间的研究问题。(Mildenhall et al., 2020)

图像生成又带来了另一类目标。2021 年公开、2022 年正式发表的潜空间扩散模型,在压缩后的图像表示上进行生成建模,并接收文本等条件。这里评价的是生成的图像及其条件一致性,与判断给定照片中有什么属于不同任务。(Rombach et al., 2022)

2023 年的 SAM 把分割组织为可由提示指定目标的任务;同年的 LLaVA 将视觉编码器接入语言模型,通过视觉指令数据训练交互能力。大规模预训练表示由此进入可复用、可组合的系统,使用者可以通过提示或自然语言指定所需的视觉结果。(Kirillov et al., 2023; Liu et al., 2023)

今天继续研究视觉,仍需要理解对象在哪里、表面如何形成图像、训练资料遗漏了什么,以及系统在新条件下是否可靠。历史中的几何、表示、学习与行动问题,在不同模型和系统中重新结合。近期进展另见 近期模型与开放问题。

继续阅读与资料范围

本文选取场景分析、视觉理论、识别学习与预训练的代表性转折,不覆盖视觉科学、图像处理或所有应用方向的完整历史。早期年份依据机构档案;机制依据原始论文或正式摘要。Marr 的表示方案依据 1977 年报告,三个分析层次参照《Foundations of Computer Vision》对原著的讲解,未将《Vision》标为全书精读。

按问题进一步阅读,可进入 特征与匹配、卷积网络、自监督学习 或 视觉模型与语言系统的连接。

arXiv 阅读入口:ResNet(Trackback)、FCN(Trackback)、ViT(Trackback)、SimCLR(Trackback)、MAE(Trackback)、NeRF(Trackback)、潜空间扩散(Trackback)、SAM(Trackback)、LLaVA(Trackback)。正式发表信息见下方书目。

ILSVRC 资料(Trackback)。

返回视觉模型专题

参考文献

Aloimonos, J., Weiss, I., & Bandyopadhyay, A. (1988). Active Vision. International Journal of Computer Vision, 1(4), 333–356. https://doi.org/10.1007/BF00133571
Chen, T., Kornblith, S., Norouzi, M., & Hinton, G. (2020). A Simple Framework for Contrastive Learning of Visual Representations. https://arxiv.org/abs/2002.05709
Dalal, N., & Triggs, B. (2005). Histograms of Oriented Gradients for Human Detection. IEEE Computer Society Conference on Computer Vision and Pattern Recognition. https://lear.inrialpes.fr/people/triggs/pubs/Dalal-cvpr05.pdf
Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., & Fei-Fei, L. (2009). ImageNet: A Large-Scale Hierarchical Image Database. IEEE Conference on Computer Vision and Pattern Recognition, 248–255. https://doi.org/10.1109/CVPR.2009.5206848
Dosovitskiy, A., Beyer, L., Kolesnikov, A., Weissenborn, D., Zhai, X., Unterthiner, T., Dehghani, M., Minderer, M., Heigold, G., Gelly, S., Uszkoreit, J., & Houlsby, N. (2021). An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. International Conference on Learning Representations. https://openreview.net/forum?id=YicbFdNTTy
Everingham, M., Van Gool, L., Williams, C. K. I., Winn, J., & Zisserman, A. (2010). The PASCAL Visual Object Classes (VOC) Challenge. International Journal of Computer Vision, 88(2), 303–338. https://doi.org/10.1007/s11263-009-0275-4
Fukushima, K. (1980). Neocognitron: A Self-organizing Neural Network Model for a Mechanism of Pattern Recognition Unaffected by Shift in Position. Biological Cybernetics, 36, 193–202. https://doi.org/10.1007/BF00344251
He, K., Chen, X., Xie, S., Li, Y., Dollár, P., & Girshick, R. (2021). Masked Autoencoders Are Scalable Vision Learners. https://arxiv.org/abs/2111.06377
He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep Residual Learning for Image Recognition. IEEE Conference on Computer Vision and Pattern Recognition. https://arxiv.org/abs/1512.03385
Horn, B. K. P., & Schunck, B. G. (1980). Determining Optical Flow (Techreport AIM-572). Massachusetts Institute of Technology. https://dspace.mit.edu/entities/publication/e7968bf6-651d-4fd0-b4e8-c608756f2bba
Kirillov, A., Mintun, E., Ravi, N., Mao, H., Rolland, C., Gustafson, L., Xiao, T., Whitehead, S., Berg, A. C., Lo, W.-Y., Dollár, P., & Girshick, R. (2023). Segment Anything. https://arxiv.org/abs/2304.02643
Krizhevsky, A., Sutskever, I., & Hinton, G. E. (2012). ImageNet Classification with Deep Convolutional Neural Networks. Advances in Neural Information Processing Systems, 25. https://papers.nips.cc/paper_files/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html
LeCun, Y., Bottou, L., Bengio, Y., & Haffner, P. (1998). Gradient-Based Learning Applied to Document Recognition. Proceedings of the IEEE, 86(11), 2278–2324. https://doi.org/10.1109/5.726791
Liu, H., Li, C., Wu, Q., & Lee, Y. J. (2023). Visual Instruction Tuning. https://arxiv.org/abs/2304.08485
Long, J., Shelhamer, E., & Darrell, T. (2015). Fully Convolutional Networks for Semantic Segmentation. IEEE Conference on Computer Vision and Pattern Recognition. https://arxiv.org/abs/1411.4038
Lowe, D. G. (2004). Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision. https://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf
Marr, D. (1977). Representing Visual Information (Techreport AIM-415). Massachusetts Institute of Technology. https://dspace.mit.edu/entities/publication/de6ecdbc-779e-4159-a523-e8177a321a8c
Marr, D. (2010). Vision: A Computational Investigation into the Human Representation and Processing of Visual Information. MIT Press. https://mitpress.mit.edu/9780262514620/vision/
Mildenhall, B., Srinivasan, P. P., Tancik, M., Barron, J. T., Ramamoorthi, R., & Ng, R. (2020). NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. European Conference on Computer Vision. https://arxiv.org/abs/2003.08934
Papert, S. A. (1966). The Summer Vision Project (Techreport AIM-100). Massachusetts Institute of Technology. https://dspace.mit.edu/handle/1721.1/6125
Radford, A., Kim, J. W., Hallacy, C., Ramesh, A., Goh, G., Agarwal, S., Sastry, G., Askell, A., Mishkin, P., Clark, J., Krueger, G., & Sutskever, I. (2021). Learning Transferable Visual Models From Natural Language Supervision. Proceedings of the 38th International Conference on Machine Learning, 139, 8748–8763. https://proceedings.mlr.press/v139/radford21a.html
Roberts, L. G. (1963). Machine Perception of Three-Dimensional Solids [Phdthesis, Massachusetts Institute of Technology]. https://dspace.mit.edu/entities/publication/840d8056-9b54-4bd4-b16f-2f3d8296386e
Rombach, R., Blattmann, A., Lorenz, D., Esser, P., & Ommer, B. (2022). High-Resolution Image Synthesis With Latent Diffusion Models. IEEE/CVF Conference on Computer Vision and Pattern Recognition. https://arxiv.org/abs/2112.10752
Russakovsky, O., Deng, J., Su, H., Krause, J., Satheesh, S., Ma, S., Huang, Z., Karpathy, A., Khosla, A., Bernstein, M., Berg, A. C., & Fei-Fei, L. (2014). ImageNet Large Scale Visual Recognition Challenge. https://arxiv.org/abs/1409.0575
Torralba, A., Isola, P., & Freeman, W. T. (2024). Foundations of Computer Vision. MIT Press. https://visionbook.mit.edu/taxonomy.html
Viola, P., & Jones, M. (2001). Rapid Object Detection Using a Boosted Cascade of Simple Features. Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1, 511–518. https://doi.org/10.1109/CVPR.2001.990517