基于空间占用概率特征的跨维度遥感数据目标识别方法

文档序号:26231686发布日期:2021-08-10 16:32阅读:243来源:国知局

本发明涉及遥感数据目标识别方法,属于遥感图像目标识别技术领域。



背景技术:

长期以来,基于遥感图像的地物信息提取和识别技术在民生和国防领域有着广泛的应用需求。随着遥感领域的技术发展及应用需求提高,相较于传统可见光波段的相机所获取的二维图像数据,激光雷达等遥感扫描设备所获取的三维点云数据在立体空间中对遥感目标能够进行更加完善的三维描述,不管在民事还是军事领域都具有更重大的意义。因此,为充分利用激光雷达等设备及传统可见光波段的相机所获得的全部地物信息,需要将同一地物目标的二维图像数据与三维点云数据进行关联。由于二维图像和三维点云具有不同的维度特征,导致目前并没有有效的跨维度特征描述方法用于实现两者的关联,因此对上述跨维度遥感数据进行同类特征提取并依据该特征进行跨维度目标识别具有重要意义。



技术实现要素:

本发明是为了解决目前没有一种有效的跨维度特征描述方法能够实现遥感数据中二维图像数据与三维点云数据的关联的问题。

基于空间占用概率特征的跨维度遥感数据目标识别方法,包括以下步骤:

s1:对二维图像遥感数据进行预处理:将二维图像遥感数据输入实例分割网络,并依据实例分割结果对遥感数据进行目标提取;

s2:对三维点云遥感数据进行预处理:将三维点云输入点云目标检测网络,依据目标检测结果对三维点云遥感数据进行目标分割;

s3:将s1处理后的图像输入二维图像的空间占用概率特征的深度学习网络,提取二维图像的空间占用概率ftest-2d;

s4:将s2处理后的三维点云输入三维点云的空间占用概率特征的深度学习网络;提取三维点云的空间占用概率ftest-3d;

s5:将s3和s4中得到的空间占用概率特征ftest-2d和ftest-3d输入分类器进行目标识别,实现二维图像数据与三维点云数据的关联。

进一步地,s1所述的实例分割网络采用panet。

进一步地,s2所述的点云目标检测网络采用3d-bonet。

进一步地,s3所述的二维图像的空间占用概率特征的深度学习网络为occupancynetwork-2d网络,即onet-2d,其训练过程包括以下步骤:

s301、构建二维图像数据集mpre-2d,二维图像数据集mpre-2d包括一个二维图像训练数据集mtr-2d和一个二维图像测试数据集mtest-2d;

s302、训练onet-2d:

将二维图像训练数据集mtr-2d中的二维图像数据输入onet-2d,onet-2d首先采用带有超强通道注意力模块eca的resnet18残差网络对输入的二维图像数据进行特征提取,得到1*256的特征f1;

其次,随机生成一个单位体积的采样点云立方体,将点云立方体中每个点的x、y、z坐标输入一个三层的mlp多层神经网络,并转置,得到256*n的特征f2;

然后将f1和f2分别输入至少一个条件批量标准化模块,所述的条件批量标准化模块即cbn模块;具体过程包括以下步骤:

将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从三维点云中提取到的特征f2进行.*运算,得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络后得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid操作得到最终的n*256的特征f7;

当条件批量标准化模块大于一个时,将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从前一个条件批量标准化模块得到的特征f7进行.*运算,得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid得到新的n*256的特征f7;

最后,将f7输入mlp多层神经网络即可得到n*3的点云形式的预测结果;将训练集中的根据地物目标实际尺寸绘制的三维模型进行处理,得到真值点云,将真值点云与预测结果进行比对并计算loss值;

经过迭代最终完成训练得到训练好的onet-2d。

进一步地,构建二维图像数据集mpre-2d的过程包括以下步骤:

将获得的二维图像遥感数据输入实例分割网络,并依据实例分割结果对遥感数据进行目标提取,得到每幅图中只有一个对象的二维图像数据集mpre-2d,将二维图像数据集mpre-2d分为二维图像训练数据集mtr-2d和二维图像测试数据集mtest-2d;训练数据集mtr-2d中包含地物目标的二维图像以及对应的根据该地物目标实际尺寸绘制的三维模型,测试数据集mtest-2d中只包含地物目标的二维图像。

进一步地,s4所述的三维点云的空间占用概率特征的深度学习网络为occupancynetwork-3d网络,即onet-3d,其训练过程包括以下步骤:

s401、构建三维点云数据集mpre-3d,三维点云数据集mpre-3d包括一个三维点云训练数据集mtr-3d和一个三维点云测试数据集mtest-3d;

s402、训练onet-3d:

将三维点云训练数据集mtr-3d中的三维点云数据输入onet-3d;onet-3d首先采用pointnet点云特征提取网络对输入的三维点云数据进行特征提取,得到得到1*256的特征f1;

其次,随机生成一个单位体积的采样点云立方体,将点云立方体中每个点的x、y、z坐标输入一个三层的mlp多层神经网络,并转置,得到256*n的特征f2;

然后将f1和f2分别输入至少一个条件批量标准化模块,所述的条件批量标准化模块即cbn模块;具体过程包括以下步骤:

将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从三维点云中提取到的特征f2进行.*运算,得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid操作得到最终的n*256的特征f7;

当条件批量标准化模块大于一个时,将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从前一个条件批量标准化模块得到的特征f7进行.*运算,得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid得到新的n*256的特征f7;

最后,将f7输入mlp多层神经网络即可得到n*3的点云形式的预测结果;将训练集中的根据该地物目标实际尺寸绘制的三维模型进行处理,得到真值点云,将真值点云与预测结果进行比对得到loss值;

经过迭代最终完成训练得到训练好的onet-3d。

进一步地,occupancynetwork-3d网络采用pointnet点云特征提取网络对输入的三维点云数据进行特征提取的过程包括以下步骤:

将输入网络的n*3真实点云数据通过inputtransform模块,然后再通过一个二层的mlp多层神经网络,得到n*64的特征f'1;

将特征f'1输入featuretransform模块,然后再通过一个三层的mlp多层神经网络,得到n*1024的特征f'2;

对n*1024的特征f'2进行最大池化操作,得到1*1024的特征f'3,再通过一个二层的mlp多层神经网络,得到1*256的特征f1。

进一步地,构建三维点云数据集mpre-3d的过程包括以下步骤:

将获得的三维点云遥感数据输入点云目标检测网络,依据目标检测结果对三维点云遥感数据进行目标分割,得到每个文件中只包含一个对象的三维点云数据集mpre-3d,三维点云数据集mpre-3d分为三维点云训练数据集mtr-3d和三维点云测试数据集mtest-3d。训练数据集mtr-3d中包含地物目标的三维点云以及对应的根据该地物目标实际尺寸绘制的三维模型,测试数据集mtest-3d中只包含地物目标的三维点云。

进一步地,s5所述的分类器采用pointnet++点云分类网络,采用pointnet++点云分类网络进行目标识别的过程包括以下步骤:

(1)、将s3和s4得到的数组形式的空间占用概率转换成点云形式,并设置点云中点的数量为定值m,若点云中的点数>m则进行下采样操作,若点云中的点数<m则进行上采样操作。

(2)、将上述预处理后的点云数据输入到pointnet++点云分类网络中;依据最终提取到的1*k的特征进行分类,即实现了二维图像数据与三维点云数据的关联。

进一步地,所述的分类器的训练过程包括以下步骤:

s501、提取二维图像数据集mpre-2d中的二维图像测试数据集mtest-2d,以及三维点云数据集mpre-3d中的三维点云测试数据集mtest-3d;

s502、将二维图像测试数据集mtest-2d输入到onet-2d中,提取二维图像数据的空间占用概率特征,得到数组形式的空间占用概率ftest-2d。

将三维点云测试数据集mtest-3d输入到onet-3d中,提取三维点云数据的空间占用概率特征,得到数组形式的空间占用概率ftest-3d;

s503、将二维图像中提取到的空间占用概率特征对应的点云作为输入数据输入到pointnet++网络中,并将提取到的特征用作类特征;将三维点云中提取到的空间占用概率点云作为目标数据输入到pointnet++网络中,将提取到的特征与类特征进行匹配,并计算准确率,反复迭代实现分类器的训练;

或者,

将三维点云中提取到的空间占用概率特征对应的点云作为输入数据输入到pointnet++网络中,并将提取到的特征用作类特征;将二维图像中提取到的空间占用概率点云作为目标数据输入到pointnet++网络中,将提取到的特征与类特征进行匹配,并计算准确率,反复迭代实现分类器的训练。

有益效果:

本发明首先训练二维图像的空间占用概率特征提取网络和三维点云的空间占用概率特征提取网络,然后对遥感数据中的二维图像数据和三维点云数据进行同类特征提取,即空间占用概率特征,最终基于空间占用概率特征实现遥感数据中同一地物目标的二维和三维数据之间的跨维度目标识别,即实现同一地物目标的二维图像数据与三维点云数据的关联。本发明可以很好的解决目前不能对二维图像数据与三维点云数据进行有效关联的问题,关联准确率可以达到80%。

附图说明

图1为具体实施方式一的流程示意图;

图2是二维图像实例分割方法panet的示意图;

图3是三维点云目标检测方法3d-bonet的示意图;

图4是基于二维图像的空间占用概率特征提取方法occupancynetwork-2d的网络示意图;

图5是基于三维点云的空间占用概率特征提取方法occupancynetwork-3d的网络示意图;

图6是点云分类网络pointnet++的网络示意图。

具体实施方式

具体实施方式一:结合图1说明本实施方式,

本实施方式所述的基于空间占用概率特征的跨维度遥感数据目标识别方法,包括以下步骤:

步骤一:对二维图像遥感数据进行预处理。

首先对获得的二维图像遥感数据进行预处理:将二维图像遥感数据输入实例分割网络,并依据实例分割结果对遥感数据进行目标提取,得到每幅图中只有一栋楼的二维图像数据集mpre-2d,其中又分为二维图像训练数据集mtr-2d和二维图像测试数据集mtest-2d。训练数据集mtr-2d中包含地物目标的二维图像以及对应的根据该建筑物实际尺寸绘制的三维模型,测试数据集mtest-2d中只包含地物目标的二维图像。

步骤二:对三维点云遥感数据进行预处理。

对通过激光雷达等途径获得的三维点云遥感数据进行预处理:将三维点云输入点云目标检测网络,依据目标检测结果对三维点云遥感数据进行目标分割,得到每个文件中只包含一栋楼的点云数据的三维点云数据集mpre-3d,其中又分为三维点云训练数据集mtr-3d和三维点云测试数据集mtest-3d。训练数据集mtr-3d中包含地物目标的三维点云以及对应的根据该建筑物实际尺寸绘制的三维模型,测试数据集mtest-3d中只包含地物目标的三维点云。

步骤三:训练二维图像的空间占用概率特征提取网络。

将二维图像训练数据集mtr-2d中的图像输入深度学习网络中,训练用于提取二维图像的空间占用概率特征的深度学习网络;

所述的二维图像训练数据集的训练数据包括建筑物的真实二维遥感图像以及根据该建筑物实际尺寸绘制的三维仿真模型。

步骤四:训练三维点云的空间占用概率特征提取网络。

将三维点云训练数据集mtr-3d中的点云文件输入深度学习网络中,训练用于提取三维点云的空间占用概率特征的深度学习网络;

所述的三维点云训练数据集的训练数据包括建筑物的真实三维点云数据以及根据该建筑物实际尺寸绘制的三维仿真模型;

步骤五:基于二维图像的空间占用概率特征提取。

将二维图像测试数据集mtest-2d输入到步骤三中训练好的网络中,提取二维图像数据的空间占用概率特征,得到数组形式的空间占用概率ftest-2d。

步骤六:基于三维点云的空间占用概率特征提取。

将三维点云测试数据集mtest-3d输入到步骤四中训练好的网络中,提取三维点云数据的空间占用概率特征,得到数组形式的空间占用概率ftest-3d。

步骤七:跨维度目标识别。将步骤五和步骤六中得到的来自不同维度遥感数据的空间占用概率特征ftest-2d和ftest-3d输入分类器进行目标识别。

实际上,遥感数据预处理环节包括步骤一和步骤二两步:步骤一为二维图像遥感数据的预处理步骤;步骤二为三维点云遥感数据的预处理步骤。

步骤一中采用panet方法对二维图像的实例进行分割。如图2所示,panet方法的结构主要分为特征金字塔模块、动态特征池化模块和全连接层模块,以二维图像数据作为输入进行实例分割。实例分割网络使用的损失函数l包括分类误差、检测误差和分割误差:

l=lcls+lbox+lmask

其中,对于每一个roi,mask分支定义一个k*m*2维的矩阵表示k个不同的分类对于每一个m*m的区域,对于每一个类都有一个。对于每一个像素,都是用sigmod函数进行求相对熵,得到平均相对熵误差lmask。对于每一个roi,如果检测得到roi属于哪一个分类,就只使用哪一个分支的相对熵误差作为误差值进行计算。

步骤二中采用3d-bonet方法对三维点云进行目标检测。如图3所示,3d-bonet为对三维点云数据进行实例分割提供了一个新框架,以三维点云为输入进行目标检测。3d-bonet的损失函数定义为l:

l=lsem+lbbox+lbbs+lpmask

其中

前期网络训练包括步骤三和步骤四两步:步骤三为训练基于二维图像的空间占用概率特征提取网络的过程;步骤四为训练基于三维点云的空间占用概率特征提取网络的过程。

步骤三中采用occupancynetwork-2d(onet-2d)方法,使用步骤一中得到的训练数据mtr-2d来训练基于二维图像的空间占用概率特征提取网络,如图4所示。空间占用概率为理想情况下每个点是否为模型内的点的概率,用3d物体的占用函数fθ(pij,xi):r3→{0,1}来表示,并通过onet-2d网络来得到这个3d函数。该神经网络给每个位置p分配一个在0到1之间的占用概率,相当于一个用于二分类的神经网络,而本发明关注的是对象表面的决策边界。onet-2d参数训练的具体步骤为:

首先,将训练集中的二维图像数据输入网络,使用带有超强通道注意力模块eca的resnet18残差网络对输入的二维图像数据进行特征提取,得到1*256的特征f1。超强通道注意力模块eca是一种避免了维度缩减、并有效捕获了跨通道交互的模块:将resnet18残差网络提取到的h*w*c的特征在不降低维度的情况下进行逐通道全局平均池化,然后通过大小为k1的快速一维卷积实现每个通道及其k1个近邻的跨通道交互,其中内核大小k1代表本地跨通道交互的覆盖范围,即有多少个相近邻参与一个通道的注意力预测,输出同样为h*w*c的特征。

其次,随机生成一个单位体积的采样点云立方体(这一步首先随机生成一个采样点云立方体,然后通过后续的训练步骤为每个采样点配置空间占用概率,逐渐将其训练为“三维仿真模型”的形状),将点云立方体中每个点的x、y、z坐标(n*3)输入一个三层的mlp多层神经网络(3→64→256),并转置,得到256*n的特征f2。

然后将上述两个特征分别输入至少一个条件批量标准化模块(cbn模块),优选为5个cbn。条件批量标准化模块(cbn模块):将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从三维点云中提取到的特征f2进行.*运算(两个矩阵对应元素相乘),得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid操作得到最终的n*256的特征f7;

当条件批量标准化模块大于一个时,将从二维图像提取到的1*256的特征f1输入mlp多层神经网络,得到n*256的特征f3,并与从前一个条件批量标准化模块得到的特征f7进行.*运算,得到特征f4,再将f4与二维图像特征f1通过mlp多层神经网络得到n*256的特征f3进行相加运算,得到n*256的特征f5;再将f5进行最大池化操作,得到1*256的特征f6,再进行卷积操作和sigmoid得到新的n*256的特征f7;

最后,将f7输入mlp多层神经网络即可得到n*3的点云形式的预测结果。将训练集中的根据该建筑物实际尺寸绘制的三维模型进行处理,得到该建筑物的真值点云,与预测结果进行比对即可得到loss值。

为了学习神经网络的参数,考虑在生成的单位体积点云立方体中随机采样点,对于第i个样本,采样k个点,然后评估这些位置的小批量损失lb(θ)如下所示:

其中fθ(pij,xi)是空间占用概率函数,以xi和pij作为输入,通过设定的阈值,判断第i个样本的第j个采样点是否为模型内的点,xi是第i个样本的观测值,pij是第i个样本的第j个采样点为模型内的点的概率,oij是点云的真实位置,l是计算交叉熵损失。

步骤四中采用occupancynetwork-3d(onet-3d)方法,使用步骤二中得到的训练数据mtr-3d来训练基于三维点云的空间占用概率特征提取网络,如图5所示。步骤四大体上的训练步骤与步骤三相同,不同之处在于,由于网络输入由二维图像变为三维点云,因此输入编码部分发生了变化:在步骤四中采用pointnet点云特征提取方法:

首先,将输入网络的n*3真实点云数据通过inputtransform模块,然后再通过一个二层的mlp多层神经网络(3→64),得到n*64的特征f'1。

然后,将特征f'1输入featuretransform模块,然后再通过一个三层的mlp多层神经网络(64→128→1024),得到n*1024的特征f'2。inputtransform模块和featuretransform模块的结构如图5所示,先将输入通过一个t-net网络得到一个3*3或64*64的矩阵,然后与输入做矩阵乘法,得到n*3或n*64的特征,其功能均为加强特征提取能力。对n*1024的特征f'2进行最大池化操作,得到1*1024的特征f'3,再通过一个二层的mlp多层神经网络(512→256),得到1*256的特征。

步骤五和步骤六分别使用步骤三和步骤四中训练好的occupancynetwork-2d和occupancynetwork-3d网络对不同维度的遥感数据进行空间占用概率特征提取,以二维图像遥感数据和三维点云遥感数据分别作为输入,输出数组形式的二维图像的空间占用概率特征和数组形式的三维点云的空间占用概率特征。

步骤七的分类器采用pointnet++点云分类网络实现:

(1)、首先对待分类点云进行预处理。将步骤五和步骤六中得到的数组形式的不同维度数据的空间占用概率转换成点云形式,并设置点云中点的数量为定值m,若点云中的点数>m则进行下采样操作,若点云中的点数<m则进行上采样操作(将点云中的点单纯进行复制,直至达到目标数量m,对点云信息无影响)。

(2)、将上述预处理后的点云数据输入到图6所示的点云分类网络中。点云分类网络结构与步骤四中的点云编码器结构相同,依据最终提取到的1*k的特征进行分类,即实现了二维图像数据与三维点云数据的关联。

该过程将将二维图像中提取到的空间占用概率特征对应的点云作为输入数据输入到点云分类网络pointnet++网络中,并将提取到的特征用作类特征;将三维点云中提取到的空间占用概率点云作为目标数据输入到pointnet++网络中,将提取到的特征与类特征进行匹配,并计算准确率,反复迭代实现分类器的训练。(这一步骤中二维图像中提取到的空间占用概率特征和三维点云中提取到的空间占用概率特征位置可互换,即均可作为输入数据和目标数据);

分类器中使用的pointnet++点云特征提取网络对输入的三维点云数据进行特征提取的过程包括以下步骤:

将输入网络的n*3点云数据通过inputtransform模块,然后再通过一个二层的mlp多层神经网络,得到n*64的特征f”1;

将特征f”1输入featuretransform模块,然后再通过一个三层的mlp多层神经网络,得到n*1024的特征f”2;

对n*1024的特征f”2进行最大池化操作,得到1*1024的特征f”3,再通过一个三层的mlp多层神经网络,得到1*k的特征f”4;k为点云分类的类别数。

上述基于pointnet++点云分类网络的分类器通过对不同维度遥感数据进行跨维度特征提取得到的点云形式的空间占用概率进行特征提取,而后通过特征相似度排序实现遥感数据中同一地物不同维度数据的识别。在实际使用时,将二维图像数据经过步骤一的预处理,然后输入二维图像的空间占用概率特征提取网络提取二维图像的空间占用概率;同时将三维点云数据经过步骤二的预处理,然后输入三维点云的空间占用概率特征提取网络提取三维点云的空间占用概率;然后将二维图像的空间占用概率和三维点云的空间占用概率转换成点云形式,送入分类器进行分类,实现二维图像数据与三维点云数据的关联。

本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!
1