一种点云数据的线性拟合方法和装置与流程

文档序号:31899349发布日期:2022-10-22 03:26阅读:348来源:国知局
一种点云数据的线性拟合方法和装置与流程

1.本发明涉及点云数据处理技术领域,尤其涉及一种点云数据的线性拟合方法和装置。


背景技术:

2.三维点云数据是用三维坐标(x,y,z)数据表征的许多点的集合。点云数据能够表征物体的表面三维信息,但是这些散点表达方式的拓扑属性较差,且冗余数据较多。线特征是表达物体表面几何结构的重要方式,将散点拟合成直线和曲线,可以降低点云数据的冗余,真实准确地表征物体表面的几何结构。
3.对于点数量较多或线性特征较为复杂的点云数据,为了提高线性拟合的准确性,会对点云数据先进行分段,然后对各个子段分别进行拟合,得到多个线段点簇。为了综合表达物体表面的几何结构,还需要将多个线段点簇进一步衔接起来。
4.目前,基于散点的线性拟合主要是先忽略散点的z坐标,只对散点的(x,y)坐标做直线或曲线的拟合。这种方法应用于上述线段点簇衔接的场景中,拟合得到的衔接线段往往不够平滑,有可能与前后两个线段点簇衔接不上,这样使得拟合线段不能准确的表达物体表面的几何结构。


技术实现要素:

5.本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明第一方面提出一种点云数据的线性拟合方法,所述方法包括:一种点云数据的线性拟合方法,其特征在于,所述方法包括:获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据;分别获取所述第一线段点簇在所述第一点数据处的方向向量、所述第二线段点簇在所述第二点数据处的方向向量、所述第一点数据和所述第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量;根据所述第一方向向量、所述第二方向向量、所述第三方向向量,确定所述第一线段点簇和所述第二线段点簇之间的衔接线段的曲直性;若所述衔接线段为曲线,则利用参数化的曲线拟合模型对所述衔接线段进行拟合,并利用所述第一方向向量和所述第二方向向量作为拟合的约束条件,得到第一目标衔接线段;利用所述第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇。
6.本发明第二方面提出一种点云数据的线性拟合装置,所述装置包括:点数据获取模块,用于获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据;方向向量获取模块,用于分别获取所述第一线段点簇在所述第一点数据处的方向
向量、所述第二线段点簇在所述第二点数据处的方向向量、所述第一点数据和所述第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量;曲直性确定模块,用于根据所述第一方向向量、所述第二方向向量、所述第三方向向量,确定所述第一线段点簇和所述第二线段点簇之间的衔接线段的曲直性;曲线拟合模块,用于若所述衔接线段为曲线,则利用参数化的曲线拟合模型对所述衔接线段进行拟合,并利用所述第一方向向量和所述第二方向向量作为拟合的约束条件,得到第一目标衔接线段;连接模块,用于利用所述第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇。
7.本发明第三方面提出一种电子设备,所述电子设备包括处理器和存储器,所述存储器种存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的点云数据的线性拟合方法。
8.本发明第四方面提出一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的点云数据的线性拟合方法。
9.本发明实施例具有以下有益效果:在本发明实施例中,获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据;分别获取第一线段点簇在第一点数据处的方向向量、第二线段点簇在第二点数据处的方向向量、第一点数据和第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量;根据第一方向向量、第二方向向量、第三方向向量,确定第一线段点簇和第二线段点簇之间的衔接线段的曲直性;若衔接线段为曲线,则利用参数化的曲线拟合模型对衔接线段进行拟合,并利用第一方向向量和第二方向向量作为拟合的约束条件,得到第一目标衔接线段;利用第一目标衔接线段连接第一线段点簇和第二线段点簇。本方案通过对衔接线段曲直性的判断,增强了对线性场景的适应性;并且,本方案在曲线拟合时增加方向约束条件,使得在连续的线性连接时能够达到平滑连接的效果,使得拟合线段能够准确的表达物体表面的几何结构。
10.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
11.为了更清楚地说明本发明的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还能够根据这些附图获得其它附图。
12.图1为本发明实施例提供的第一种点云数据的线性拟合方法的步骤流程图;图2为本发明实施例提供的第一线段点簇和第二线段点簇的示意图;图3为本发明实施例提供的第二种点云数据的线性拟合方法的步骤流程图;图4(a)为本发明实施例提供的一种端点方向向量长度对曲线拟合影响的示意图
一;图4(b)为本发明实施例提供的一种端点方向向量长度对曲线拟合影响的示意图二;图5为本发明实施例提供的第三种点云数据的线性拟合方法的步骤流程图;图6为本发明实施例提供的一种点云数据的线性拟合装置的结构框图。
具体实施方式
13.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
14.本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或无创造性的劳动可以包括更多或者更少的操作步骤。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
15.图1为本发明实施例提供的第一种点云数据的线性拟合方法的步骤流程图。该方法可以包括如下步骤:步骤101、获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据。
16.对于点数量较多或线性特征较为复杂的点云数据,为了提高线性拟合的准确性,会对点云数据先进行分段,然后对各个子段分别进行拟合,得到多个线段点簇。为了综合表达物体表面的几何结构,还需要将多个线段点簇进一步衔接起来。
17.第一线段点簇和第二线段点簇为原始点云数据被分成的多个子段中的两个子段,当前需要将第一线段点簇和第二线段点簇利用线性拟合的方法平滑的衔接起来。
18.第一线段点簇的位置在第二线段点簇的前面。获取位于第一线段点簇的末尾的那个点数据的坐标,即终点数据,获取位于第二线段点簇的起点的那个点数据的坐标,即起点数据。将终点数据作为第一点数据,将起点数据作为第二点数据。
19.图2为本发明实施例提供的第一线段点簇和第二线段点簇的示意图。
20.如图2所示,l1为第一线段点簇,l2为第二线段点簇。三维点p1(x1,y1,z1)、p2(x2,y2,z2)分别对应平面点a(x1,y1),b(x2,y2)。其中,点a为l1的终点,点b为l2的起点,即点a(x1,y1)为第一点数据,点b(x2,y2)为第二点数据。
21.步骤102、分别获取所述第一线段点簇在所述第一点数据处的方向向量、所述第二线段点簇在所述第二点数据处的方向向量、所述第一点数据和所述第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量。
22.空间直线的方向用一个与该直线平行的非零向量来表示,该向量称为这条直线的一个方向向量。直线在空间中的位置,由它经过的空间一点及它的一个方向向量完全确定。
23.此处还需要验证第一点数据和第二点数据是否为同一个点,且第一点数据和第二点数据是否都具有有效的方向向量。如果第一点数据和第二点数据是同一个点,或者,第一点数据或第二点数据没有有效的方向向量,则均退出本方案流程。
24.在确定上述两种情况均不存在后,获取第一方向向量、第二方向向量和第三方向向量。
25.参照图2,l1在点a处的方向向量为,l2在点b处的方向向量为,点a和点b构成的向量的方向向量为。
26.其中,x5,y5的计算方法如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
ꢀꢀꢀꢀꢀꢀꢀ
(2)这样,得到第一方向向量,第二方向向量,第三方向向量。
27.步骤103、根据所述第一方向向量、所述第二方向向量、所述第三方向向量,确定所述第一线段点簇和所述第二线段点簇之间的衔接线段的曲直性。
28.具体地,若第一方向向量、第二方向向量、第三方向向量的方向一致,则第一线段点簇和所述第二线段点簇之间的衔接线段为直线,若第一方向向量、第二方向向量、第三方向向量的方向不一致,则连接线段为曲线。
29.步骤104、若所述衔接线段为曲线,则利用参数化的曲线拟合模型对所述衔接线段进行拟合,并利用所述第一方向向量和所述第二方向向量作为拟合的约束条件,得到第一目标衔接线段。
30.若衔接线段为曲线,则需要利用曲线拟合模型对衔接线段进行拟合。曲线拟合模型包括二次多项式函数、三次多项式函数、半对数函数、log-log拟合函数等,可以根据点云数据的线性特征选择最适合的函数作为本方案中的曲线拟合模型。
31.为了增强拟合效果、提高衔接线段的平滑度,可以利用第一方向向量和第二方向向量作为拟合的约束条件,使得衔接线段的方向变化与第一方向向量和第二方向向量更为匹配。
32.与现有技术中只使用第一点数据和第二点数据的坐标对衔接线段进行拟合相比,本方案中将第一方向向量和第二方向向量也作为拟合的约束条件,使得在连续的线性连接中能够达到平滑连接的效果。
33.步骤105、利用所述第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇。
34.在拟合得到第一目标衔接线段后,利用第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇,第一线段点簇、第一目标衔接线段和第二线段点簇三者组成一段平滑的线段,能够真实准确地表征物体表面的几何结构。
35.综上,在本发明实施例中,获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据;分别获取第一线段点簇在第一点数据处的方向向量、第二线段点簇在第二点数据处的方向向量、第一点数据和第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量;根据第一方向向量、第二方向向量、第三方向向量,确定第一线段点簇和第二线段点簇之间的衔接线段的
曲直性;若衔接线段为曲线,则利用参数化的曲线拟合模型对衔接线段进行拟合,并利用第一方向向量和第二方向向量作为拟合的约束条件,得到第一目标衔接线段;利用第一目标衔接线段连接第一线段点簇和第二线段点簇。本方案通过对衔接线段曲直性的判断,增强了本方案对线性场景的适应性;并且,本方案在曲线拟合时增加方向约束条件,使得在连续的线性连接时能够达到平滑连接的效果,使得拟合线段能够准确的表达物体表面的几何结构。
36.图3为本发明实施例提供的第二种点云数据的线性拟合方法的步骤流程图。该方法可以包括如下步骤:步骤201、获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据。
37.在本发明实施例中,步骤201可以参照步骤101,此处不再赘述。
38.步骤202、分别获取所述第一点数据、所述第二点数据、所述第一点数据和所述第二点数据的连线的方向向量,得到第一方向向量、第二方向向量和第三方向向量;所述第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量。
39.在本发明实施例中,单位向量是指模等于1的向量。由于是非零向量,单位向量具有确定的方向。
40.第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量,可以方便后续确定三个方向向量是否在同一条直线上。
41.步骤203、若所述第一方向向量、所述第二方向向量、所述第三方向向量中有任意两个向量不相等,则确定所述衔接线段为曲线。
42.由于第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量,所有只需要判断三者是否相等,即可确定三者是否在同一条直线上,由此可以确定衔接线段为曲线还是直线。
43.若三者中有任意两个向量不相等,则说明三者不在一条直线上,则说明衔接线段是曲线。
44.如图2中示例,点a处的第一方向向量为,点b处的第二方向向量为,向量对应的第三方向向量为,v1≠v2≠v3,则说明衔接线段l3为曲线。
45.步骤204、若所述衔接线段为曲线,将参数化的三次多项式确定为曲线拟合模型,所述曲线拟合模型的自变量为所述第一点数据和所述衔接线段上的任意一点之间的距离,所述曲线拟合模型包括八个拟合参数。
46.在本发明实施例中,参数化的三次多项式可以表示为:
ꢀꢀꢀ
(3)其中,a1、b1、c1、d1、a2、b2、c2、d2为八个拟合参数。自变量t为第一点数据和衔接线段上的任意一点之间的距离。,其中,,即t为第一点数据和第二点数据之间的距离。在第一点数据处,t=0,在第二点数据处,t=t。
47.采用参数化的三次多项式作为曲线拟合模型,足够进行两点之间的拟合,且可以解决一个x坐标对应多个y坐标的问题。
48.在步骤204之后,可以选择执行步骤205-步骤208,也可以选择执行步骤209-步骤213。
49.步骤205、确定在所述第一点数据处,所述曲线拟合模型对应的第一表达式,在所述第二点数据处,所述曲线拟合模型对应的第二表达式。
50.基于图2所示的场景,根据步骤204选取的曲线拟合模型,点a、b之间需要参数化的三次多项式模型进行平滑拟合,因此拟合曲线必须经过点a(x1,y1)和b(x2,y2),并且在点a、b处的前进方向分别为和。
51.具体地,将第一点数据的坐标代入曲线拟合模型,得到第一表达式,将第二点数据的坐标代入曲线拟合模型,得到第二表达式。
52.将第一点数据a(x1,y1)、t=0代入曲线拟合模型,得到第一表达式:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)将第二点数据b(x2,y2)、t=t代入曲线拟合模型,得到第二表达式:
ꢀꢀꢀꢀꢀꢀ
(5)步骤206、根据所述第一点数据处所述曲线拟合模型的偏导数为所述第一方向向量,所述第二点数据处所述曲线拟合模型的偏导数为所述第二方向向量,得到第一约束条件和第二约束条件。
53.曲线拟合模型在第一点数据处的偏导数为第一方向向量,具体如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)第二点数据处的曲线拟合模型的偏导数为第二方向向量,具体如下:
ꢀꢀꢀꢀꢀ
(7)上述式(6)和式(7)分别为第一约束条件和第二约束条件。
54.步骤207、根据所述第一表达式、所述第二表达式、所述第一约束条件和所述第二约束条件确定所述八个拟合参数的取值。
55.将第一表达式、第二表达式、第一约束条件和第二约束条件这几个等式进行联立,可以得到八个拟合参数a1、b1、c1、d1、a2、b2、c2、d2的取值。
56.步骤208、根据所述八个拟合参数的取值确定第一目标衔接线段。
57.在得到八个拟合参数的取值后,将其代入式(3),可以得到第一目标衔接线段的表达式。
58.步骤209、对所述第一方向向量设置第一长度调整参数、对所述第二方向向量设置第二长度调整参数。
59.为了增强本方案的曲线拟合模型适应多场景拟合的泛化能力,设置参数调节系数来改变第一点数据处和第二点数据处方向向量的长度。具体地,对第一方向向量设置第一长度调整参数,对所述第二方向向量设置第二长度调整参数。
60.这样,点a处的方向向量的第一调整向量为,点b处的方向向量的第二调整向量为。
61.这样,根据第一方向向量为单位向量,得到第一长度调整参数与所述第一点数据的横坐标和纵坐标之间的第一关系式;根据第二方向向量为单位向量,得到第二长度调整参数与所述第二点数据的横坐标和纵坐标之间的第二关系式。
62.第一方向向量和第二方向向量为单位向量,则有:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)根据式(8),可以得到第一关系式和第二关系式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)由第一关系式和第二关系式可以看出,由于长度调节参数的加入,第一方向向量和第二方向向量由常量转换为了变量。
63.步骤210、根据所述第一点数据处所述曲线拟合模型的偏导数为所述第一方向向量和所述第一长度调整参数的乘积,得到第三约束条件。
64.在第一点数据处,t=0,曲线拟合模型在第一点数据处的偏导数为第一方向向量与第一长度调整参数的乘积,第三约束条件具体如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)步骤211、根据所述第二点数据处所述曲线拟合模型的偏导数为所述第二方向向量和所述第二长度调整参数的乘积,得到第四约束条件。
65.在第二点数据处,t=t,曲线拟合模型在第二点数据处的偏导数为第二方向向量与第二长度调整参数的乘积,第四约束条件具体如下:
ꢀꢀꢀꢀꢀꢀꢀ
(11)步骤212、根据所述第一表达式、所述第二表达式、所述第三约束条件和所述第四约束条件对所述衔接线段进行拟合。
66.将第一表达式、第二表达式、第三约束条件和第四约束条件这几个等式进行联立,可以得到八个拟合参数a1、b1、c1、d1、a2、b2、c2、d2的取值。其中:(12)步骤213、根据所述八个拟合参数的取值确定第一目标衔接线段。
67.将这八个取值代入式(5),可得到第一目标衔接线段。
68.在一种可能的实施方式中,所述对所述第一方向向量设置第一长度调整参数、对所述第二方向向量设置第二长度调整参数,包括:
根据期望得到的第一目标衔接线段的曲率半径,设置所述第一方向向量的第一长度调整参数的取值、所述第二方向向量的第二长度调整参数的取值。
69.在本发明实施例中,经过多次试验,结果表明第一长度调整参数、第二长度调整参数会对第一衔接线段的曲率产生影响。
70.图4(a)为本发明实施例提供的一种端点方向向量长度对曲线拟合影响的示意图一。图4(b) 为本发明实施例提供的一种端点方向向量长度对曲线拟合影响的示意图二。
71.如图4(a)和图4(b)所示,当点a处的第一调整向量为v4、点b处的第二调整向量为v2时,第一目标衔接线段为曲线l4;当点a处的第一调整向量为v1、点b处的第二调整向量同样为v2时,第一目标衔接线段为曲线l3,其中,v4和v1方向平行。当v4的长度大于v1的长度时,由图4(a)可看出,曲线l4在端点a处比曲线l3更加凸起;当v4的长度小于v1的长度时,由图4(b)可看出,曲线l3在端点a处比曲线l4更加凸起。由此可知,第一目标衔接线段的曲线的曲率与起始端点对应的第一长度调整参数的长度成正比。通过类似的试验,同样可以得到终止节点对应的第二长度调整参数对第一目标衔接线段的曲线的曲率的影响关系。
72.因此,只要根据拟合场景的特征提取解算出合适的第一长度调整参数、第二长度调整参数,就可以生成曲率合适的拟合曲线,因此,带有长度调整参数的线性拟合方法对多场景具有更强的适应性和泛化能力。
73.步骤214、利用所述第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇。
74.在本发明实施例中,步骤214可以参照步骤105,此处不再赘述。
75.综上,在本发明实施例中,在端点坐标和方向约束的两点间线性拟合的场景下,通过两点构成的方向向量与两个端点本身的方向向量的比较来确定两点间是直线还是曲线亦或是异常退出的状态,为后续选择拟合模型提供了参考。
76.并且,在曲线拟合模型的基础上,增加了端点坐标和方向向量的约束,使得两点间的曲线拟合连接的更加平滑。
77.此外,在曲线拟合模型的基础上,提出了基于端点和方向约束条件下带有长度调整参数的曲线拟合方法,通过增加长度调整参数,增强了本方案对多场景具有更强的适应性和泛化能力。
78.图5为本发明实施例提供的第三种点云数据的线性拟合方法的步骤流程图。该方法可以包括如下步骤:步骤301、获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据。
79.在本发明实施例中,步骤301可以参照步骤101,此处不再赘述。
80.步骤302、分别获取所述第一点数据、所述第二点数据、所述第一点数据和所述第二点数据的连线的方向向量,得到第一方向向量、第二方向向量和第三方向向量;所述第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量。
81.在本发明实施例中,步骤302可以参照步骤202,此处不再赘述。
82.步骤303、若所述第一方向向量、所述第二方向向量、所述第三方向向量均相等,则确定所述衔接线段为直线。
83.由于第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量,所有只
需要判断三者是否相等,即可确定三者是否在同一条直线上,由此可以确定衔接线段为曲线还是直线。
84.若三个方向向量均相等,则说明三个方向向量在一条直线上,则说明衔接线段是直线。
85.步骤304、若所述衔接线段为直线,则将包含三个参数的直线方程确定为直线拟合模型。
86.当判断起点和终点之间的衔接线段为直线时,选择直线方程作为直线拟合模型,直线拟合模型如下所示:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)其中,e、f、g为三个拟合参数。
87.步骤305、利用所述直线拟合模型对所述衔接线段进行拟合,得到第二目标衔接线段。
88.通过直线拟合模型上的第一点数据和第二点数据的坐标值进行直线拟合,可以得到e、f、g为三个拟合参数的取值,将三个拟合参数的取值代入式(13),得到第二目标衔接线段。
89.在一种可能的实施方式中,所述利用所述直线拟合模型对所述衔接线段进行拟合,包括步骤3051-步骤3054:步骤3051、确定所述第一点数据和所述第二点数据的横坐标相同时,所述直线拟合模型的第三表达式。
90.将第一点数据a(x1,y1)、第二点数据b(x2,y2)代入式(13),得到:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)将式(14)中的两个式子相减,得到:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)当第一点数据和所述第二点数据的横坐标相同时,,此时由式(15)得到第三表达式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)步骤3052、确定所述第一点数据和所述第二点数据的纵坐标相同时,所述直线拟合模型的第四表达式。
91.当第一点数据和所述第二点数据的横坐标相同时,,此时由式(15)得到第四表达式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(17)步骤3053、确定所述第一点数据和所述第二点数据的横坐标和纵坐标均不相同时,所述直线拟合模型的第五表达式。
92.确定所述第一点数据和所述第二点数据的横坐标和纵坐标均不相同时,且
,此时由式(15)得到第五表达式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(18)步骤3054、根据所述第三表达式、所述第四表达式和所述第五表达式,对所述衔接线段进行拟合。
93.将第三表达式、第四表达式、第五表达式这几个等式进行联立,可以得到三个拟合参数e、f、g的取值。
94.将这三个取值代入式(13),可得到第二目标衔接线段。
95.综上,在本发明实施例中,利用第一方向向量、第二方向向量、第三方向向量为判断衔接线段是直线还是曲线,判断方法简单准确,方便后续利用不同的拟合方法对衔接线段进行拟合。在判定衔接线段为直线的情况下,利用包括三个拟合参数的直线方程进行拟合,提高了拟合效率和拟合准确性。
96.图6为本发明实施例提供的一种点云数据的线性拟合装置的结构框图。该装置400包括:点数据获取模块401,用于获取待进行衔接的第一线段点簇的终点数据和第二线段点簇的起点数据,得到第一点数据和第二点数据;方向向量获取模块402,用于分别获取所述第一线段点簇在所述第一点数据处的方向向量、所述第二线段点簇在所述第二点数据处的方向向量、所述第一点数据和所述第二点数据构成的目标向量的方向向量,得到第一方向向量、第二方向向量和第三方向向量;曲直性确定模块403,用于根据所述第一方向向量、所述第二方向向量、所述第三方向向量,确定所述第一线段点簇和所述第二线段点簇之间的衔接线段的曲直性;曲线拟合模块404,用于若所述衔接线段为曲线,则利用参数化的曲线拟合模型对所述衔接线段进行拟合,并利用所述第一方向向量和所述第二方向向量作为拟合的约束条件,得到第一目标衔接线段;连接模块405,用于利用所述第一目标衔接线段连接所述第一线段点簇和所述第二线段点簇。
97.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
98.在本发明实施例中,所述第一方向向量、所述第二方向向量、所述第三方向向量均为单位向量。
99.在本发明实施例中,所述曲直性确定模块具体用于:若所述第一方向向量、所述第二方向向量、所述第三方向向量均相等,则确定所述衔接线段为直线;若所述第一方向向量、所述第二方向向量、所述第三方向向量中有任意两个向量不相等,则确定所述衔接线段为曲线。
100.在本发明实施例中,所述曲线拟合模块具体用于:将参数化的三次多项式确定为曲线拟合模型,所述曲线拟合模型的自变量为所述第一点数据和所述衔接线段上的任意一点之间的距离,所述曲线拟合模型包括八个拟合参
数;确定在所述第一点数据处,所述曲线拟合模型对应的第一表达式,在所述第二点数据处,所述曲线拟合模型对应的第二表达式;根据所述第一点数据处所述曲线拟合模型的偏导数为所述第一方向向量,所述第二点数据处所述曲线拟合模型的偏导数为所述第二方向向量,得到第一约束条件和第二约束条件;根据所述第一表达式、所述第二表达式、所述第一约束条件和所述第二约束条件确定所述八个拟合参数的取值;根据所述八个拟合参数的取值确定第一目标衔接线段。
101.在本发明实施例中,所述装置还包括:直线拟合模型确定模块,用于若所述衔接线段为直线,则将包含三个参数的直线方程确定为直线拟合模型;直线拟合模块,用于利用所述直线拟合模型对所述衔接线段进行拟合,得到第二目标衔接线段。
102.在本发明实施例中,所述直线拟合模块具体用于:确定所述第一点数据和所述第二点数据的横坐标相同时,所述直线拟合模型的第三表达式;确定所述第一点数据和所述第二点数据的纵坐标相同时,所述直线拟合模型的第四表达式;确定所述第一点数据和所述第二点数据的横坐标和纵坐标均不相同时,所述直线拟合模型的第五表达式;根据所述第三表达式、所述第四表达式和所述第五表达式,对所述衔接线段进行拟合。
103.在本发明实施例中,所述曲线拟合模块具体用于:将参数化的三次多项式确定为曲线拟合模型,所述曲线拟合模型的自变量为所述第一点数据和所述衔接线段上的任意一点之间的距离,所述曲线拟合模型包括八个拟合参数;对所述第一方向向量设置第一长度调整参数、对所述第二方向向量设置第二长度调整参数;根据所述第一点数据处所述曲线拟合模型的偏导数为所述第一方向向量和所述第一长度调整参数的乘积,得到第三约束条件;根据所述第二点数据处所述曲线拟合模型的偏导数为所述第二方向向量和所述第二长度调整参数的乘积,得到第四约束条件;根据所述第一表达式、所述第二表达式、所述第三约束条件和所述第四约束条件确定所述八个拟合参数的取值;根据所述八个拟合参数的取值确定第一目标衔接线段。
104.在本发明实施例中,所述曲线拟合模块进一步用于:根据期望得到的第一目标衔接线段的曲率半径,设置所述第一方向向量的第一长度调整参数的取值、所述第二方向向量的第二长度调整参数的取值。
105.在本发明提供的又一实施例中,还提供了一种设备,所述设备包括处理器和存储器,所述存储器种存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现本发明实施例中所述的点云数据的线性拟合方法。
106.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现本发明实施例中所述的点云数据的线性拟合方法。
107.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk (ssd))等。
108.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
109.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
110.以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1