一种噪声处理方法和噪声处理设备与流程

文档序号:32664817发布日期:2022-12-24 00:38阅读:25来源:国知局
一种噪声处理方法和噪声处理设备与流程

1.本公开涉及三维降噪领域,尤其涉及一种噪声处理方法和噪声处理设备。


背景技术:

2.在多视角三维物体重建领域,由于采集设备本身的精度、标定精度、遮挡以及运动模糊等原因,会造成最终重建出来的物体模型在边界处存在一些噪声面片。
3.针对上述噪声面片,常规的处理方式是基于阈值的方法,例如距离阈值、法线阈值、曲率阈值以及统计阈值等,但是上述方法中阈值设置的小,可能会将一部分需要保留的数据当作噪声去除;阈值设置的大,噪声可能无法滤除,因此上述方法无法有效去除距离需要保留的目标点云较近的噪声,从而导致重建的物体模型不够准确。


技术实现要素:

4.为了解决上述技术或者至少部分地解决上述技术问题,本公开提供了一种噪声处理方法和噪声处理设备,可以去除距离需要保留的目标点云较近的噪声,无需结合噪声的分布先验,通用性更强,有利于提高重建的物体三维模型的准确性。
5.为了实现上述目的,本公开实施例提供的技术方案如下:
6.第一方面,本公开提供了一种噪声处理方法,该方法包括:
7.基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合;
8.基于所述顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出所述三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征;
9.基于所述目标队列的长度,确定噪声点,并删除所述顶点集合中包含的所述噪声点,以及删除所述平面集合中包含所述噪声点的平面。
10.第二方面,本公开提供了一种噪声处理设备,该设备包括:
11.控制器,被配置为:基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合;
12.基于所述顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出所述三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征;
13.基于所述目标队列的长度,确定噪声点,并删除所述顶点集合中包含的所述噪声点,以及删除所述平面集合中包含所述噪声点的平面。
14.第三方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所示的噪声处理方法。
15.第四方面,本技术提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机实现如第一方面所示的噪声处理方法。
16.本公开实施例提供的技术方案与现有技术相比具有如下优点:首先基于包含噪声
的三维模型,确定不包含重复顶点的顶点集合和平面集合,然后基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,最后基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,上述技术方案中基于几何连通域,根据目标队列的长度,确定噪声点,能够去除距离需要保留的目标点云较近的噪声,避免将目标点云也删除,无需结合噪声的分布先验,通用性更强,有利于提高重建的物体三维模型的准确性。
附图说明
17.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
18.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
19.图1a为本公开实施例提供的一种噪声处理方法的流程示意图;
20.图1b为本公开实施例提供的一种噪声处理方法的原理示意图;
21.图1c为本公开实施例提供的一种包含重复顶点的多个平面的示意图;
22.图1d为本公开实施例提供的一种三维模型的噪声分布示意图;
23.图2a为本公开实施例提供的另一种噪声处理方法的流程示意图;
24.图2b为本公开实施例提供的确定包含第一顶点的所有平面的原理示意图;
25.图2c为本公开实施例提供的一种某个顶点到对应多个平面的示意图;
26.图3a为本公开实施例提供的又一种噪声处理方法的流程示意图;
27.图3b为本公开实施例提供的又一种噪声处理方法的原理示意图;
28.图4a为本公开实施例提供的又一种噪声处理方法的流程示意图;
29.图4b为本公开实施例提供的又一种噪声处理方法的原理示意图;
30.图5a为本公开实施例提供的又一种噪声处理方法的流程示意图;
31.图5b为本公开实施例提供的一种确定重复顶点的原理示意图;
32.图5c为本公开实施例提供的一种某个平面到对应多个顶点的示意图;
33.图5d为本公开实施例提供的一种确定顶点集合和平面集合的原理示意图;
34.图5e为本公开实施例提供的一种三维模型去除噪声之后的示意图;
35.图6是本公开实施例提供的一种噪声处理装置的结构示意图;
36.图7是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
37.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
38.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施
例,而不是全部的实施例。
39.需要说明的是,本公开中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
40.需要说明的是,在本公开中,诸如

第一



第二

等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语

包括



包含

或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句

包括一个......

限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
41.三维重建是计算机视觉、计算机图形学和机器学习界几十年来探索的一个长期问题,其对于机器人导航、目标识别和场景理解、三维建模和动画、工业控制和医疗诊断等许多领域都是至关重要的。基于图像的三维重建的目标是从一幅或多幅二维图像中推断出物体和场景的三维几何结构。噪声处理技术可以使三维物体重建,识别等技术更加准确、快速的完成,从而提高三维模型的准确性。
42.现有技术中,针对三维模型中的噪声面片,常规的处理方式是将这些噪声面片转换为点云,再对点云降噪。点云降噪一般是基于点云的某项或者某几项先验分布特征,采用合适的方法和参数进行降噪,这种方法存在的问题是:当点云的分布特征发生改变,相应的方法和参数就必须进行调整,调整方式是对数据样本进行若干次实验得出最佳参数值,再将最佳参数值输入到系统中,因此该方法中参数无法自动匹配输入的点云特征,使用起来比较繁琐。
43.同时,距离需要保留的目标点云较近的噪声的去除是点云降噪方向的一个难点,现有的基于阈值的方法例如距离阈值、法线阈值、曲率阈值以及统计阈值等,无法有效去除离目标点云较近的噪声。
44.为了解决上述问题,本公开提出了一种噪声处理方法,首先基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合,然后基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,最后基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,上述技术方案中基于几何连通域,根据目标队列的长度,确定噪声点,能够去除距离需要保留的目标点云较近的噪声,避免将目标点云也删除,无需结合噪声的分布先验,通用性更强,有利于提高重建的物体三维模型的准确性。为了更加详细的说明本公开中的噪声处理方案,以下将以示例性的方式结合图1a进行说明,可以理解的是,图1a中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本技术实施例中提供的噪声处理方法为准。
45.需要说明的是:本方案可以用于增强现实(augmented reality,ar)或者虚拟现实
(virtual reality,vr)领域3d数字人物模型的降噪,尤其适用于多视角人体模型的降噪,不需要对噪声进行分布特征进行统计分析,也不需要调参数,就能稳定高效地去除离人体很近的噪声点。
46.图1a为本公开实施例提供的一种噪声处理方法的流程示意图,图1b为本公开实施例提供的一种噪声处理方法的原理示意图。本实施例可适用于对包含噪声的三维模型进行噪声处理的过程进行说明。本实施例方法可由噪声处理设备或者噪声处理装置来执行,该装置可采用硬件/或软件的方式来实现,并可配置于电子设备中。
47.如图1a所示,该方法具体包括如下步骤:
48.s110,基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合。
49.其中,三维模型可以为预先建立好的任意一个物体的三维模型。由于采集设备本身的精度、标定精度、遮挡以及运动模糊等原因,通常重建的物体三维模型会存在一些噪声面片,即:三维模型会包含噪声。重复顶点可以理解为顶点数组中不同顶点标记,但是三维坐标相同的多个顶点。顶点标记可以理解为用来标记不同顶点的标识,例如顶点1、顶点2,...,等,或者顶点a、顶点b,...,等,本实施例不做限定。出现重复顶点的原因可能为:构成三维模型的平面(也称面片,如三角面或者四边面)是单独存储的,没有采用顶点索引的方式;或者是三维模型展uv时,uv空间不连续,导致位于uv分割线的顶点被复制,还可以是其他原因,本实施例不做限定。
50.示例性的,图1c为本公开实施例提供的一种包含重复顶点的多个平面的示意图。如图1c所示,顶点4和顶点5是重复顶点,顶点1和顶点2是重复顶点,由于重复顶点的存在,使得左右两个本来相邻的三角形不再有公共边。
51.为了对包含噪声的三维模型进行降噪处理,本实施例根据包含噪声的三维模型,确定构成该三维模型的不包含重复顶点的顶点集合和平面集合,以便后续基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域。
52.示例性的,顶点集合可以用v{v1,v2,v3,

,vn}表示,平面集合可以用f{f1,f2,f3,

,fm}表示,其中n和m为正整数。
53.s120,基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征。
54.其中,几何连通域可以理解为一个闭合的多面体。
55.针对顶点集合中的任意一个顶点,进行包含该顶点的相邻平面的搜索,从而根据相邻平面中包含的与该顶点相邻的顶点,再进行相邻顶点的不断搜索,最终能够确定出三维模型对应的多个几何连通域。本实施例中的几何连通域以按空间连接关系聚合的顶点形成的目标队列表征。
56.s130,基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面。
57.对三维模型而言,若该三维模型不包含噪声,那么该三维模型对应的几何连通域为1个;若该三维模型包含噪声,那么该三维模型对应的几何连通域为多个。因此,在确定出三维模型对应的多个几何连通域之后,由于每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,那么基于各目标队列的长度,能够确定出噪声点所在的目标队列,从
而确定出噪声点。在确定出噪声点之后,删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,就能够得到去除噪声之后的三维模型,达到对三维模型降噪的效果。
58.本公开实施例提供的噪声处理方法,首先基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合,然后基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,最后基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,上述技术方案中基于几何连通域,根据目标队列的长度,确定噪声点,能够去除距离需要保留的目标点云较近的噪声,避免将目标点云也删除,无需结合噪声的分布先验,通用性更强,有利于提高重建的物体三维模型的准确性。
59.示例性的,图1d为本公开实施例提供的一种三维模型的噪声分布示意图。如图1d所示,100中包含的即为噪声。
60.图2a为本公开实施例提供的另一种噪声处理方法的流程示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对确定三维模型对应的多个几何连通域的过程进行详细的解释说明。如图2a所示,该方法具体包括如下:
61.s110,基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合。
62.s1201,确定顶点集合是否为非空集合。
63.根据顶点集合中是否包含顶点,能够确定顶点集合为非空集合或者空集合。
64.若是,执行s1201;若否,执行s1207和s130。
65.s1202,将顶点集合中的第一顶点存储至第一队列,并将顶点集合中的第一顶点删除。
66.其中,第一顶点可以为顶点集合中的任意一个顶点,例如可以是顶点集合中的第一个顶点。第一队列可以为预先创建的待搜索队列,用于存储待搜索的顶点。
67.如果顶点集合中包含顶点,则顶点集合为非空集合,将顶点集合中的第一顶点作为待搜索顶点,将第一顶点存储至第一队列,并将顶点集合中的第一顶点删除。
68.s1203,构建第二队列,将第二队列存储至对应的容器中。
69.其中,第二队列可理解为构建的空队列,用于存储能够按照按空间连接关系进行聚合的顶点。
70.构建空的第二队列,在构建之后,将第二队列存储至对应的容器中。
71.s1204,确定第一队列是否为非空队列。
72.若是,执行s1205;若否,执行s1201。
73.根据第一队列中是否存在顶点,确定第一队列为非空队列或者空队列。
74.s1205,将第一队列中的第一顶点存储至第二队列,并将第一队列中的第一顶点删除。
75.如果第一队列中存在顶点,则第一队列为非空队列,将第一队列中的第一顶点存储至第二队列,并将第一队列中的第一顶点删除。
76.s1206,确定包含第一顶点的所有平面,将平面中满足预设条件的第二顶点存储至第一队列,并将顶点集合中的第二顶点删除。
77.其中,预设条件为:除了所述第一顶点之外,不在所述第一队列,在所述顶点集合
中的顶点。
78.从平面集合中确定包含第一顶点的所有平面,将平面中除了第一顶点之外,不在第一队列,在顶点集合中的第二顶点存储至第一队列,并将顶点集合中的第二顶点删除,以便后续对第一队列中的第二顶点进行搜索。
79.需要说明的是:在s1206执行之后,返回执行s1204-s1206,直至第一队列为空队列,返回执行s1201-s1206,直至顶点集合为空集合。
80.s1207,将容器中存储的多个第二队列确定为多个目标队列。
81.在顶点集合为空集合时,将容器中存储的多个第二队列确定为多个目标队列,目标队列用于表征对应的几何连通域。
82.s130,基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面。
83.本公开实施例中,首先基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合,接着在顶点集合为非空集合时,将顶点集合中的第一顶点存储至第一队列,并将顶点集合中的第一顶点删除,构建第二队列,将第二队列存储至对应的容器中,然后在第一队列为非空队列时,将第一队列中的第一顶点存储至第二队列,并将第一队列中的第一顶点删除,确定包含第一顶点的所有平面,将平面中满足预设条件的第二顶点存储至第一队列,并将顶点集合中的第二顶点删除,返回执行在第一队列为非空队列时,将第一队列中的第一顶点存储至第二队列,并将第一队列中的第一顶点删除,直到第一队列为空队列,返回执行在顶点集合为非空集合时,将顶点集合中的第一顶点存储至第一队列,并将顶点集合中的第一顶点删除,直至顶点集合为空集合,最后在顶点集合为空集合时,说明顶点集合中包含的顶点均进行了相邻平面和相邻顶点搜索,此时将容器中存储的多个第二队列确定为多个目标队列,基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,通过上述循环过程,对顶点集合中的顶点进行聚类,得到多个目标队列,通过目标队列表征几何连通域,从而基于目标队列的长度,确定噪声点,将顶点集合中包含的噪声点删除,以及平面集合中包含噪声点的平面删除,能够有效去除距离需要保留的目标点云较近的噪声,且确定噪声的过程中无需结合噪声的分布先验,也不需要调节参数,简单高效,通用性更强,有利于提高重建的物体三维模型的准确性。
84.在一些实施例中,可选的,所述确定包含所述第一顶点的所有平面,可以具体包括:
85.基于包含噪声的三维模型,确定不包含重复顶点的从顶点到平面的第一映射关系;
86.基于所述第一映射关系,确定包含所述第一顶点的所有平面。
87.其中,第一映射关系,可以用t
v-f
表示。
88.具体的,基于包含噪声的三维模型,从三维模型中读取构成三维模型的不包含重复顶点的顶点和平面,基于不包含重复顶点的顶点和平面,能够建立从顶点索引到平面索引的第一映射关系。在确定了第一映射关系之后,基于第一映射关系,能够确定出包含第一顶点的所有平面。
89.本实施例中,通过上述方法确定包含第一顶点的所有平面,简单高效、快捷。
90.示例性的,图2b为本公开实施例提供的确定包含第一顶点的所有平面的原理示意
图。如图2b所示,确定包含第一顶点的所有平面的过程已经在上述实施例中描述过,为了避免重复,此处不再赘述。
91.示例性的,图2c为本公开实施例提供的一种某个顶点到对应多个平面的示意图。如图2c所示,顶点100被6个面包含,即顶点100共对应6个平面,分别为:平面1、平面2、平面3、平面4、平面5以及平面6。
92.需要说明的是:图2c只用于示例性说明,不用于对顶点到对应的平面的个数进行限定。
93.图3a为本公开实施例提供的又一种噪声处理方法的流程示意图,图3b为本公开实施例提供的又一种噪声处理方法的原理示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对基于目标队列的长度,确定噪声点的过程进行详细的解释说明。如图3a所示,该方法具体包括如下:
94.s110,基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合。
95.s120,基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征。
96.s1301,对各目标队列按照队列长度的大小进行排序,将除了队列长度最长的目标队列之外的其余目标队列确定为噪声点队列。
97.其中,队列长度可以为目标队列中包含的顶点的总个数,或者在目标队列存储不同个数的顶点之后队列本身对应的长度。可以理解的是,目标队列中包含的顶点的总个数越大,则目标队列的队列长度越长。
98.具体的,在得到多个目标队列之后,根据各目标队列分别对应的队列长度,对各目标队列按照队列长度的大小进行排序,能够得到排序结果。可以理解的是:因为噪声点的个数应小于需要保留的目标点,所以不包含噪声的三维模型对应的几何连通域的表征为队列长度最长的目标队列,那么除了队列长度最长的目标队列之外的其余目标队列均为噪声点队列。
99.示例性的,假设mi表示第i个目标队列,i表示多个目标队列按照队列长度从小到大排序之后的排列顺序,p表示目标队列的总个数,那么噪声点队列可以用下式表示:
[0100][0101]
s1302,将噪声点队列中包含的各顶点确定为噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面。
[0102]
在确定了噪声点队列之后,噪声点队列中包含的各顶点即为噪声点,对顶点集合中包含的噪声点进行删除,以及平面集合中包含噪声点的平面进行删除,就能够得到去除噪声之后的三维模型,达到去噪的效果。
[0103]
本公开实施例中,首先基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合,接着基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,然后对各目标队列按照队列长度的大小进行排序,将除了队列长度最长的目标队列之外的其余目标队列确定为噪声点队列,最后将噪声点队列中包含的各顶点确定为噪
声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,上述技术方案中,通过对各目标队列按照队列长度的大小进行排序,从而确定噪声点队列,再根据噪声点队列确定噪声点,最后删除噪声点和包含噪声点的平面,能够快速确定噪声点,从而得到去除噪声之后的三维模型,不仅能够去除距离需要保留的目标点云较近的噪声,无需结合噪声的分布先验,通用性更强,而且有利于提高重建的物体三维模型的准确性。
[0104]
图4a为本公开实施例提供的又一种噪声处理方法的流程示意图,图4b为本公开实施例提供的又一种噪声处理方法的原理示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对确定不包含重复顶点的顶点集合和平面集合的过程进行详细的解释说明。如图4a所示,该方法具体包括如下:
[0105]
s210,确定构成三维模型的所有顶点形成的总顶点集合和对应的总平面集合。
[0106]
具体的,针对包含噪声的三维模型,对该模型进行分析,能够确定构成该三维模型的所有顶点,从而确定出所有顶点形成的总顶点集合,以及根据顶点与平面的对应关系,能够确定出该三维模型对应的总平面集合。
[0107]
s220,对总顶点集合进行重复顶点删除操作,得到不包含重复顶点的顶点集合,以及对总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的平面集合。
[0108]
重复顶点的存在,会使得顶点集合和平面集合不准确,从而导致对顶点进行相邻平面和相邻顶点搜索时出现误差,使得最终确定的多个几何连通域不准确,从而影响噪声去除效果。因此,在得到总顶点集合之后,对总顶点集合进行重复顶点删除操作,就能够得到不包含重复顶点的顶点集合,以及对总平面集合中包含重复顶点的平面进行重复顶点替换操作,就能够得到不包含重复顶点的平面集合。
[0109]
s230,基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征。
[0110]
s240,基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面。
[0111]
本公开实施例中,通过先确定构成三维模型的所有顶点形成的总顶点集合和对应的总平面集合,接着对总顶点集合进行重复顶点删除操作,得到不包含重复顶点的顶点集合,以及对总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的平面集合,能够使得顶点集合和平面集合更准确,从而有利于后续确定多个几何连通域、删除噪声点以及删除平面集合中包含噪声点的平面,更有利于去找过程的顺利执行,提高降噪效果。
[0112]
图5a为本公开实施例提供的又一种噪声处理方法的流程示意图。本实施例是在上述实施例的基础上进行优化。可选的,本实施例对得到不包含重复顶点的所述平面集合之前的过程进行详细的解释说明。如图5a所示,该方法具体包括如下:
[0113]
s310,确定构成三维模型的所有顶点形成的总顶点集合和对应的总平面集合。
[0114]
s320,基于总顶点集合中各顶点分别对应的子空间,确定总顶点集合中包括的重复顶点。
[0115]
在确定了三维模型对应的总顶点集合和总平面集合之后,将各顶点在空间的三个
维度上(即x、y和z三个方向)分别对应的空间数目相乘,就能得到各顶点分别对应的子空间,若存在不同顶点标记的顶点对应的子空间相同,则说明存在重复顶点,以便后续对总顶点集合进行重复顶点删除操作,得到不包含重复顶点的顶点集合,以及对总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的平面集合。
[0116]
s330,对总顶点集合进行重复顶点删除操作,得到不包含重复顶点的顶点集合,以及对总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的平面集合。
[0117]
s340,基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征。
[0118]
s350,基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面。
[0119]
本公开实施例中,通过确定总顶点集合中包括的重复顶点,有利于得到不包合重复顶点的顶点集合和不包含重复顶点的平面集合,从而使得后续的步骤能够顺利进行,进一步提高降噪过程的准确性。
[0120]
在一些实施例中,可选的,所述基于所述总顶点集合中各顶点分别对应的子空间,确定所述总顶点集合中包括的重复顶点,可以具体包括:
[0121]
基于所述总顶点集合中各顶点对应的三维坐标值,确定每个维度对应的最小值;
[0122]
基于每个顶点对应的各维度的坐标值、相应维度对应的所述最小值以及空间划分粒度值,确定所述每个顶点对应的子空间;
[0123]
基于所述子空间,构建从顶点到子空间的第二映射关系;
[0124]
若所述第二映射关系中至少两个顶点对应的子空间相同,则将所述至少两个顶点确定为所述重复顶点。
[0125]
具体的,获取总顶点集合中每个顶点对应的三维坐标表示,根据三维坐标表示中每个维度的具体数值进行最小值搜索,能够确定每个维度对应的最小值,可以用x
min
表示x维度对应的最小值、y
min
表示y维度对应的最小值和z
min
表示z维度对应的最小值。
[0126]
示例性的,确定每个顶点对应的子空间的过程可以用下式表示:
[0127][0128]
其中,si表示第i个顶点对应的子空间,v
ix
表示第i个顶点对应的x坐标值,v
iy
表示第i个顶点对应的y坐标值,v
iz
表示第i个顶点对应的z坐标值,a表示空间划分粒度值。a的取值可以自定义设置,如0.01,也可以视具体情况而定,本实施例对此不做限定。
[0129]
在得到每个顶点对应的子空间之后,根据子空间,能够构建从顶点到子空间的第二映射关系,具体可以用下式表示:
[0130]
t
v-s
={(1,s1),(i,si),

},i∈(1,n),si∈(1,s
x
*sy*sz)
ꢀꢀꢀꢀ
(3)
[0131]
[0132][0133][0134]
其中,t
v-s
表示第二映射关系,x
max
表示x维度对应的最大值,y
max
表示y维度对应的最大值,z
max
表示z维度对应的最大值,ceil表示向上取整,s
x
*sy*sz表示三维模型对应的总的子空间个数。
[0135]
在构建从顶点到子空间的第二映射关系之后,如果第二映射关系中至少两个顶点对应的子空间相同,则将至少两个顶点确定为重复顶点。
[0136]
本实施例中,通过上述方法确定总顶点集合中包括的重复顶点,能够避免重复顶点的遗漏,同时基于每个顶点的子空间,能够更充分的确定各顶点与整个三维模型的关系。
[0137]
示例性的,图5b为本公开实施例提供的一种确定重复顶点的原理示意图。如图5b所示,确定重复顶点的过程已经在上述实施例中描述过,为了避免重复,此处不再赘述。
[0138]
在一些实施例中,可选的,在确定不包含重复顶点的平面集合时,还可以构建不包含重复顶点的从顶点到平面的第三映射关系,从而提高平面集合的准确性,避免在确定过程中出现某个或者多个平面的遗漏。
[0139]
示例性的,图5c为本公开实施例提供的一种某个平面到对应多个顶点的示意图。如图5c所示,平面30包含3个顶点,分别为:顶点0、顶点1以及顶点2。
[0140]
需要说明的是:图5c只用于示例性说明,不用于对平面包含的顶点的个数进行限定。
[0141]
在一些实施例中,可选的,所述对所述总顶点集合进行重复顶点删除操作,得到不包含重复顶点的所述顶点集合,以及对所述总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的所述平面集合,可以具体包括:
[0142]
将所述重复顶点中的其中一个顶点确定为目标顶点,除了所述目标顶点之外的其余顶点确定为待删除顶点;
[0143]
将所述总顶点集合中的所述待删除顶点删除,得到不包含重复顶点的所述顶点集合;
[0144]
针对所述总平面集合中包含所述待删除顶点的平面,用所述目标顶点替换所述待删除顶点,得到不包含重复顶点的所述平面集合。
[0145]
具体的,在确定了重复顶点之后,可以将重复顶点加入重复顶点映射表,如:t
重复
{(i,k),

},其中顶点i和顶点k为重复顶点。重复顶点一般至少是两个顶点,那么将重复顶点中的其中一个顶点确定为目标顶点,除了目标顶点之外的其余顶点则为待删除顶点,然后将总顶点集合中的待删除顶点删除,就得到了不包含重复顶点的顶点集合,同时,针对总平面集合中包含待删除顶点的平面,用目标顶点替换待删除顶点,就得到了不包含重复顶点的平面集合。
[0146]
优选的,针对总平面集合中包含待删除顶点的平面,用目标顶点替换待删除顶点之后,如果出现重复的平面(包含的顶点均相同),则保留重复的平面中的其中一个平面,将其余的平面删除。
[0147]
本实施例中,通过上述方法,确定待删除顶点和待删除顶点的平面中要替换的顶
点,能够节省效率,避免出错。
[0148]
示例性的,图5d为本公开实施例提供的一种确定顶点集合和平面集合的原理示意图。如图5d所示,确定顶点集合和平面集合的过程已经在上述实施例中描述过,为了避免重复,此处不再赘述。
[0149]
示例性的,图5e为本公开实施例提供的一种三维模型去除噪声之后的示意图。通过对比图1d和图5e可知:三维模型中的噪声已经完全去除。
[0150]
本实施例提供一种噪声处理设备,该噪声处理设备包括:
[0151]
控制器,被配置为:基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合;
[0152]
基于所述顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出所述三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征;
[0153]
基于所述目标队列的长度,确定噪声点,并删除所述顶点集合中包含的所述噪声点,以及删除所述平面集合中包含所述噪声点的平面。
[0154]
在本实施例中,可选的,控制器,具体被配置为:
[0155]
在所述顶点集合为非空集合时,将所述顶点集合中的第一顶点存储至第一队列,并将所述顶点集合中的所述第一顶点删除;
[0156]
构建第二队列,将所述第二队列存储至对应的容器中;
[0157]
在所述第一队列为非空队列时,将所述第一队列中的所述第一顶点存储至所述第二队列,并将所述第一队列中的所述第一顶点删除;
[0158]
确定包含所述第一顶点的所有平面,将所述平面中满足预设条件的第二顶点存储至所述第一队列,并将所述顶点集合中的所述第二顶点删除,预设条件为:除了所述第一顶点之外,不在所述第一队列,在所述顶点集合中的顶点;
[0159]
返回执行所述将所述第一队列中的所述第一顶点存储至所述第二队列,并将所述第一队列中的所述第一顶点删除,直至所述第一队列为空队列,返回执行所述在所述顶点集合为非空集合时,将所述顶点集合中的第一顶点存储至第一队列,并将所述顶点集合中的所述第一顶点删除,直至所述顶点集合为空集合;
[0160]
其中,所述容器中存储的多个第二队列即为多个所述目标队列,所述目标队列用于表征对应的所述几何连通域。
[0161]
在本实施例中,可选的,控制器,具体被配置为:
[0162]
对各目标队列按照队列长度的大小进行排序,将除了队列长度最长的所述目标队列之外的其余所述目标队列确定为噪声点队列;
[0163]
将所述噪声点队列中包含的各顶点确定为所述噪声点。
[0164]
在本实施例中,可选的,控制器,具体被配置为:
[0165]
基于包含噪声的三维模型,确定不包含重复顶点的从顶点到平面的第一映射关系;
[0166]
基于所述第一映射关系,确定包含所述第一顶点的所有平面。
[0167]
在本实施例中,可选的,控制器,具体被配置为:
[0168]
确定构成所述三维模型的所有顶点形成的总顶点集合和对应的总平面集合;
[0169]
对所述总顶点集合进行重复顶点删除操作,得到不包含重复顶点的所述顶点集合,以及对所述总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的所述平面集合。
[0170]
在本实施例中,可选的,控制器,还被配置为:
[0171]
在对所述总顶点集合进行重复顶点删除操作,得到不包含重复顶点的所述顶点集合,以及对所述总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的所述平面集合之前,基于所述总顶点集合中各顶点分别对应的子空间,确定所述总顶点集合中包括的重复顶点。
[0172]
在本实施例中,可选的,控制器,具体被配置为:
[0173]
基于所述总顶点集合中各顶点对应的三维坐标值,确定每个维度对应的最小值;
[0174]
基于每个顶点对应的各维度的坐标值、相应维度对应的所述最小值以及空间划分粒度值,确定所述每个顶点对应的子空间;
[0175]
基于所述子空间,构建从顶点到子空间的第二映射关系;
[0176]
若所述第二映射关系中至少两个顶点对应的子空间相同,则将所述至少两个顶点确定为所述重复顶点。
[0177]
在本实施例中,可选的,控制器,具体被配置为:
[0178]
将所述重复顶点中的其中一个顶点确定为目标顶点,除了所述目标顶点之外的其余顶点确定为待删除顶点;
[0179]
将所述总顶点集合中的所述待删除顶点删除,得到不包含重复顶点的所述顶点集合;
[0180]
针对所述总平面集合中包含所述待删除顶点的平面,用所述目标顶点替换所述待删除顶点,得到不包含重复顶点的所述平面集合。
[0181]
本技术实施例中,噪声处理设备可以实现上述任意实施例提供的噪声处理方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0182]
图6是本公开实施例提供的一种噪声处理装置的结构示意图。该装置配置于电子设备中,可实现本技术任意实施例所述的容器处理方法。该装置具体包括如下:
[0183]
第一确定模块610,用于基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合;
[0184]
第二确定模块620,用于基于所述顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出所述三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征;
[0185]
删除模块630,用于基于所述目标队列的长度,确定噪声点,并删除所述顶点集合中包含的所述噪声点,以及删除所述平面集合中包含所述噪声点的平面。
[0186]
在本实施例中,可选的,第二确定模块620,包括:
[0187]
第一存储单元,用于在所述顶点集合为非空集合时,将所述顶点集合中的第一顶点存储至第一队列,并将所述顶点集合中的所述第一顶点删除;
[0188]
构建单元,用于构建第二队列,将所述第二队列存储至对应的容器中;
[0189]
在所述第一队列为非空队列时,将所述第一队列中的所述第一顶点存储至所述第二队列,并将所述第一队列中的所述第一顶点删除;
[0190]
第二存储单元,用于确定包含所述第一顶点的所有平面,将所述平面中满足预设条件的第二顶点存储至所述第一队列,并将所述顶点集合中的所述第二顶点删除,预设条件为:除了所述第一顶点之外,不在所述第一队列,在所述顶点集合中的顶点;
[0191]
返回单元,用于返回执行所述将所述第一队列中的所述第一顶点存储至所述第二队列,并将所述第一队列中的所述第一顶点删除,直至所述第一队列为空队列,返回执行所述在所述顶点集合为非空集合时,将所述顶点集合中的第一顶点存储至第一队列,并将所述顶点集合中的所述第一顶点删除,直至所述顶点集合为空集合;
[0192]
其中,所述容器中存储的多个第二队列即为多个所述目标队列,所述目标队列用于表征对应的所述几何连通域。
[0193]
在本实施例中,可选的,删除模块630,具体用于:
[0194]
对各目标队列按照队列长度的大小进行排序,将除了队列长度最长的所述目标队列之外的其余所述目标队列确定为噪声点队列;
[0195]
将所述噪声点队列中包含的各顶点确定为所述噪声点;
[0196]
删除所述顶点集合中包含的所述噪声点,以及删除所述平面集合中包含所述噪声点的平面。
[0197]
在本实施例中,可选的,第二存储单元,具体用于:
[0198]
基于包含噪声的三维模型,确定不包含重复顶点的从顶点到平面的第一映射关系;
[0199]
基于所述第一映射关系,确定包含所述第一顶点的所有平面;
[0200]
将所述平面中满足预设条件的第二顶点存储至所述第一队列,并将所述顶点集合中的所述第二顶点删除,预设条件为:除了所述第一顶点之外,不在所述第一队列,在所述顶点集合中的顶点。
[0201]
在本实施例中,可选的,第一确定模块610,包括:
[0202]
第一确定单元,用于确定构成所述三维模型的所有顶点形成的总顶点集合和对应的总平面集合;
[0203]
第二确定单元,用于对所述总顶点集合进行重复顶点删除操作,得到不包含重复顶点的所述顶点集合,以及对所述总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的所述平面集合。
[0204]
在本实施例中,可选的,上述装置还包括:
[0205]
第三确定单元,用于在对所述总顶点集合进行重复顶点删除操作,得到不包含重复顶点的所述顶点集合,以及对所述总平面集合中包含重复顶点的平面进行重复顶点替换操作,得到不包含重复顶点的所述平面集合之前,基于所述总顶点集合中各顶点分别对应的子空间,确定所述总顶点集合中包括的重复顶点。
[0206]
在本实施例中,可选的,第三确定单元,具体用于:
[0207]
基于所述总顶点集合中各顶点对应的三维坐标值,确定每个维度对应的最小值;
[0208]
基于每个顶点对应的各维度的坐标值、相应维度对应的所述最小值以及空间划分粒度值,确定所述每个顶点对应的子空间;
[0209]
基于所述子空间,构建从顶点到子空间的第二映射关系;
[0210]
若所述第二映射关系中至少两个顶点对应的子空间相同,则将所述至少两个顶点
确定为所述重复顶点。
[0211]
在本实施例中,可选的,第二确定单元,具体用于:
[0212]
将所述重复顶点中的其中一个顶点确定为目标顶点,除了所述目标顶点之外的其余顶点确定为待删除顶点;
[0213]
将所述总顶点集合中的所述待删除顶点删除,得到不包含重复顶点的所述顶点集合;
[0214]
针对所述总平面集合中包含所述待删除顶点的平面,用所述目标顶点替换所述待删除顶点,得到不包含重复顶点的所述平面集合。
[0215]
通过本公开实施例提供的噪声处理装置,首先基于包含噪声的三维模型,确定不包含重复顶点的顶点集合和平面集合,然后基于顶点集合中的顶点,进行相邻平面和相邻顶点搜索,直至确定出三维模型对应的多个几何连通域,每个几何连通域以按空间连接关系聚合的顶点形成的目标队列表征,最后基于目标队列的长度,确定噪声点,并删除顶点集合中包含的噪声点,以及删除平面集合中包含噪声点的平面,上述技术方案中基于几何连通域,根据目标队列的长度,确定噪声点,能够去除距离需要保留的目标点云较近的噪声,避免将目标点云也删除,无需结合噪声的分布先验,通用性更强,有利于提高重建的物体三维模型的准确性。
[0216]
本公开实施例所提供的噪声处理装置可执行本公开任意实施例所提供的噪声处理方法,具备执行方法相应的功能模块和有益效果。
[0217]
图7是本公开实施例提供的一种电子设备的结构示意图。如图7所示,该电子设备包括处理器710和存储装置720;电子设备中处理器710的数量可以是一个或多个,图7中以一个处理器710为例;电子设备中的处理器710和存储装置720可以通过总线或其他方式连接,图7中以通过总线连接为例。
[0218]
存储装置720作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的噪声处理方法对应的程序指令/模块。处理器710通过运行存储在存储装置720中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现本公开实施例所提供的噪声处理方法。
[0219]
存储装置720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置720可进一步包括相对于处理器710远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0220]
本实施例提供的一种电子设备可用于执行上述任意实施例提供的噪声处理方法,具备相应的功能和有益效果。
[0221]
本公开实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述噪声处理方法执行的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0222]
其中,该计算机可读存储介质可以为只读存储器(read-only memory,rom)、随机
存取存储器(random access memory,ram)、磁碟或者光盘等。
[0223]
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述在一些实施例中讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1