掌桥专利:专业的专利平台
掌桥专利
首页

基于多光谱图像融合的森林非结构化场景分割方法

文献发布时间:2023-06-19 16:09:34



技术领域

本发明属于计算机视觉及无人驾驶汽车环境感知技术领域,涉及非结构化场景分割方法,尤其涉及一种基于多光谱图像融合的森林非结构化场景分割方法。

背景技术

近年来,自动驾驶技术发展迅速,成为各界学者研究解决交通问题的热点领域。在行驶过程中,为自动驾驶汽车提供全面、准确、可靠的感知是实现安全可靠自动驾驶的前提。其中,语义分割技术作为自动驾驶场景感知技术的重要组成部分得到了广泛地研究。目前,在自动驾驶汽车感知领域,较为成熟的视觉语义分割技术主要是针对结构化道路环境设计,如城市道路环境。然而现实场景中,非结构化场景也大量存在,例如森林场景、越野场景。更为复杂的非结构化环境会迫使自动驾驶汽车做出更为明智的决策,这对语义分割技术提出了更高的要求。

考虑到成本、可行性等影响因素,目前大部分语义分割方法是基于计算机视觉的。在非结构化环境中,没有交通车道、铺砌路面或护栏等结构特征,并且非结构化场景的可驾驶区域边界模糊、纹理复杂、特征复杂,还有阴影,炫光等自然因素影响,这些特点为视觉语义分割带来了相当大的挑战。传统图像分割方法大多利用图像的表层信息,需要人为地构造合适的目标特征,对于需要大量语义信息和复杂场景的分割任务则不适用,无法应对实际的需求。

相对于传统的图像分割算法,基于深度卷积神经网络的方法可以学到更加复杂抽象的高级语义特征,能够应对更为复杂的场景。然而,当前大部分基于视觉的非结构化场景分割模型仅采用单一的RGB图像,这很难为复杂的非结构化场景分割提供全面且有效的知识。而且,基于单一的RGB图像的方法很容易受到光线干扰,难以获得准确稳定的分割。

发明内容

为解决上述问题,本发明公开了一种基于多光谱图像融合的森林非结构化场景分割方法,有效地解决了当前大部分基于RGB图像的分割方法难以适用于复杂非结构化场景的问题,通过利用不同感知方式构建同一场景的特征描述,进一步提高了森林非结构化场景分割的准确性和鲁棒性。

为了达到上述目的,本发明提供如下技术方案:

基于多光谱图像融合的森林非结构化场景分割方法,包括以下步骤:

步骤1:建立森林非结构化场景多光谱分割数据集。

步骤2:构建多光谱特征融合编码网络,首先,设计两个并行的编码器支路,分别用于RGB数据和EVI数据的特征提取。并在编码过程中,RGB支路会分级融合EVI(增强植被指数数据)支路的层级特征,以达到特征优势互补。然后构建跳跃连接结构将编码阶段的融合特征与解码特征进行二次融合,以弥补在下采样过程中丢失的空间信息特征和边缘细节特征。包括以下子步骤:

子步骤1:设计EVI支路编码结构,具体包括:

(1)设计初始化卷积层,初始化卷积层数量为1,其中卷积核数量为16,卷积核大小为7×7,步长为2。

(2)设计残差模块。残差模块的数量为3,残差模块1~3的网络结构一致,其中卷积核数量分别为64、128、256,卷积核数量以n表示。残差模块包括标准卷积模块、分离残差模块和扩张卷积模块,这三个模块可构建如下:

①构建标准卷积模块:

设计标准卷积:标准卷积数量为2,其中卷积核数量为n,卷积核大小为3×3,步长分别为2、1。

构建标准卷积模块a-1:用n个3×3的标准卷积核与输入特征图做卷积,步长为2,再经过BN层和Re LU激活,输出特征尺寸为输入的1/2。

构建标准卷积模块a-2:用n个3×3的卷积核与标准卷积模块a的特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

构建标准卷积块:级联标准卷积模块a-1和标准卷积模块a-2得到标准卷积块,输出特征尺寸为输入的1/2。

②构建分离残差模块

设计分离卷积:标准分离数量为4,其中卷积核数量为n,卷积核大小分别为3×1,1×3、3×1,1×3,步长均为1。

构建分离残差a-1:用n个3×1的卷积核与标准卷积块的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-2:用n个1×3的卷积核与分离残差a-1的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-3:用n个3×1的卷积核与分离残差a-2的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-4:用n个1×3的卷积核与分离残差a-3的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

最后将标准卷积块的输出特征图与分离残差a-4的输出做加法,得到分离残差模块的输出。

③构建扩张残差模块

设计扩张卷积层,扩张卷积层数量为2,扩张率分别为3、5,卷积核数量为n,卷积核大小均为3×3,步长均为1;

构建扩张残差模块a-1:用n个3×3的标准卷积核与分离残差模块的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

构建扩张残差模块a-2:用n个3×3的卷积核与扩张残差模块a-1的特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

最后将分离残差模块的输出特征图与扩张残差模块a-2的输出做加法,得到扩张残差模块的输出。

④构建残差模块1:

用n=64的标准卷积模块与A/2×A/2像素的初始化卷积层输出做卷积,得到维度为A/4×A/4×64的特征图;

用n=64的分离残差模块与A/4×A/4像素的标准卷积模块输出做卷积,得到维度为A/4×A/4×64的特征图;

用n=64的扩张残差模块与A/4×A/4像素的分离残差模块输出做卷积,得到维度为A/4×A/4×64的特征图;

⑤构建残差模块2:

用n=128的标准卷积模块与A/4×A/4像素的残差模块1的输出做卷积,得到维度为A/8×A/8×128的特征图;

用n=128的分离残差模块与A/8×A/8像素的标准卷积模块输出做卷积,得到维度为A/8×A/8×128的特征图;

用n=128的扩张残差模块与A/8×A/8像素的分离残差模块输出做卷积,得到维度为A/8×A/8×128的特征图;

⑥构建残差模块3:

用n=256的标准卷积模块与A/8×A/8像素的残差模块2的输出做卷积,得到维度为A/16×A/16×256的特征图;

用n=256的分离残差模块与A/16×A/16像素的标准卷积模块输出做卷积,得到维度为A/16×A/16×256的特征图;

用n=256的扩张残差模块与A/16×A/16像素的分离残差模块输出做卷积,得到维度为A/16×A/16×256的特征图;

(3)构建EVI支路编码结构

用初始化卷积层与A×A像素的EVI输入样本做卷积,得到维度为A/2×A/2×16的特征图a1。初始化卷积层的输出经过残差模块1,得到维度为A/4×A/4×64的特征图a2。残差模块1的输出经过残差模块2,得到维度为A/8×A/8×128的特征图a3。残差模块2的输出经过残差模块3,得到维度为A/16×A/16×256的特征图a4。

子步骤2:设计RGB支路编码结构,具体包括:

(1)设计初始化卷积层,与子步骤1的(1)一致。

(2)设计残差模块。与子步骤1的(2)一致。

(3)构建RGB支路编码结构

用初始化卷积层与A×A像素的RGB输入样本做卷积,得到维度为A/2×A/2×16的特征图b1。将EVI支路所得的a1与b1做加法后经过残差模块1,得到维度为A/4×A/4×64的特征图b2。将EVI支路所得的a2与b2做加法后经过残差模块2,得到维度为A/8×A/8×128的特征图b3。将EVI支路所得的a3与b3做加法后经过残差模块3,得到维度为A/16×A/16×256的特征图b4。

步骤3:构建分层特征融合解码结构。首先,设计上采样层,用于恢复上采样层和密集预测。之后引入RGB与EVI在编码器阶段的融合特征,与解码特征二次融合。包括以下子步骤:

子步骤1:设计标准卷积层。标准卷积数量为4,其中卷积核数量分别为128、64、16、class_num,卷积核大小均为3×3,步长均为1。

子步骤2:构建上采样层1。编码器的输出特征b4经过双线性插值运算得到维度为A/8×A/8×256的特征图。标准卷积层与A/8×A/8像素的双线性插值输出做卷积,得到维度为A/8×A/8×128的特征图;

子步骤3:构建上采样层2。上采样层1输出的特征先与b3做拼接操作得到A/8×A/8×256的特征图,再经过双线性插值运算得到维度为A/4×A/4×256的特征图。标准卷积层与A/4×A/4像素的双线性插值输出做卷积,得到维度为A/4×A/4×64的特征图;

子步骤4:构建上采样层3。上采样层2输出的特征先与b2做拼接操作得到A/4×A/4×128的特征图,再经过双线性插值运算得到维度为A/2×A/2×128的特征图。标准卷积层与A/2×A/2像素的双线性插值输出做卷积,得到维度为A/2×A/2×16的特征图;

子步骤5:构建上采样层4。上采样层1输出的特征先与b1做拼接操作得到A/2×A/2×32的特征图,再经过双线性插值运算得到维度为A×A×32的特征图。标准卷积层与A×A像素的双线性插值输出做卷积,得到维度为A×A×class_num的特征图;

步骤4:训练设计的多光谱图像融合卷积神经网络,获得网络参数;

步骤5:使用多光谱图像融合卷积神经网络进行森林非结构化场景分割。

与现有技术相比,本发明具有如下优点和有益效果:

本发明提出了一种适用于森林非结构化场景的语义分割方法,在可见光RGB数据的基础上引入了增强型植被指数数据(EVI)。一方面EVI能够消除复杂环境下常见的干扰因素(如炫光、阴影、天气变化等),增强算法鲁棒性。另一方面,EVI通过提供非结构化场景中植被的数据信息,能够增强对森林非结构化场景可通过区域和障碍物的辨别。

本发明设计了作用于RGB与EVI数据的并行双支路编码卷积神经网络来提取特征。在编码的过程中,利用扩张卷积增加了网络的感受野,优化特征提取过程,并由两个支路分层融合RGB与EVI特征构建混合互补特征;在解码阶段,轻量级解码器分层融合编码阶段产生的特征,实现二次特征融合,得到多光谱数据融合卷积神经网络。该网络不仅大大降低了常见干扰对分割精度的影响,而且兼顾了不同尺度的局部细节特征和全局特征,与当前大部分基于单一视觉的非结构化场景语义分割方法相比,有效解决了网络适应性差以及误分割问题,提高了非结构化场景语义分割的准确性和鲁棒性。

附图说明

图1是本发明的多光谱图像融合卷积神经网络设计流程图。

图2是本发明设计的多光谱图像融合卷积神经网络结构示意图。

图3是本发明设计的多光谱图像融合卷积神经网络训练流程图。

具体实施方式

以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。

本发明公开了一种基于多光谱图像融合的森林非结构化场景分割方法,该方法设计了并行编码器和两级融合策略,在编码和解码过程中实现了分层特征融合。首先在编码器阶段,两个编码分支分别处理RGB数据和EVI数据,并在每一层融合两路特征,获取具有丰富信息的互补特征。编码器还利用扩张卷积增加了网络的感受野,优化特征提取过程。然后对高语义的特征进行解码,解码过程中将编码产生的低语义、高细节的特征与解码产生的高语义、低细节的特征二次融合,最终得到多光谱图像融合的卷积神经网络,有效地解决了当前大部分基于RGB图像的分割方法难以适用于复杂非结构化场景的问题,并提高了分割的准确性和鲁棒性。

具体的说,本发明提供的基于多光谱图像融合的森林非结构化场景分割方法,包括如下步骤:

步骤1:建立森林非结构化场景多光谱数据集,对非结构化场景样本进行标注或者使用已有数据样本,然后将样本尺寸调整为480×640像素并记为D

步骤2:构建多光谱特征融合编码网络架构,该编码结构是由两个编码器组成。其中EVI编码器用于提取EVI数据的特征,RGB编码器提取RGB数据特征并在编码过程中分层融合两路特征。两支路特征分层融合以形成信息丰富的互补特征,设计流程图如图1所示。包括以下步骤

子步骤1:设计EVI支路编码结构,具体包括:

(1)设计初始化卷积层。在面向语义分割的卷积神经网络中,实现良好的性能和实时操作的关键点之一是处理好大的输入帧。若初始卷积核太小,会直接导致之后的卷积特征包含较小的全局信息;但若卷积核较大,又会导致参数较多,增加计算负担。因此,在设计时综合考虑这两方面的影响,初始化卷积层数量为1,其中卷积核数量为16,卷积核大小为7×7,步长为2。

用16个7×7的卷积核与480×640像素的输入样本做卷积,步长为2,再经过Re LU激活,得到维度为240×320×16的特征图a1;

(2)设计残差模块。为了准确地提取图像中的特征,设计了以标准卷积、分离卷积和扩张卷积级联的残差模块。一般而言,网络的特征表达能力随着卷积层数量的增加而增强,但堆叠较多的卷积层加大了计算量,而卷积层数量少则难以提取到表达能力强的特征。因而本发明增加了分离卷积,分离卷积在增加网络深度和保证特征提取能力的同时,减少了卷积参数和计算量。此外为了扩展卷积视野,考虑全局信息,设计了扩张卷积模块。残差模块的数量为3,残差模块1~3的网络结构一致,其中卷积核数量分别为64、128、256,卷积核数量以n表示。每个残差模块都包括标准卷积模块、分离残差模块和扩张卷积模块,这三个模块可构建如下:

①构建标准卷积模块:

设计标准卷积:为了保留更多的特征信息、增加网络深度和可学习性,标准卷积块由2个标准卷积组成。第一个标准卷积在卷积之后输入特征的尺寸降低为原来的1/2,第二个卷积运算之后特征维度不变。其中卷积核数量为n,卷积核大小为3×3,步长分别为2、1。

构建标准卷积模块a-1:用n个3×3的标准卷积核与输入特征图做卷积,步长为2,再经过BN层和Re LU激活,输出特征尺寸为输入的1/2。

构建标准卷积模块a-2:用n个3×3的卷积核与标准卷积模块a的特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

构建标准卷积块:级联标准卷积模块a-1和标准卷积模块a-2得到标准卷积块,输出特征尺寸为输入的1/2。

②构建分离残差模块

设计分离卷积:在增加网络深度的同时,网络变得复杂,计算量也增加。分解卷积能够将一个二维的卷积核压缩成两个一维的卷积核,极大地降低了特征冗余度,从而加快了网络运算速度,但频繁地使用分解卷积容易造成特征压缩过度,破坏了特征的连续性。分离卷积数量为4,其中卷积核数量为n,卷积核大小分别为3×1,1×3、3×1,1×3,步长均为1。

构建分离残差a-1:用n个3×1的卷积核与标准卷积块的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-2:用n个1×3的卷积核与分离残差a-1的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-3:用n个3×1的卷积核与分离残差a-2的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

构建分离残差a-4:用n个1×3的卷积核与分离残差a-3的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图;

最后将标准卷积块的输出特征图与分离残差a-4的输出做加法,得到分离残差模块的输出。

③构建扩张残差模块

设计扩张卷积层:扩张卷积具有扩大网络局部感受野的优势,对其进行优化设计可实现对大目标位置信息的补偿。虽然堆叠扩张卷积层以及使用大扩张率增大了局部感受野,但引入了噪声,而且感受野太大使得网络忽略了道路的局部细节信息,造成分割不连续甚至漏分割。更为重要的是,为了消除扩张卷积“网格效应”对特征补偿作用的消极影响,优化了扩张卷积的扩张率,使其满足锯齿形分布。基于上述考虑,本发明设置扩张卷积层数量为2,扩张率分别为3、5,卷积核数量为n,卷积核大小均为3×3,步长均为1;

构建扩张残差模块a-1:用n个3×3的标准卷积核与分离残差模块的输出特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

构建扩张残差模块a-2:用n个3×3的卷积核与扩张残差模块a-1的特征图做卷积,步长为1,再经过BN层和Re LU激活,得到维度不变的特征图。

最后将分离残差模块的输出特征图与扩张残差模块a-2的输出做加法,得到扩张残差模块的输出。

④构建残差模块1:

用n=64的标准卷积模块与初始化卷积层的输出做卷积,得到维度为120×160×64的特征图a2_1;

用n=64的分离残差模块与标准卷积模块的输出a2_1做卷积,得到维度为120×160×64的特征图a2_2;

用n=64的扩张残差模块与分离残差模块的输出a2_2做卷积,得到维度为120×160×64的特征图a2;

⑤构建残差模块2:

用n=128的标准卷积模块与残差模块1的输出做卷积,得到维度为60×80×128的特征图a3_1;

用n=128的分离残差模块与标准卷积模块的输出a3_1做卷积,得到维度为60×80×128的特征图a3_2;

用n=128的扩张残差模块与分离残差模块的输出a3_2做卷积,得到维度为60×80×128的特征图a3;

⑥构建残差模块3:

用n=256的标准卷积模块与残差模块2的输出做卷积,得到维度为30×40×256的特征图a4_1;

用n=256的分离残差模块与标准卷积模块的输出a4_1做卷积,得到维度为30×40×256的特征图a4_2;

用n=256的扩张残差模块与分离残差模块的输出a4_2做卷积,得到维度为30×40×256的特征图a4;

(3)构建EVI支路编码结构:

用初始化卷积层与维度为480×640×3的EVI输入样本做卷积,得到维度为240×320×16的特征图a1。初始化卷积层的输出经过残差模块1,得到维度为120×160×64的特征图a2。残差模块1的输出经过残差模块2,得到维度为60×80×128的特征图a3。残差模块2的输出经过残差模块3,得到维度为30×40×256的特征图a4。

子步骤2:设计RGB支路编码结构,具体包括:

(1)设计初始化卷积层,与子步骤1的(1)一致。

(2)设计残差模块。与子步骤1的(2)一致。

(3)构建RGB支路编码结构

用初始化卷积层与维度为480×640×3的RGB输入样本做卷积,得到维度为240×320×16的特征图b1。将EVI支路所得的a1与b1做加法后经过残差模块1,得到维度为120×160×64的特征图b2。将EVI支路所得的a2与b2做加法后经过残差模块2,得到维度为60×80×128的特征图b3。将EVI支路所得的a3与b3做加法后经过残差模块3,得到维度为30×40×256的特征图b4。

步骤3:构建分层特征融合解码结构。在步骤1和2中,因卷积而使得特征尺寸降低的操作出现4次,使得最后编码器输出的特征图为输入的1/16。为了使特征图恢复到原始图片大小,同时避免引入大量噪声,采用二次插值与卷积级联组成上采样层,用于恢复分辨率和密集预测。并且为了弥补在下采样过程中丢失的空间特征信息和边缘细节特征信息,引入RGB与EVI在编码器阶段的融合特征,与解码特征二次融合,设计流程图如图1所示。包括以下子步骤:

子步骤1:设计标准卷积层。标准卷积数量为4,其中卷积核数量分别为128、64、16、class_num,卷积核大小均为3×3,步长均为1。

子步骤2:构建上采样层1。编码器的输出特征b4经过双线性插值运算得到维度为60×80×256的特征图d1。标准卷积层与双线性插值的输出d1做卷积,得到维度为60×80×128的特征图;

子步骤3:构建上采样层2。上采样层1输出的特征先与b3做拼接操作得到60×80×256的特征图,再经过双线性插值运算得到维度为120×160×256的特征图d2。标准卷积层与双线性插值的输出d2做卷积,得到维度为120×160×64的特征图;

子步骤4:构建上采样层3。上采样层2输出的特征先与b2做拼接操作得到120×160×128的特征图,再经过双线性插值运算得到维度为240×320×128的特征图d3。标准卷积层与双线性插值的输出d3做卷积,得到维度为240×320×16的特征图;

子步骤5:构建上采样层4。上采样层3输出的特征先与b1做拼接操作得到240×320×32的特征图,再经过双线性插值运算得到维度为480×640×32的特征图d4。标准卷积层与双线性插值的输出d4做卷积,得到维度为480×640×nums_class的特征图,其中nums_class表示语义分割的目标类别;

步骤4:训练设计的多光谱图像融合卷积神经网络,通过随机梯度下降法迭代并优化网络参数。在训练过程中,将样本集(x,y)输入网络,其中x为输入图像,y为对应的标签。通过网络逐层运算得到实际输出,使用交叉熵损失函数来衡量理想输出y与实际输出p之间的误差。数据集中各类样本量不同,各类所占的像素量也不同。为了在样本数量不均衡的数据集上取得更好的效果,将损失以不同的权重分配给不同的类别,得到加权交叉熵损失函数:

式中(1)中N表示每幅图像的像素个数,C表示样本中语义类别的数量。y

式(2)中M为数据集训练集中所有像素的总个数,y

TP、FP、FN分别表示真阳性、假阳性、假阴性的总数。这里C代表数据集中的类别数。

当选定损失函数、优化方法和性能评估指标之后,使用深度学习框架训练设计好的卷积神经网络。为了使训练结果更准确,正式训练前先进行预训练,然后再对预训练得到的参数进行微调,训练流程如图3所示,具体包括以下子步骤:

子步骤1:选择与自动驾驶相关的多模态数据集,如ApolloScape、Cityscapes,将样本尺寸调整为480×640像素并记为D

子步骤2:使用步骤(1)中所建立的数据集D

步骤5:使用多光谱图像融合卷积神经网络进行非结构化场景分割,将获取的非结构化场景样本尺寸调整为480×640像素并将其输入到已训练完成的多光谱图像融合卷积神经网络中,得到森林非结构化场景的语义分割结果。

技术分类

06120114725079