社区计算机视觉课程文档

视觉

Hugging Face's logo
加入 Hugging Face 社区

并获得增强型文档体验

开始使用

视觉

我们大多数人都知道阳光是维持地球生命的原因,但你有没有想过这如何塑造了我们的生活?首先,地球上的几乎所有生物都有某种感知阳光的方式(甚至一些细菌和单细胞生物)。人类也拥有这种能力,但我们拥有更复杂的系统来与光线互动。我们通过透镜捕捉光线,然后透镜在我们的眼睛中发出电信号,电信号通过类似电缆的结构(我们的神经系统)传递,然后信号被重建,以便在我们的大脑中告诉我们周围的环境是什么样子。

这个过程就是我们所说的视觉。它是我们进化的一个基本步骤。它非常重要,以至于科学家推测集中神经系统(最终导致我们的大脑)的演化是在视觉出现之后才发生的。有道理,如果没有传感器捕捉如此大量的信息,为什么要浪费资源来制造开发这些信息的必要机制呢?

视觉对人类的意义

Watercolor image of three people in a park playing with a ball

如果你曾经自发地踢过球,你的大脑会在瞬间无意识地完成无数的任务。它正确地识别了球,跟踪球的运动,预测球的轨迹,计算球到达你位置的速度,预测你的脚的轨迹,调整撞击的力量和角度,并将信号从你的大脑传送到你的脚,改变你的位置。将图像作为输入(在本例中是我们的视网膜捕捉到的信号)并将其转换为信息(踢球)是计算机视觉的核心。我们将在下一章详细讨论这个过程。

令人震惊的是,我们不需要任何正规教育就能做到这一点。在日常生活中,我们不会为了大多数决定而上课堂。没有“心理数学 101”可以估计踢球所需的脚部力量。我们是在成长的过程中通过反复试验学到的。有些人可能根本没有学过。这与我们构建程序的方式形成了鲜明的对比。程序大多是基于规则的。

让我们尝试复制大脑完成的第一个任务:检测到一个球。一种方法是定义什么是球,然后在图像中详尽地搜索一个球。定义什么是球实际上很困难。球可以像网球一样小,也可以像 Zorb 球一样大,所以尺寸对我们帮助不大。我们可以尝试描述它的形状,但有些球,比如橄榄球,并不总是完美的球形。并非所有球形物体都是球,否则气泡、糖果,甚至我们的星球都将被认为是球。

Balls

纯编程与机器学习方法

我们可以做一个初步的定义,说“球是用于运动或玩耍的球形物体”。这似乎是正确的,但我们遇到了另一个问题。你怎么知道他们在玩运动?你用什么来检测他们在做这件事?如果是一个拿着球的狗呢?那不是球吗?如果球是单独的,没有人在场,也没有运动?但是羽毛球怎么办?它是一种我们用来玩耍的东西,它不是完美的球形,但我们不认为它是球。所有这些细微差别加起来,使得人类无意识解决的简单问题已经很难分解成简单的规则。

我们自己知道这些事情。这种隐含的理解来自我们多年来对球体形状的心理图像的构建。虽然羽毛球不符合我们对球的心理图像,但很难解释为什么。这不仅仅是因为它的尺寸或羽毛。还有尺寸相似的球,即使我们用羽毛覆盖一个球,我们仍然会把它认作球。

A ball covered with feathers

所有这些都是为了向你展示,我们区分物体的能力超出了严格的定义;我们经常从相关概念中进行泛化,并依赖于上下文线索。当一个熟悉的概念以不同的形式出现时,我们仍然可以识别它,而不会感到明显的困扰——这种能力对我们来说是自然的。然而,它并不是由受严格、硬编码规则支配的系统固有的。

这强调了更强大的系统的必要性——能够适应各种场景的系统。这就是为什么这个领域与人工智能密切相关。视觉充满了上下文,我们需要能够像我们一样利用这些线索的模型。

让我们以印第安纳·琼斯躲避巨石为例。那里有一个球,有人在跑步,但很少有人会称之为运动!我们之所以知道这一点,是因为我们依赖于一些上下文线索。印第安纳·琼斯躲避的巨石看起来很重,而且比他大两倍。他的脸上反映出他的痛苦。空间非常狭窄,看起来像一个洞穴,这在运动中很不常见。此外,我们认出了他的服装,那通常不是运动员的穿着方式。

创建能够模拟人类视觉和认知的人工系统的动机

尽管人类视觉和计算机视觉具有相似的输入和输出,但它们是不同的过程。 有时它们会重叠。 但是,计算机视觉主要关注视觉系统及其决策中算法和模型的开发和理解。 它不受限于创建复制人类视觉的系统。 它可以用于人类完成起来过于繁琐、耗时、昂贵或容易出错的问题。 我们的球示例仍然是一个简单的例子,您可能认为它没有太大用处。 然而,能够跟踪球的模型可以用于体育赛事,在比赛过程中提供更快、更公平的决策。 随着图像到文本和文本到语音模型的普及,我们还可以通过自动跟踪球及其球员并实时描述它们,使视力障碍者更易于观看现场体育赛事。 因此,即使是简单的用例也能对社会产生积极的影响。 我们将在第 3 节中详细讨论这一点。

我们现在正处于人工智能复兴的边缘。 一个我们可以自由地训练、部署和共享模型的时刻。 一个我们的模型可以检测图像中我们自己无法看到的事物的时刻。

计算机视觉的局限性也得到了扩展。 我们现在可以从文本中生成图像,并将图像描述为文本。 而且我们可以从我们的智能手机上做到这一点。 计算机视觉应用程序无处不在。 这些可能性由我们探索,而这正是我们在本课程中要做的。

欢迎来到计算机视觉领域。 坐下来,享受旅程。 它将会令人惊叹。

< > 更新 在 GitHub 上