一种点云数据去噪的方法、装置、存储介质和电子设备与流程

文档序号:24131530发布日期:2021-03-02 18:13阅读:227来源:国知局
一种点云数据去噪的方法、装置、存储介质和电子设备与流程

[0001]
本申请属于信息处理技术领域,尤其涉及一种点云数据去噪的方法、装置、存储介质和电子设备。


背景技术:

[0002]
继音频、图像、视频之后,点云已经成为现实世界物体的一种新的表示形式,并且被作为多种传感器的标准输出。由于人工智能和计算机视觉的快速发展,点云在自动驾驶、混合现实、文物修复等多个领域受到越来越多的关注,并得到广泛的应用。然而,由于传感器精度和采集环境等因素的影响,原始的点云数据通常含有不同程度的复杂噪声,对点云的后续处理和应用造成严重的影响。点云数据中的噪声是三维点坐标在三维空间中的偏差形成的,复杂的噪声会造成实际为平面的物体凹凸不平、精细的几何细节不明显甚至消失等情况。
[0003]
因此,点云数据去噪一直是人们研究的重点。传统的点云数据去噪方法在实际应用中操作繁琐,且参数调节过程较复杂,点云数据去噪的效率较低。


技术实现要素:

[0004]
本申请实施例提供了一种点云数据去噪的方法、装置、存储介质和电子设备,可以解决现有的点云数据去噪的方法存在操作繁琐,且参数调节过程较复杂,点云数据去噪的效率较低的问题。
[0005]
第一方面,本申请实施例提供了一种点云数据去噪的方法,包括:
[0006]
获取待处理的三维点云数据;
[0007]
根据所述三维点云数据,构建高度图;
[0008]
将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,所述深度学习网络模型用于将高维特征映射到几何空间;
[0009]
基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪。
[0010]
在第一方面的一种可能的实现方式中,所述根据所述三维点云数据,构建高度图的步骤,包括:
[0011]
获取所述三维点云数据中原始数据点对应的邻域集合,所述邻域集合包括所述原始数据点对应的邻域点;
[0012]
根据所述邻域点,构建以所述原始数据点为原点的局部坐标系;
[0013]
基于所述局部坐标系,将所述邻域集合中的所述邻域点投影至二维平面,得到投影数据;
[0014]
根据所述投影数据,构建高度图。
[0015]
在第一方面的一种可能的实现方式中,所述根据所述邻域点,构建以所述原始数据点为原点的局部坐标系的步骤,包括:
[0016]
对所述邻域集合中的邻域点,进行张量投票的计算:
[0017]
对所述张量投票的计算结果进行特征分解,得到特征值;
[0018]
根据所述特征值构建以所述原始数据点为原点的局部坐标系。
[0019]
在第一方面的一种可能的实现方式中,所述投影数据包括所述邻域点在所述局部坐标系下的二维平面上的投影高度值,以及所述邻域点在所述局部坐标系下的投影三维坐标点,所述根据所述投影数据,构建高度图的步骤,包括:
[0020]
获取待构建的高度图的图像信息以及所述邻域集中邻域点与所述原始数据点的最大距离;
[0021]
根据所述图像信息与所述最大距离,计算所述待构建高度图中像素点在所述局部坐标系下对应的像素三维坐标点;
[0022]
根据所述像素三维坐标点、所述投影高度值、所述投影三维坐标点与预设插值算法,进行插值计算,得到所述待构建的高度图中像素点的像素值;
[0023]
根据所述像素值,生成高度图。
[0024]
在第一方面的一种可能的实现方式中,所述图像信息包括图像尺寸和像素索引,所述根据所述图像信息与所述最大距离,计算所述待构建高度图中像素点在所述局部坐标系下对应的像素三维坐标点的步骤,包括:
[0025]
根据所述图像尺寸与所述像素索引,确定所述待构建的高度图中像素点的二维像素坐标;
[0026]
根据所述图像尺寸与所述最大距离,确定所述高度图中像素点之间的相邻距离;
[0027]
根据所述二维像素坐标与所述相邻距离,获取所述待构建的高度图中像素点在所述局部坐标系下对应的像素三维坐标点。
[0028]
在第一方面的一种可能的实现方式中,所述根据所述像素三维坐标点、所述投影高度值、所述投影三维坐标点与预设插值算法,进行插值计算,得到所述待构建的高度图中像素点的像素值的步骤,包括:
[0029]
根据下式获取所述待构建的高度图中像素点的像素值h
u,v

[0030][0031]
其中,p
u,v
表示像素三维坐标点,p

j
表示投影三维坐标点,h
j
表示投影高度值,neighbor(p
u,v
)={p

j
|||p

j-p
u,v
||<δ}表示与p
u,v
的坐标距离小于预定义的阈值δ的p

j
的集合,w
distance
为距离高斯函数,表示归一化操作。
[0032]
在第一方面的一种可能的实现方式中,所述基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪的步骤,包括:
[0033]
对所述初始法向量和所述高度图进行特征提取,得到高维特征信息;
[0034]
对所述高维特征信息进行特征映射,得到变换矩阵;
[0035]
根据所述变换矩阵对所述初始法向量进行变换纠偏,得到去噪后的目标法向量;
[0036]
根据所述目标法向量,更新所述原始数据点的三维坐标,得到去噪后的目标数据点的三维坐标。
[0037]
第二方面,本申请实施例提供了一种点云数据去噪的装置,包括:
[0038]
初始数据获取单元,用于获取待处理的三维点云数据;
[0039]
高度图构建单元,用于根据所述三维点云数据,构建高度图;
[0040]
特征映射单元,用于将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,所述深度学习网络模型用于将高维特征映射到几何空间;
[0041]
点云去噪单元,用于基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪。
[0042]
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的点云数据去噪的方法。
[0043]
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的点云数据去噪的方法。
[0044]
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如上述第一方面所述的点云数据去噪的方法。
[0045]
本申请实施例中,通过获取待处理的三维点云数据,根据所述三维点云数据,构建高度图,然后将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,最后基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪,无需进行复杂的参数调节。本申请通过高度图将离散点云规则化,减少了复杂参数的调节时间,可提高去噪效率,并利用深度学习网络模型将高维特征映射到几何空间,可有效保留几何特征,从而提高去噪性能。
附图说明
[0046]
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0047]
图1是本申请实施例提供的点云数据去噪的方法的实现流程图;
[0048]
图2是本申请实施例提供的点云数据去噪的方法中步骤s102的具体实现流程图;
[0049]
图3是本申请实施例提供的点云数据去噪的方法中构建以原始数据点为原点的局部坐标系的具体实现流程图;
[0050]
图4是本申请实施例提供的点云数据去噪的方法中步骤a4的具体实现流程图;
[0051]
图5是本申请实施例提供的点云数据去噪的方法中计算像素三维坐标点的具体实现流程图;
[0052]
图6是本申请实施例提供的点云数据去噪的方法中步骤s104的具体实现流程图;
[0053]
图7是本申请实施例提供的点云数据去噪的装置的结构框图;
[0054]
图8是本申请实施例提供的电子设备的示意图。
具体实施方式
[0055]
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0056]
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0057]
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0058]
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0059]
本申请实施例提供了一种点云数据去噪的方法适用于需要执行点云数据去噪的各种类型的终端设备或者服务器,具体可以包括手机、平板电脑、可穿戴设备、笔记本电脑、车载设备、增强现实(ar)设备,虚拟现实(vr)设备、个人数字助理(personal digital assistant,pda)、数字电视等电子设备。
[0060]
下面结合具体实施例对本申请提供的点云数据去噪的方法进行示例性的说明。
[0061]
图1示出了本申请实施例提供的点云数据去噪的方法的实现流程,该方法流程可以包括如下步骤s101至s104。
[0062]
s101:获取待处理的三维点云数据。
[0063]
点云是目标表面特性的海量点集合。在获取目标表面每个采样点的空间坐标后,得到的是一个点的集合,称之为点云。
[0064]
在本申请实施例中,待处理的三维点云数据由若干个三维原始数据点组成,上述原始数据点包括正常数据点和噪声数据点。
[0065]
s102:根据所述三维点云数据,构建高度图。
[0066]
高度图(height map descriptor,hmd)用于表示以投影高度值为像素值的图像。高度图有很多种表现形式,在本申请实施例中,上述高度图可以表现为灰度图像。
[0067]
在一些实施方式中,高度图可表现为一个数组,而该数组的每个元素都指定了地形方格中某一个顶点的高度值。
[0068]
本申请实施例中,根据三维点云数据中的原始数据点,构建高度图。
[0069]
考虑点云中大量点的重复计算过程,本申请实施例中采用基于openmp并行库的c++实现高度图的构建,可提高其执行效率。
[0070]
作为本申请一种可能的实施方式,图2示出了本申请实施例提供的点云数据去噪方法步骤s102的具体实现流程,详述如下:
[0071]
a1:获取所述三维点云数据中原始数据点对应的邻域集合,所述邻域集合包括所述原始数据点对应的邻域点。i
[0072]
在本申请实施例中,定义点云集合p,在本申请实施例中,定义点云集合p,表示三维实数集,每个元素p
i
为实数范围内的三维向量,该点云集合p中包括待处理的三维点云数据中原始数据点,m为集合中原始数据点的数量,i表示第i个原始数据点;定义法向集合n,
[0073]
在本申请实施例中,定义点云集合中原始数据点p
i
的局部邻域集合为neighbor(p
i
)。每一原始数据点p
i
都有其对应的邻域集合neighbor(p
i
)。
[0074]
在一些实施方式中,采用k近邻检索得到原始数据点p
i
对应的邻域集合neighbor(p
i
)。
[0075]
示例性地,邻域点采用k近邻检索70个点。
[0076]
a2:根据所述邻域点,构建以所述原始数据点为原点的局部坐标系。
[0077]
在本申请实施例中,分别为每一邻域点,构建以该邻域点对应的原始数据点为原点的局部坐标系。局部坐标系(local coordinate),也就是坐标系以物体的中心为坐标原点,物体的旋转、平移等操作都是围绕局部坐标系进行的,这时,当物体模型进行旋转或平移等操作时,局部坐标系也执行相应的旋转或平移操作。
[0078]
作为本申请一种可能的实施方式,如图3所示,上述根据所述邻域点,构建以所述原始数据点为原点的局部坐标系的步骤,具体包括:
[0079]
a21:对所述邻域集合中的邻域点,进行张量投票的计算。
[0080]
本申请实施例中,在点云局部空间建立投影图的关键问题,是要建立鲁棒的局部坐标系,即该局部坐标系同样需要具有良好的特征感知能力和噪声鲁棒性。对于点p
i
的局部邻域neighbor(p
i
)中的所有点,进行法向张量投票的计算。
[0081]
张量投票是指对所述邻域集合中的邻域点进行投票,每个投票获得一个张量。基于张量映射聚合邻域特征,进而提取特征值。
[0082]
在一种可能的实施方式中,根据下述公式(1)进行法向张量投票的计算。
[0083][0084]
其中,p
j
为neighbor(p
i
)中的第j个三维邻域点,0≤j≤k,k为k近邻检索的邻域大小,tensor(p
i
)表示邻域点p
j
的张量,n
i
为原始数据点的初始法向量,n
j
为邻域点p
j
的初始法向量,w
normal
为法向高斯权重函数,为法向高斯权重函数,σ
normal
为法向高斯函数的标准差参数,表示法向量的转置。
[0085]
在一种实施方式中,σ
normal
=0.8。
[0086]
本申请实施例中,通过上述公式(1)计算得到的tensor(p
i
)为3
×
3的矩阵。通过引入法向高斯权重函数,可以在点云中的尖锐几何特征区域捕获各向异性的信息,进一步提高法向张量投票的特征感知能力。
[0087]
a22:对所述张量投票的计算结果进行特征分解,得到特征值。
[0088]
a23:根据所述特征值构建以所述原始数据点为原点的局部坐标系。
[0089]
在一种可能的实施方式中,对张量投票的计算结果tensor(p
i
)进行特征分解,得到第一特征值、第二特征值和第三特征值,以及第一特征值对应的第一特征向量、第二特征值对应的第二特征向量和第三特征值对应的第三特征向量。其中,第一特征值最小,第三特征值最大。将最大的第三特征值对应的第三特征向量确定为以原始数据点p
i
为原点建立的局部坐标系的z轴,第一特征向量确定为x轴,第二特征向量确定为y轴。
[0090]
示例性地,对tensor(p
i
)(3
×
3矩阵)进行特征分解,可以得到3个特征值,第一特征值e1、第二特征值e2和第三特征值e3,和对应的第一特征向量e
v1
、第二特征向量e
v2
、第三特征向量e
v3
,其中,e
v1
、e
v2
、e
v3
为单位向量,两两正交。
[0091]
本申请实施例中,根据特征分解的性质,将最大特征值e3对应的特征向量e
v3
表征该张量tensor(p
i
)在特征空间的主要方向,即邻域点集合中所有法向的特征方向。因此,以e
v3
作为以三维原始数据点p
i
为原点的局部坐标系的z轴,则e
v1
、e
v2
可分别作为坐标系的x和y轴,即可以获得准确的、具有特征感知能力的局部坐标系。
[0092]
a3:基于所述局部坐标系,将所述邻域集合中的所述邻域点投影至二维平面,得到投影数据。
[0093]
在本申请实施例中,上述投影数据包括上述邻域点在上述局部坐标系下的二维平面上的投影高度值,以及上述邻域点在上述局部坐标系下的投影三维坐标点。上述投影坐标点为虚拟点,具体为邻域点在以原始数据点为原点的局部坐标系中的三维坐标。
[0094]
在一种可能的实施方式中,在建立好以原始数据点为原点的局部坐标系,确定x轴、y轴以及z轴之后,利用三维空间的向量点乘操作,将邻域点集合中的邻域点投影至二维平面,本实施例中,为xy平面。根据下述公式(2)计算邻域点在上述局部坐标系下的二维平面上的投影高度值h
j

[0095]
h
j
=(p
j-p
i
)
t
z+d
ꢀꢀ
(2)
[0096]
其中,p
j
为邻域点,p
i
为原始数据点,z为对邻域点的张量tensor(p
i
)进行特征分解得到的最大特征值对应的特征向量,本实施例中,z=e
v3
,d为原始数据点对应的邻域点集合中的邻域点与该原始数据点距离点p
j
的最大距离,该最大距离可表示邻域点集合的空间尺度大小。
[0097]
根据下述公式(3)计算邻域点在上述局部坐标系下的投影三维坐标点p

j

[0098]
p

j
=(p
j-p
i
)-(h
j-d)z
ꢀꢀ
(3)
[0099]
其中,p
j
为邻域点,p
i
为原始数据点,z为对邻域点的张量tensor(p
i
)进行特征分解得到的最大特征值对应的特征向量,本实施例中,z=e
v3
,d为原始数据点对应的邻域点集合中的邻域点与该原始数据点距离点p
i
的最大距离。
[0100]
a4:根据所述投影数据,构建高度图。
[0101]
作为本申请一种可能的实施方式,如图4所示,上述根据所述投影数据,构建高度图的步骤a4具体包括:
[0102]
b1:获取待构建的高度图的图像信息以及所述邻域集中邻域点与所述原始数据点的最大距离。
[0103]
在本申请实施例中,待构建的高度图的图像信息包括图像尺寸,图像中所有像素点的相邻距离。
[0104]
b2:根据所述图像信息与所述最大距离,计算所述待构建高度图中像素点在所述
局部坐标系下对应的像素三维坐标点。
[0105]
作为本申请一种可能的实施方式,所述图像信息包括图像尺寸和像素索引,如图5所示,上述根据所述图像信息与所述最大距离,计算所述待构建高度图中像素点在所述局部坐标系下对应的像素三维坐标点的步骤的具体实现流程,详述如下:
[0106]
c1:根据所述图像尺寸与所述像素索引,确定所述待构建的高度图中像素点的二维像素坐标。
[0107]
在本申请实施例中,上述二维像素坐标是以图像中心为原点的二维坐标。上述像素索引包括水平横向索引和垂直纵向索引。
[0108]
c2:根据所述图像尺寸与所述最大距离,确定所述高度图中像素点之间的相邻距离。
[0109]
c3:根据所述二维像素坐标与所述相邻距离,获取所述待构建的高度图中像素点在所述局部坐标系下对应的像素三维坐标点。
[0110]
定义待构建的高度图的图像尺寸为l
×
l,示例性地,l=16。插值后的图像中所有像素点的相邻距离为b,b=2d/(l-1),d为原始数据点对应的邻域点集合中的邻域点与该原始数据点距离点p
i
的最大距离。
[0111]
根据下述公式(4)确定待构建的高度图中像素点在所述局部坐标系下对应的像素三维坐标点p
u,v

[0112]
p
u,v
=ubx+vby
ꢀꢀ
(4)
[0113]
其中,定义上述待构建的高度图中像素点的二维像素坐标(u,v),l
i
、l
j
∈[1,l]}。l
i
、l
j
为整数。其中,u为像素点的第一像素坐标,v为像素点的第二像素坐标,l
i
为水平横向索引,l
j
为垂直纵向索引,l为待构建的高度图的图像尺寸大小。上述x为第一特征向量,上述为第二特征向量,本实施例中,x=e
v1
,=y=e
v2

[0114]
b3:根据所述像素三维坐标点、所述投影高度值、所述投影三维坐标点与预设插值算法,进行插值计算,得到所述待构建的高度图中像素点的像素值。
[0115]
作为本申请一种可能的实施方式,采用高斯函数插值可以得到高度图像中所有像素点的像素值。具体地,根据下述公式(5)获取所述待构建的高度图中像素点的像素值h
u,v

[0116][0117]
其中,p
u,v
表示像素三维坐标点,p

j
表示投影三维坐标点,h
j
表示投影高度值,neithbor(p
u,v
)={p

j
|||p

j-p
u,v
||<δ}表示与p
u,v
的坐标距离小于预定义的阈值δ的p

j
的集合,w
distance
为距离高斯函数,σ
distance
为距离高斯函数的标准差参数,表示归一化操作。
[0118]
在一种可能的实施方式中,高斯插值中的σ
distance
=0.2d,d为原始数据点对应的邻域点集合中的邻域点与该原始数据点距离点p
i
的最大距离。预定义的阈值δ=2b,b为插值后的图像中所有像素点的相邻距离。
[0119]
b4:根据所述像素值,生成高度图。
[0120]
将三维空间中的离散点投影至二维平面,可以形成二维的高度值集合,但是该高度值依然是不规则的,无法直接采用深度神经网络模型进行处理。因此,本申请实施例中,在二维平面内进行插值形成规则的高度图像。
[0121]
s103:将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,所述深度学习网络模型用于将高维特征映射到几何空间。
[0122]
深度神经网络在图像处理、计算机视觉领域已经有了广泛的应用,取得了令人印象深刻的效果。本申请实施例中,利用已训练的深度学习网络模型将三维点云数据的高维特征映射到几何空间。
[0123]
在一种可能的实施方式中,采用残差网络结构设计从高度图到法向的回归网络。上述深度学习网络模型包括1个卷积层(convolution layer,conv)、归一化层(batch normalizatin layer,bn)、relu激活函数、多个残差块(residual block,resblock)、3个全连接层(fully connected layer,fc)和tanh激活函数。
[0124]
s104:基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪。
[0125]
作为本申请一种可能的实施方式,图6示出了本申请实施例提供的点云数据去噪方法步骤s104的具体实现流程,详述如下:
[0126]
d1:对所述初始法向量和所述高度图进行特征提取,得到高维特征信息。
[0127]
d2:对所述高维特征信息进行特征映射,得到变换矩阵。
[0128]
在一种可能的实施方式中,采用1个卷积层、归一化层、relu激活函数的组合进行高维特征提取,利用多个残差块进一步加强非线性映射能力,然后采用3个全连接层和tanh激活函数组合构成特征映射模块,将高维特征映射到几何空间,输出一个3
×
3的变换矩阵(t1)
[0129]
d3:根据所述变换矩阵对所述初始法向量进行变换纠偏,得到去噪后的目标法向量。
[0130]
本申请实施例中,上述变换矩阵可以将初始法向量进行纠偏,实现法向的去噪,得到去噪后的目标法向量。
[0131]
d4:根据所述目标法向量,更新所述原始数据点的三维坐标,得到去噪后的目标数据点的三维坐标。
[0132]
本申请实施例中,对三维点云数据中原始数据点的初始法向量进行去噪后,得到的目标法向量可以更准确的表征潜在的几何平面,通过更新原始数据点的三维坐标来匹配去噪后的目标法向。
[0133]
在一种可能的实施方式中,采用迭代更新的方式实现原始数据点的三维坐标的更新。具体地,根据下述公式(6)更新原始数据点的三维坐标
[0134][0135]
其中,|neighbor(p
i
)|表示邻域集中邻域点的数量,w
σ
(n
i
,n
j
)为高斯权重函数,σ为其中的标准差参数,n
i
为p
i
的初始法向量,n
j
为p
j
的初
始法向量,t为转置,邻域集合neighbor(p
i
)在迭代过程中保持不变,为预定义的平衡参数。该坐标更新通常迭代15到20次。
[0136]
示例性地,以一个应用场景为例,输入在原始数据点p
i
处建立的尺寸为16
×
16的高度图(height map descriptor,hmd)和p
i
的初始法向量n
i
,首先经过一个卷积层、归一化层、relu激活函数的组合,进行高维特征信息的提取,然后通过4个残差块进一步加强非线性映射能力,最后通过三个全连接层(fully connected layer,fc)和激活函数的组合逐步降低维度至三维空间(其中,最后一层为tanh激活函数,是为了保证输出的结值范围为[-1,1]),最终输出一个3
×
3的变换矩阵,该变换矩阵可以将初始法向量n
i
进行变换纠偏,实现法向去噪,得到目标法向量。再利用目标法向量对原始数据点的三维坐标进行更新,得到去噪后的目标数据点的三维坐标,实现三维点云数据的去噪。
[0137]
由上可见,在本申请实施例中,通过采用法向张量投票建立点云数据中每个原始数据点的局部坐标系,并将每个原始数据点的邻域点投影至该局部坐标系,再通过插值算法形成规则的高度图。由于法向张量投票得到的局部坐标系具有很好的鲁棒性,该高度图可以很好的表征各种几何特征,例如平面、尖锐边等,并且对噪声具有很好的鲁棒性。然后用深度神经网络模型学习该高度图像和无噪声法向之间的映射,利用该深度神经网络模型对噪声点云的高度图进行法向回归,即对原始数据点的初始法向量进行去噪,得到去噪后的目标法向量。最后采用点更新算法,根据目标法向量更新点云数据中的点坐标以实现点云去噪。本方案结合鲁棒的几何处理和深度神经网络,对不同尺度的噪声可以进行端到端的去噪,无需进行复杂的参数调节,并且可以保留更加精细准确的几何特征,提高了点云数据去噪的性能和效率。
[0138]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
[0139]
对应于上文实施例所述的点云数据去噪的方法,图7示出了本申请实施例提供的点云数据去噪的装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
[0140]
参照图7,该点云数据去噪的装置包括:初始数据获取单元71、高度图构建单元72,特征映射单元73,点云去噪单元74,其中:
[0141]
初始数据获取单元71,用于获取待处理的三维点云数据;
[0142]
高度图构建单元72,用于根据所述三维点云数据,构建高度图;
[0143]
特征映射单元73,用于将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,所述深度学习网络模型用于将高维特征映射到几何空间;
[0144]
点云去噪单元74,用于基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪。
[0145]
在一种可能的实施方式中,所述高度图构建单元72包括:
[0146]
邻域集合获取模块,用于获取所述三维点云数据中原始数据点对应的邻域集合,所述邻域集合包括所述原始数据点对应的邻域点;
[0147]
局部坐标系构建模块,用于根据所述邻域点,构建以所述原始数据点为原点的局部坐标系;
[0148]
投影数据获取模块,用于基于所述局部坐标系,将所述邻域集合中的所述邻域点投影至二维平面,得到投影数据;
[0149]
图像构建模块,用于根据所述投影数据,构建高度图。
[0150]
在一种可能的实施方式中,所述局部坐标系构建模块包括:
[0151]
张量计算子模块,用于对所述邻域集合中的邻域点,进行张量投票的计算:
[0152]
特征值分解子模块,用于对所述张量投票的计算结果进行特征分解,得到特征值;
[0153]
坐标系构建子模块,用于根据所述特征值构建以所述原始数据点为原点的局部坐标系。
[0154]
在一种可能的实施方式中,投影数据包括所述邻域点在所述局部坐标系下的二维平面上的投影高度值,以及所述邻域点在所述局部坐标系下的投影三维坐标点,所述图像构建模块包括:
[0155]
信息获取子模块,用于获取待构建的高度图的图像信息以及所述邻域集中邻域点与所述原始数据点的最大距离;
[0156]
像素三维坐标计算子模块,用于根据所述图像信息与所述最大距离,计算所述待构建高度图中像素点在所述局部坐标系下对应的像素三维坐标点;
[0157]
像素值计算子模块,用于根据所述像素三维坐标点、所述投影高度值、所述投影三维坐标点与预设插值算法,进行插值计算,得到所述待构建的高度图中像素点的像素值;
[0158]
高度图生成子模块,用于根据所述像素值,生成高度图。
[0159]
在一种可能的实施方式中,所述图像信息包括图像尺寸和像素索引,所述像素三维坐标计算子模块具体用于:
[0160]
根据所述图像尺寸与所述像素索引,确定所述待构建的高度图中像素点的二维像素坐标;
[0161]
根据所述图像尺寸与所述最大距离,确定所述高度图中像素点之间的相邻距离;
[0162]
根据所述二维像素坐标与所述相邻距离,获取所述待构建的高度图中像素点在所述局部坐标系下对应的像素三维坐标点。
[0163]
在一种可能的实施方式中,所述像素值计算子模块具体用于:
[0164]
根据下式获取所述待构建的高度图中像素点的像素值h
u,v

[0165][0166]
其中,p
u,v
表示像素三维坐标点,p

j
表示投影三维坐标点,h
j
表示投影高度值,neighbor(p
u,v
)={p

j
|||p

j-p
u,v
||<δ}表示与p
u,v
的坐标距离小于预定义的阈值δ的p

j
的集合,w
distance
为距离高斯函数,表示归一化操作。
[0167]
在一种可能的实施方式中,所述点云去噪单元74包括:
[0168]
特征提取模块,用于对所述初始法向量和所述高度图进行特征提取,得到高维特征信息;
[0169]
特征映射模块,用于对所述高维特征信息进行特征映射,得到变换矩阵;
[0170]
法向量去噪模块,用于根据所述变换矩阵对所述初始法向量进行变换纠偏,得到去噪后的目标法向量;
[0171]
点云去噪模块,用于根据所述目标法向量,更新所述原始数据点的三维坐标,得到去噪后的目标数据点的三维坐标。
[0172]
由上可见,在本申请实施例中,通过获取待处理的三维点云数据,根据所述三维点云数据,构建高度图,然后将所述三维点云数据中原始数据点的初始法向量和所述高度图输入至已训练的深度学习网络模型,得到所述深度学习网络模型的输出结果,最后基于所述深度学习网络模型的输出结果,对所述三维点云数据进行去噪,无需进行复杂的参数调节。本申请通过高度图将离散点云规则化,减少了复杂参数的调节时间,可提高去噪效率,并利用深度学习网络模型将高维特征映射到几何空间,可有效保留几何特征,从而提高去噪性能。
[0173]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0174]
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计计算机程序,所述计算机程序被处理器执行时实现如图1至图6表示的任意一种点云数据去噪的方法的步骤。
[0175]
本申请实施例还提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如图1至图6表示的任意一种点云数据去噪的方法的步骤。
[0176]
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行实现如图1至图6表示的任意一种点云数据去噪的方法的步骤。
[0177]
图8是本申请一实施例提供的电子设备的示意图。如图8所示,该实施例的电子设备8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82。所述处理器80执行所述计算机程序82时实现上述各个点云数据去噪的方法实施例中的步骤,例如图1所示的步骤s101至s104。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各模块/单元的功能,例如图7所示单元71至74的功能。
[0178]
示例性的,所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机程序82在所述电子设备8中的执行过程。
[0179]
所述电子设备8可以是服务器。所述电子设备8可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是电子设备8的示例,并不构成对电子设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备8还可以包括输入输出设备、网络接入设备、总线等。
[0180]
所述处理器80可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0181]
所述存储器81可以是所述电子设备8的内部存储单元,例如电子设备8的硬盘或内存。所述存储器81也可以是所述电子设备8的外部存储设备,例如所述电子设备8上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器81还可以既包括所述电子设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述电子设备所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
[0182]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0183]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0184]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0185]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0186]
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1