什么是计算机视觉?

2021 年 7 月 27 日

什么是计算机视觉?

计算机视觉是人工智能 (AI) 的一个领域,它使用机器学习神经网络来训练计算机和系统,从数字图像、视频和其他视觉输入中获取有意义的信息,并在发现缺陷或问题时提出建议或采取行动。

如果说 AI 让计算机能够思考,计算机视觉则让计算机能够看见、观察和理解。

计算机视觉的工作原理与人类视觉大致相同,只是人类更胜一筹。人类视觉的优势在于能终身学习各种情境,从而训练如何区分物体、判断与它们的距离、它们是否在移动或某一图像是否存在问题。

计算机视觉可训练机器执行这些功能,但必须使用摄像头、数据和算法取代视网膜、视神经和视觉皮层,在更短的时间内完成这项工作。由于经过训练可以检查产品或观察生产资产的系统每分钟可以分析数千种产品或流程,并发现难以察觉的缺陷或问题,因此它可以迅速超越人类的能力。

计算机视觉已用于从能源与公用事业到制造与汽车等各个行业,且该市场的规模还在持续增长。根据行业分析机构 Gartner 的预测,到 2031 年,全球计算机视觉软件、硬件和服务市场的产值将从 2022 年的 1,260 亿美元增至 3,860 亿美元。1

计算机视觉是如何工作的

计算机视觉需要大量数据。计算机视觉会一遍又一遍地运行数据分析,直到辨别出差异并最终识别出图像。例如,为了训练计算机来识别汽车轮胎,需要向其提供大量轮胎图像和轮胎相关物品,以了解其中的差异并识别轮胎,尤其是没有缺陷的轮胎。

有两种基本技术被用于实现此目标:一种是被称为深度学习的机器学习技术,另一种是卷积神经网络 (CNN)

机器学习会使用算法模型,以便计算机自行了解产生视觉数据的情境。如已向模型输入足够多的数据,计算机便会“查看”这些数据,并自行学习如何分辨不同的图像。算法可帮助计算机自行学习,而不是由某人对其进行编程来识别图像。

CNN 可通过将图像分解为附带标记或标签的像素来帮助机器学习模型或深度学习模型进行“查看”。它使用标签来执行卷积操作(对两个函数进行数学运算以生成第三个函数),并就其“看到”的内容做出预测。神经网络则会运行卷积操作并在一系列迭代中检查其预测结果的准确性,直到这些预测开始成真。然后,它会以类似人类的方式识别或查看图像。

如同人类在远处看清图像一样,CNN 首先会识别硬边缘和简单的形状,然后在运行预测迭代时填充信息。CNN 可用于理解单个图像。循环神经网络 (RNN) 会以类似的方式用于视频应用程序,从而帮助计算机了解一系列帧中的图片如何相互关联。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

计算机视觉的历史

约 60 年来,广大科学家和工程师一直在努力开发能让计算机查看和理解视觉数据的方法。相关实验始于 1959 年。当时,神经生理学家向一只猫展示了一系列图像,以期将其大脑中产生的反应关联起来。他们发现,猫首先会对硬边缘或线条做出反应;从科学层面来说,这意味着图像处理始于直边等简单形状。2

大约在同一时间,第一项计算机图像扫描技术已被开发出来,从而可让计算机对图像进行数字化并获取输出。到了 1963 年,该技术实现了另一里程碑;当时,计算机可将二维图像转换为三维形式。进入 1960 年代,AI 作为一个学术研究领域应运而生,它也标志着 AI 寻求解决人类视觉问题的开始。

1974 年,光学字符识别 (OCR) 技术面世,该技术可识别以任意字体或字型打印的文本。3同样,智能字符识别 (ICR) 可解读使用神经网络的手写文本。4从那时起,OCR 和 ICR 便已进入文件与发票处理、车牌识别、移动支付、机器转换和其他常见应用领域。

1982 年,神经科学家 David Marr 确立了视觉会分层工作的理论,并为计算机引入了一系列算法来检测边缘、拐角、曲线和类似的基本形状。与此同时,计算机科学家 Kunihiko Fukushima 开发出一种可识别不同模式的蜂窝网络。该网络被称为“神经认知机”(Neocognitron),并被包含在神经网络的卷积层中。

到了 2000 年,研究的重点转到了对象识别上;到了 2001 年,首个实时人脸识别应用程序诞生了。视觉数据集的标记和注释方式的标准化出现于 2000 年代。2010 年,ImageNet 数据集问世。它包含涉及一千个对象类的数百万张标记图像,并为当下使用的 CNN 和深度学习模型打下了基础。2012 年,多伦多大学的一个团队使用 CNN 参加了某一图像识别竞赛。这一名为 AlexNet 的模型可大幅降低图像识别的错误率。实现此突破后,错误率更是继续下降到仅有几个百分点的水平。5

Mixture of Experts | 4 月 25 日,第 52 集

解码 AI:每周新闻摘要

加入我们由工程师、研究人员、产品负责人等组成的世界级专家团队,他们将突破 AI 的喧嚣,为您呈现最新的 AI 新闻和洞察分析。

计算机视觉应用

眼下,计算机视觉领域正在开展大量研究,但其发展步伐却未止步于此。各种现实应用展示了计算机视觉对商业、娱乐、交通、医疗保健和日常生活领域中各项尝试的重要性。这些应用实现增长的一大关键驱动力源自智能手机、安全系统、交通摄像头和其他视觉仪表设备的大量视觉信息。这些数据可能会在各行各业的运营中发挥重要作用,但如今却未得到利用。这些信息可形成一个测试平台来训练计算机视觉应用,并为这些应用创建一个启动板从而融入到一系列人类活动中:

  • IBM 使用计算机视觉为 2018 年高尔夫大师赛创建了“My Moments”。IBM Watson 观看了数百小时的大师赛镜头,并可识别重要镜头的景象(和声音)。它会对这些关键时刻进行整理,并将其作为个性化的精彩片段提供给粉丝。

  • Google Translate 允许用户将智能手机摄像头对准采用另一种语言的标志,然后几乎可立即获得采用其首选语言的标志翻译。[6]

  • 自动驾驶汽车的开发依赖计算机视觉来理解汽车摄像头和其他传感器的视觉输入。识别其他汽车、交通标志、车道标记、行人、自行车以及道路上遇到的所有其他视觉信息均至关重要。

  • IBM 正与 Verizon 等合作伙伴共同应用计算机视觉技术以将智能 AI 引入边缘,并帮助汽车制造商在车辆出厂前识别质量缺陷。

计算机视觉示例

很多组织没有资源来资助计算机视觉实验室以及创建深度学习模型和神经网络。此外,它们还可能缺乏处理大量视觉数据所需的计算能力。IBM 等公司正通过提供计算机视觉软件开发服务来提供帮助。这些服务提供可从云端获取的预构建学习模型,同时还可缓解对计算资源的需求。用户可通过应用程序编程接口 (API) 连接到这些服务,并使用它们来开发计算机视觉应用程序。

IBM 还推出了一个计算机视觉平台,以解决开发与计算资源方面的问题。IBM Maximo Visual Inspection 中包含的工具有助于主题专家标记、训练和部署深度学习视觉模型,而无需编码或深度学习方面的专业知识。视觉模型可部署在本地数据中心、云端和边缘设备中。

虽然获取资源来开发计算机视觉应用程序变得愈发容易,但有一个重要问题仍需早期解答:这些应用程序到底能做些什么?了解和定义特定的计算机视觉任务有助于聚焦和验证项目和应用程序,并使其更易上手。

既定的部分计算机视觉任务示例如下:

  • 图像分类可查看图像并对其进行分类(狗、苹果、人脸)。更准确地说,它能准确预测给定图像属于某个类别。例如,社交媒体公司可能希望使用它来自动识别和隔离用户上传的令人反感的图像。

  • 物体检测可以利用图像分类来识别某一类图像,然后检测并记录它们在图像或视频中的出现情况。例如,检测装配线上的损坏情况或识别需要维护的机器。

  • 物体跟踪可在检测到某一物体后对其进行跟踪。此任务通常使用按顺序捕获的图像或实时视频源来执行。例如,自动驾驶汽车不仅需要对行人、其他汽车和道路基础设施等物体进行分类和检测,还需要跟踪它们的运动以免发生碰撞并遵守交通法规。[7]

  • 基于内容的图像检索利用计算机视觉技术并根据图像内容(而非与图像相关的元数据标签)在大型数据存储中浏览、搜索和检索图像。此任务可合并自动图像注释,以取代手动图像标记。这些任务可用于数字资产管理系统,并可提高搜索和检索的准确性。
相关解决方案
IBM Maximo Visual Inspection

解锁无代码计算机视觉的强大功能,实现视觉检查自动化。

探索 Maximo 的视觉检查功能
人工智能 (AI) 咨询服务

IBM Consulting AI 服务有助于重塑企业利用 AI 实现转型的方式。

深入了解人工智能服务
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解人工智能解决方案
采取下一步行动

通过 IBM Maximo Visual Inspection 将计算机视觉 AI 能力赋予您的质量控制和检测团队。 解锁无代码计算机视觉的强大功能,实现视觉检测自动化。

探索 Maximo 的视觉检查功能 产品导览