本文是一篇计算机软件论文,本文以Transformer架构为基础提出了两种图像分类算法,虽然解决了图像分类精度的问题,图像分类的效果得到了不错的提升。
1 绪论
1.1 研究背景与意义
人们正处于5G网络的互联网时代,随着智能手机和相机的普及,每时每刻都会产生大量的图像[1]。这些庞大数量的图像虽然可以提供更加直观的信息,但是这无疑也给人们增加了获取信息的难度。人们想要从数以万计的图像中寻找到自己需要的图像是非常困难的,寻找到有效信息需要花费的时间也是难以估量的。所以,在获得图像信息带来便利的同时,如果想要对这些图像有效的利用,则需要对这些图像进行充分的整理与分析。目前,对图像进行整理的常见算法是将图像按照类别进行分类和识别图像中包含的信息,这样便可以对图像中包含的信息有效的统计与整理。因此,图像分类与识别在生产与生活中发挥着重要的作用。
图像分类作为计算机视觉领域的一个不可分割的部分,是目标检测、图像分割、行为追踪、行为分析和图像识别等计算机领域其他高层次任务的基础[2]。图像分类包括以下几个步骤:首先,人工将所有的图像数据集划分成不同的类别,每个图像都包含一个类别标签,同一个类别都具有一定的相似性;然后,依次提取每个图像的特征信息,这些特征信息包含了图像的关键信息,可以完全代指图像;最后,根据每个图像提取的特征信息进行区分类别,寻找相同类别之间的共同点,例如根据形状、颜色和纹理等特征进行区分。因此,图像分类的核心问题在于如何更有效地提取特征信息与更精确地区分特征信息。图像分类的研究人员针对以上问题提出了很多种算法进行提升与改进。
1.2 国内外研究进展与现状
图像分类作为计算机领域重要分支,在日常生活中的很多领域中已经应用到各个场景中。随着5G网络的互联网时代的到来,图像分类也成为了科技发展过程中不可或缺的重要组成部分。图像分类算法可以分为三类:传统图像分类算法、卷积神经网络图像分类算法[4-7]和Transformer图像分类算法[8-10]。图像分类国内外研究进展与现状汇总如图1-2所示。
1.2.1 传统图像分类算法
传统图像分类算法是深度学习算法没有出现之前图像分类领域使用的经典算法,这些算法主要依赖于人工设计的特征提取器和使用经典的机器学习算法作为分类器进行图像分类。传统图像分类算法的特征提取器主要是提取区分度高和有意义的特征,主要包括以下几个特征提取算法:尺度不变特征变换[11-14](Scale-Invariant Feature Transform,SIFT)和方向梯度直方图[15-18](Histogram of Oriented Gradient,HOG)等特征提取算法。
尺度不变特征变换[11-14]的核心思想是:将输入的图像进行尺度变换操作,获取输入图像在多尺度下的尺度空间表示序列,在序列中寻找主轮廓,从主轮廓提取图像中的边缘和角点在不同分辨率下的关键特征点。首先,对需要处理的图像进行一些尺度变换的操作,便可以获得图像在不同尺度下的尺度空间所对应的表示序列;然后,从这些尺度空间下的表示序列中找到所对应的主轮廓;最后,从找到的主轮廓中便可以提取到图像中包含的边缘与角点等信息在不同分辨率下所对应的关键特征点的信息。这些关键点信息包含了图像中的一些关键信息特征和主要的边角特征,可以代表图像中的主要特征和全局特征。该算法的实现过程为:首先,获取输入图像的高斯差分金字塔,以此金字塔构建尺度空间表示序列;其次,从获得的尺度空间表示序列中检测空间极值点,根据这些空间极值点初步判断关键点信息;然后,通过初步判断的信息确定关键点信息的准确位置与方向信息,并进行详细描述获得的关键点主要信息;最后,通过这些关键点主要信息进行匹配对应的关键点,便将这些关键点信息作为图像中的全局特征信息概述,并将这些信息输入到后续的机器学习算法的分类器中进行分类。
2 图像分类算法相关理论
2.1 传统图像分类相关理论
在深度学习之前图像分类的算法大多数是基于机器学习的,传统图像算法是指基于机器学习进行分类的一些经典算法。这些算法大多是使用人工设计的特征提取器将图像的主要特征提取出来,然后输入到一些基于机器学习的分类器中进行分类。
特征提取对于传统图像分类算法非常关键,人工设计的特征提取器是否能提取到可以反映图像信息的特征决定着图像分类的效果如何。传统的特征提取器主要是提取区分度高或者有特殊意义的特征信息。
方向梯度直方图(HOG)的核心思想是:通过获取图像的强度梯度和方向分布作为图像的全局特征,特征信息代表图像中所包含的物体的形状和表象特征,并以此来作为图像的全局特征信息传输到分类器中获得分类结果。
2.2 卷积神经网络相关理论
在深度学习领域,随着Yann LeCun等人[32]首次提出的LeNet-5卷积神经网络,并且卷积神经网络在图像分类的效果相较于传统算法显著提升。研究人员通过在很多角度提升卷积神经网络的性能,使得技术逐渐成熟并且更加适用于图像分类任务。
卷积神经网络首先由卷积层进行提取图像的特征;其次,由池化层进行降低图像的维度降低计算量;然后,经过激活函数之后使得网络具有非线性以适应更复杂的数据集;最后,经过全连接层之后将特征进行整合之后进行图像分类,从而实现分类器的作用。
2.2.2 池化层
经过卷积层之后已经对图像的特征进行提取,但是提取的特征包含的信息比较多,不太利于后期的视觉任务,便需要从提取的特征中筛选出比较显著的特征信息。池化层可以实现对特征的降低维度,从而减少参数量并且对特征也是进行浓缩与简化。池化层可以分为平均池化层和最大池化层。池化层的操作过程与卷积层的移动不同,而是会划分特征图为很多区域,再分别对这些区域进行下采样。平均池化是将区域内的所有的值相加,然后除以区域内像素个数,便是池化之后的结果,具体池化操作过程如图2-2(a)所示。最大池化是找到区域内的最大像素值,以该值作为池化之后的结果,具体池化操作过程如图2-2(b)所示。为了保证特征损失不是很严重,池化区域一般会设置成2×2,经过池化操作之后会缩小成原来的四分之一大小 ,从而实现降低计算量。
3 基于自适应多尺度 Transformer 的图像分类算法 .......................... 19
3.1 引言 ................................... 19
3.2 相关理论 ................................. 20
4 基于多分辨率 Swin Transformer 的图像分类算法 ......................... 39
4.1 引言 ............................... 39
4.2 相关理论 ................................ 39
5 总结与展望............................... 55
5.1 总结 .................................. 55
5.2 展望 ................................ 55
4 基于多分辨率Swin Transformer的图像分类算法
4.1 引言
现有算法虽然将未经过任何处理的图像直接进行分块也获得了一定的效果。但是忽视了预先获得图像中的边缘与纹理特征等细粒度特征对于获取图像的语义信息是非常重要的。导致现有算法无法有效地学习图像中的边缘与纹理等细粒度特征语义信息,从而无法准确的实现图像分类。
针对上述问题,并且在第三章的多尺度基础上引入了多分辨率特性,重新考虑了如何经过预处理图像预先获取图像的边缘与纹理等细粒度特征信息,从而提升图像特征提取效率,提出了一种基于多分辨率Swin Transformer(Multiresolution Swin Transformer,MultiSwin)的图像分类算法。该算法首先将图像输入到小波分解模块,该模块将图像进行离散Haar小波变换,获得四个方向的小波频谱图,充分捕捉图像细节与边缘纹理等细粒度特征;其次,将获得的四个方向的小波频谱图输入到多分辨率特征提取模块,该模块将四个频谱图进行分块,分别输入到四个MultiSwin Block中,学习同一频谱图的块之间的自注意力特征;然后,将不同频段的自注意力特征输入到多分辨率融合模块,该模块将四个方向学习的特征进行特征融合,合并成整幅图像的自注意力特征,再输入到一个MultiSwin Block中学习全局自注意力特征;最后,将全局自注意力特征输入到分类头获得分类结果。通过离散Haar小波变换提前获取图像的边缘与纹理等细粒度特征,然后学习这些细粒度特征的图像块之间的自注意力特征,从而模型可以更充分的学习图像中的语义信息,从而实现更精确的图像分类。
5 总结与展望
5.1 总结
本文的主要工作如下:
(1)提出了一种基于自适应多尺度Transformer的图像分类算法。首先,算法利用SIFT特征提取方法和MeanShift聚类算法定位目标区域,其余区域为非目标区域;其次,在目标区域中利用较小尺寸的卷积核提取细粒度特征,在非目标区域中利用较大尺寸的卷积核提取粗粒度特征;然后,将不同尺寸的卷积核获得的多尺度特征进行特征融合,并输入自适应多尺度Transformer Block模块中,进行图像块间的自注意力特征学习;最后,将学习到的自注意力特征输入到分类头中进行图像分类。实验证明,在不进行预训练的情况下,相较于现有的基于Transformer架构的分类算法,本算法能够提升图像分类精度值为1.3%。
(2)提出了一种基于多分辨率Swin Transformer的图像分类算法,首先,算法利用离散Ha