CN112164101A - 三维点云匹配方法和装置 - Google Patents

三维点云匹配方法和装置 Download PDF

Info

Publication number
CN112164101A
CN112164101A CN202011053718.9A CN202011053718A CN112164101A CN 112164101 A CN112164101 A CN 112164101A CN 202011053718 A CN202011053718 A CN 202011053718A CN 112164101 A CN112164101 A CN 112164101A
Authority
CN
China
Prior art keywords
point cloud
point
coordinate
dimensional
cloud
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
Application number
CN202011053718.9A
Other languages
English (en)
Other versions
CN112164101B (zh
Inventor
王静
刘忠领
窦越
张泽旭
苏宇
苏必达
范小礼
孙腾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Beijing Institute of Environmental Features
Original Assignee
Harbin Institute of Technology
Beijing Institute of Environmental Features
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology, Beijing Institute of Environmental Features filed Critical Harbin Institute of Technology
Priority to CN202011053718.9A priority Critical patent/CN112164101B/zh
Publication of CN112164101A publication Critical patent/CN112164101A/zh
Application granted granted Critical
Publication of CN112164101B publication Critical patent/CN112164101B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/344Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供的三维点云匹配方法和装置,首先构建针对目标物的三维坐标系,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云;再对每一个去中心化点云所在的坐标系进行转换,得到每一个去中心化点云对应的转换点云,其中,转换点云的坐标轴与三维坐标系的对应坐标轴相平行。从每一个转换点云中选取能够形成一个平面的至少三个角点,根据选取的各个所述角点,计算尺度因子,根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云;最后通过迭代最近点算法对调节点云和标准点云进行匹配,以完成三维点云的匹配过程。本发明能够减小重建点云和标准点云的匹配误差。

Description

三维点云匹配方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及三维点云匹配方法和装置。
背景技术
近些年,三维重建成为计算机视觉、计算机图形学领域非常重要的研究内容。三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术。而三维重建中的重建点云是针对序列图像进行三维重建后求解出的三维点所组成的尺度不确定的点云,标准点云是激光扫射出的点云,其尺度是真实卫星的尺度。
目前,在三维重建之后,重建点云和标准点云之间往往需要通过迭代最近点(Iterative Closest Point,ICP)算法匹配的方法评估三维重建结果的准确度。在进行ICP匹配之前,通常采用人工方式选取用于调节重建点云尺寸的角点,再对重建点云的尺寸进行调节。
但是,采用人工选点的方式存在着极大的不确定性,使得重建点云和标准点云的匹配误差较大。
发明内容
本发明提供了一种三维点云匹配方法和装置,能够减小重建点云和标准点云的匹配误差。
第一方面,本发明实施例提供了一种三维点云匹配方法,包括:
构建针对目标物的三维坐标系;
将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,其中,所述去中心化点云所在的坐标系的原点与所述三维坐标系的原点重合,所述两个待匹配三维点云用于描述目标物的三维形状;
对每一个所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,其中,所述转换点云的坐标轴与所述三维坐标系的对应坐标轴相平行;
从每一个所述转换点云中选取能够形成一个平面的至少三个角点;
根据选取的各个所述角点,计算尺度因子;
根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,其中,所述调节点云的大小与所述转换点云中的标准点云的大小之间的差值在预设的调节范围内,所述标准点云用于描述所述目标物的真实尺寸和三维形状的点云,所述重建点云用于描述所述目标物的三维形状和非真实尺寸的点云;
通过迭代最近点算法对所述调节点云和所述标准点云进行匹配。
可选地,所述将两个待匹配三维点云分别进行去中心化处理,包括:
针对每一个所述待匹配三维点云,根据下述第一公式进行去中心化处理;
第一公式:
Figure BDA0002710305080000021
其中,
Figure BDA0002710305080000022
用于表征该待匹配三维点云的第i个去中心化处理之后的点坐标,pi用于表征该待匹配三维点云第i个去中心化处理之前的点坐标,m用于表征该待匹配三维点云所包括的点坐标的数量。
可选地,所述对每一个所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,包括:
针对每一个所述去中心化点云,均执行:
计算该去中心化点云的协方差矩阵;
将所述协方差矩阵进行对角化处理,生成对角矩阵;
将所述对角矩阵中的三个特征值对应的特征向量进行归一化处理,获得三个单位正交基;
将该去中心化点云所包括的每一个点坐标与由所述三个单位正交基分别对应的数值组成的矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标;
由各个所述转换点坐标组成转换点云。
可选地,所述从每一个所述转换点云中选取能够形成一个平面的至少三个角点,包括:
针对每一个所述转换点云,均执行:
从该转换点云中确定至少三个第一点坐标,其中,所述第一点坐标的第一坐标轴的坐标值的绝对值,大于该转换点云中除第一点坐标之外的点坐标的任意一个坐标轴的坐标值的绝对值;
从所述至少三个第一点坐标中确定至少三个第二点坐标,其中,所述第二点坐标的第二坐标轴的坐标值的绝对值,大于所述至少三个第一点坐标的第二坐标轴的坐标值的绝对值;
从所述至少三个第二点坐标中确定至少三个第三点坐标,其中,所述第三点坐标的第三坐标轴的坐标值的绝对值,大于所述至少三个第二点坐标的第三坐标轴的坐标值的绝对值,且所述至少三个第三坐标点在第三坐标轴的坐标值同时为正数或同时为负数;
将确定的所述第三坐标点作为角点。
可选地,在所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云之后,在所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配之前,进一步包括:
S1:确定所述调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向相同,如果是,步骤S2,否则,执行步骤S3;
S2:执行所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配;
S3:针对所述调节点云所在的坐标系中的反向坐标轴,均执行:
针对所述调节点云所包括的每一个坐标点,根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值;将该坐标点的坐标值替换为所述坐标替换值,其中,该反向坐标轴与所述标准点云所在的坐标系中对应的坐标轴的方向不同,返回S1。
可选地,所述根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值,包括:
将该坐标点的坐标值与针对该反向坐标轴预设的旋转矩阵相乘,得到该坐标点的坐标替换值。
可选地,所述根据选取的各个所述角点,计算尺度因子,包括:
针对每一个所述转换点云,均执行:
根据从该转换点云中选取的各个所述角点,构建该转换点云对应的多边形;
根据各个所述角点的坐标值,确定该多边形每一条边的边长;
针对所述转换点云中的标准点云对应的多边形的每一条边,均执行;
确定所述转换点云中的重建点云对应的多边形中与该条边相对应的目标边;
计算该多边形的边长与所述目标边的边长的比值;
对计算的各个所述比值求平均得到平均值,并将该平均值作为尺度因子。
可选地,所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,包括:
将所述转换点云中的重建点云所包括的每一个点坐标与所述尺度因子相乘,得到每一个点坐标对应的调节点坐标;
由各个所述调节点坐标组成调节点云。
第二方面,本发明实施例提供了一种基于上述第一方面或第一方面任一可能实现方式的三维点云匹配装置,包括:
构建模块,用于构建针对目标物的三维坐标系;
去中心化模块,用于在构建模块之后,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,其中,所述去中心化点云所在的坐标系的原点与所述构建模块构建的所述三维坐标系的原点重合,所述两个待匹配三维点云用于描述目标物的三维形状;
转换模块,用于对每一个所述去中心化模块处理后的所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,其中,所述转换点云的坐标轴与所述三维坐标系的对应坐标轴相平行;
选取模块,用于从每一个所述转换模块转换的所述转换点云中选取能够形成一个平面的至少三个角点;
计算模块,用于根据所述选取模块选取的各个所述角点,计算尺度因子;
调节模块,用于根据所述计算模块计算出的所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,其中,所述调节点云的大小与所述转换点云中的标准点云的大小之间的差值在预设的调节范围内,所述标准点云用于描述所述目标物的真实尺寸和三维形状的点云,所述重建点云用于描述所述目标物的三维形状和非真实尺寸的点云;
第一匹配模块,用于通过迭代最近点算法对所述调节模块调节的所述调节点云和所述转换模块转换的所述标准点云进行匹配。
可选地,所述去中心化模块用于执行以下操作:
针对每一个所述待匹配三维点云,根据下述第一公式进行去中心化处理;
第一公式:
Figure BDA0002710305080000051
其中,
Figure BDA0002710305080000052
用于表征该待匹配三维点云的第i个去中心化处理之后的点坐标,pi用于表征该待匹配三维点云第i个去中心化处理之前的点坐标,m用于表征该待匹配三维点云所包括的点坐标的数量。
可选地,所述转换模块,用于执行以下操作:
针对每一个所述去中心化点云,均执行:
计算该去中心化点云的协方差矩阵;
将所述协方差矩阵进行对角化处理,生成对角矩阵;
将所述对角矩阵中的三个特征值对应的特征向量进行归一化处理,获得三个单位正交基;
将该去中心化点云所包括的每一个点坐标与由所述三个单位正交基分别对应的数值组成的矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标;
由各个所述转换点坐标组成转换点云。
可选地,所述选取模块,用于执行以下操作:
针对每一个所述转换点云,均执行:
从该转换点云中确定至少三个第一点坐标,其中,所述第一点坐标的第一坐标轴的坐标值的绝对值,大于该转换点云中除第一点坐标之外的点坐标的任意一个坐标轴的坐标值的绝对值;
从所述至少三个第一点坐标中确定至少三个第二点坐标,其中,所述第二点坐标的第二坐标轴的坐标值的绝对值,大于所述至少三个第一点坐标的第二坐标轴的坐标值的绝对值;
从所述至少三个第二点坐标中确定至少三个第三点坐标,其中,所述第三点坐标的第三坐标轴的坐标值的绝对值,大于所述至少三个第二点坐标的第三坐标轴的坐标值的绝对值,且所述至少三个第三坐标点在第三坐标轴的坐标值同时为正数或同时为负数;
将确定的所述第三坐标点作为角点。
可选地,进一步包括:
确定模块,用于确定所述调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向相同;
第二匹配模块,用于在所述确定模块确定出所述调节点云所在的坐标系的坐标轴的方向与所述标准点云所在的坐标系中对应的坐标轴的方向相同之后,执行所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配;
替换模块,用于在所述确定模块确定出所述调节点云所在的坐标系的坐标轴的方向不与所述标准点云所在的坐标系中对应的坐标轴的方向相同之后,针对所述调节点云所包括的每一个坐标点,根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值;将该坐标点的坐标值替换为所述坐标替换值,其中,该反向坐标轴与所述标准点云所在的坐标系中对应的坐标轴的方向不同,并返回所述确定模块。
可选地,所述替换模块,用于执行以下操作:
将该坐标点的坐标值与针对该反向坐标轴预设的旋转矩阵相乘,得到该坐标点的坐标替换值。
可选地,所述计算模块,用于执行以下操作:
针对每一个所述转换点云,均执行:
根据从该转换点云中选取的各个所述角点,构建该转换点云对应的多边形;
根据各个所述角点的坐标值,确定该多边形每一条边的边长;
针对所述转换点云中的标准点云对应的多边形的每一条边,均执行;
确定所述转换点云中的重建点云对应的多边形中与该条边相对应的目标边;
计算该表边的边长与所述目标边的边长的比值;
对计算的各个所述比值求平均得到平均值,并将该平均值作为尺度因子。
可选地,所述调节模块,用于执行以下操作:
将所述转换点云中的重建点云所包括的每一个点坐标与所述尺度因子相乘,得到每一个点坐标对应的调节点坐标;
由各个所述调节点坐标组成调节点云。
本发明实施例提供的三维点云匹配方法和装置,首先构建针对目标物的三维坐标系,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,此时,去中心化点云所在的坐标系的原点与三维坐标系的原点重合,两个待匹配三维点云用于描述目标物的三维形状。再对每一个去中心化点云所在的坐标系进行转换,得到每一个去中心化点云对应的转换点云,其中,转换点云的坐标轴与三维坐标系的对应坐标轴相平行。从每一个转换点云中选取能够形成一个平面的至少三个角点,根据选取的各个所述角点,计算尺度因子,根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,其中,调节点云的大小与转换点云中的标准点云的大小之间的差值在预设的调节范围内,标准点云用于描述目标物的真实尺寸和三维形状的点云,重建点云用于描述目标物的三维形状和非真实尺寸的点云。最后通过迭代最近点算法对调节点云和标准点云进行匹配,以完成三维点云的匹配过程。本发明实施例能够减小重建点云和标准点云的匹配误差。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种三维点云匹配方法的流程图;
图2是本发明一个实施例提供的另一种三维点云匹配方法的流程图;
图3是本发明一个实施例提供的一种三维点云匹配装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明一个实施例提供的一种三维点云匹配方法的流程图,如图1所示,该方法可以包括以下步骤:
步骤101、构建针对目标物的三维坐标系;
步骤102、将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云;
步骤103、对每一个去中心化点云所在的坐标系进行转换,得到每一个去中心化点云对应的转换点云;
步骤104、从每一个转换点云中选取能够形成一个平面的至少三个角点;
步骤105、根据选取的各个角点,计算尺度因子;
步骤106、根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云;
步骤107、通过迭代最近点算法对调节点云和标准点云进行匹配。
在本发明实施例中,首先构建针对目标物的三维坐标系,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,此时,去中心化点云所在的坐标系的原点与三维坐标系的原点重合,两个待匹配三维点云用于描述目标物的三维形状。再对每一个去中心化点云所在的坐标系进行转换,得到每一个去中心化点云对应的转换点云,其中,转换点云的坐标轴与三维坐标系的对应坐标轴相平行。从每一个转换点云中选取能够形成一个平面的至少三个角点,根据选取的各个所述角点,计算尺度因子,根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,其中,调节点云的大小与转换点云中的标准点云的大小之间的差值在预设的调节范围内,标准点云用于描述目标物的真实尺寸和三维形状的点云,重建点云用于描述目标物的三维形状和非真实尺寸的点云。最后通过迭代最近点算法对调节点云和标准点云进行匹配,以完成三维点云的匹配过程。本发明实施例将重建点云变换坐标系并恢复尺度和将标准点云变换坐标系后再进行匹配的方法,能够减小重建点云和标准点云的匹配误差。
其中,目标物包括携带帆板的卫星,该卫星的帆板呈镜像对称。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述将两个待匹配三维点云分别进行去中心化处理,包括:
针对每一个所述待匹配三维点云,根据下述第一公式进行去中心化处理;
第一公式:
Figure BDA0002710305080000091
其中,
Figure BDA0002710305080000092
用于表征该待匹配三维点云的第i个去中心化处理之后的点坐标,pi用于表征该待匹配三维点云第i个去中心化处理之前的点坐标,m用于表征该待匹配三维点云所包括的点坐标的数量。
在本发明实施例中,两个待匹配三维点云为重建点云和标准点云,其中,重建点云用于描述所述目标物的三维形状和非真实尺寸的点云,标准点云用于描述所述目标物的真实尺寸和三维形状的点云。对每个待匹配三维点云进行去中心化处理,即将每个待匹配三维点云的每个点坐标的坐标值减去所有点坐标的坐标值的平均值。因此,每个待匹配三维点云到的坐标系的原点平移到了待匹配三维点云中心点的位置,以方便后续对每个待匹配三维点云进行坐标系变换。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述对每一个所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,包括:
针对每一个所述去中心化点云,均执行:
计算该去中心化点云的协方差矩阵;
将所述协方差矩阵进行对角化处理,生成对角矩阵;
将所述对角矩阵中的三个特征值对应的特征向量进行归一化处理,获得三个单位正交基;
将该去中心化点云所包括的每一个点坐标与由所述三个单位正交基分别对应的数值组成的矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标;
由各个所述转换点坐标组成转换点云。
在本发明实施例中,将完成去中心化处理的待匹配三维点云的点坐标的坐标值映射到新的坐标基所在的空间中,其中,一个坐标基满足待匹配三维点云中的所有点与原点组成的线段在该正交基的投影最分散,另外两个坐标基与投影最分散的坐标基方向垂直,即三个坐标基之间相互独立。因此利用两个坐标基之间的协方差为0的特征,对去中心化处理后的待匹配三维点云所包括的点坐标表示为协方差矩阵,进而对该协方差矩阵进行对角化处理,获得对角矩阵。从对角矩阵中确定三个特征值,进而根据三个特征值,确定与每个特征值对应的特征向量,再将三个特征向量进行归一化处理,即可获得三个模为1的两两垂直的单位正交基,将三个单位正交基对应的数值组成矩阵。最后将去中心化点云所包括的每一个点坐标与该矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标,由所有的转换点坐标组成转换点云,即完成了去中心化点云的坐标系转换,以用于从完成坐标系转换后的中心化点云中选取合适的角点。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述计算该去中心化点云的协方差矩阵,包括:
根据下述第二公式计算该去中心化点云对应的协方差矩阵;
第二公式:
Figure BDA0002710305080000111
其中,M用于表征该去中心化点云对应的协方差矩阵,m用于表征该去中心化点云所包括的点坐标的数量,A用于表征该去中心化点云所包括的m个点坐标的x轴坐标值、y轴坐标值和z轴坐标值所组成的第一矩阵,AT用于表征第一矩阵的转置矩阵,
Figure BDA0002710305080000112
Figure BDA0002710305080000113
Figure BDA0002710305080000114
xi用于表征该去中心化点云所包括的第i个点坐标的x轴坐标值,yi用于表征该去中心化点云所包括的第i个点坐标的y轴坐标值,zi用于表征该去中心化点云所包括的第i个点坐标的z轴坐标值。
在本发明实施例中,将去中心化点云所包括的m个点坐标的x轴坐标值、y轴坐标值和z轴坐标值组成一个矩阵,并将该矩阵与该矩阵的转置矩阵相乘后再与点坐标的数量相除获得该去中心化点云对应的协方差矩阵。由于去中心化点云的点坐标为三维坐标,因此m个三维坐标组成的矩阵与该矩阵的转置矩阵相乘获得的协方差矩阵为三阶矩阵,因此能够对该协方差矩阵进行对角化处理,以便获得与该协方差矩阵对应的对角矩阵。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述将所述协方差矩阵进行对角化处理,生成对角矩阵,包括:
根据下述第三公式计算对角矩阵;
第三公式:
Figure BDA0002710305080000121
其中,N用于表征该对角矩阵,C用于表征一个3行3列的第二矩阵,C-1用于表征所述第二矩阵的逆矩阵,(C-1)T用于表征所述第二矩阵的逆矩阵的转置矩阵,λ1为用于表征所述对角矩阵的第一特征值,λ2用于表征所述对角矩阵的第二特征值,λ3用于表征所述对角矩阵的第三特征值。
在本发明实施例中,针对去中心化点云对应的协方差矩阵,对该三阶的协方差矩阵进行对角化处理,获得该对角矩阵的三个特征值,并将特征值对应的特征向量归一化处理,即可获得去中心化点云进行坐标系转换所需的三个单位正交基,将去中心化点云所包括的每一个点坐标与该三个单位正交基的对应数值组成的矩阵相乘,即完成了去中心化点云所在的坐标系转换过程,以便于从完成坐标系转换的去中心化点云中获取合适的角点。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述从每一个所述转换点云中选取能够形成一个平面的至少三个角点,包括:
针对每一个所述转换点云,均执行:
从该转换点云中确定至少三个第一点坐标,其中,所述第一点坐标的第一坐标轴的坐标值的绝对值,大于该转换点云中除第一点坐标之外的点坐标的任意一个坐标轴的坐标值的绝对值;
从所述至少三个第一点坐标中确定至少三个第二点坐标,其中,所述第二点坐标的第二坐标轴的坐标值的绝对值,大于所述至少三个第一点坐标的第二坐标轴的坐标值的绝对值;
从所述至少三个第二点坐标中确定至少三个第三点坐标,其中,所述第三点坐标的第三坐标轴的坐标值的绝对值,大于所述至少三个第二点坐标的第三坐标轴的坐标值的绝对值,且所述至少三个第三坐标点在第三坐标轴的坐标值同时为正数或同时为负数;
将确定的所述第三坐标点作为角点。
在本发明实施例中,确定转换点云所在坐标系的第一坐标轴符合转换点云中的所有点与原点组成的线段在该第一坐标轴的投影最分散。在该第一坐标轴上选取至少三个第一点坐标,该至少三个第一点坐标在第一坐标轴的坐标值的绝对值在该第一坐标轴上的坐标值最大;再从至少三个第一点坐标中确定至少三个第二点坐标,该至少三个第二点坐标在第二坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大;最后从至少三个第二点坐标中确定至少三个第三点坐标,该至少三个第三点坐标在第三坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大,并且该至少三个第三点坐标位于第三坐标轴的同一方向。需要说明的是,第三坐标轴符合转换点云中的所有点与原点组成的线段在该第三坐标轴的投影最不分散,在第二坐标轴的投影程度位于第一坐标轴与第三坐标轴的投影程度之间。本发明实施例利用智能选取角点的方式对两个转换点云分别进行选取角点,进而可以根据每个转换点云上选取的角点组成的多边形的对应边长值的比例,确定重建点云所需要恢复尺度的尺度因子的大小。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述根据选取的各个所述角点,计算尺度因子,包括:
针对每一个所述转换点云,均执行:
根据从该转换点云中选取的各个所述角点,构建该转换点云对应的多边形;
根据各个所述角点的坐标值,确定该多边形每一条边的边长;
针对所述转换点云中的标准点云对应多边形的每一条边,均执行;
确定所述转换点云中的重建点云对应的多边形中与该条边相对应的目标边;
计算该表边的边长与所述目标边的边长的比值;
对计算的各个所述比值求平均得到平均值,并将该平均值作为尺度因子。
在本发明实施例中,由于标准点云为反映目标物真实尺寸和真实三维形状的点云,而重建点云为反映目标物三维形状但非真实尺寸的点云,因此需要对重建点云的尺寸进行恢复。根据从每个转换点云中选取的至少三个角点组成的多边形,确定转换点云中的标准点云对应的多边形的边长与转换点云中的重建点云对应的多边形的边长的比值,再将所有的比值累加求和后求平均获得平均值,将该平均值作为重建点云恢复尺寸的尺度因子,以便于对恢复尺度因子的重建点云与标准点云进行匹配。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,包括:
将所述转换点云中的重建点云所包括的每一个点坐标与所述尺度因子相乘,得到每一个点坐标对应的调节点坐标;
由各个所述调节点坐标组成调节点云。
在本发明实施例中,根据计算出的尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,具体包括:将转换点云中的重建点云所包括的每一个点坐标与尺度因子相乘,获得每一个点坐标对应的调节点坐标,由所有的调节点坐标组成调节点云。此时,由于重建点云可能存在缺陷,但缺陷的尺寸与重建点云的尺寸相比较小,因此再将重建点云恢复尺寸之后,该缺陷相应变化,因此调节点云的尺寸与转换点云中的标准点云的尺寸基本一致。将恢复尺寸的重建点云与标准点云进行匹配,避免了因尺寸不一致造成误差,提高了三维点云匹配精度。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,在所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云之后,在所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配之前,进一步包括:
S1:确定所述调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向是否相同,如果是,步骤S2,否则,执行步骤S3;
S2:执行所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配;
S3:针对所述调节点云所在的坐标系中的反向坐标轴,均执行:
针对所述调节点云所包括的每一个坐标点,根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值;将该坐标点的坐标值替换为所述坐标替换值,其中,该反向坐标轴与所述标准点云所在的坐标系中对应的坐标轴的方向不同,返回S1。
在本发明实施例中,在对转换点云中的重建点云的大小进行调节得到调节点云之后,在对调节点云和标准点云进行匹配之前,因为调节点云与转换点云中的标准点云所在的坐标系的坐标轴方向具有随机性,因此还需要判断调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向是否相同。如果相同,则直接对重建点云和标准点云进行匹配,如果不相同,则对于坐标轴方向不同的目标坐标轴的方向进行调整,具体为,根据调节点云所在的坐标系的反向坐标轴和该调节点云所包括的每一个坐标点计算该坐标点的坐标替换值,再将该坐标点的坐标轴替换为坐标替换值,再进行重建点云和标准点云的匹配过程。
基于图1所示的一种三维点云匹配方法,在本发明的一种实施例中,所述根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值,包括:
将该坐标点的坐标值与针对该反向坐标轴预设的旋转矩阵相乘,得到该坐标点的坐标替换值。
在本发明实施例中,针对调节点云所在坐标系的每个坐标轴,如果该坐标轴的方向与标准点云所在坐标系的坐标轴的方向不一致,则利用与该坐标轴对应的预设旋转矩阵,将该旋转矩阵与该标准点云所在的坐标系中的对应坐标轴方向不同的坐标轴相乘,即完成调节点云所包括的对应坐标点的坐标替换值的计算。
如图2所示,为了更加清楚地说明本发明的技术方案及优点,下面对本发明实施例提供的三维点云匹配方法进行详细说明,具体包括以下步骤:
步骤201、构建针对目标物的三维坐标系。
在本步骤中,针对目标物,构建三维坐标系,其中,三维坐标系的三个坐标轴分别垂直于目标物主体的三条边。
例如,带帆板的卫星通常由卫星主体和对称设置在卫星主体两侧的帆板构成。构建一个带帆板卫星的三维坐标系,由于卫星独特的形状特征,卫星主体可近似看成一个立方体,每个帆板可近似看成一个长方体,两个长方体处于立方体的同一高度。构建的三维坐标系的第一坐标轴(例如,X轴)的方向与长方体最长边所在的方向平行,构建三维坐标系的第三坐标轴(例如,Z轴)的方向与最长边所在的方向垂直,利用右手坐标系法则求出构建三维坐标系的第二坐标轴(例如,Y轴),即右手的大拇指,食指及中指相互垂直,使大拇指指向X轴的正方向,中指指向Z轴的正方向,食指所指向的方向即为构建三维坐标系的Y轴的正方向。
步骤202、将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云。
在本步骤中,待匹配三维点云包括重建点云和标准点云,其中,重建点云是针对序列图像进行三维重建后求解出的三维点所组成的点云,重建点云所在的坐标系为序列图像第一帧相机所在的相机坐标系,而在重建过程中,会丢失点云的深度信息,因此重建点云本身的尺度无法确定;标准点云是激光扫射出的点云,其尺度是真实物体的尺度,标准点云的所在的坐标系是激光第一次扫射时,激光扫射仪所在的坐标系。针对每一个待匹配三维点云,首先将该待匹配三维点云所包括的点坐标累加求和,再将该累加求和值与待匹配三维点云所包括的点坐标的数量相除,获得该待匹配三维点云所包括的点坐标的平均值,最后将待匹配三维点云所包括的每个点坐标分别与待匹配三维点云所包括的点坐标的平均值相减,即获得该待匹配三维点云对应的去中心化点云。
需要说明的是,在对两个待匹配三维点云进行去中心化处理之前,为了减少计算量,根据待匹配三维点云的密度确定降采样抽稀标准,进而对每个待匹配三维点云进行降采样抽稀处理。具体地,将每个待匹配三维单元均匀划分成若干个点云团,从该若干个点云团中分别均匀过滤掉与降采样抽稀标准对应的若干个点云点数量。对完成降采样抽稀处理的两个待匹配三维点云再进行去中心化处理。
例如,针对用于表征卫星形状但不确定卫星尺寸的重建点云,由于重建点云包括若干个三维点,每个三维点在重建点云所在坐标系中均有相应的坐标值,将所有三维点的坐标值累加求和后再与三维点的总数量相除,获得所有三维点的平均坐标值,该过程可以用公式:
Figure BDA0002710305080000161
表示,其中,c为所有三维点的平均坐标值,m为三维点的数量,pi为第i个三维点的原始坐标值。再将每个三维点的原始坐标值与所有三维点的平均坐标值相减,获得去中心化点云坐标值,即为去中心化重建点云的坐标值,该过程可以用公式:
Figure BDA0002710305080000171
表示,其中
Figure BDA0002710305080000172
为去中心化重建点云的坐标值。
步骤203、对每一个去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云。
在本步骤中,将完成去中心化处理的待匹配三维点云的点坐标的坐标值映射到新的坐标基所在的空间中,其中,一个坐标基满足待匹配三维点云中的所有点与原点组成的线段在该正交基的投影最分散,另外两个坐标基与投影最分散的坐标基方向垂直,即三个坐标基之间相互独立。因此利用两个坐标基之间的协方差为0的特征,对去中心化处理后的待匹配三维点云所包括的点坐标表示为协方差矩阵,进而对该协方差矩阵进行对角化处理,获得对角矩阵。从对角矩阵中确定三个特征值,进而根据三个特征值,确定与每个特征值对应的特征向量,再将三个特征向量进行归一化处理,即可获得三个模为1的两两垂直的单位正交基,将三个单位正交基对应的数值组成矩阵。最后将去中心化点云所包括的每一个点坐标与该矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标,由所有的转换点坐标组成转换点云,即完成了去中心化点云的坐标系转换,以便于从完成坐标系转换后的中心化点云中选取合适的角点。
例如,如前例所述,针对帆板卫星的重建点云,其去中心化重建点云进行坐标系转换后的三个坐标轴之间相互独立,即三个坐标轴的两两坐标轴之间相互垂直,因此可用协方差公式表示成:
Figure BDA0002710305080000173
Figure BDA0002710305080000174
因此,针对去中心化的重建点云所包括的m个坐标点(三维点),其协方差差矩阵可以表示成
Figure BDA0002710305080000175
其中,(xi,yi,zi)用于表征第i个点坐标,M用于表征协方差矩阵,对该协方差矩阵M进一步表示为
Figure BDA0002710305080000181
Figure BDA0002710305080000182
因此,该协方差矩阵为三阶矩阵,因此可对该三阶矩阵进行对角化处理,获得对角矩阵:
Figure BDA0002710305080000183
Figure BDA0002710305080000184
其中,C用于表征一个3行3列的第二矩阵,C-1用于表征所述第二矩阵的逆矩阵,(C-1)T用于表征所述第二矩阵的逆矩阵的转置矩阵,λ1为用于表征所述对角矩阵的第一特征值,λ2用于表征所述对角矩阵的第二特征值,λ3用于表征所述对角矩阵的第三特征值。根据三个特征值,计算出每一个特征值对应的特征向量,其中,数值最大的一个特征值对应的特征向量与去中心化重建点云所在坐标系的X轴的方向一致,数值第二大的一个特征值对应的特征向量与去中心化重建点云所在坐标系的Y轴的方向一致,数值最小的一个特征值对应的特征向量与去中心化重建点云所在坐标系的Z轴的方向一致。
对每一个特征向量进行归一化处理,得到三个模为1的两两垂直的单位正交基。对于三个单位正交基,由该三个单位正交基对应的数值组成一个转换矩阵,将中心化重建点云所包括坐标点的坐标值与该转换点云相乘,即获得该坐标点对应的转换坐标点,由各个转换坐标点组成转换点云,其中,转换点云为去中心化重建点云进行坐标系转换后的点云。
步骤204、从每一个转换点云中选取能够形成一个平面的至少三个角点。
在本步骤中,确定转换点云所在坐标系的第一坐标轴符合转换点云中的所有点与原点组成的线段在该第一坐标轴的投影最分散。在该第一坐标轴上选取至少三个第一点坐标,该至少三个第一点坐标在第一坐标轴的坐标值的绝对值在该第一坐标轴上的坐标值最大;再从至少三个第一点坐标中确定至少三个第二点坐标,该至少三个第二点坐标在第二坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大;最后从至少三个第二点坐标中确定至少三个第三点坐标,该至少三个第三点坐标在第三坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大,并且该至少三个第三点坐标位于第三坐标轴的同一方向。需要说明的是,第三坐标轴符合转换点云中的所有点与原点组成的线段在该第三坐标轴的投影最不分散,在第二坐标轴的投影程度位于第一坐标轴与第三坐标轴的投影程度之间。本发明实施例利用智能选取角点的方式对两个转换点云分别进行选取角点,进而可以根据每个转换点云上选取的角点组成的多边形的对应边长值的比例,确定重建点云所需要恢复尺度的尺度因子的大小。
例如,如前例所述,从一种基于带帆板的卫星转换点云选取角点,其中,转换点云所在的坐标系中的第一坐标轴(X轴)与目标物的三维坐标系的X轴的方向一致,相应地,转换点云所在的坐标系中的Y轴和Z轴分别与目标物的三维坐标系的Y轴和Z轴的方向一致。针对转换点云中的重建点云所在的坐标系,首先选取X轴方向上的坐标点的X值最大和最小的点云簇(若干个三维点组成的点云),根据待帆板卫星的特点,此时选取的点基本上在卫星最左和最右两帆板边缘处;然后从已选出的卫星左右帆板边缘的点云簇中选取坐标点的Y值最大和最小的点云线,此时选出的点云能够组成四条线段;最后从已选出的点云线中选取坐标点的Z值最大或最小的四个点云三维点,该四个点云三维点即为所需选取的转换点云中重建点云的四个角点。同理,利用上述方法选取转换点云中标准点云的四个角点,需要注意的是,在从点云线中选取坐标点的Z值最大或最小的四个点云三维点时,需满足重建点云和标准点云从点云线中选取点云三维点的标准一致,即同时选取Z值最大的点云三维点或同时选取Z值最小的点云三维点。
步骤205、根据选取的各个角点,计算尺度因子。
在本步骤中,由于标准点云为反映目标物真实尺寸和真实三维形状的点云,而重建点云为反映目标物三维形状但非真实尺寸的点云,因此需要对重建点云的尺寸进行恢复。根据从每个转换点云中选取的至少三个角点组成的多边形,确定转换点云中的标准点云对应的多边形的边长与转换点云中的重建点云对应的多边形的边长的比值,再将所有的比值累加求和后求平均获得平均值,将该平均值作为重建点云恢复尺寸的尺度因子,以便于对恢复尺度因子的重建点云与标准点云进行匹配。
例如,如前例所述,从转换点云的重建点云和标准点云中分别选取四个角点{M1(x1,y1,z1),M2(x2,y2,z2),M3(x3,y3,z3),M4(x4,y4,z5)},针对每一组的四个角点,将该组的四个角点连接形成一个四边形,根据坐标值利用公式:
Figure BDA0002710305080000201
依次计算每个四边形的边长(L1,L2,L3,L4),将标准点云的各个边长值与重建点云的对应边长值相除,获得四个值,再将四个值累加求和进行平均获得平均值,该平均值即为所需计算的尺度因子。
步骤206、根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云。
在本步骤中,根据计算出的尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,具体包括:将转换点云中的重建点云所包括的每一个点坐标与尺度因子相乘,获得每一个点坐标对应的调节点坐标,由所有的调节点坐标组成调节点云。此时,由于重建点云可能存在缺陷,但缺陷的尺寸与重建点云的尺寸相比较小,因此再将重建点云恢复尺寸之后,该缺陷相应变化,因此调节点云的尺寸与转换点云中的标准点云的尺寸基本一致。将恢复尺寸的重建点云与标准点云进行匹配,避免了因尺寸不一致造成误差,提高了三维点云匹配精度。
例如,如前例所述,计算出的尺度因子为数值S,将重建点云所包括的每一个点坐标的坐标值Mi(xi,yi,zi)分别与数值S相乘,获得每一个点坐标对应的调节点坐标的坐标值
Figure BDA0002710305080000202
由所有的调节点坐标组成调节点云。
步骤207、判断调节点云所在的坐标系的坐标轴的方向与标准点云所在的坐标系中对应的坐标轴的方向是否相同,若是,执行步骤208,否则执行步骤210。
在本步骤中,确定标准点云所在的坐标系中的X坐标轴、Y坐标轴和Z坐标轴的单位坐标基分别为i1,j1,k1,确定重建点云所在的坐标系中的X、Y坐标轴和Z坐标轴的单位坐标基分别为i2,j2,k2,确定i1与i2,J1与j2,k1与k2之间的夹角分别为θ1,θ2,θ3。判断θ1,θ2,θ3中是否存在至少一个不为0°,若是,则确定调节点云所在的坐标系对应的θ值不为0的坐标轴的方向与标准点云所在的坐标系中对应的坐标轴的方向不相同,则不是,则确定调节点云所在的坐标系的坐标轴的方向与标准点云所在的坐标系中对应的坐标轴的方向相同。
例如,通过下述公式计算出θ123的大小,
Figure BDA0002710305080000211
其中,θ1用于表征i1与i2之间的夹角,θ2用于表征j1与j2之间的夹角,θ3用于表征k1与k2之间的夹角,arccos为反余弦函数,用于表征反余弦函数中的反余弦。如果θ123均等于0°,则表明调节点云所在的坐标系的坐标轴的方向与标准点云所在的坐标系中对应的坐标轴的方向相同,若θ1等于180°,则表明调节点云所在的坐标系的X坐标轴的方向与标准点云所在的坐标系中对应的X坐标轴的方向相反,同理可推出,若θ2或θ3等于180°,则相应表明调节点云所在的坐标系的Y坐标轴或Z坐标轴的方向与标准点云所在的坐标系中对应的Y坐标轴或Z坐标轴的方向相反。
步骤208、针对调节点云所包括的每一个坐标点,将该坐标点的坐标值与针对该反向坐标轴预设的旋转矩阵相乘,得到该坐标点的坐标替换值。
在本步骤中,若调节点云所在的坐标系的X坐标轴的方向与标准点云所在的坐标系中对应的X坐标轴的方向相反,则将调节点云所包括的坐标点的坐标值与预设的X轴旋转矩阵相乘,得到该坐标点的坐标替换值;同理,若Y坐标轴的方向相反,则将调节点云所包括的坐标点的坐标值与预设的Y轴旋转矩阵相乘;若Z坐标轴的方向相反,则将调节点云所包括的坐标点的坐标值与预设的Z轴旋转矩阵相乘;分别获得该坐标点的替换值。
例如,预设的X轴旋转矩阵为
Figure BDA0002710305080000212
坐标点的坐标值Pi(xi,yi,zi)乘以该旋转矩阵得到Pi的坐标替换值为
Figure BDA0002710305080000221
预设的Y轴旋转矩阵为
Figure BDA0002710305080000222
坐标点的坐标值Pj(xj,yj,zj)乘以该旋转矩阵得到Pj的坐标替换值为
Figure BDA0002710305080000223
预设的Z轴旋转矩阵为
Figure BDA0002710305080000224
坐标点的坐标值Pk(xk,yk,zk)乘以该旋转矩阵得到Pi的坐标替换值为
Figure BDA0002710305080000225
步骤209、将该坐标点的坐标值替换为坐标替换值,生成完成坐标值替换的坐标点形成的调节点云。
在本步骤中,如前例所述,当调节点云所在的坐标系的X坐标轴的方向与标准点云所在的坐标系中对应的X坐标轴的方向相反,则将调节点云所包括的坐标点的坐标值与预设的X轴旋转矩阵相乘,得到该坐标点的坐标替换值,将调节点云所包括的坐标点的坐标值替换成坐标替换值,此时,由这些完成坐标值替换的坐标点组成新的调节点云;同理,若调节点云所在的坐标系的Y坐标轴或Z坐标轴的方向与标准点云所在的坐标系中对应的Y坐标轴或Z坐标轴的方向相反时,同样,将完成坐标值替换的坐标点组成新的调节点云。
步骤210、通过迭代最近点算法对调节点云和标准点云进行匹配。
在本步骤中,利用迭代最近点算法对调节点云和标准点云进行匹配,其中,此时调节点云所在的坐标系的坐标轴的方向与标准点云所在的坐标系中对应的坐标轴的方向相同,调节点云为完成坐标系转换且恢复尺寸的待匹配三维点云中的重建点云,标准点云为完成坐标系转换的待匹配三维点云中的标准点云。
第二方面,本发明实施例还提供了三维点云匹配装置,如图3所示,包括:
构建模块301,用于构建针对目标物的三维坐标系;
去中心化模块302,用于在构建模块301之后,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,其中,所述去中心化点云所在的坐标系的原点与所述构建模块构建的所述三维坐标系的原点重合,所述两个待匹配三维点云用于描述目标物的三维形状;
转换模块303,用于对每一个所述去中心化模块302处理后的所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,其中,所述转换点云的坐标轴与所述三维坐标系的对应坐标轴相平行;
选取模块304,用于从每一个所述转换模块303转换的所述转换点云中选取能够形成一个平面的至少三个角点;
计算模块305,用于根据所述选取模块304选取的各个所述角点,计算尺度因子;
调节模块306,用于根据所述计算模块305计算出的所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,其中,所述调节点云的大小与所述转换点云中的标准点云的大小之间的差值在预设的调节范围内,所述标准点云用于描述所述目标物的真实尺寸和三维形状的点云,所述重建点云用于描述所述目标物的三维形状和非真实尺寸的点云;
第一匹配模块307,用于通过迭代最近点算法对所述调节模块306调节的所述调节点云和所述转换模块303转换的所述标准点云进行匹配。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上所述,本发明各个实施例所提供的三维点云匹配方法,至少具有如下有益效果:
1、在本发明实施例中,首先构建针对目标物的三维坐标系,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,此时,去中心化点云所在的坐标系的原点与三维坐标系的原点重合,两个待匹配三维点云用于描述目标物的三维形状。再对每一个去中心化点云所在的坐标系进行转换,得到每一个去中心化点云对应的转换点云,其中,转换点云的坐标轴与三维坐标系的对应坐标轴相平行。从每一个转换点云中选取能够形成一个平面的至少三个角点,根据选取的各个所述角点,计算尺度因子,根据尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,其中,调节点云的大小与转换点云中的标准点云的大小之间的差值在预设的调节范围内,标准点云用于描述目标物的真实尺寸和三维形状的点云,重建点云用于描述目标物的三维形状和非真实尺寸的点云。最后通过迭代最近点算法对调节点云和标准点云进行匹配,以完成三维点云的匹配过程。本发明实施例将重建点云变换坐标系并恢复尺度和将标准点云变换坐标系后再进行匹配的方法,能够减小重建点云和标准点云的匹配误差。
2、在本发明实施例中,两个待匹配三维点云为重建点云和标准点云,其中,重建点云用于描述所述目标物的三维形状和非真实尺寸的点云,标准点云用于描述所述目标物的真实尺寸和三维形状的点云。对每个待匹配三维点云进行去中心化处理,即将每个待匹配三维点云的每个点坐标的坐标值减去所有点坐标的坐标值的平均值。因此,每个待匹配三维点云到的坐标系的原点平移到了待匹配三维点云中心点的位置,以方便后续对每个待匹配三维点云进行坐标系变换。
3、在本发明实施例中,将完成去中心化处理的待匹配三维点云的点坐标的坐标值映射到新的坐标基所在的空间中,其中,一个坐标基满足待匹配三维点云中的所有点与原点组成的线段在该正交基的投影最分散,另外两个坐标基与投影最分散的坐标基方向垂直,即三个坐标基之间相互独立。因此利用两个坐标基之间的协方差为0的特征,对去中心化处理后的待匹配三维点云所包括的点坐标表示为协方差矩阵,进而对该协方差矩阵进行对角化处理,获得对角矩阵。从对角矩阵中确定三个特征值,进而根据三个特征值,确定与每个特征值对应的特征向量,再将三个特征向量进行归一化处理,即可获得三个模为1的两两垂直的单位正交基,将三个单位正交基对应的数值组成矩阵。最后将去中心化点云所包括的每一个点坐标与该矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标,由所有的转换点坐标组成转换点云,即完成了去中心化点云的坐标系转换,以便于从完成坐标系转换后的中心化点云中选取合适的角点。
4、在本发明实施例中,确定转换点云所在坐标系的第一坐标轴符合转换点云中的所有点与原点组成的线段在该第一坐标轴的投影最分散。在该第一坐标轴上选取至少三个第一点坐标,该至少三个第一点坐标在第一坐标轴的坐标值的绝对值在该第一坐标轴上的坐标值最大;再从至少三个第一点坐标中确定至少三个第二点坐标,该至少三个第二点坐标在第二坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大;最后从至少三个第二点坐标中确定至少三个第三点坐标,该至少三个第三点坐标在第三坐标轴的坐标值的绝对值在该第二坐标轴上的坐标值最大,并且该至少三个第三点坐标位于第三坐标轴的同一方向。需要说明的是,第三坐标轴符合转换点云中的所有点与原点组成的线段在该第三坐标轴的投影最不分散,在第二坐标轴的投影程度位于第一坐标轴与第三坐标轴的投影程度之间。本发明实施例利用智能选取角点的方式对两个转换点云分别进行选取角点,进而可以根据每个转换点云上选取的角点组成的多边形的对应边长值的比例,确定重建点云所需要恢复尺度的尺度因子的大小。
5、在本发明实施例中,由于标准点云为反映目标物真实尺寸和真实三维形状的点云,而重建点云为反映目标物三维形状但非真实尺寸的点云,因此需要对重建点云的尺寸进行恢复。根据从每个转换点云中选取的至少三个角点组成的多边形,确定转换点云中的标准点云对应的多边形的边长与转换点云中的重建点云对应的多边形的边长的比值,再将所有的比值累加求和后求平均获得平均值,将该平均值作为重建点云恢复尺寸的尺度因子,以便于对恢复尺度因子的重建点云与标准点云进行匹配。
6、在本发明实施例中,根据计算出的尺度因子,对转换点云中的重建点云的大小进行调节,得到调节点云,具体包括:将转换点云中的重建点云所包括的每一个点坐标与尺度因子相乘,获得每一个点坐标对应的调节点坐标,由所有的调节点坐标组成调节点云。此时,由于重建点云可能存在缺陷,但缺陷的尺寸与重建点云的尺寸相比较小,因此再将重建点云恢复尺寸之后,该缺陷相应变化,因此调节点云的尺寸与转换点云中的标准点云的尺寸基本一致。将恢复尺寸的重建点云与标准点云进行匹配,避免了因尺寸不一致造成误差,提高了三维点云匹配精度。
7、在本发明实施例中,在对转换点云中的重建点云的大小进行调节得到调节点云之后,在对调节点云和标准点云进行匹配之前,因为调节点云与转换点云中的标准点云所在的坐标系的坐标轴方向具有随机性,因此还需要判断调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向是否相同。如果相同,则直接对重建点云和标准点云进行匹配,如果不相同,则对于坐标轴方向不同的目标坐标轴的方向进行调整,具体为,根据调节点云所在的坐标系的反向坐标轴和该调节点云所包括的每一个坐标点计算该坐标点的坐标替换值,再将该坐标点的坐标轴替换为坐标替换值,再进行重建点云和标准点云的匹配过程。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.三维点云匹配方法,其特征在于,包括:
构建针对目标物的三维坐标系;
将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,其中,所述去中心化点云所在的坐标系的原点与所述三维坐标系的原点重合,所述两个待匹配三维点云用于描述目标物的三维形状;
对每一个所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,其中,所述转换点云的坐标轴与所述三维坐标系的对应坐标轴相平行;
从每一个所述转换点云中选取能够形成一个平面的至少三个角点;
根据选取的各个所述角点,计算尺度因子;
根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,其中,所述调节点云的大小与所述转换点云中的标准点云的大小之间的差值在预设的调节范围内,所述标准点云用于描述所述目标物的真实尺寸和三维形状的点云,所述重建点云用于描述所述目标物的三维形状和非真实尺寸的点云;
通过迭代最近点算法对所述调节点云和所述标准点云进行匹配。
2.根据权利要求1所述的方法,其特征在于,所述将两个待匹配三维点云分别进行去中心化处理,包括:
针对每一个所述待匹配三维点云,根据下述第一公式进行去中心化处理;
第一公式:
Figure FDA0002710305070000021
其中,
Figure FDA0002710305070000022
用于表征该待匹配三维点云的第i个去中心化处理之后的点坐标,pi用于表征该待匹配三维点云第i个去中心化处理之前的点坐标,m用于表征该待匹配三维点云所包括的点坐标的数量。
3.根据权利要求1所述的方法,其特征在于,所述对每一个所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,包括:
针对每一个所述去中心化点云,均执行:
计算该去中心化点云的协方差矩阵;
将所述协方差矩阵进行对角化处理,生成对角矩阵;
将所述对角矩阵中的三个特征值对应的特征向量进行归一化处理,获得三个单位正交基;
将该去中心化点云所包括的每一个点坐标与由所述三个单位正交基分别对应的数值组成的矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标;
由各个所述转换点坐标组成转换点云。
4.根据权利要求1所述的方法,其特征在于,
所述从每一个所述转换点云中选取能够形成一个平面的至少三个角点,包括:
针对每一个所述转换点云,均执行:
从该转换点云中确定至少三个第一点坐标,其中,所述第一点坐标的第一坐标轴的坐标值的绝对值,大于该转换点云中除第一点坐标之外的点坐标的任意一个坐标轴的坐标值的绝对值;
从所述至少三个第一点坐标中确定至少三个第二点坐标,其中,所述第二点坐标的第二坐标轴的坐标值的绝对值,大于所述至少三个第一点坐标的第二坐标轴的坐标值的绝对值;
从所述至少三个第二点坐标中确定至少三个第三点坐标,其中,所述第三点坐标的第三坐标轴的坐标值的绝对值,大于所述至少三个第二点坐标的第三坐标轴的坐标值的绝对值,且所述至少三个第三坐标点在第三坐标轴的坐标值同时为正数或同时为负数;
将确定的所述第三坐标点作为角点。
5.根据权利要求1所述的方法,其特征在于,
在所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云之后,在所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配之前,进一步包括:
S1:确定所述调节点云所在的坐标系的坐标轴的方向是否与所述标准点云所在的坐标系中对应的坐标轴的方向相同,如果是,步骤S2,否则,执行步骤S3;
S2:执行所述通过迭代最近点算法对所述调节点云和所述标准点云进行匹配;
S3:针对所述调节点云所在的坐标系中的反向坐标轴,均执行:
针对所述调节点云所包括的每一个坐标点,根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值;将该坐标点的坐标值替换为所述坐标替换值,其中,该反向坐标轴与所述标准点云所在的坐标系中对应的坐标轴的方向不同,返回S1。
6.根据权利要求5所述的方法,其特征在于,
所述根据所述反向坐标轴和该坐标点的坐标值计算该坐标点的坐标替换值,包括:
将该坐标点的坐标值与针对该反向坐标轴预设的旋转矩阵相乘,得到该坐标点的坐标替换值。
7.根据权利要求1至6中任一所述的方法,其特征在于,
所述根据选取的各个所述角点,计算尺度因子,包括:
针对每一个所述转换点云,均执行:
根据从该转换点云中选取的各个所述角点,构建该转换点云对应的多边形;
根据各个所述角点的坐标值,确定该多边形每一条边的边长;
针对所述转换点云中的标准点云对应的多边形的每一条边,均执行;
确定所述转换点云中的重建点云对应的多边形中与该条边相对应的目标边;
计算该多边形的边长与所述目标边的边长的比值;
对计算的各个所述比值求平均得到平均值,并将该平均值作为尺度因子。
8.根据权利要求1至6中任一所述的方法,其特征在于,
所述根据所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,包括:
将所述转换点云中的重建点云所包括的每一个点坐标与所述尺度因子相乘,得到每一个点坐标对应的调节点坐标;
由各个所述调节点坐标组成调节点云。
9.三维点云匹配装置,其特征在于,包括:
构建模块,用于构建针对目标物的三维坐标系;
去中心化模块,用于在构建模块之后,将两个待匹配三维点云分别进行去中心化处理,获得每一个待匹配三维点云对应的去中心化点云,其中,所述去中心化点云所在的坐标系的原点与所述构建模块构建的所述三维坐标系的原点重合,所述两个待匹配三维点云用于描述目标物的三维形状;
转换模块,用于对每一个所述去中心化模块处理后的所述去中心化点云所在的坐标系进行转换,得到每一个所述去中心化点云对应的转换点云,其中,所述转换点云的坐标轴与所述三维坐标系的对应坐标轴相平行;
选取模块,用于从每一个所述转换模块转换的所述转换点云中选取能够形成一个平面的至少三个角点;
计算模块,用于根据所述选取模块选取的各个所述角点,计算尺度因子;
调节模块,用于根据所述计算模块计算出的所述尺度因子,对所述转换点云中的重建点云的大小进行调节,得到调节点云,其中,所述调节点云的大小与所述转换点云中的标准点云的大小之间的差值在预设的调节范围内,所述标准点云用于描述所述目标物的真实尺寸和三维形状的点云,所述重建点云用于描述所述目标物的三维形状和非真实尺寸的点云;
第一匹配模块,用于通过迭代最近点算法对所述调节模块调节的所述调节点云和所述转换模块转换的所述标准点云进行匹配。
10.根据权利要求9所述的装置,其特征在于,
所述转换模块,用于执行以下操作:
针对每一个所述去中心化点云,均执行:
计算该去中心化点云的协方差矩阵;
将所述协方差矩阵进行对角化处理,生成对角矩阵;
将所述对角矩阵中的三个特征值对应的特征向量进行归一化处理,获得三个单位正交基;
将该去中心化点云所包括的每一个点坐标与由所述三个单位正交基分别对应的数值组成的矩阵相乘,获得该去中心化点云所包括的每一个点坐标对应的转换点坐标;
由各个所述转换点坐标组成转换点云。
CN202011053718.9A 2020-09-29 2020-09-29 三维点云匹配方法和装置 Active CN112164101B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011053718.9A CN112164101B (zh) 2020-09-29 2020-09-29 三维点云匹配方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011053718.9A CN112164101B (zh) 2020-09-29 2020-09-29 三维点云匹配方法和装置

Publications (2)

Publication Number Publication Date
CN112164101A true CN112164101A (zh) 2021-01-01
CN112164101B CN112164101B (zh) 2023-01-20

Family

ID=73862275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011053718.9A Active CN112164101B (zh) 2020-09-29 2020-09-29 三维点云匹配方法和装置

Country Status (1)

Country Link
CN (1) CN112164101B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113011113A (zh) * 2021-03-23 2021-06-22 中国空气动力研究与发展中心计算空气动力研究所 一种离散点云重复点快速查找方法
CN114565648A (zh) * 2022-02-28 2022-05-31 上海商汤临港智能科技有限公司 重建车位评测方法、装置、设备及存储介质
CN118154825A (zh) * 2024-05-13 2024-06-07 山东科技大学 一种旋转不变的点云数据处理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296693A (zh) * 2016-08-12 2017-01-04 浙江工业大学 基于3d点云fpfh特征实时三维空间定位方法
CN108759665A (zh) * 2018-05-25 2018-11-06 哈尔滨工业大学 一种基于坐标转换的空间目标三维重建精度分析方法
US20200043186A1 (en) * 2017-01-27 2020-02-06 Ucl Business Plc Apparatus, method, and system for alignment of 3d datasets
CN111553985A (zh) * 2020-04-30 2020-08-18 四川大学 邻图配对式的欧式三维重建方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296693A (zh) * 2016-08-12 2017-01-04 浙江工业大学 基于3d点云fpfh特征实时三维空间定位方法
US20200043186A1 (en) * 2017-01-27 2020-02-06 Ucl Business Plc Apparatus, method, and system for alignment of 3d datasets
CN108759665A (zh) * 2018-05-25 2018-11-06 哈尔滨工业大学 一种基于坐标转换的空间目标三维重建精度分析方法
CN111553985A (zh) * 2020-04-30 2020-08-18 四川大学 邻图配对式的欧式三维重建方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
M. USMAN MAQBOOL BHUTTA,MING LIU: "PCR-Pro: 3D Sparse and Different Scale Point Clouds Registration and Robust Estimation of Information Matrix For Pose Graph SLAM", 《ARXIV:1808.09693》 *
PATRIK KAMENCAY ETC.: "Improved Feature Point Algorithm for 3D Point Cloud Registration", 《2019 42ND INTERNATIONAL CONFERENCE ON TELECOMMUNICATIONS AND SIGNAL PROCESSING》 *
俞浩等: "基于特征向量的点云配准方法研究", 《合肥工业大学学报(自然科学版)》 *
唐志荣等: "基于典型相关分析的点云配准算法", 《中国激光》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113011113A (zh) * 2021-03-23 2021-06-22 中国空气动力研究与发展中心计算空气动力研究所 一种离散点云重复点快速查找方法
CN113011113B (zh) * 2021-03-23 2022-04-05 中国空气动力研究与发展中心计算空气动力研究所 一种离散点云重复点快速查找方法
CN114565648A (zh) * 2022-02-28 2022-05-31 上海商汤临港智能科技有限公司 重建车位评测方法、装置、设备及存储介质
CN118154825A (zh) * 2024-05-13 2024-06-07 山东科技大学 一种旋转不变的点云数据处理方法

Also Published As

Publication number Publication date
CN112164101B (zh) 2023-01-20

Similar Documents

Publication Publication Date Title
CN112164101B (zh) 三维点云匹配方法和装置
CN101751695B (zh) 点云数据的主曲率和主方向估计方法
US8280150B2 (en) Method and apparatus for determining similarity between surfaces
Tang et al. N-dimensional tensor voting and application to epipolar geometry estimation
Zhu et al. AdaFit: Rethinking learning-based normal estimation on point clouds
Wu Recovering parametric geons from multiview range data
JP2008511932A (ja) 直接因数分解による変形可能な形状のレジストレーション及びモデリングのためのシステム及び方法
CN110211163A (zh) 一种基于epfh特征的点云匹配算法
CN112651944B (zh) 基于cad模型的3c部件高精度六维位姿估计方法及系统
CN110009745B (zh) 根据平面基元和模型驱动对点云提取平面的方法
CN113205547A (zh) 点云配准方法、骨头配准方法、装置、设备及存储介质
Grossmann et al. Computational surface flattening: a voxel-based approach
CN108537887A (zh) 基于3d打印的草图与模型库三维视图匹配方法
JP3764773B2 (ja) 注視点を用いた頑健な認識装置
CN117876447B (zh) 一种基于微表面融合与对齐的三维点云配准方法
CN112017159B (zh) 一种遥感场景下的地面目标真实感仿真方法
CN113902779A (zh) 一种基于张量投票方法的点云配准方法
CA2429130A1 (en) Generating smooth feature lines for subdivision surfaces
CN107818578B (zh) 一种基于注册方法的快速人脸模型重建算法及系统
An et al. Self-adaptive polygon mesh reconstruction based on ball-pivoting algorithm
CN107247833B (zh) 一种云计算下的cae海量数据轻量化方法
JP2000353244A (ja) 基礎行列を求めるための方法、ユークリッド的な3次元情報の復元方法、および3次元情報復元装置。
CN114723973A (zh) 大尺度变化鲁棒的图像特征匹配方法及装置
WO2013044484A1 (en) Method and apparatus for robust similarity comparison of 3d models
CN109658489B (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