一种基于特征复用的点云卷积神经网络的制作方法

文档序号:21464710发布日期:2020-07-14 16:49阅读:161来源:国知局
一种基于特征复用的点云卷积神经网络的制作方法
本发明涉及3d点云数据处理
技术领域
,具体涉及一种基于特征复用的点云卷积神经网络。
背景技术
:随着自动驾驶领域和高精度地图定位技术的迅猛发展,高效、准确地处理3d点云数据的技术变得越来越重要。一般而言,点云数据可通过cad模型转化得到,也可直接通过lidar传感器或rgbd相机获取点云。由此衍生出,如何在3d点云的处理上达到对2d图像的效果,这成为一个非常值得探究的问题。3d点云处理技术面临的挑战主要包括以下方面:1)非结构化数据,没有规范的网格,难以进行卷积。点云是分布在空间中的三维坐标点,因此没有结构化的网格来实现有效的卷积,在点云领域至今没有规范的卷积范式;2)点云处理过程中的置换不变性要求。点云本质上是一长串空间中的点(n×3矩阵,其中n是点数)。在几何上,点的顺序不影响它在底层矩阵结构中的表示方式,相同的点云可以由两个完全不同的矩阵表示。3)采集的原始点云特点。通常环境噪声会造成采集到的点云数据有很多干扰点,也会因为物体之间存在遮挡、光照条件不充足导致点云采集缺失,而且采集点云会因为距离的远近造成近密远疏的点云分布,增加了对点云处理技术的要求。在如何使用深度学习技术对点云处理问题进行探究的过程中,斯坦福大学提出的pointnet和pointnet++首次实现了直接对原始点云有效的卷积处理,并达到了比较理想的实验结果。pointnet的主要思想是三维物体分类任务的分类数目是有限的,而空间中的点只有xyz三维的信息,因此原始的信息不能满足分类个数的要求,需要对原始点云的特征进行升维操作。通过卷积的方式将原始点云特征升到一个非常冗余的特征空间,比如1024维特征空间,在这个空间中点云的特征是冗余的,随后再对这样一个空间进行下采样,采样到要求分类的物体数量,比如需要分成30类物体,就通过下采样将1024维特征降到30维,这样就能够满足分类任务的要求。pointnet的局限性:一是忽略了点云的局部信息。pointnet是直接对全部点云进行特征提取,再做maxpool(使用maxpool主要是为了解决点云输入的置换不变性要求,因为maxpool是一种对称函数,而对称函数对数据的输入顺序没有要求,同样的数据经过对称函数都能得到同样的输出)操作实现全局特征的下采样,而这样的操作就过滤掉了点云的局部信息,比如边缘轮廓信息等,从而难以实现与物体模型比较相似的物体的区分。二是没有点云数据的近密远疏的密度分布特征,对于稀疏点云的处理效果不好,对复杂的场景点云没有泛化能力。pointnet++的主要思想是在pointnet基础上增加了点云局部特征的提取模块,并考虑了点云的密度分布不均匀的问题,采用了不同尺度的采样方式。pointnet++的局限性:一是对局部特征的提取仅仅通过简单的多层感知机,没有在最开始阶段对点云特征进行高效、完整的提取,点云的卷积方式需要进一步改进。二是对点云密度不均匀问题的解决方法过于简单,只是通过不同尺度的特征拼接在一起,而忽视了对于点云中同一个点在不同尺度中其所代表的特征,表达的信息内容是不同的。技术实现要素:本发明的主要目的在于提出一种基于特征复用的点云卷积神经网络,通过采用多个特征复用模块重复利用低层级特征,并以叠加复用的方式对不同的特征层进行旁路加强,从而有效地提取点云特征,以解决现有的点云分类方式所存在的随着卷积层加深,低层级特征信息逐渐缺失导致的网络分类准确度下降问题;以及,随着卷积层数增加而出现的梯度弥散问题。本发明为达上述目的提出以下技术方案:一种基于特征复用的点云卷积神经网络,包括w个并行的点云特征提取单元、一池化层和若干全连接层,w个并行的点云特征提取单元的输入是w组原始点云、输出共同连接至所述池化层的输入端,若干全连接层串联,所述池化层的输出端连接于第一个全连接层的输入端;在每个点云特征提取单元中:包含n个采样模块和n-1个特征复用模块,n≥2,其中,第1个采样模块之后串联第2个采样模块,从第2个采样模块开始的后n-1个采样模块与所述n-1个特征复用模块按先后顺序交替串联,所述先后顺序是指采样模块在前、特征复用模块在后;各采样模块用于对各自的输入以采样的方式进行特征提取,各特征复用模块用于对各自的输入进行特征叠加复用,其中,第一个采样模块的输入为原始点云,第二个采样模块的输入为第一个采样模块的输出,后面n-2个采样模块的输入分别为与之相邻的前一个特征复用模块的输出;每个特征复用模块的输入包含该特征复用模块之前的所有采样模块的输出;所述池化层对w个点云特征提取单元最终输出的w组特征按预设条件进行过滤;所述若干全连接层对所述池化层过滤后所筛选出的特征进行连接,将维度降至与所要分类的物体数目相等的特征维度数,最终输出物体分类结果。本发明上述技术方案与现有技术相比,具备如下有益效果:1)重复利用低层级特征,能够有效减少因网络层级过多导致的信息丢失问题;2)特征复用模块能够将点云特征不断在网络中叠加,从而实现最佳的网络性能,并且能够针对不同的场景、点云数量的多少设置不同的特征复用模块数量。与现有的pointnet和pointnet++点云处理网络架构相比,本发明通过对不同尺度特征的重复利用、叠加复用,一方面增强了特征在卷积层之间传播的信息流,能够有效满足因点云密度不均匀带来的网络结构需要满足密度自适应的要求;另一方面能够缓解因为卷积层增多而导致的梯度弥散问题,提升利用该点云卷积神经网络进行物体分类的准确率。附图说明图1是本发明具体例提供的一种基于特征复用的点云卷积神经网络的原理框图;图2是一个点云特征提取单元的示例性原理框图。具体实施方式下面结合附图和具体的实施方式对本发明作进一步说明。本发明的具体实施方式提供一种基于特征复用的点云卷积神经网络,如图1所示,该点云卷积神经网络包括w个并行的点云特征提取单元、一池化层和若干全连接层,w个并行的点云特征提取单元的输入是w组原始点云(即原始点云1~原始点云w)、输出共同连接至所述池化层的输入端,若干全连接层串联,所述池化层的输出端连接于第一个全连接层的输入端;w的取值可根据分类场景和需求来设置,通常w≥2。全连接层的数量k优选为2或3,当然也可以是其它值,本发明对此不作限制,只要能将特征降到与分类物体数目相等的维度即可。例如,为了实现分类任务要求,需要将512维特征降到与分类数相同的维度,如需进行32维分类,则需要降至32维,可据此来设置全连接层的层数和每层的输入输出维度。此外,为了防止网络过拟合,在每一个全连接层之后均可进行dropout操作,在每次训练的时候,以一定的概率比如50%丢弃神经元(特征点)。在每个点云特征提取单元中:包含n个采样模块和n-1个特征复用模块,n≥2。其中,第1个采样模块之后串联第2个采样模块,从第2个采样模块开始的后n-1个采样模块与所述n-1个特征复用模块按先后顺序交替串联,所述先后顺序是指采样模块在前、特征复用模块在后;各采样模块用于对各自的输入以采样的方式进行特征提取,各特征复用模块用于对各自的输入进行特征叠加复用,其中,第一个采样模块的输入为原始点云,第二个采样模块的输入为第一个采样模块的输出,后面n-2个采样模块的输入分别为与之相邻的前一个特征复用模块的输出;每个特征复用模块的输入包含该特征复用模块之前的所有采样模块的输出。由于每个特征复用模块进行特征复用时的输入来源于其前面的所有特征复用模块的输出,考虑到特征维度不能增加太快,因为这会造成整个网络的模型复杂度过高,导致网络训练非常耗时,所以在每次特征复用时都先进行特征降维(即每个特征复用模块之前连接采样模块进行特征的采样),再进行特征复用,尽量减小因为特征复用带来的负面影响。应当理解的是,所述的“特征”均是指特征点集,并非单独的一个特征点。在一种具体的实施例中,所述采样模块包含依次串联的采样层(samplinglayer)、划分层(groupinglayer)、pointnet层。第一个采样模块的采样层是对原始点云进行采样,提取局部邻域特征,后面的采样采样层是对所接收的特征进行随机采样。采样模块的具体过程:1)随机选一个点,然后选择离这个点距离最远的点加入起点,然后继续迭代,直到选出需要的个数为止,实现采样;2)划分层将采集的点划分为多个子集,用ballquery分组算法,给定中心点,把给定半径内的点都包括进来,同时给定邻居点个数,ballquery保证了一个固定的区域尺寸,适合需要局部特征的任务;3)pointnet层对每个子集进行特征提取,局部区域的坐标首先被转换到相对于中点的坐标系中,随后用pointnet作为局部特征学习器,从局部点集中抽取特征并把特征组合成更高层表示。由于samplinglayer、groupinglayer、pointnet层三者均是本领域现有的网络层,更多的不再赘述。如图2所示为一种示例性的点云特征提取单元的原理框图,在该示例中,n=5,即含有5个采样模块和4个特征复用模块,用该示例来说明工作流程:第一个采样模块即采样模块1接收一组原始点云并依次经过samplinglayer、groupinglayer、pointnet层之后得到局部邻域特征f1,接着将特征f1输入至采样模块2进行随机采样,输出特征f2,接下来将前面得到的特征f1、f2一同输入到特征复用模块1进行叠加复用,输出包含特征f1和f2信息的特征g1;在进行下一次特征复用前先将特征g1输入采样模块3进行降维,输出特征f3;再将前面得到的特征f1、f2和f3一同输入特征复用模块2进行叠加复用,输出特征g2;同样地先通过采样模块4对g2进行降维,得到特征f4之后,再利用特征复用模块3对f1至f4进行叠加复用,并输出特征g3;采样模块5对g3进行降维,得到特征f5之后,再通过特征复用模块4对f1至f5进行叠加复用,输出特征g4,即为该示例性的特征提取单元最终输出的特征,记为f。当n为其它值时,以此类推即可。这样一来,w组原始点云输入本发明的点云卷积神经网络,分别经过w个并行的点云特征提取单元之后,得到对应的w组特征f(不同组原始点云的f基本是不同的)。将得到的w组特征f一同输入到所述池化层进行过滤,筛选所需特征,池化操作例如可以是最大池化操作,即设置一个特征维度阈值,将大于该阈值的特征f筛选出来,最后输入全连接层1~k进行特征连接,将维度降至与所要分类的物体数目相等的特征维度数,最终输出物体分类结果。每个特征复用模块包含依次串联的一batchnormal层、一激活函数层、一卷积层和一最大池化层,其中,所述卷积层用于对特征复用模块输入的特征进行维度调整后拼接,并通过最大池化层进行输出,实现对输入特征的叠加,从而达到不同层级特征的复用和旁路加强。每个特征复用模块的卷积层的通道数与输入的特征数一致。下面通过一个例子来说明本发明提供的点云卷积神经网络的有效性。为本发明的点云卷积神经网络定义5层采样模块,即n=5,每个点云特征提取单元包含5层采样模块和4层特征复用模块,各采样模块和各特征复用模块的参数设置分别见表1和表2:表1采样模块参数设置采样模块采样中心个数采样半径/毫米采样点数mlp设置15120.2464[0,96]21280.3264[96,96]31280.4064[120,96]41280.2032[192,96]5nonenone128[96,512]其中,mlp是指multilayerperceptronlayer,多层感知机,作用是提取特征。表2各特征复用模块的卷积层参数设置卷积层卷积核大小步长输出维度conv11×11×196conv21×11×196conv31×11×196conv41×11×1128本发明的点云卷积神经网络在具有上述参数设置的示例性结构下,对公开数据集modelnet40进行分类实验,并与现有的pointnet方法和pointnet++方法的分类结果进行对比,结果如下表3:表3网络结构输入点数测试数据集分类实验准确率pointnet1024modelnet4089.2%pointnet++1024modelnet4090.7%本发明1024modelnet4091.41%由表3可以看出,同样是在公开数据集modelnet40上进行,并且都只使用点的xyz信息,本发明的网络结构实现的分类准确率是91.41%,而pointnet++只有90.7%,效果有明显的提升,说明本发明具备特征复用和旁路加强功能的点云特征提取单元能够更大程度提取有效特征,缓解因卷积神经网络层数增加导致的梯度弥散问题,最终提高了利用点云数据进行物体分类的准确率,这就验证了本发明的特征提取单元进行特征复用的有效性。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1