CN107492120A - 点云配准方法 - Google Patents
点云配准方法 Download PDFInfo
- Publication number
- CN107492120A CN107492120A CN201710584041.3A CN201710584041A CN107492120A CN 107492120 A CN107492120 A CN 107492120A CN 201710584041 A CN201710584041 A CN 201710584041A CN 107492120 A CN107492120 A CN 107492120A
- Authority
- CN
- China
- Prior art keywords
- point
- mrow
- mtd
- test
- mtr
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种点云配准方法。该方法包括:获取测试点集中的满足预设位置的四个测试特征点以及参考点集中的与每个测试特征点对应的参考特征点,其中测试值是由测试特征点的高斯曲率与平均曲率确定的,参考值是由参考特征点的高斯曲率与平均曲率确定的;获取使得测试点集中的四个测试特征点到参考点集中的四个参考特征点距离最小的粗配准矩阵;根据粗配准矩阵和测试点集,得到粗配准点集;获取使得粗配准点集中各粗配准点到参考点集中的第一参考点的距离和最小的精配准矩阵,且第一参考点与粗配准点集中各粗配准点之间的距离最小。本发明解决了现有点云配准方法中估计所有数据点的特征造成的耗时长且精度低的问题,有效提高了计算效率和精度。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种点云配准方法。
背景技术
点云配准方法通过两个坐标系之间的变化矩阵,其中变化矩阵包含旋转和平移,将一个数据点云(测试点集)的坐标匹配到另一个数据点云(参考点集)的坐标下,从而达到两片点云坐标的一致性。由于点云配准方法的配准精度直接影响误差分析等后续过程的可靠性,因此,在立体匹配、目标识别、姿态估计和图像匹配等计算机视觉领域和计算机辅助几何领域中,点云配准方法是一项关键步骤。
现有的点云配准方法通常包括粗配准和精配准两个过程,其中,粗配准过程为精配准提供一个较好的配准初值,粗配准过程具体会将数据点云的局部几何信息(如曲率、法向量、邻近点密度等)作为特征,来寻找测试点集与参考点集的某种对应关系,粗配准过程会利用迭代最近点技术中数据点云间的距离定义实现配准。
然而,现有的粗配准过程只估计点云数据的单一特征,无法完整描述点云数据的性能和状态,且当点云数据规模较大时,估计全部点云数据的特征耗时长且精度低,使得点云配准方法鲁棒性较差、计算效率低且无法向精配准过程提供一个较好的配准初值,也使得精配准过程的精度与效率变低。
发明内容
本发明提供一种点云配准方法,以解决现有点云配准方法中估计所有数据点的特征造成的耗时长且精度低的问题。
本发明提供一种点云配准方法,包括:
获取测试点集中的满足预设位置的四个测试特征点以及参考点集中的与每个测试特征点对应的参考特征点,其中针对任一测试特征点,计算所述任一测试特征点的测试值与所述参考点集中的每个参考点的参考值的差值,确定最小差值对应的参考点为所述任一测试特征点对应的参考特征点,所述测试值是由所述测试特征点的高斯曲率与平均曲率确定的,所述参考值是由所述参考特征点的高斯曲率与平均曲率确定的;
获取使得所述测试点集中的四个测试特征点到所述参考点集中的四个参考特征点距离最小的粗配准矩阵;
根据所述粗配准矩阵和所述测试点集,得到粗配准点集;
获取使得所述粗配准点集中的各粗配准点到所述参考点集中的第一参考点的距离和最小的精配准矩阵,且所述第一参考点与所述粗配准点集中的各粗配准点之间的距离最小。
可选地,所述满足预设位置的四个测试特征点包括第一测试特征点、第二测试特征点、第三测试特征点和第四测试特征点,其中所述第一测试特征点为所述测试点集的中心点,所述第二测试特征点为所述测试点集中与所述第一测试特征点距离最远的点,所述第三测试特征点为所述测试点集中与所述第一测试特征点和所述第二测试特征点距离之和最大的点,所述第四测试特征点为所述测试点集中与所述第一测试特征点和所述第二测试特征点和所述第三测试特征点距离之和最大的点;
所述获取测试点集中的满足预设位置的四个测试特征点,包括:
通过如下公式一得到所述第一测试特征点pf1 s;
通过如下公式二得到所述第二测试特征点pf2 s;
通过如下公式三得到所述第三测试特征点pf3 s;
通过如下公式四得到所述第四测试特征点pf4 s;
其中,Ps为测试点集,p为所述测试点集Ps中的任一测试点,ns为所述测试点集中测试点的个数。
可选地,所述获取参考点集中的与每个测试特征点对应的参考特征点,包括:
根据二次曲面表达形式、高斯曲率表达式和平均曲率表达式,对所述测试点集中的四组k+1个测试点进行拟合,得到所述测试点集中的四个测试特征点各自的高斯曲率和平均曲率,其中,针对每组k+1个点,所述测试点集中的k+1个测试点为一个测试特征点以及与该测试特征点距离最小的k个测试点;
根据所述二次曲面表达形式、所述高斯曲率表达式和所述平均曲率表达式,选取所述参考点集中的m个参考点进行拟合,得到所述参考点集中各参考点的高斯曲率和平均曲率,其中9<m≤nt,m为正整数,nt为所述参考点集中参考点的个数;
根据所述测试点集中的四个测试特征点各自的高斯曲率和平均曲率以及所述参考点集中的每个参考点的高斯曲率和平均曲率,获取与每个测试特征点对应的参考特征点。
可选地,所述二次曲面表达形式f(x,y)如下公式五表示:
其中,为所述二次曲面表达形式f(x,y)的参数。
可选地,所述高斯曲率表达式和所述平均曲率表达式通过如下公式六表示:
其中,E,F,G和L,M,N分别为所述二次曲面的第一基本型与第二基本型,n为所述二次曲面在当前点处的法向量;
可选地,所述与每个测试特征点对应的参考特征点pfi t通过如下公式七表示;
其中,Pt为所述参考点集,p为所述参考点集Pt中的任一参考点,Kp为所述参考点集的高斯曲率,Hp为所述参考点集的平均曲率,Kpfis为所述测试点集的四个测试特征点各自的高斯曲率,Hpfis为所述测试点集的四个测试特征点各自的平均曲率,i=1,...,4。
可选地,所述粗配准矩阵Tr通过如下公式八表示:
其中,矩阵T为粗配准变化矩阵,以使所述测试点集中的四个测试特征点到所述参考点集中的四个参考特征点的距离不同。
可选地,所述粗配准点集Pr通过如下公式九表示:
Pr=Tr·Ps 公式九。
可选地,
通过如下公式十表示所述参考点集Pt中的第一参考点
通过如下公式十一表示所述精配准矩阵Tf:
其中,p为所述参考点集Pt中的任一参考点,为所述粗配准点集中的任一粗配准点。
本发明提供的点云配准方法,通过获取测试点集中的满足预设位置的四个测试特征点,在进行二次曲面的拟合之后,将四个测试特征点的高斯曲率和平均曲率作为其局部几何特征,能够减少运算时间,接着获取了使得四个测试点特征点到四个参考特征点距离最小的粗配准矩阵,为精配准过程提供了可靠、精确的初值,最后获取了获取使得粗配准点集中的各粗配准点到参考点集中的第一参考点的距离和最小的精配准矩阵,且所第一参考点与粗配准点集中的各粗配准点之间的距离,定义了粗配准点集中各粗配准点到精配准点集中各精配准点的距离,且借助迭代最近点技术实现了精配准过程。本发明解决了现有点云配准方法中估计所有数据点的特征造成的耗时长且精度低的问题,具有较高的配准精度和计算效率,且鲁棒性好。
附图说明
图1为本发明提供的点云配准方法的流程图一;
图2为本发明提供的点云配准方法的流程图二;
图3为本发明提供的点云配准方法的流程图三;
图4为本发明提供的点云配准方法中四个测试特征点的分布示意图;
图5为本发明提供的点云配准方法中粗配准和精配准的效果示意图。
具体实施方式
图1为本发明提供的点云配准方法的流程图一,图2为本发明提供的点云配准方法的流程图二。如图1所示,本实施例的点云配准方法包括:
S101、获取测试点集中的满足预设位置的四个测试特征点以及参考点集中的与每个测试特征点对应的参考特征点,其中针对任一测试特征点,计算任一测试特征点的测试值与参考点集中的每个参考点的参考值的差值,确定最小差值对应的参考点为任一测试特征点对应的参考特征点,测试值是由测试特征点的高斯曲率与平均曲率确定的,参考值是由参考特征点的高斯曲率与平均曲率确定的。
具体地,由于坐标系可由有不共面的四个数据点唯一确定,因此,本实施例可从测试点集中选择满足预设位置的四个测试特征点,其中该预设位置使得四个测试特征点构成一个坐标系。相比现有技术中提取特征点的过程,本实施例步骤S101只需提取四个测试特征点,计算量较小,会更加省时。同时,由于四个测试特征点构成唯一的一个坐标系,使得四个测试特征点形成了测试点集的一种类骨架结构,足以完成精确的粗配准过程。
进一步地,本实施例可采用不同的预设位置来获取四个测试特征点,本实施例对此不做限定,只需满足四个测试特征点能够构成一个坐标系即可。可选地,满足预设位置的四个测试特征点包括第一测试特征点、第二测试特征点、第三测试特征点和第四测试特征点,其中第一测试特征点为测试点集的中心点,第二测试特征点为测试点集中与第一测试特征点距离最远的点,第三测试特征点为测试点集中与第一测试特征点和第二测试特征点距离之和最大的点,第四测试特征点为测试点集中与第一测试特征点和第二测试特征点和第三测试特征点距离之和最大的点;
获取测试点集中的满足预设位置的四个测试特征点,包括:
通过如下公式一得到第一测试特征点pf1 s;
通过如下公式二得到第二测试特征点pf2 s;
通过如下公式三得到第三测试特征点pf3 s;
通过如下公式四得到第四测试特征点pf4 s;
其中,Ps为测试点集,p为测试点集Ps中的任一测试点,ns为测试点集中测试点的个数。
具体地,通过上述公式一、公式二、公式三、公式四以及公式五各自计算得到测试点集中的第一测试特征点、第二测试特征点、第三测试特征点和第四测试特征点能够构成一个坐标系,进而构成该测试点集的一种类骨架结构,以表征该测试点集。
进一步地,本实施例中可利用数据点集中数据散点的高斯曲率与平均曲率来表征数据点集的几何特征,因此,本实施例中还需获取参考点集中的与每个测试特征点对应的参考特征点。其中获取参考特征点的具体过程为:针对其中一个测试特征点,需计算出该测试特征点的测试值,再计算出参考点集中每个参考点的参考值,接着计算该测试值与各个参考值的差值,取所有差值中最小值对应的参考点为该测试特征点对应的参考特征点。最后,针对其他三个测试特征点,按照上述相同的过程相应计算出与该三个测试特征点对应的三个参考特征点,本实施例对此不做赘述。
进一步地,由于高斯曲率与平均曲率皆不会随着数据点集的平移、旋转等变化而变化,是该数据点集的固有属性,且能够表征该数据点集的局部几何特征,又由于测试值是由测试特征点的高斯曲率与平均曲率确定的,参考值是由参考特征点的高斯曲率与平均曲率确定的,因此,本实施例可计算出四个测试特征点的测试值能够表征测试点集的局部几何特征,且每个参考点的参考值也能够表征参考点集的局部几何特征。为了获取参考点集中与每个测试点集对应的参考特征点,本实施例对四个测试特征点的测试值和每个参考点的参考值的计算过程进行详细说明。如图2所示,该方法还包括:
S1011、根据二次曲面表达形式、高斯曲率表达式和平均曲率表达式,对测试点集中的四组k+1个测试点进行拟合,得到测试点集中的四个测试特征点各自的高斯曲率和平均曲率,其中,针对每组k+1个点,测试点集中的k+1个测试点为一个测试特征点以及与该测试特征点距离最小的k个测试点。
S1012、根据二次曲面表达形式、高斯曲率表达式和平均曲率表达式,选取参考点集中的m个参考点进行拟合,得到参考点集中各参考点的高斯曲率和平均曲率,其中9<m≤nt,m为正整数,nt为参考点集中参考点的个数。
具体地,步骤S1011中针对每个测试特征点,在测试点集中选择k个离该测试特征点距离最小的测试点,便组成了四组k+1个测试点,其中测试点集中各个测试点的坐标是已知的,可根据计算出两点之间的距离。
进一步地,本实施例中根据二次曲面表达形式,采用最小二乘法对这四组k+1个测试点进行拟合,便可得到四组k+1个测试点形成的曲面的二次曲面表达形式。
可选地,二次曲面表达形式f(x,y)如下公式五表示:
其中,为二次曲面表达形式f(x,y)的参数。
可选地,所述高斯曲率表达式和所述平均曲率表达式通过如下公式六表示:
其中,E,F,G和L,M,N分别为所述二次曲面的第一基本型与第二基本型,n为所述二次曲面在当前点处的法向量;
具体地,本实施例可按照上述公式五的二次曲面表达形式f(x,y),采用最小二乘法对这四组k+1个测试点拟合后可得到该二次曲面表达形式f(x,y)的参数进而可确定四组k+1个测试点形成的曲面的二次曲面表达形式f(x,y)。由于对四组k+1个测试点形成的曲面的二次曲面表达形式求导便可得到如上述公式六中的高斯曲率表达式和平均曲率表达式,因此,可将四个测试特征点对应的坐标代入到公式六中,便得到了四个测试特征点各自的高斯曲率和平均曲率。
进一步地,步骤S1012中在参考点集中选择m个参考点,根据上述二次曲面表达形式f(x,y),采用最小二乘法对m个测试点进行拟合,便可得到二次曲面表达形式f(x,y)的参数从而确定了m个测试点形成的曲面的二次曲面表达式f(x,y)。由于对m个测试点形成的曲面的二次曲面表达形式求导便可得到如上述公式六中的高斯曲率表达式和平均曲率表达式,因此,可便可确定参考点集中每个参考点集各自的高斯曲率和平均曲率。又由于参考点集中的每个参考点的坐标已知,代入到公式六中,便可得到参考点集中各参考点的高斯曲率和平均曲率。
S1013、根据测试点集中的四个测试特征点各自的高斯曲率和平均曲率以及参考点集中的每个参考点的高斯曲率和平均曲率,获取与每个测试特征点对应的参考特征点。
具体地,根据测试点集中的四个测试特征点各自的高斯曲率和平均曲率可得到各测试特征点的测试值。再根据参考点集中的每个参考点的高斯曲率和平均曲率,可得到参考点集中的每个参考点的参考值。由于四个测试特征点的高斯曲率和平均曲率以及参考点集中各参考点的高斯曲率的平方和平均曲率都已确定,因此,可通过计算出四个测试特征点的测试值以及参考点集中的每个参考点的参考值。
进一步地,针对其中一个测试特征点,可从多个参考值中选择测试值与参考值的最小差值对应的参考值对应的参考点,将该参考点作为该测试特征点对应的参考特征点。针对其余三个测试特征点,通过上述相同的过程,选择出该三个测试特征点各自对应的参考特征点。进而通过公式七得到与每个测试特征点对应的参考特征点pfi t。可选地,与每个测试特征点对应的参考特征点pfi t通过如下公式七表示;
其中,Pt为参考点集,p为参考点集Pt中的任一参考点,Kp为参考点集的高斯曲率,Hp为参考点集的平均曲率,为测试点集的四个测试特征点各自的高斯曲率,为测试点集的四个测试特征点各自的平均曲率,i=1,...,4。
S102、获取使得测试点集中的四个测试特征点到参考点集中的四个参考特征点距离最小的粗配准矩阵。
具体地,本实施例中由于四个测试特征点和四个参考特征点的坐标是已知的,可利用矩阵调整四个测试特征点到四个参考特征点的距离,使得该距离最小的矩阵为粗配准矩阵。可选地,粗配准矩阵Tr通过如下公式八表示:
其中,矩阵T为粗配准变化矩阵,以使测试点集中的四个测试特征点到参考点集中的四个参考特征点的距离不同。
进一步地,本实施例利用四个测试特征点的高斯曲率和平均曲率作为测试点集的几何特征,且利用四个参考特征点的高斯曲率和平均曲率作为参考点集的几何特征,得到使得四个测试特征点和四个参考特征点之间的距离最小的粗配准矩阵,进而可为精配准过程提供一个可靠、准确的初值,为精配准过程打下了良好的基础。
S103、根据粗配准矩阵和测试点集,得到粗配准点集。
具体地,本实施例中粗配准点集Pr可通过如下公式九表示:
Pr=Tr·Ps 公式九。
S104、获取使得粗配准点集中的各粗配准点到参考点集中的第一参考点的距离和最小的精配准矩阵,且第一参考点与粗配准点集中的各粗配准点之间的距离最小。
具体地,本实施例可利用矩阵调整参考点集中一个参考点到粗配准点集中任一粗配点的距离,取该距离最小时的参考点为第一参考点,且利用该矩阵调整粗配准点集中任一粗配准点到第一参考点的距离和,当该距离和最小时,将此时的矩阵作为精配准矩阵。可选地,通过如下公式十表示参考点集Pt中的第一参考点
通过如下公式十一表示精配准矩阵Tf:
其中,p为所述参考点集Pt中的任一参考点,为粗配准点集中的任一粗配准点。
进一步地,在保证参考点集中第一参考点到粗配准点集中每个粗配准点的距离最小下,由于精配准矩阵调整是第一参考点到粗配准点集中每个粗配准点的距离之和,因此,本实施例是通过定义数据点集的距离,利用迭代最近点技术完成了精配准过程。相比现有技术来说,本实施例中精配准过程能够得到精度较好的配准结果,且计算效率高。
本实施例提供的点云配准方法,通过获取测试点集中的满足预设位置的四个测试特征点,在进行二次曲面的拟合之后,将四个测试特征点的高斯曲率和平均曲率作为其局部几何特征,能够减少运算时间,接着获取了使得四个测试点特征点到四个参考特征点距离最小的粗配准矩阵,为精配准过程提供了可靠、精确的初值,最后获取了获取使得粗配准点集中的各粗配准点到参考点集中的第一参考点的距离和最小的精配准矩阵,且所第一参考点与粗配准点集中的各粗配准点之间的距离,定义了粗配准点集中各粗配准点到精配准点集中各精配准点的距离,且借助迭代最近点技术实现了精配准过程。本实施例解决了现有点云配准方法中估计所有数据点的特征造成的耗时长且精度低的问题,具有较高的配准精度和计算效率,且鲁棒性好。
在一个具体的实施例中,取测试曲面为:
其中该测试曲面的定义域为[0,1]×[0,1]。
本实施例中将该测试曲面定义域均匀地划分为400个网格与2500个网格。在400个网格每个网格中随机取出一个点,得到本实施例中的参考点集Pt,可见Pt中一共包含400个数据点。在2500个网格每个网格中随机取出一个点,并对每个点沿x,y,z轴分别旋转0.2π,0.1π和0.3π,平移20,50和40,得到本实施例中的测试点集Ps,其中Ps中一共包含2500个数据点。
图3为本发明提供的点云配准方法的流程图三,图4为本发明提供的点云配准方法中四个测试特征点的分布示意图,图5为本发明提供的点云配准方法中粗配准和精配准的效果示意图。如图3所示,采用本实施例点云配准方法对从测试曲面得到的参考点集Pt和测试点集Pt进行配准的具体过程进行详细说明。
具体地,根据上述公式一、公式二、公式三以及公式四分别得到本实施例中测试点集Ps的四个测试特征点pfi s,i=1,…,4,如图4所示。接着,计算这四个测试特征点的测试值,以表征每个特征点pfi s,i=1,…,4处的局部几何特征具体计算过程如下:
1、取k=10,针对每个pfi s在测试点集Ps中找到与之距离最小的10个点便可得到四组11个测试点。接着通过公式五,利用最小二乘法对这四组11个测试点进行拟合,得到二次曲面表达形式f(x,y)的参数其中令测试点集中的测试点的坐标表示为(x,y,z),则拟合后便得到了每个测试特征点pfi s,i=1,…,4处的二次曲面表达形式然后,便可利用如上所示的公式六计算出每个测试特征点pfi s,i=1,…,4处的高斯曲率和平均曲率
2、计算参考点集Pt中的每个参考点的参考值。取m=10,在参考点集Pt中选择10个参考点pfi t,i=1,…m以及与这10个参考点各自距离最小的k个参考点pfi t,i=1,…m,得到10组k+1个参考点这利用最小二乘法对10组k+1个参考点进行拟合,得到二次曲面表达形式f(x,y)的参数以及每个参考特征点处的二次曲面表达形式然后,便可利用如上所示的公式六计算出每个参考特征点处的高斯曲率和平均曲率
3、通过计算出的四个测试特征点pfi s,i=1,…,4处的高斯曲率和平均曲率以及每个参考特征点处的高斯曲率和平均曲率根据公式七找到参考点集Pt中与每个测试特征点对应的四个参考特征点pfi t,i=1,…,4。
4、对四个测试特征点pfi s,i=1,…,4和四个参考特征点pfi t,i=1,…,4进行粗配准过程,得到粗配准矩阵Tr,具体通过公式八其中矩阵Tr的规模为4×4。
5、根据粗配准矩阵Tr和测试点集Ps,通过公式九Pr=Tr·Ps得到粗配准点集Pr。
6、通过公式十和公式十一得到获取精配准矩阵Tf,该精配准矩阵Tf能够使得粗配准点集Pr中各粗配准点到参考点集Pt中的第一参考点的距离和最小,且第一参考点与粗配准点集Ps中各粗配准点之间的距离最小,其中公式十和公式十一如下所示:
这样,通过本实施例点云配准方法便得到了粗配准矩阵Tr以及精配准矩阵Tf,再根据公式Pf=Tf·Tr·Ps得到精配准点集Pf=Tf·Tr·Ps。可通过精配准点集Pf反映出测试点集Ps采用本实施例点云配置方法进行配准之后的配准效果,如图5所示,其中三角形状的数据点代表参考点集Pt,雪花形状的数据点代表测试点集为Ps,圆圈形状的数据点代表粗配准点集Pr,叉形状的数据点代表精配准点集Pf。而且,三角形状的数据点与叉形状的数据点的重合度较高,可见采用本实施例点云配准方法的配置效果良好。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (9)
1.一种点云配准方法,其特征在于,包括:
获取测试点集中的满足预设位置的四个测试特征点以及参考点集中的与每个测试特征点对应的参考特征点,其中针对任一测试特征点,计算所述任一测试特征点的测试值与所述参考点集中的每个参考点的参考值的差值,确定最小差值对应的参考点为所述任一测试特征点对应的参考特征点,所述测试值是由所述测试特征点的高斯曲率与平均曲率确定的,所述参考值是由所述参考特征点的高斯曲率与平均曲率确定的;
获取使得所述测试点集中的四个测试特征点到所述参考点集中的四个参考特征点距离最小的粗配准矩阵;
根据所述粗配准矩阵和所述测试点集,得到粗配准点集;
获取使得所述粗配准点集中的各粗配准点到所述参考点集中的第一参考点的距离和最小的精配准矩阵,且所述第一参考点与所述粗配准点集中的各粗配准点之间的距离最小。
2.根据权利要求1所述的方法,其特征在于,所述满足预设位置的四个测试特征点包括第一测试特征点、第二测试特征点、第三测试特征点和第四测试特征点,其中所述第一测试特征点为所述测试点集的中心点,所述第二测试特征点为所述测试点集中与所述第一测试特征点距离最远的点,所述第三测试特征点为所述测试点集中与所述第一测试特征点和所述第二测试特征点距离之和最大的点,所述第四测试特征点为所述测试点集中与所述第一测试特征点和所述第二测试特征点和所述第三测试特征点距离之和最大的点;
所述获取测试点集中的满足预设位置的四个测试特征点,包括:
通过如下公式一得到所述第一测试特征点pf1 s;
通过如下公式二得到所述第二测试特征点pf2 s;
通过如下公式三得到所述第三测试特征点pf3 s;
通过如下公式四得到所述第四测试特征点pf4 s;
其中,Ps为测试点集,p为所述测试点集Ps中的任一测试点,ns为所述测试点集中测试点的个数。
3.根据权利要求1所述的方法,其特征在于,所述获取参考点集中的与每个测试特征点对应的参考特征点,包括:
根据二次曲面表达形式、高斯曲率表达式和平均曲率表达式,对所述测试点集中的四组k+1个测试点进行拟合,得到所述测试点集中的四个测试特征点各自的高斯曲率和平均曲率,其中,针对每组k+1个点,所述测试点集中的k+1个测试点为一个测试特征点以及与该测试特征点距离最小的k个测试点;
根据所述二次曲面表达形式、所述高斯曲率表达式和所述平均曲率表达式,选取所述参考点集中的m个参考点进行拟合,得到所述参考点集中各参考点的高斯曲率和平均曲率,其中9<m≤nt,m为正整数,nt为所述参考点集中参考点的个数;
根据所述测试点集中的四个测试特征点各自的高斯曲率和平均曲率以及所述参考点集中的每个参考点的高斯曲率和平均曲率,获取与每个测试特征点对应的参考特征点。
4.根据权利要求3所述的方法,其特征在于,所述二次曲面表达形式f(x,y)如下公式五表示:
其中,为所述二次曲面表达形式f(x,y)的参数。
5.根据权利要求3所述的方法,其特征在于,所述高斯曲率表达式和所述平均曲率表达式通过如下公式六表示:
其中,E,F,G和L,M,N分别为所述二次曲面的第一基本型与第二基本型,n为所述二次曲面在当前点处的法向量;
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>E</mi>
<mo>=</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mi>F</mi>
<mo>=</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mi>G</mi>
<mo>=</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>L</mi>
<mo>=</mo>
<mi>n</mi>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<msup>
<mi>d</mi>
<mn>2</mn>
</msup>
<mi>f</mi>
</mrow>
<mrow>
<msup>
<mi>dx</mi>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mi>M</mi>
<mo>=</mo>
<mi>n</mi>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<msup>
<mi>d</mi>
<mn>2</mn>
</msup>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
<mi>N</mi>
<mo>=</mo>
<mi>n</mi>
<mo>&CenterDot;</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mfrac>
<mrow>
<msup>
<mi>d</mi>
<mn>2</mn>
</msup>
<mi>f</mi>
</mrow>
<mrow>
<msup>
<mi>dy</mi>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>;</mo>
</mrow>
<mrow>
<mi>n</mi>
<mo>=</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<msub>
<mi>n</mi>
<mi>x</mi>
</msub>
</mtd>
<mtd>
<msub>
<mi>n</mi>
<mi>y</mi>
</msub>
</mtd>
<mtd>
<msub>
<mi>n</mi>
<mi>z</mi>
</msub>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>=</mo>
<mfenced open = "(" close = ")">
<mtable>
<mtr>
<mtd>
<mfrac>
<mrow>
<mo>-</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
</mrow>
<msqrt>
<mrow>
<mn>1</mn>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
</mfrac>
</mtd>
<mtd>
<mfrac>
<mrow>
<mo>-</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
</mrow>
<msqrt>
<mrow>
<mn>1</mn>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
</mfrac>
</mtd>
<mtd>
<mfrac>
<mn>1</mn>
<msqrt>
<mrow>
<mn>1</mn>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>x</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mi>d</mi>
<mi>f</mi>
</mrow>
<mrow>
<mi>d</mi>
<mi>y</mi>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
</mfrac>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>.</mo>
</mrow>
6.根据权利要求3所述的方法,其特征在于,所述与每个测试特征点对应的参考特征点pfi t通过如下公式七表示;
其中,Pt为所述参考点集,p为所述参考点集Pt中的任一参考点,Kp为所述参考点集的高斯曲率,Hp为所述参考点集的平均曲率,为所述测试点集的四个测试特征点各自的高斯曲率,为所述测试点集的四个测试特征点各自的平均曲率,i=1,...,4。
7.根据权利要求1所述的方法,其特征在于,所述粗配准矩阵Tr通过如下公式八表示:
其中,矩阵T为粗配准变化矩阵,以使所述测试点集中的四个测试特征点到所述参考点集中的四个参考特征点的距离不同。
8.根据权利要求1所述的方法,其特征在于,所述粗配准点集Pr通过如下公式九表示:
Pr=Tr·Ps 公式九。
9.根据权利要求1所述的方法,其特征在于,
通过如下公式十表示所述参考点集Pt中的第一参考点
通过如下公式十一表示所述精配准矩阵Tf:
其中,p为所述参考点集Pt中的任一参考点,为所述粗配准点集中的任一粗配准点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710584041.3A CN107492120B (zh) | 2017-07-18 | 2017-07-18 | 点云配准方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710584041.3A CN107492120B (zh) | 2017-07-18 | 2017-07-18 | 点云配准方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107492120A true CN107492120A (zh) | 2017-12-19 |
CN107492120B CN107492120B (zh) | 2020-04-28 |
Family
ID=60644566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710584041.3A Active CN107492120B (zh) | 2017-07-18 | 2017-07-18 | 点云配准方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107492120B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108376408A (zh) * | 2018-01-30 | 2018-08-07 | 清华大学深圳研究生院 | 一种基于曲率特征的三维点云数据快速加权配准方法 |
CN109472816A (zh) * | 2018-09-17 | 2019-03-15 | 西北大学 | 一种点云配准方法 |
CN109887012A (zh) * | 2019-01-09 | 2019-06-14 | 天津大学 | 一种结合自适应搜索点集的点云配准方法 |
CN110136178A (zh) * | 2018-02-08 | 2019-08-16 | 中国人民解放军战略支援部队信息工程大学 | 一种基于端点拟合的三维激光点云配准方法及装置 |
CN110335297A (zh) * | 2019-06-21 | 2019-10-15 | 华中科技大学 | 一种基于特征提取的点云配准方法 |
CN113393504A (zh) * | 2021-05-28 | 2021-09-14 | 广东电网有限责任公司广州供电局 | 一种开关柜点云配准方法、系统、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645170A (zh) * | 2009-09-03 | 2010-02-10 | 北京信息科技大学 | 多视点云精确配准方法 |
CN103047943A (zh) * | 2012-12-31 | 2013-04-17 | 吉林大学 | 基于单投射编码结构光的车门外板形状尺寸检测方法 |
CN106780509A (zh) * | 2016-12-01 | 2017-05-31 | 山东交通学院 | 融合多维特征的建筑物点云层次聚类分割方法 |
US20170161945A1 (en) * | 2015-12-04 | 2017-06-08 | Autodesk, Inc. | Keypoint-based point-pair-feature for scalable automatic global registration of large rgb-d scans |
-
2017
- 2017-07-18 CN CN201710584041.3A patent/CN107492120B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645170A (zh) * | 2009-09-03 | 2010-02-10 | 北京信息科技大学 | 多视点云精确配准方法 |
CN103047943A (zh) * | 2012-12-31 | 2013-04-17 | 吉林大学 | 基于单投射编码结构光的车门外板形状尺寸检测方法 |
US20170161945A1 (en) * | 2015-12-04 | 2017-06-08 | Autodesk, Inc. | Keypoint-based point-pair-feature for scalable automatic global registration of large rgb-d scans |
CN106780509A (zh) * | 2016-12-01 | 2017-05-31 | 山东交通学院 | 融合多维特征的建筑物点云层次聚类分割方法 |
Non-Patent Citations (2)
Title |
---|
燕必希等: ""工件四特征点的粗配准方法研究"", 《机械设计与制造》 * |
程灏波: "《先进光学制造工程与技术原理》", 31 August 2013 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108376408A (zh) * | 2018-01-30 | 2018-08-07 | 清华大学深圳研究生院 | 一种基于曲率特征的三维点云数据快速加权配准方法 |
CN110136178A (zh) * | 2018-02-08 | 2019-08-16 | 中国人民解放军战略支援部队信息工程大学 | 一种基于端点拟合的三维激光点云配准方法及装置 |
CN110136178B (zh) * | 2018-02-08 | 2021-06-25 | 中国人民解放军战略支援部队信息工程大学 | 一种基于端点拟合的三维激光点云配准方法及装置 |
CN109472816A (zh) * | 2018-09-17 | 2019-03-15 | 西北大学 | 一种点云配准方法 |
CN109472816B (zh) * | 2018-09-17 | 2021-12-28 | 西北大学 | 一种点云配准方法 |
CN109887012A (zh) * | 2019-01-09 | 2019-06-14 | 天津大学 | 一种结合自适应搜索点集的点云配准方法 |
CN109887012B (zh) * | 2019-01-09 | 2023-03-31 | 天津大学 | 一种结合自适应搜索点集的点云配准方法 |
CN110335297A (zh) * | 2019-06-21 | 2019-10-15 | 华中科技大学 | 一种基于特征提取的点云配准方法 |
CN110335297B (zh) * | 2019-06-21 | 2021-10-08 | 华中科技大学 | 一种基于特征提取的点云配准方法 |
CN113393504A (zh) * | 2021-05-28 | 2021-09-14 | 广东电网有限责任公司广州供电局 | 一种开关柜点云配准方法、系统、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107492120B (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107492120A (zh) | 点云配准方法 | |
CN104036544B (zh) | 一种基于机载LiDAR数据的建筑物屋顶重建方法 | |
CN107886529A (zh) | 一种用于三维重建的点云配准方法 | |
CN106023298B (zh) | 基于局部泊松曲面重建的点云刚性配准方法 | |
CN1985275B (zh) | 用于基于比例不变的突出区域特征之间的接合对应的混合严格配准的方法和系统 | |
CN105913489A (zh) | 一种利用平面特征的室内三维场景重构方法 | |
CN103369466B (zh) | 一种地图匹配辅助室内定位方法 | |
CN109242041A (zh) | 一种电能表异常数据检测方法、装置、设备及存储介质 | |
CN106597363A (zh) | 一种室内wlan环境下的行人定位方法 | |
Sanderson et al. | Analysis of recurrent patterns in toroidal magnetic fields | |
CN107016649A (zh) | 一种基于局部低秩张量估计的视觉数据补全方法 | |
CN101666865A (zh) | 一种局部快速行进模式的弥散张量核磁共振图像配准方法 | |
CN109239654A (zh) | 基于神经网络的时差定位结果纠偏方法 | |
CN107607122B (zh) | 面向室内定位的位置指纹库构建和动态更新方法 | |
CN110458174A (zh) | 一种无序点云关键特征点精确提取方法 | |
CN108182474A (zh) | 基于未校正阵列和神经网络的多目标直接定位方法 | |
CN103745459A (zh) | 一种非结构化点云特征点检测方法及其提取方法 | |
CN106547724A (zh) | 基于最小点集的欧式空间坐标转换参数获取方法 | |
Agarwal et al. | Survey of geodetic mapping methods: Geodetic approaches to mapping and the relationship to graph-based slam | |
CN105120517A (zh) | 基于多维尺度分析的室内wlan信号平面图构建与定位方法 | |
CN105021199B (zh) | 基于ls的多模型自适应状态估计方法及系统 | |
CN104574519B (zh) | 多源居民地面要素的免阈值自动稳健匹配方法 | |
CN104864851A (zh) | 一种基于矩形周长和面积加权约束的单目视觉位姿测量方法 | |
CN105046046A (zh) | 一种集合卡尔曼滤波局地化方法 | |
CN109931903A (zh) | 一种基于改进鲸鱼优化算法的圆柱度评定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |