在计算机技术发展初期,计算机的输入和输出都是依靠文字进行的。随着计算机技术的发展,这种低效的处理方式逐渐无法满足日益增长的应用需求。有人曾提出这样的疑问:“计算机能否以某种方式处理图像、视频等类型的文件呢?”计算机视觉(computer vision,CV)应运而生,它能让计算机系统从图像、视频和其他视觉输入中获取有意义的信息,并根据该信息采取行动或提供建议 。AIGC技术想要识别物体,就需要计算机视觉技术发挥作用。
对计算机视觉领域的探索始于20世纪50年代。1963年,劳伦斯·罗伯茨(Lawrence Roberts)发表论文《三维固体的机器感知》,他在论文中描述了从二维照片中获得固体物体三维信息的过程,开创了以理解三维场景为目的的计算机视觉研究。
那么,计算机视觉技术如何识别图像呢?计算机将图像解释为一系列像素,每个像素都对应一组颜色值,每个像素的亮度都由8位(1个字节)表示,范围从0(黑色)到255(白色),作为计算机视觉算法的输入,而算法将负责后续的分析和决策。通常来说,计算机视觉算法将尝试采用人类的方式处理、分析和理解视觉数据(图像或视频),并解释和生成结果。常见的计算机视觉系统任务包括以下几种。
(1)对象分类。算法解析输入的内容,并将照片或视频中的对象按照定义进行分类。如图2.1(a)所示,算法可从多张动物照片中准确找到猫的照片。
(2)对象标识。算法解析输入的内容,并识别照片或视频中的特定对象。如图2.1(b)所示,算法可以在多张狗的照片中找到指定的狗的照片。
(3)对象跟踪。算法在视频中找到符合搜索条件的对象,并跟踪其移动。如图2.1(c)所示,算法可以锁定某个过街的行人,跟踪并记录其行动轨迹。
图2.1 计算机视觉系统的常见任务
如今,计算机视觉技术获得了极大的发展。云计算与强大的算法相结合,可以帮助我们解决非常复杂的问题。此外,我们每天生成的大量可公开获取的视觉数据,也在帮助这项技术取得突破。
计算机需要通过不同的模型训练,才能对物体进行识别。下面我们简单介绍两个常见的计算机视觉模型:GAN技术和Diffusion模型。
1.GAN技术
GAN技术包含两部分,即生成器和判别器。生成器的作用是生成与真实画面尽可能相似的假图像,判别器的作用是判别给定的图像究竟是真实的图像还是生成器生成的假图像。两者在不断博弈的过程中相互提高自身水平。最终,当判别器在判别能力足够可靠的前提下,仍无法区分给定样本的真假时,我们就可以说生成器能够生成“以假乱真”的样本 。
GAN训练的过程可以分为以下两步。
第一步,判别器以损失函数最小化为学习策略进行训练。换句话说,判别器会基于真实数据和生成器生成的假数据进行训练,以检验它是否能够鉴别真伪。
第二步,生成器以损失函数最大化为学习策略进行训练。在判别器被生成器生成的伪数据训练之后,我们可以得到它的鉴别结果并将其用于生成器的训练,使生成器生成更逼真的结果,以尝试欺骗判别器。
如图2.2所示,在这个训练模型中,训练者向算法提出要生成向日葵的图像。在第一次的生成训练中,生成器生成了一张向日葵的图像。但是,由于生成的图像过于模糊,判别器能够识别图像为虚假图像;随后,生成器又进行了第二次生成,这次生成的图像虽然很像向日葵,但图像变成了黑白色,因此还是被判别器成功识别为虚假图像。在第三次生成中,生成器根据之前的反馈,生成了非常逼真的向日葵图像。这次判别器无法判别,训练取得成功。
图2.2 生成式对抗网络的工作原理
2.Difussion模型
Difussion模型在过去几年中广受欢迎。许多人认为,Difussion模型甚至能在图像合成方面击败GAN。它的工作原理是通过连续添加高斯噪声来破坏训练数据,然后通过反转这种噪声过程来恢复数据。在完成训练后,Difussion模型可通过去噪过程将随机采样的噪声生成数据。
更具体地说,Difussion模型是使用固定的马尔可夫链映射到潜在空间的潜变量模型,该链逐渐将噪声添加到数据中。以图2.3为例,为了让Difussion模型进行训练,这张照片被不断地添加噪声直到其无法辨认。而Difussion模型学习的方式则是进行逆向工程,沿着马尔科夫链反转过程,从而把一张充满噪声的照片恢复成原照片。
图2.3 Difussion模型的学习示例
近年来,Diffusion模型多点发力,多模态技术促使它在文字转图像生成、图像风格变换、文字转3D模型生成等多个领域有所作为。目前,GPT模型所使用的核心技术是生成预训练技术。假如能将生成预训练从GPT模型转移到Difussion模型上,那么就能评估Difussion的生成性能。未来,Diffusion模型将助力AIGC技术为人类带来更好的体验 。