计算机视觉是一个跨学科的科学领域,研究如何让计算机从数字图像或视频中获得高水平的理解。从工程学的角度来看,它寻求人类视觉系统能够完成的自动化任务。[1][2][3]
计算机视觉任务包括获取、处理、分析和理解数字图像的方法,以及从现实世界中提取高维数据以便例如以决策的形式产生数字或符号信息的方法。[4][5][6][7] 在这种背景下,理解意味着将视觉图像(视网膜的输入)转化为对世界的描述,这种描述可以与其他思维过程相结合并引发适当的行动。这种图像理解可以被看作是利用借助几何、物理、统计和学习理论构建的模型从图像数据中分离符号信息。[8]
作为一门科学学科,计算机视觉涉及从图像中提取信息的人工系统背后的理论。图像数据可以采取多种形式,例如视频序列、来自多个摄像机的视图或者来自医学扫描仪的多维数据。作为一门技术学科,计算机视觉寻求将其理论和模型应用于计算机视觉系统的构建。
计算机视觉的子领域包括场景重建、事件检测、视频跟踪、对象识别、3D姿态估计、学习、索引、运动估计和图像恢复。[6]
20世纪60年代末,计算机视觉开始出现在开创人工智能的大学。它旨在模仿人类视觉系统,作为赋予机器人智能行为的垫脚石。[11] 1966年,人们认为这可以通过一个夏季项目来实现,方法是将一台照相机连接到计算机上,并让它“描述它所看到的”。[12][13]
将计算机视觉与当时流行的数字图像处理领域区别开来,是希望从图像中提取3D结构,其目标是实现对整个场景的理解。20世纪70年代的研究为当今存在的许多计算机视觉算法奠定了早期基础,包括从图像中提取边缘、标记线条、非多面体和多面体建模、将物体表示为较小结构的互连、光流和运动估计。[11]
接下来的十年见证了基于更严格的数学分析和计算机视觉定量方面的研究。这些包括尺度空间的概念,从阴影、纹理和焦点等各种线索推断形状,以及被称为蛇的轮廓模型。研究人员还意识到,许多这些数学概念可以在与正则化和马尔可夫随机场相同的优化框架内处理。[14]到20世纪90年代,以前的一些研究课题变得比其他的更加活跃。投影三维重建的研究使人们对摄像机标定有了更好的理解。随着摄像机标定优化方法的出现,人们认识到,在摄影测量领域,束平差理论已经探索了许多思路。这导致了用于来自多个图像的场景的稀疏3-D重建的方法。密集立体对应问题和进一步的多视图立体技术取得了进展。同时,利用图形切割的变化来解决图像分割问题。这十年也标志着统计学习技术首次在实践中被用于识别图像中的人脸。20世纪90年代末,随着计算机图形学和计算机视觉领域之间交互的增加,出现了一个重大的变化。这包括基于图像的渲染、图像变形、视图插值、全景图像拼接和早期光场渲染。[11]
人工智能领域涉及机器人系统在环境中导航的自主规划或审议。需要对这些环境有一个详细的了解来浏览它们。关于环境的信息可以由计算机视觉系统提供,该系统充当视觉传感器并提供关于环境和机器人的高级信息。
人工智能和计算机视觉共享其他主题,如模式识别和学习技术。因此,计算机视觉有时被视为人工智能领域或一般计算机科学领域的一部分。
固态物理是另一个与计算机视觉密切相关的领域。大多数计算机视觉系统依靠图像传感器来检测电磁辐射,电磁辐射通常以可见光或红外光的形式存在。传感器是用量子物理设计的。光与表面相互作用的过程用物理学来解释。物理学解释了光学的行为,光学是大多数成像系统的核心部分。复杂的图像传感器甚至需要量子力学来提供对图像形成过程的完整理解。[11]此外,物理中的各种测量问题可以用计算机视觉来解决,例如流体中的运动。
第三个发挥重要作用的领域是神经生物学,特别是生物视觉系统的研究。在上个世纪,人们对眼睛、神经元和大脑结构进行了广泛的研究,致力于处理人类和各种动物的视觉刺激。这导致了对“真实”视觉系统如何操作以解决某些视觉相关任务的粗略但复杂的描述。这些结果导致了计算机视觉中的一个子领域,其中人工系统被设计成在不同的复杂程度上模拟生物系统的处理和行为。此外,在计算机视觉中开发的一些基于学习的方法(例如,基于神经网络和深度学习的图像和特征分析和分类) 具有其生物学背景。
计算机视觉研究的某些方面与生物视觉研究密切相关——事实上,正如人工智能研究的许多方面与人类意识研究以及使用存储的知识来解释、整合和利用视觉信息密切相关一样。生物视觉领域研究和模拟人类和其他动物视觉背后的生理过程。另一方面,计算机视觉研究和描述了人工视觉系统背后的软件和硬件实现的过程。生物学和计算机视觉之间的跨学科交流已被证明在这两个领域都卓有成效。[19]
与计算机视觉相关的另一个领域是信号处理。许多处理单变量信号(通常是时间信号)的方法可以以自然的方式扩展到计算机视觉中处理双变量信号或多变量信号。然而,由于图像的特殊性质,在计算机视觉中开发了许多方法,但在处理单变量信号方面没有对应的方法。结合信号的多维度,将信号处理中的子场定义为计算机视觉的一部分。
除了上述关于计算机视觉的观点之外,许多相关的研究课题也可以从纯数学的角度来研究。例如,计算机视觉中的许多方法都是基于统计学、最优化或几何学的。最后,该领域的很大一部分致力于计算机视觉的实现方面;如何在软件和硬件的各种组合中实现现有方法,或者如何修改这些方法以获得处理速度而不损失太多性能。计算机视觉也用于时尚电子商务、库存管理、专利搜索、家具和美容行业。
与计算机视觉最密切相关的领域是图像处理、图像分析和机器视觉。这些覆盖的技术和应用范围有很大的重叠。这意味着在这些领域中使用和开发的基本技术是相似的,这可以解释为只有一个不同名称的领域。另一方面,研究团体、科学期刊、会议和公司似乎有必要将自己展示或推销为属于这些领域中的一个,因此,已经展示了将每个领域与其他领域区分开来的各种特征。
计算机图形学从3D模型中产生图像数据,计算机视觉经常从图像数据中产生3D模型。[20]还有一种趋势是将这两个学科结合起来,例如在增强现实中探索的那样。
以下特征似乎相关,但不应被视为普遍接受:
摄影测量也与计算机视觉重叠,例如立体摄影测量与计算机立体视觉。
应用范围从工业机器视觉系统(比如检测生产线上飞驰而过的瓶子)到研究人工智能和能够理解周围世界的计算机或机器人。计算机视觉和机器视觉领域有很大的重叠。计算机视觉涵盖了应用于许多领域的自动图像分析的核心技术。机器视觉通常指将自动图像分析与其他方法和技术相结合的过程,以在工业应用中提供自动检查和机器人引导。在许多计算机视觉应用中,计算机被预先编程以解决特定的任务,但是基于学习的方法现在变得越来越普遍。计算机视觉应用的例子包括以下系统:
最突出的应用领域之一是医学计算机视觉或医学图像处理,其特征在于从图像数据中提取信息来诊断患者。这方面的一个例子是肿瘤、动脉硬化或其他恶性变化的检测;器官尺寸、血流等的测量是另一个例子。它还通过提供新的信息来支持医学研究:例如,关于大脑结构,或者关于医疗质量。计算机视觉在医学领域的应用还包括增强人类解释的图像——例如超声波图像或x光图像——以减少噪声的影响。
计算机视觉的第二个应用领域是工业,有时也称为机器视觉,在工业中提取信息是为了支持制造过程。一个例子是质量控制,其中细节或最终产品被自动检查以发现缺陷。另一个例子是测量机器人手臂要拾取的细节的位置和方向。机器视觉也广泛应用于农业过程中,从散装材料中去除不需要的食物,这一过程称为光学分选。[24]
军事应用可能是计算机视觉最大的领域之一。显而易见的例子是敌兵或车辆的探测和导弹制导。更先进的导弹制导系统将导弹发送到一个区域,而不是一个特定的目标,当导弹到达该区域时,根据本地获取的图像数据进行目标选择。现代军事概念,如“战场感知”,意味着包括图像传感器在内的各种传感器提供了一组丰富的战斗场景信息,可用于支持战略决策。在这种情况下,数据的自动处理用于降低复杂性,并融合来自多个传感器的信息,以提高可靠性。
较新的应用领域之一是自主飞行器,包括潜水器、陆基飞行器(带轮子、汽车或卡车的小型机器人)、飞行器和无人驾驶飞行器(UAV)。自主程度从完全自主(无人)车辆到基于计算机视觉的系统在各种情况下支持驾驶员或飞行员的车辆不等。全自动车辆通常使用计算机视觉进行导航,例如知道它在哪里,或者制作环境地图和探测障碍物。它还可以用于检测特定任务特定事件,例如无人机寻找森林火灾。支持系统的例子有汽车中的障碍物警告系统和飞机自主着陆系统。几家汽车制造商已经展示了汽车自动驾驶系统,但是这项技术还没有达到可以投放市场的水平。有很多军用自主飞行器的例子,从先进的导弹到用于侦察任务或导弹制导的无人机。太空探索已经在使用计算机视觉的自主飞行器进行,例如美国宇航局的火星探索漫游者和欧空局的外火星漫游者。
其他应用领域包括:
上述每个应用领域都采用一系列计算机视觉任务;或多或少定义明确的测量问题或处理问题,可以使用多种方法来解决。典型计算机视觉任务的一些例子如下。
计算机视觉任务包括获取、处理、分析和理解数字图像的方法,以及从现实世界中提取高维数据以产生数字或符号信息的方法,例如以决策的形式。[4][5][6][7] 在这种背景下,理解意味着将视觉图像(视网膜的输入)转化为对世界的描述,这种描述可以与其他思维过程相结合并引发适当的行动。这种图像理解可以被看作是利用借助几何、物理、统计和学习理论构建的模型从图像数据中分离符号信息。[8]
计算机视觉、图像处理和机器视觉中的经典问题是确定图像数据是否包含某些特定的对象、特征或活动。文献中描述了不同种类的识别问题:
目前,这类任务的最佳算法是基于卷积神经网络的。ImageNet大规模视觉识别挑战展示了它们的能力;这是对象分类和检测的基准,有数百万张图像和数百个对象类别。在ImageNet测试中,卷积神经网络的性能现在接近人类。[26]最好的算法仍然与小而薄的物体斗争,比如花茎上的小蚂蚁或者手里拿着羽毛笔的人。他们也有被过滤器扭曲的图像的问题(这在现代数码相机中越来越普遍)。相比之下,这种图像很少困扰人类。然而,人类在其他问题上往往有困难。例如,他们不擅长将对象分类为细粒度的类,例如特定品种的狗或鸟,而卷积神经网络很容易处理。
存在几项基于识别的专门任务,例如:
几个任务涉及运动估计,其中处理图像序列以估计图像中或3D场景中的每个点的速度,或者甚至产生图像的照相机的速度。这类任务的例子有:
给定场景或视频的一个或(通常)多个图像,场景重建旨在计算场景的3D模型。在最简单的情况下,模型可以是一组3D点。更复杂的方法产生一个完整的3D表面模型。不需要运动或扫描的3D成像以及相关处理算法的出现使得该领域能够快速发展。基于网格的3D传感可用于从多个角度获取3D图像。现在可以使用算法将多个3D图像拼接成点云和3D模型。[20]
图像恢复的目的是从图像中去除噪声(传感器噪声、运动模糊等)。消除噪声的最简单方法是各种类型的滤波器,如低通滤波器或中值滤波器。更复杂的方法是假设一个局部图像结构的模型,将它们与噪声区分开。通过首先根据局部图像结构(例如线或边)分析图像数据,然后基于来自分析步骤的局部信息控制滤波,与更简单的方法相比,通常获得更好的噪声去除水平。
这个领域的一个例子是修复。
计算机视觉系统的组织高度依赖于应用。一些系统是解决特定测量或检测问题的独立应用程序,而另一些系统构成更大设计的子系统,例如,该子系统还包含用于控制机械执行器、规划、信息数据库、人机界面等的子系统。计算机视觉系统的具体实现还取决于它的功能是否是预先指定的,或者它的某些部分是否可以在操作过程中学习或修改。许多功能对于应用程序来说是唯一的。然而,在许多计算机视觉系统中都有典型的功能。
图像理解系统(IUS)包括如下三个抽象层次:低层次包括图像图元,如边缘、纹理元素或区域;中间层包括边界、表面和体积;高层次包括对象、场景或事件。这些要求中的许多都是需要进一步研究的课题。
IUS设计中对这些层次的表征要求是:原型概念的表征、概念组织、空间知识、时间知识、标度以及通过比较和区分的描述。
推理指的是从当前已知的事实中导出新的、未明确表示的事实的过程,而控制指的是选择在处理的特定阶段应该应用多种推理、搜索和匹配技术中的哪一种的过程。IUS的推理和控制要求是:搜索和假设激活、匹配和假设检验、期望的产生和使用、注意力的改变和集中、信念的确定性和强度、推理和目标满意度。[30]
计算机视觉系统有很多种;然而,它们都包含这些基本元素:电源、至少一个图像采集设备(照相机、ccd等)。)、处理器以及控制和通信电缆或某种无线互连机制。此外,一个实用的视觉系统包含软件,以及一个显示器以便监控系统。与大多数工业空间一样,内部空间的视觉系统包含照明系统,并可置于受控环境中。此外,完整的系统包括许多附件,如摄像机支架、电缆和连接器。
大多数计算机视觉系统使用可见光相机以每秒最多60帧(通常慢得多)的帧速率被动地观看场景。
一些计算机视觉系统使用具有主动照明的图像采集硬件或除可见光以外的其他东西或两者兼有,例如结构光3D扫描仪、热像照相机、高光谱成像仪、雷达成像、激光雷达扫描仪、磁共振图像、侧扫声纳、合成孔径声纳等。这种硬件捕捉“图像”,然后通常使用与处理可见光图像相同的计算机视觉算法进行处理。
虽然传统的广播和消费视频系统以每秒30帧的速度运行,但是数字信号处理和消费图形硬件的进步使得实时系统能够以每秒数百至数千帧的速度进行高速图像采集、处理和显示。对于机器人应用来说,快速、实时的视频系统至关重要,通常可以简化某些算法所需的处理。当与高速投影仪结合时,快速图像采集允许实现3D测量和特征跟踪。[31]
以自我为中心的视觉系统由一台可穿戴式的照相机组成,它可以从第一人称的角度自动拍照。
截至2016年,视觉处理单元正在成为一种新型处理器,以补充该角色中的CPU和图形处理单元(GPU)。[32]
^Dana H. Ballard; Christopher M. Brown (1982). Computer Vision. Prentice Hall. ISBN 978-0-13-165316-0..
^Huang, T. (1996-11-19). Vandoni, Carlo, E, ed. Computer Vision : Evolution And Promise (PDF). 19th CERN School of Computing. Geneva: CERN. pp. 21–25. doi:10.5170/CERN-1996-008.21. ISBN 978-9290830955..
^Milan Sonka; Vaclav Hlavac; Roger Boyle (2008). Image Processing, Analysis, and Machine Vision. Thomson. ISBN 978-0-495-08252-1..
^Reinhard Klette (2014). Concise Computer Vision. Springer. ISBN 978-1-4471-6320-6..
^Linda G. Shapiro; George C. Stockman (2001). Computer Vision. Prentice Hall. ISBN 978-0-13-030796-5..
^Tim Morris (2004). Computer Vision and Image Processing. Palgrave Macmillan. ISBN 978-0-333-99451-1..
^Bernd Jähne; Horst Haußecker (2000). Computer Vision and Applications, A Guide for Students and Practitioners. Academic Press. ISBN 978-0-13-085198-7..
^David A. Forsyth; Jean Ponce (2003). Computer Vision, A Modern Approach. Prentice Hall. ISBN 978-0-13-085198-7..
^https://web.archive.org/web/20221025122739/http://www.bmva.org/visionoverview The British Machine Vision Association and Society for Pattern Recognition Retrieved February 20, 2017.
^Murphy, Mike. "Star Trek's "tricorder" medical scanner just got closer to becoming a reality"..
^Richard Szeliski (30 September 2010). Computer Vision: Algorithms and Applications. Springer Science & Business Media. pp. 10–16. ISBN 978-1-84882-935-0..
^Papert, Seymour (1966-07-01). "The Summer Vision Project". MIT AI Memos (1959 - 2004). hdl:1721.1/6125..
^Margaret Ann Boden (2006). Mind as Machine: A History of Cognitive Science. Clarendon Press. p. 781. ISBN 978-0-19-954316-8..
^Takeo Kanade (6 December 2012). Three-Dimensional Machine Vision. Springer Science & Business Media. ISBN 978-1-4613-1981-8..
^Nicu Sebe; Ira Cohen; Ashutosh Garg; Thomas S. Huang (3 June 2005). Machine Learning in Computer Vision. Springer Science & Business Media. ISBN 978-1-4020-3274-5..
^William Freeman; Pietro Perona; Bernhard Scholkopf (2008). "Guest Editorial: Machine Learning for Computer Vision". International Journal of Computer Vision. 77 (1): 1. doi:10.1007/s11263-008-0127-7. ISSN 1573-1405..
^"Information Engineering | Department of Engineering". www.eng.cam.ac.uk (in 英语). Retrieved 2018-10-03..
^"Information Engineering Main/Home Page". www.robots.ox.ac.uk (in 英语). Retrieved 2018-10-03..
^Steger, Carsten; Markus Ulrich; Christian Wiedemann (2018). Machine Vision Algorithms and Applications (2nd ed.). Weinheim: Wiley-VCH. p. 1. ISBN 978-3-527-41365-2. Retrieved 2018-01-30..
^"Soltani, A. A., Huang, H., Wu, J., Kulkarni, T. D., & Tenenbaum, J. B. Synthesizing 3D Shapes via Modeling Multi-View Depth Maps and Silhouettes With Deep Generative Networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 1511-1519)". 2019-01-25..
^Turek, Fred (June 2011). "Machine Vision Fundamentals, How to Make Robots See". NASA Tech Briefs Magazine. 35 (6). pages 60–62.
^https://web.archive.org/web/20221025122739/https://www.robots.com/blog/viewing/the-future-of-automated-random-bin-picking.
^Wäldchen, Jana; Mäder, Patrick (2017-01-07). "Plant Species Identification Using Computer Vision Techniques: A Systematic Literature Review". Archives of Computational Methods in Engineering (in 英语). 25 (2): 507–543. doi:10.1007/s11831-016-9206-z. ISSN 1134-3060..
^E. Roy Davies (2005). Machine Vision: Theory, Algorithms, Practicalities. Morgan Kaufmann. ISBN 978-0-12-206093-9..
^Bruijning, Marjolein; Visser, Marco D.; Hallmann, Caspar A.; Jongejans, Eelke; Golding, Nick (2018). "trackdem: Automated particle tracking to obtain population counts and size distributions from videos in r". Methods in Ecology and Evolution. 9 (4): 965–973. doi:10.1111/2041-210X.12975. ISSN 2041-210X..
^O. Russakovsky et al., "ImageNet Large Scale Visual Recognition Challenge", 2014..
^Barghout, Lauren. "Visual Taxometric Approach to Image Segmentation Using Fuzzy-Spatial Taxon Cut Yields Contextually Relevant Regions." Information Processing and Management of Uncertainty in Knowledge-Based Systems. Springer International Publishing, 2014..
^Liu, Ziyi; Wang, Le; Hua, Gang; Zhang, Qilin; Niu, Zhenxing; Wu, Ying; Zheng, Nanning (2018). "Joint Video Object Discovery and Segmentation by Coupled Dynamic Markov Networks" (PDF). IEEE Transactions on Image Processing. 27 (12): 5840–5853. doi:10.1109/tip.2018.2859622. ISSN 1057-7149. PMID 30059300..
^Wang, Le; Duan, Xuhuan; Zhang, Qilin; Niu, Zhenxing; Hua, Gang; Zheng, Nanning (2018-05-22). "Segment-Tube: Spatio-Temporal Action Localization in Untrimmed Videos with Per-Frame Segmentation" (PDF). Sensors. 18 (5): 1657. doi:10.3390/s18051657. ISSN 1424-8220. PMC 5982167. PMID 29789447..
^Shapiro, Stuart C. (1992). Encyclopedia of Artificial Intelligence, Volume 1. New York: John WIley & Sons, Inc. pp. 643–646. ISBN 978-0-471-50306-4..
^Kagami, Shingo (2010). High-speed vision systems and projectors for real-time perception of the world. IEEE Computer Society Conference on Computer Vision and Pattern Recognition - Workshops. 2010. pp. 100–107. doi:10.1109/CVPRW.2010.5543776. ISBN 978-1-4244-7029-7. Retrieved 2 May 2016..
^Seth Colaner (January 3, 2016). "A Third Type Of Processor For VR/AR: Movidius' Myriad 2 VPU". www.tomshardware.com..
暂无