CN116563683A - 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 - Google Patents
一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 Download PDFInfo
- Publication number
- CN116563683A CN116563683A CN202310389737.6A CN202310389737A CN116563683A CN 116563683 A CN116563683 A CN 116563683A CN 202310389737 A CN202310389737 A CN 202310389737A CN 116563683 A CN116563683 A CN 116563683A
- Authority
- CN
- China
- Prior art keywords
- remote sensing
- neural network
- sensing image
- feature
- convolutional neural
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 24
- 238000012549 training Methods 0.000 claims abstract description 36
- 238000013528 artificial neural network Methods 0.000 claims abstract description 12
- 239000013598 vector Substances 0.000 claims description 48
- 230000006870 function Effects 0.000 claims description 42
- 238000011176 pooling Methods 0.000 claims description 16
- 230000004913 activation Effects 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 12
- 238000009826 distribution Methods 0.000 claims description 9
- 230000004927 fusion Effects 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 230000008707 rearrangement Effects 0.000 claims description 7
- 238000006073 displacement reaction Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 238000013136 deep learning model Methods 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000005315 distribution function Methods 0.000 claims description 3
- 238000009827 uniform distribution Methods 0.000 claims description 3
- 238000011065 in-situ storage Methods 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 6
- 239000000284 extract Substances 0.000 abstract description 2
- 238000000605 extraction Methods 0.000 description 10
- 238000011160 research Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/17—Terrestrial scenes taken from planes or by drones
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本发明提出了一种基于卷积神经网络和多层感知机的遥感影像场景分类方法。通过在线地图服务或利用无人机等设备实地拍摄一块区域的遥感影像构建训练集和测试集,使用先进的数据增强方法对训练集进行扩充用以提升模型的泛化性能,形成最终的输入张量。使用卷积神经网络和多层感知机提取影像的局部特征和全局特征,通过设置不同大小的卷积核,得到多尺度信息,将这些多尺度信息相加之后,使用全连接神经网络进行分类。本发明从遥感影像的基本特点出发,充分考虑了遥感影像的特点从而设计了针对这些特点的网络结构,通过卷积神经网络和多层感知机协同提取特征,并使用全连接神经网络进行场景分类。
Description
技术领域
本发明属于遥感影像处理与人工智能领域,特别涉及一种基于卷积神经网络和多层感知机的场景分类方法,能够对一幅遥感影像中的主要场景进行正确且高效地分类。
背景技术
与自然图像分类不同,遥感影像分类是一个总体概念。它具体包括像素级分类和场景级分类。在早期研究与生产中,由于遥感影像的空间分辨率低,一个像素的大小与目标地物大小相似,所以当时的重点在遥感影像的像素级分类即语义分割。随着遥感成像技术的发展,仅仅在像素级分类已经无法满足需求,所以在这种情况下,理解遥感影像的整体内容具有重大意义,场景分类成为了一个新的研究重点。
传统的遥感影像分类方法依赖于人工提取特征,然后将这些特征利用KNN、SVM等算法进行分类。人工设计特征效率较低,而且人工设计的特征会偏向于某一种或多种特性,这种特征可能不适用于所有类型的图像。深度神经网络解决了这些问题,利用深度神经网络分类图像时,不再将特征提取和分类作为两个独立的步骤,而是将二者合为一步。深度神经网络提取的特征多,分布均匀而且能提取到许多人工提取不到的特征。随着AlexNet在ImageNet-1K分类任务上的成功,深度神经网络在遥感影像场景分类领域蓬勃发展。近年来有许多神经网络用于遥感影像的场景分类,比如FACNN、GBRCN、TRS等模型。这些模型从多个方面提升了性能,并在各种基准数据集上取得了较好的成果。但是这些方法存在两个问题:
(1)网络结构设计复杂。自然图像分类都是从零开始设计网络,然后直接在网络末端加上分类头即可完成分类。而在设计遥感影像场景分类的网络时,主流的过程都是选取自然图像分类的网络,然后根据遥感影像的特点对选定的网络进行修改,再根据遥感影像的特点设计分类框架,最后二者结合完成任务。比起自然图像分类的研究,这样的设计十分复杂。
(2)网络组件自身的缺点。场景分类的深度神经网络主要基于卷积神经网络或Transformer。卷积神经网络具有强大的归纳偏置,而且可以通过使用不同大小的卷积核来提取不同尺度的特征,这一点十分适合对于遥感影像处理;但是遥感影像中不同的地物可能存在着相似性,若要从相似性中识别出不同地物,需要共同分析背景和地物本身,这一点对网络的全局信息提取能力提出了要求,卷积神经网络无法做到长程建模和全局信息提取。近年来Transformer也被应用到场景分类中,Transformer具有强大的全局信息提取能力,但是遥感影像中同类地物可能具有巨大差异,此时需要网络能够对地物本身的特征进行深度提取,网络需要有提取局部信息的能力,但局部信息提取是Transformer的缺点。此外由于Transformer的二次计算复杂度以及对数据量的要求,导致了这些算法无法用于多种规模的影像并难以实现落地。
发明内容
针对上述研究背景和问题,提出了一种名为结合多层感知机和卷积神经网络的场景分类方法。将三通道的遥感影像转换成神经网络可处理的张量,然后将这些张量送入多个包含卷积神经网络和多层感知机的Stage,利用这些Stage不断地提取更深层次的特征信息,对这些特征信息经过一次全局平均池化,得到特征向量,然后通过调整不同卷积核的大小获得多个特征向量,将这些特征向量相加后进行一次LayerNorm归一化处理,最后使用一个全连接层完成分类。
为了达到上述目的,本发明的构思如下:首先,如果输入的是多通道影像,利用PCA主成分分析等方法将输入数据转化成三通道的张量。然后通过不同大小的深度卷积提取多尺度特征和局部特征,然后利用多层感知机提取全局特征。最后利用交叉熵损失函数训练模型参数。附图2展示了本发明提出模型的宏观结构。整个模型宏观上分为4个Stage,每个Stage中包含一次下采样和多个块,输入数据在块中依次经过卷积神经网络和多层感知机,最后像Transformer的编码器那样,经过依次前向传播层,每次经过多层感知机和前向传播层之前均先进行一次LayerNorm;下采样保证每个Stage中的特征图拥有不同的分辨率和通道数。
一种基于卷积神经网络和多层感知机的遥感影像场景分类方法,包含以下步骤:
步骤1:获取足够的遥感影像集,将这些影像按场景分为多个类别,然后对于多通道的遥感影像,首先将其转换为三通道的输入张量,并且给每个类别赋予数字标签,数字标签从0开始编号;然后从这些将这些影像和对应的标签构建训练集和验证集;
步骤2:将训练集中的张量进行数据增强以扩充训练集,提升模型的泛化能力,构建出最终的训练集张量;
步骤3:将步骤2得到的扩充后的数据集作为卷积-多层感知机网络的输入数据;
步骤4:构建卷积-多层感知机网络,首先对输入数据进行卷积操作,然后送入后续结构提取输入数据中的多种深层特征,后续结构包括多个Stage,每个Stage之间存在一次下采样,每个Stage均包含多个Block,每个Block中,依次经过一次标准卷积和多层感知机,最后经过一次前向传播层,每次经过多层感知机和前向传播层之前均先进行一次层归一化LayerNorm,经过多个Stage之后利用一次全局平均池化使得每个通道只包含一个特征元素,形成特征向量;
步骤5:重复步骤4,并在Block中设置不同窗口大小的标准卷积的卷积核得到多个同维度的特征向量,将这些特征向量相加之后得到具有多尺度特征、局部特征和全局特征的特征向量;
步骤6:将步骤5得到的特征向量进行一次层归一化LayerNorm,然后利用全连接神经网络对步骤5得到的特征向量进行概率预测,将概率最大的那个类作为分类结果输出;
步骤7:将训练集的数字标签和步骤6得到的分类结果代入损失函数,计算预测结果与真实标签的损失值,利用这个损失函数优化步骤4-步骤6中的整体模型,得到对当前遥感影像集的分类结果。
进一步的,步骤1所述的遥感影像集在线地图服务商获取,或在实际生产中使用无人机设备实地获取,将遥感数据集记为A,其中每张影像记为as,对应的数字标签记为s,若一共由S个类,则具体定义为:
A={(as,s)|s∈[0,S-1]}
其中A表示遥感影像集,包括影像和标签;as和s表示编号为s的数字标签以及对应的影像集as;
步骤1所述的训练集和验证集划分方式如下:从集合A中X个元素均匀地随机选择T个元素作为训练集,用Atrain表示,剩下X-P个元素作为验证集,用Aval表示。
进一步的,步骤2所述的数据增强包括图像融合、裁剪填充、随机擦除和随机增强;
图像融合是将两个不同的样本进行线性混合从而产生一个新的样本,图像融合的公式如下:
其中xi和xj分别为随机选取的原始输入张量,yi和yj分别是xi和xj对应的数字,这些数字标签都经过了one-hot编码,λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),α控制插值的强度;
裁剪填充是在一幅影像中裁剪出一个矩形区域,然后使用另一幅影像的同大小区域进行填充,裁剪填充的公式如下:
M∈{0,1}W×H是二值掩膜,表示从两幅图像裁取和填充区域的位置,⊙是逐元素乘法,和图像融合一样,λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),根据实践经验,α取值一般为1,所以λ此时从均匀分布(0,1)中采样;为了得到掩膜M,首先需要确定两幅影像中裁剪框的坐标B=(rx,ry,rw,rh),掩膜的长宽和原图的长宽成正比,裁剪框坐标按如下公式计算:
随机擦除是以一定概率随机选取一块区域,然后对这块区域用随机数或数据集的像素平均值填充,被擦除区域的大小、形状、颜色参数都是随机生成;
随机增强是通过随机选取一定数量的变换操作,对训练数据进行随机组合,从而生成增强后的数据,每个变换操作都有一定的概率被选择,并且每个变换操作的参数也是随机生成的,以增加数据的多样性;在实际应用中,通过超参数来控制变换操作的数量和强度,从而平衡增强数据的多样性和模型训练的效率;
经过这些数据增强之后,构建出整个深度学习模型的输入数据Atrain_input。
进一步的,步骤4所述的LayerNorm函数公式如下:
其中,表示经过一次LayerNorm的张量,⊙表示逐元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数;μ和σ分别表示输入张量X在最后一个维度上的均值和标准差,如果张量X的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维,μ和σ可通过如下公式计算:
其中,Xi表示张量X在最后一个维度上的第i个元素,L是张量X最后一个维度的长度;
进一步的,步骤4所述的标准卷积公式如下:
其中yi,j,k表示输出特征图的一个像素;wl,m,n,k表示第k个卷积核(l,m,n)位置的权重;xi+l-1,j+m-1,n表示输入特征图中的一个像素;*是卷积运算;L×M×N是卷积核的大小;b表示偏置;σ表示激活函数。
进一步的,所述多层感知机分别对输入特征图的长H和宽W进行两次全连接操作,然后将对长和宽分别处理的结果相加,在全连接操作前,先确保输入张量的最后一个维度分别为H和W,否则无法实现全连接;两次全连接操作的公式如下:
Y=σ2(W2σ1(W1X+b1)+2)
其中,Y表示经过两次全连接之后的结果,W1和W2为两次全连接操作时的权重,b1和b2为两次全连接操作时的偏置,σ1和σ2为两次全连接操作时的激活函数,每次激活函数都选择GELU激活函数,公式为:
GELU(x)=x·Φ(x)
其中,Φ(x)是标准正态分布的累积分布函数,表示为:
其中,erf(x)是高斯误差函数,定义为:
x为未经激活的特征图,GELU函数是一种平滑且非线性的函数,值域为(-1,+∞),它比其他激活函数具有更强的表达能力。
进一步的,全局平均池化的具体过程如下:
其中,Mean为全局平均池化,y为经过多个Stage特征提取后的特征图,为经过全局平均池化后的特征图,yi为特征图y的第i个通道,/>表示特征图y的第i个通道经过平均池化后对应位置的元素;最后,步骤4所述的特征向量为:
其中,C表示特征向量的通道数。
进一步的,步骤5所述的包含多尺度特征、局部特征和全局特征的特征向量表示如下:
其中,为重复步骤4得到的多个特征向量相加之后第i个通道的值,P是最终相加得到的特征向量,它包含多尺度特征、局部特征和全局特征。
进一步的,步骤6中LayerNorm的公式如下:
其中,⊙表示元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数;μ和σ分别表示输入张量P在最后一个维度上的均值和标准差,如果张量P的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维;μ和σ可通过如下公式计算:
其中,Pi表示张量P在最后一个维度上的第i个元素,L是张量P最后一个维度的长度;
LayerNorm之后对得到的特征向量进行概率预测,公式为:
其中,argmax得到的是向量中元素最大的那个值的下标,将这个下标值作为最后的预测输出,下标值的取值范围和数字标签Atrain_input_label的范围相同;Softmax的计算公式如下:
其中,Pi表示向量P的第i个元素,Softmax(P)i表示输出向量的第i个元素,pred是模型给出的预测结果,它的取值表示它被模型分类为那个值所对应的类。
进一步的,步骤7所述的损失函数为交叉熵函数,其公式如下:
Loss(θ;y,p)=-[ylogp+(1-y)log(1-p)]
其中,p表示模型的预测结果,y表示数据的真实标签,θ是可训练的参数。
与现有技术相比,本发明的优点和有益效果如下:
1.综合使用卷积和多层感知机,网络同时具备局部信息和全局信息提取的能力。
2.使用多层感知机替代Transformer,本发明的计算量小。
3.对数据规模要求低,不需要大规模的数据即可完成训练。
4.训练时间短,推理速度快。
附图说明
图1为本方法的执行流程。
图2为本模型的宏观结构。
图3为视觉多层感知机结构。
具体实施方式
下面结合附图1详细描述本发明的实施方式。下面通过参考附图1描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本领域的技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有本发明所属技术领域中的普通技术人员的一般理解相同的意义。具体操作流程包含以下步骤:
步骤1:获取足够的遥感影像集,将这些影像按场景分为多个类别。然后对于多通道的遥感影像,首先将其转换为三通道的输入张量,并且给每个类别赋予数字标签,数字标签从0开始编号;然后从这些将这些影像和对应的标签构建训练集和验证集;
步骤1所述的遥感影像集可以通过Google Earth、百度地图等在线地图服务商获取,也可以在实际生产中使用无人机等设备实地获取。将遥感数据集记为A,其中每张影像记为as,对应的数字标签记为s,若一共由S个类,则具体定义为:
A={(as,s)|s∈[0,S-1]}
其中A表示遥感影像数据集,包括影像和标签;as和s表示编号为s的数字标签以及对应的影像集as;
步骤1所述的训练集和验证集划分方式如下:从集合A中X个元素均匀地随机选择T个元素作为训练集,用Atrain表示。剩下X-T个元素作为验证集,用Aval表示。
步骤2:将训练集中的张量进行数据增强以扩充训练集,提升模型的泛化能力,构建出最终的训练集张量。
步骤2所述的数据增强技巧包括图像融合、裁剪填充、随机擦除和随机增强。
图像融合是将两个不同的样本进行线性混合从而产生一个新的样本。公式如下:
其中xi和xj分别为随机选取的原始输入张量,yi和yj分别是xi和xj对应的数字标签,这些数字标签都经过了one-hot编码。λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),α控制插值的强度。
裁剪填充首先在一幅影像中裁剪出一个矩形区域,然后使用另一幅影像的同大小区域进行填充。公式如下:
M∈{0,1}W×H是二值掩膜,表示从两幅图像裁取和填充区域的位置,⊙是逐元素乘法。和图像融合一样,λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),根据实践经验,α取值一般为1,所以λ此时从均匀分布(0,1)中采样。为了得到掩膜M,首先需要确定两幅影像中裁剪框的坐标B=(rx,ry,rw,rh),掩膜的长宽和原图的长宽成正比,裁剪框坐标按如下公式计算:
随机擦除是以一定概率随机选取一块区域,然后对这块区域用随机数或数据集的像素平均值填充,被擦除区域的大小、形状、颜色等参数都是随机生成。
传统数据增强方法存在两个问题,一是搜索阶段单独存在,导致了训练复杂和训练成本高,并且无法根据模型或者数据集的大小来调整正则化的强度;二是传统的数据增强策略通常是先在小数据集上训练小模型再应用于训练大模型,导致了策略上存在一定的限制和约束。随机增强解决了这两个问题,它通过随机选取一定数量的变换操作,对训练数据进行随机组合,从而生成增强后的数据。每个变换操作都有一定的概率被选择,并且每个变换操作的参数也是随机生成的,以增加数据的多样性。在实际应用中,可以通过超参数来控制变换操作的数量和强度,从而平衡增强数据的多样性和模型训练的效率。
经过这些数据增强之后,构建出整个深度学习模型的输入数据Atrain_input。
步骤3:将步骤2得到的扩充后的数据集作为整个深度学习模型的输入数据;训练集遥感影像的数字标签用于计算每次迭代时的损失函数。
步骤3所述的输入数据为Atrain_input,用于模型训练,步骤3所述的遥感影像的数字标签为Atrain_input_label,用于计算损失函数。
步骤4:附图2表示的模型命名为卷积-多层感知机网络(Conv-MLPs),首先使用卷积核大小为4×4,步长也为4的卷积将步骤3中的输入数据的长和宽进行4倍下采样,然后送入后续结构提取多种深层特征,每个Stage之间存在一次下采样,即附图2中的卷积核大小为2×2,步长也为2的Conv操作。每个Stage均包含多个Block,每个Block依次由一次标准卷积、一次多层感知机和一次前向传播层组成,图中的n1-n4分别表示Stage 1-Stage 4中Block的数量,即当在Stagei中时,该Stage的输入数据需要依次经过ni个Block,每个Block中依次经过一次标准卷积和多层感知机,最后像Transformer的编码器那样,经过一次前向传播层,每次经过多层感知机和前向传播层之前均先进行一次LayerNorm。经过4个Stage之后利用一次全局平均池化使得每个通道只包含一个特征元素,形成特征向量。
步骤4所述的LayerNorm函数公式如下:
其中,表示经过一次LayerNorm的张量,⊙表示逐元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数,通常取10-5;μ和σ分别表示输入张量X在最后一个维度上的均值和标准差,如果张量X的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维。μ和σ可通过如下公式计算:
其中,Xi表示张量X在最后一个维度上的第i个元素,L是张量X最后一个维度的长度。
步骤4所述的标准卷积公式如下:
其中yi,j,k表示输出特征图的一个像素;wl,m,n,k表示第k个卷积核(l,m,n)位置的权重;xi+l-1,j+m-1,n表示输入特征图中的一个像素;*是卷积运算;L×M×N是卷积核的大小;b表示偏置;σ表示激活函数。
结合附图3介绍步骤4中所述的多层感知机,多层感知机分别对输入特征图的长(H)和宽(W)进行两次全连接操作,然后将对长和宽分别处理的结果相加,在全连接操作前,需要保证输入张量的最后一个维度分别为H和W,否则无法实现全连接。两次全连接操作的公式如下,Block中的前向传播层也使用如下公式计算,前向传播层是对输入特征图的通道维度C进行处理,进行全连接层处理前要通过维度重排保证张量的最后一个维度为C:
Y=σ2(W2σ1(W1X+b1)+b2)
其中,Y表示经过两次全连接之后的结果,W1和W2为两次全连接操作时的权重,b1和b2为两次全连接操作时的偏置,σ1和σ2为两次全连接操作时的激活函数,每次激活函数都选择GELU激活函数,公式为:
GELU(x)=x·Φ(x)
其中,Φ(x)是标准正态分布的累积分布函数,可以表示为:
其中,erf(x)是高斯误差函数,定义为:
x为未经激活的特征图,GELU函数是一种平滑且非线性的函数,值域为(-1,+∞),它比其他激活函数具有更强的表达能力。
经过4个Stage的特征提取后,步骤4最后使用一次全局平均池化,具体过程如下:
其中,Mean为全局平均池化,y为经过4个Stage特征提取后的特征图,为经过全局平均池化后的特征图,yi为特征图y的第i个通道,/>表示特征图y的第i个通道经过平均池化后对应位置的元素。步骤4所述的特征向量为:
其中,C表示特征向量的通道数。
步骤5:重复步骤4,并在Block中设置不同窗口大小的标准卷积的卷积核得到多个同维度的特征向量,将这些特征向量相加之后得到具有多尺度特征、局部特征和全局特征的特征向量。
步骤5所述的包含多尺度特征、局部特征和全局特征的特征向量表示如下:
其中,为重复步骤4得到的多个特征向量相加之后第i个通道的值,P是最终相加得到的特征向量,它包含多尺度特征、局部特征和全局特征。
步骤6:将步骤5得到的特征向量进行一次LayerNorm,然后利用全连接神经网络对步骤5得到的特征向量进行概率预测,将概率最大的那个类作为分类结果输出。
步骤6首先进行一次LayerNorm,公式如下:
其中,⊙表示元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数,通常取10-5;μ和σ分别表示输入张量P在最后一个维度上的均值和标准差,如果张量P的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维。μ和σ可通过如下公式计算:
其中,Pi表示张量P在最后一个维度上的第i个元素,L是张量P在最后一个维度的值。
LayerNorm之后对得到的特征向量进行概率预测,公式为:
其中,argmax得到的是向量中元素最大的那个值的下标,将这个下标值作为最后的预测输出,下标值的取值范围和数字标签Atrain_input_label的范围相同。Softmax的计算公式如下:
其中,Pi表示向量P的第i个元素,Softmax(P)i表示输出向量的第i个元素。pred是模型给出的预测结果,它的取值表示它被模型分类为那个值所对应的类。
步骤7:将训练集的数字标签和步骤6得到的分类结果代入损失函数,计算预测结果与真实标签的损失值,利用这个损失函数和损失值优化步骤4-步骤6构建的模型;经过步骤2和步骤7可以自动化得到模型对当前遥感影像集的分类结果。
步骤7所述的损失函数为交叉熵函数,其公式如下:
Loss(θ;y,p)=-[ylogp+(1-y)log(1-p)]
其中,p表示模型的预测结果,y表示数据的真实标签,θ是可训练的参数。
使用AdamW算法优化模型参数θ,模型参数θ包括卷积、多层感知机中所有的权重和偏置值,根据优化后的参数θ可以构建深度学习的遥感影像场景分类模型。
应当理解的是,本申请书为详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本申请专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本申请权利要求所保护的范围情况下,还可以做出替换或变形,均落入本申请的保护范围之内,本申请的请求保护范围应以所附权利要求为准。
Claims (10)
1.一种基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于,包含以下步骤:
步骤1:获取足够的遥感影像集,将这些影像按场景分为多个类别,然后对于多通道的遥感影像,首先将其转换为三通道的输入张量,并且给每个类别赋予数字标签,数字标签从0开始编号;然后从这些将这些影像和对应的标签构建训练集和验证集;
步骤2:将训练集中的张量进行数据增强以扩充训练集,提升模型的泛化能力,构建出最终的训练集张量;
步骤3:将步骤2得到的扩充后的数据集作为卷积-多层感知机网络的输入数据;
步骤4:构建卷积-多层感知机网络,首先对输入数据进行卷积操作,然后送入后续结构提取输入数据中的多种深层特征,后续结构包括多个Stage,每个Stage之间存在一次下采样,每个Stage均包含多个Block,每个Block中,依次经过一次标准卷积和多层感知机,最后经过一次前向传播层,每次经过多层感知机和前向传播层之前均先进行一次层归一化LayerNorm,经过多个Stage之后利用一次全局平均池化使得每个通道只包含一个特征元素,形成特征向量;
步骤5:重复步骤4,并在Block中设置不同窗口大小的标准卷积的卷积核得到多个同维度的特征向量,将这些特征向量相加之后得到具有多尺度特征、局部特征和全局特征的特征向量;
步骤6:将步骤5得到的特征向量进行一次层归一化LayerNorm,然后利用全连接神经网络对步骤5得到的特征向量进行概率预测,将概率最大的那个类作为分类结果输出;
步骤7:将训练集的数字标签和步骤6得到的分类结果代入损失函数,计算预测结果与真实标签的损失值,利用这个损失函数优化步骤4-步骤6中的整体模型,得到对当前遥感影像集的分类结果。
2.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤1所述的遥感影像集在线地图服务商获取,或在实际生产中使用无人机设备实地获取,将遥感数据集记为A,其中每张影像记为as,对应的数字标签记为s,若一共由S个类,则具体定义为:
A={(as,)|∈[0,S-1]}
其中A表示遥感影像集,包括影像和标签;as和s表示编号为s的数字标签以及对应的影像集as;
步骤1所述的训练集和验证集划分方式如下:从集合A中X个元素均匀地随机选择T个元素作为训练集,用Atrain表示,剩下X-P个元素作为验证集,用Aval表示。
3.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤2所述的数据增强包括图像融合、裁剪填充、随机擦除和随机增强;
图像融合是将两个不同的样本进行线性混合从而产生一个新的样本,图像融合的公式如下:
其中xi和xj分别为随机选取的原始输入张量,yi和yj分别是xi和xj对应的数字标签,这些数字标签都经过了one-hot编码,λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),α控制插值的强度;
裁剪填充是在一幅影像中裁剪出一个矩形区域,然后使用另一幅影像的同大小区域进行填充,裁剪填充的公式如下:
M∈{0,1}W×H是二值掩膜,表示从两幅图像裁取和填充区域的位置,⊙是逐元素乘法,和图像融合一样,λ∈[0,1]且满足Beta分布,即λ~Beta(α,α),根据实践经验,α取值一般为1,所以λ此时从均匀分布(0,1)中采样;为了得到掩膜M,首先需要确定两幅影像中裁剪框的坐标B=(rx,ry,rw,rh),掩膜的长宽和原图的长宽成正比,裁剪框坐标按如下公式计算:
rx=Unif(0,W),
ry=Unif(0,H),
随机擦除是以一定概率随机选取一块区域,然后对这块区域用随机数或数据集的像素平均值填充,被擦除区域的大小、形状、颜色参数都是随机生成;
随机增强是通过随机选取一定数量的变换操作,对训练数据进行随机组合,从而生成增强后的数据,每个变换操作都有一定的概率被选择,并且每个变换操作的参数也是随机生成的,以增加数据的多样性;在实际应用中,通过超参数来控制变换操作的数量和强度,从而平衡增强数据的多样性和模型训练的效率;
经过这些数据增强之后,构建出整个深度学习模型的输入数据Atrain_input。
4.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤4所述的LayerNorm函数公式如下:
其中,表示经过一次LayerNorm的张量,⊙表示逐元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数;μ和σ分别表示输入张量X在最后一个维度上的均值和标准差,如果张量X的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维,μ和σ可通过如下公式计算:
其中,Xi表示张量X在最后一个维度上的第i个元素,L是张量X最后一个维度的长度。
5.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤4所述的标准卷积公式如下:
其中yi,j,k表示输出特征图的一个像素;wl,m,n,k表示第k个卷积核(,m,n)位置的权重;xi+l-1,+m-1,表示输入特征图中的一个像素;*是卷积运算;L×M×N是卷积核的大小;b表示偏置;σ表示激活函数。
6.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
所述多层感知机分别对输入特征图的长H和宽W进行两次全连接操作,然后将对长和宽分别处理的结果相加,在全连接操作前,先确保输入张量的最后一个维度分别为H和W,否则无法实现全连接;两次全连接操作的公式如下:
Y=σ2(W2σ1(W1X+b1)+2)
其中,Y表示经过两次全连接之后的结果,W1和W2为两次全连接操作时的权重,b1和b2为两次全连接操作时的偏置,σ1和σ2为两次全连接操作时的激活函数,每次激活函数都选择GELU激活函数,公式为:
GELU(x)=x·Φ(x)
其中,Φ(x)是标准正态分布的累积分布函数,表示为:
其中,erf(x)是高斯误差函数,定义为:
x为未经激活的特征图,GELU函数是一种平滑且非线性的函数,值域为(-1,+∞),它比其他激活函数具有更强的表达能力。
7.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
全局平均池化的具体过程如下:
其中,Mean为全局平均池化,y为经过多个Stage特征提取后的特征图,为经过全局平均池化后的特征图,yi为特征图y的第i个通道,/>表示特征图y的第i个通道经过平均池化后对应位置的元素;最后,步骤4所述的特征向量为:
其中,C表示特征向量的通道数。
8.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤5所述的包含多尺度特征、局部特征和全局特征的特征向量表示如下:
其中,为重复步骤4得到的多个特征向量相加之后第i个通道的值,P是最终相加得到的特征向量,它包含多尺度特征、局部特征和全局特征。
9.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤6中LayerNorm的公式如下:
其中,⊙表示元素乘法;γ和β表示可学习的缩放因子和位移因子;∈是一个非常小的数;μ和σ分别表示输入张量P在最后一个维度上的均值和标准差,如果张量P的通道维度不在最后一个,在进行LayerNorm之前需要进行一次维度重排,将最后一个维度变成通道维;μ和σ可通过如下公式计算:
其中,Pi表示张量P在最后一个维度上的第i个元素,L是张量P最后一个维度的长度;
LayerNorm之后对得到的特征向量进行概率预测,公式为:
其中,argmax得到的是向量中元素最大的那个值的下标,将这个下标值作为最后的预测输出,下标值的取值范围和数字标签Atrain_input_label的范围相同;Softmax的计算公式如下:
其中,Pi表示向量P的第i个元素,Softmax(P)i表示输出向量的第i个元素,pred是模型给出的预测结果,它的取值表示它被模型分类为那个值所对应的类。
10.根据权利要求1所述的基于卷积神经网络和多层感知机的遥感影像场景分类方法,其特征在于:
步骤7所述的损失函数为交叉熵函数,其公式如下:
Loss(θ;y,p)=-[ylogp+(1-y)log(1-)
其中,p表示模型的预测结果,y表示数据的真实标签,θ是可训练的参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310389737.6A CN116563683A (zh) | 2023-04-12 | 2023-04-12 | 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310389737.6A CN116563683A (zh) | 2023-04-12 | 2023-04-12 | 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116563683A true CN116563683A (zh) | 2023-08-08 |
Family
ID=87499169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310389737.6A Pending CN116563683A (zh) | 2023-04-12 | 2023-04-12 | 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116563683A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117933309A (zh) * | 2024-03-13 | 2024-04-26 | 西安理工大学 | 一种用于双时相遥感图像变化发现的三路神经网络及方法 |
-
2023
- 2023-04-12 CN CN202310389737.6A patent/CN116563683A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117933309A (zh) * | 2024-03-13 | 2024-04-26 | 西安理工大学 | 一种用于双时相遥感图像变化发现的三路神经网络及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111368896B (zh) | 基于密集残差三维卷积神经网络的高光谱遥感图像分类方法 | |
CN110458844B (zh) | 一种低光照场景的语义分割方法 | |
CN110555458B (zh) | 基于注意力机制生成对抗网络的多波段图像特征级融合方法 | |
CN113159051B (zh) | 一种基于边缘解耦的遥感图像轻量化语义分割方法 | |
CN110728192B (zh) | 一种基于新型特征金字塔深度网络的高分遥感图像分类方法 | |
CN111178316B (zh) | 一种高分辨率遥感影像土地覆盖分类方法 | |
CN112347888B (zh) | 基于双向特征迭代融合的遥感图像场景分类方法 | |
CN112561027A (zh) | 神经网络架构搜索方法、图像处理方法、装置和存储介质 | |
CN109035267B (zh) | 一种基于深度学习的图像目标抠取方法 | |
CN115690479A (zh) | 一种基于卷积Transformer的遥感图像分类方法及*** | |
CN113705769A (zh) | 一种神经网络训练方法以及装置 | |
CN113705641B (zh) | 基于富上下文网络的高光谱图像分类方法 | |
CN110852369B (zh) | 联合3d/2d卷积网络和自适应光谱解混的高光谱图像分类方法 | |
CN113837191A (zh) | 基于双向无监督域适应融合的跨星遥感图像语义分割方法 | |
CN115965968A (zh) | 基于知识引导的小样本目标检测识别方法 | |
CN116563683A (zh) | 一种基于卷积神经网络和多层感知机的遥感影像场景分类方法 | |
CN115311508A (zh) | 一种基于深度u型网络的单帧图像红外弱小目标检测方法 | |
CN111325259A (zh) | 一种基于深度学习和二进制编码的遥感图像分类方法 | |
CN114581789A (zh) | 一种高光谱图像分类方法及*** | |
CN111179272A (zh) | 一种面向道路场景的快速语义分割方法 | |
CN117237623B (zh) | 一种无人机遥感图像语义分割方法及*** | |
CN111695436B (zh) | 一种基于目标增强的高空间分辨率遥感图像场景分类方法 | |
CN117853596A (zh) | 无人机遥感测绘方法及*** | |
CN117710744A (zh) | 基于波段选择特征融合多注意力网络的高光谱图像分类方法 | |
CN110866552B (zh) | 基于全卷积空间传播网络的高光谱图像分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |