CN116977386A - 房屋点云数据的处理方法和装置 - Google Patents

房屋点云数据的处理方法和装置 Download PDF

Info

Publication number
CN116977386A
CN116977386A CN202311115657.8A CN202311115657A CN116977386A CN 116977386 A CN116977386 A CN 116977386A CN 202311115657 A CN202311115657 A CN 202311115657A CN 116977386 A CN116977386 A CN 116977386A
Authority
CN
China
Prior art keywords
point cloud
cloud data
determining
matrix
data
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.)
Pending
Application number
CN202311115657.8A
Other languages
English (en)
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.)
Suzhou High Tech Zone Surveying And Mapping Office Co ltd
Original Assignee
Suzhou High Tech Zone Surveying And Mapping Office Co ltd
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 Suzhou High Tech Zone Surveying And Mapping Office Co ltd filed Critical Suzhou High Tech Zone Surveying And Mapping Office Co ltd
Priority to CN202311115657.8A priority Critical patent/CN116977386A/zh
Publication of CN116977386A publication Critical patent/CN116977386A/zh
Pending legal-status Critical Current

Links

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/337Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)

Abstract

本申请涉及一种房屋点云数据的处理方法和装置。方法包括:获取第一区域的第一点云数据、以及第二区域的第二点云数据,第一区域与第二区域具有公共区域,第一点云数据为第一坐标系下的数据,第二点云数据为第二坐标系下的数据;分割第一点云数据得到公共区域的第三点云数据,分割第二点云数据得到公共区域的第四点云数据;基于第三点云数据和第四点云数据,确定第三点云数据与第四点云数据之间的旋转矩阵、以及平移向量;基于旋转矩阵和平移向量,确定第一配准关系;基于第一配准关系,将第一点云数据转换至第二坐标系下。采用本方法能够降低处理点云数据所需占用的计算资源,快速、准确地将第一点云数据和第二点云数据转换到同一坐标系下。

Description

房屋点云数据的处理方法和装置
技术领域
本申请涉及点云数据处理技术领域,特别是涉及一种房屋点云数据的处理方法和装置。
背景技术
点云数据是由激光扫描仪或相机等设备扫描得到的,某个坐标系下大量离散点的集合,每个点都包括自身的三维坐标及属性信息。
基于对房屋进行扫描得到的点云数据,可以确定房屋的三维模型,进而确定房屋的空间结构、面积和体积等信息,因而,点云数据越来越广泛地应用于对房屋的测量。其中,点云数据通常由多个扫描设备采集,多个扫描设备的位置、视角不同,因此需对多组点云数据进行处理,以将多组点云数据初步统一到同一参考坐标系下,以达到信息融合的目的。
然而,由于点云数据的数据量通常非常大,处理点云数据所需占用的计算资源较大。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低处理点云数据所需占用的计算资源,快速、准确地将第一点云数据和第二点云数据转换到同一坐标系下的房屋点云数据的处理方法和装置。
第一方面,本申请提供了一种房屋点云数据的处理方法。所述方法包括:
获取第一区域的第一点云数据、以及第二区域的第二点云数据,所述第一区域与所述第二区域具有公共区域,所述第一点云数据为第一坐标系下的数据,所述第二点云数据为第二坐标系下的数据;
分割所述第一点云数据得到所述公共区域的第三点云数据,分割所述第二点云数据得到所述公共区域的第四点云数据;
基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵、以及平移向量;
基于所述旋转矩阵和所述平移向量,确定第一配准关系;
基于所述第一配准关系,将所述第一点云数据转换至所述第二坐标系下。
在其中一个实施例中,所述基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵包括:
基于所述第三点云数据和所述第三点云数据的质心,确定所述第三点云数据的第一对称矩阵;
基于所述第四点云数据和所述第四点云数据的质心,确定所述第四点云数据的第二对称矩阵;
基于所述第一对称矩阵和所述第二对称矩阵,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵。
在其中一个实施例中,所述基于所述第三点云数据和所述第三点云数据的质心,确定所述第三点云数据的第一对称矩阵包括:
采用第一计算公式,确定所述第三点云数据的第一对称矩阵,所述第一计算公式包括:
其中,A为所述第一对称矩阵,ri为终点为所述第三点云数据包括的任一点,且起点为所述第三点云数据的质心的向量,rix、riy、riz为ri在坐标轴上的分向量的长度,n为所述第三点云数据包括的点的个数。
在其中一个实施例中,所述第一计算公式的获得方式,包括:
基于第三点云数据,确定所述第三点云数据的第一方向向量,所述第三点云数据包括的所有点到所述第一方向向量的欧式距离之和最小;
基于所述第一方向向量,确定第一计算公式。
在其中一个实施例中,所述基于所述第一对称矩阵和所述第二对称矩阵,确定所述旋转矩阵包括:
基于所述第一对称矩阵的特征向量,确定所述第三点云数据的第一特征矩阵;
基于所述第二对称矩阵的特征向量,确定所述第四点云数据的第二特征矩阵;
采用第二计算公式,确定所述旋转矩阵,所述第二计算公式包括:
R=VU-1 (11)
其中,R为所述旋转矩阵,U为所述第一特征矩阵,V为所述第二特征矩阵。
在其中一个实施例中,所述基于所述第一对称矩阵的特征向量,确定所述第三点云数据的第一特征矩阵包括:
计算所述第一对称矩阵的第一特征向量、第二特征向量和第三特征向量;
对所述第一特征向量、所述第二特征向量和所述第三特征向量进行归一化处理;
基于归一化的第一特征向量、归一化的第二特征向量和归一化的第三特征向量,确定第一特征矩阵。
在其中一个实施例中,所述基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据相对于所述第四点云数据的平移向量包括:
基于所述第三点云数据,确定所述第三点云数据的质心;
基于所述第四点云数据,确定所述第四点云数据的质心;
基于所述第三点云数据的质心和所述第四点云数据的质心,确定所述第三点云数据与所述第四点云数据之间的平移向量,所述平移向量的起点和终点分别为所述第三点云数据的质心和所述第四点云数据的质心。
在其中一个实施例中,所述获取第一区域的第一点云数据、以及第二区域的第二点云数据,之后还包括:
对所述第一点云数据和所述第二点云数据进行预处理,使得所述第一点云数据和所述第二点云数据仅包括房屋或房屋附属物的点云数据;
对所述第三点云数据或所述第四点云数据进行数据抽稀处理,使得所述第三点云数据的数据量,与所述第四点云数据的数据量之间的差值小于预设的期望差值。
在其中一个实施例中,所述第一配准关系包括:
Q=RP+t (18)
其中,P为所述第三点云数据,Q为所述第四点云数据,R为所述旋转矩阵,t为所述平移向量。
第二方面,本申请还提供了一种房屋点云数据的处理装置。所述装置包括:
获取模块,用于获取第一区域的第一点云数据、以及第二区域的第二点云数据,所述第一区域与所述第二区域具有公共区域,所述第一点云数据为第一坐标系下的数据,所述第二点云数据为第二坐标系下的数据;
分割模块,用于分割所述第一点云数据得到所述公共区域的第三点云数据,分割所述第二点云数据得到所述公共区域的第四点云数据;
第一确定模块,用于基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据和所述第四点云数据之间的旋转矩阵、以及平移向量;
第二确定模块,用于基于所述旋转矩阵和所述平移向量,确定第一配准关系;
转换模块,用于基于所述第一配准关系,将所述第一点云数据转换至所述第二坐标系下。
上述房屋点云数据的处理方法和装置,基于房屋点云数据的数据量小,且房屋的形状特征明显的特点,能够快速、准确地分割第一点云数据和第二点云数据中公共区域对应的点云数据,通过确定不同坐标系下的公共区域对应的点云数据之间的配准关系,将第一点云数据和第二点云数据转换到同一坐标系下,降低了处理点云数据所需占用的计算资源,同时避免了非公共区域的点云数据的干扰,且在确定配准关系的过程中,公共区域对应的点云数据的数据量接近,提升了配准的准确性。
附图说明
图1为一个实施例中房屋点云数据的处理方法的应用环境图;
图2为一个实施例中房屋点云数据的处理的流程示意图;
图3为一个实施例中第一点云数据的点云图、以及第二点云数据的点云图;
图4为一个实施例中分割得到的第三点云数据的点云图、以及第四点云数据的点云图;
图5为一个实施例中转换后第一点云数据的点云图、以及第二点云数据的点云图;
图6另一个实施例中房屋点云数据的处理的流程示意图;
图7为一个实施例中房屋点云数据的处理装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的房屋点云数据的处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。房屋点云数据可以存储于终端102或服务器104。终端102可以直接获取激光扫描仪或相机等设备扫描得到的房屋点云数据,终端102也可以通过网络获取存储于服务器104的房屋点云数据;服务器104可以直接获取激光扫描仪或相机等设备扫描得到的房屋点云数据,服务器104也可以通过网络获取存储于终端102的房屋点云数据。房屋点云数据可以由终端102或服务器104进行处理。终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种房屋点云数据的处理方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤210,获取第一区域的第一点云数据、以及第二区域的第二点云数据,第一区域与第二区域具有公共区域,第一点云数据为第一坐标系下的数据,第二点云数据为第二坐标系下的数据。
其中,第一区域为某一需要测量的房屋,第一点云数据为通过激光扫描仪或相机等设备对第一区域进行点云采集得到;类似地,第二区域为另一需要测量的房屋,第二点云数据为通过激光扫描仪或相机等设备对第二区域进行点云采集得到。第一区域与第二区域具有公共区域,该公共区域的空间体积相同,可以是房屋的部分区域或房屋附属物,例如,该公共区域可以是房屋,房屋之间的楼道,或者楼梯间等。
在通过激光扫描仪或相机等设备对房屋进行点云采集时,为避免误差累积,通常需要每间隔一段固定时间,暂停点云采集。在一种可实现的方式中,可以利用暂停点云采集之前、以及之后的连续采集时间段,分别对第一区域和第二区域进行点云采集。
可以理解的是,第一区域和第二区域均可以为一个或多个,本实施例对第一区域和第二区域的数量不做限定。
步骤220,分割第一点云数据得到公共区域的第三点云数据,分割第二点云数据得到公共区域的第四点云数据。
在一种可能的实现方式中,点云数据可以可视化为图形窗口中的点云图,点云图为二维图像,点云图中的每个像素代表了点云数据包括的一个点或一组点。由于房屋点云数据的点云图的形状特征分明、易于辨别,因此可以基于第一点云数据的点云图、以及第二点云数据的点云图中公共区域的形状,分割第三点云数据和第四点云数据。
图3示出了本申请一实施例中第一点云数据的点云图、以及第二点云数据的点云图,图4示出了本申请一实施例中分割得到的第三点云数据的点云图、以及第四点云数据的点云图。第一点云数据的点云图如图3中(a)所示,第二点云数据的点云图如图3中(b)所示,第三点云数据的点云图如图3和图4中(c)所示、第四点云数据的点云图如图3和图4中(d)所示。可以理解的是,图3和图4仅示意性示出了某些房屋点云数据的点云图,其并非意在限制点云采集的房屋的类型和形状。
步骤230,基于第三点云数据和第四点云数据,确定第三点云数据与第四点云数据之间的旋转矩阵、以及平移向量。
其中,旋转矩阵用于表征第三点云数据与第四点云数据之间的旋转关系,平移向量用于表征第三点云数据与第四点云数据之间的平移关系,旋转矩阵和平移向量由第三点云数据和第四点云数据计算得到。
步骤240,基于旋转矩阵和平移向量,确定第一配准关系。
具体的,旋转矩阵可以为第三点云数据相对于第四点云数据的旋转矩阵,或者第四点云数据相对于第三点云数据的旋转矩阵;类似地,平移向量可以为第三点云数据相对于第四点云数据的平移向量,或者第四点云数据相对于第三点云数据的平移向量。第一配准关系包括第三点云数据与第四点云数据之间的旋转关系和平移关系,就是说,基于第一配准关系,能够对第三点云数据进行变换,使得第三点云数据转换到第二坐标系下,并与第四点云数据重合;类似地,基于第一配准关系,能够对第四点云数据进行变换,使得第四点云数据转换到第一坐标系下,并与第三点云数据重合。
步骤250,基于第一配准关系,将第一点云数据转换至第二坐标系下。
具体的,可以基于第一配准关系,对第一点云数据进行旋转和平移变换,使得第一点云数据转换到第二坐标系下,此时,第一点云数据中的第三点数据,与第二点云数据中的第四点云数据在第二坐标系下重合。
可选地,也可以基于第一配准关系,对第二点云数据进行旋转和平移变换,使得第二点云数据转换到第一坐标系下,此时,第一点云数据中的第三点数据,与第二点云数据中的第四点云数据在第一坐标系下重合。
图5示出了本申请一实施例中转换后第一点云数据的点云图、以及第二点云数据的点云图。
上述房屋点云数据的处理方法中,基于房屋点云数据的数据量小,且房屋的形状特征明显的特点,能够快速、准确地分割第一点云数据和第二点云数据中公共区域对应的点云数据,通过确定不同坐标系下的公共区域对应的点云数据之间的配准关系,将第一点云数据和第二点云数据转换到同一坐标系下,降低了处理点云数据所需占用的计算资源,同时避免了非公共区域的点云数据的干扰,且在确定配准关系的过程中,公共区域对应的点云数据的数据量接近,提升了配准的准确性。
在一个实施例中,上述步骤230包括:步骤231、步骤232、步骤233。
步骤231,基于第三点云数据和第三点云数据的质心,确定第三点云数据的第一对称矩阵。
具体的,将第三点云数据包括的点减去第三点云数据的质心,使得第三点云数据转换至以质心为坐标原点的坐标系下,基于转换后的第三点云数据确定第一对称矩阵,其中,第一对称矩阵中各个元素用于表征第三点云数据包括的点之间的某种定量关系。
步骤232,基于第四点云数据和第四点云数据的质心,确定第四点云数据的第二对称矩阵。
类似地,将第四点云数据包括的点减去第四点云数据的质心,使得第四点云数据转换至以质心为坐标原点的坐标系下,基于转换后的第四点云数据构建第二对称矩阵,其中,第二对称矩阵中各个元素用于表征第四点云数据包括的点之间的某种定量关系。
步骤233,基于第一对称矩阵和第二对称矩阵,确定第三点云数据与第四点云数据之间的旋转矩阵。
具体的,第一对称矩阵与第二对称矩阵中相同位置的元素用于表征同种定量关系,因此,基于第一对称矩阵和第二对称矩阵中的各个元素,能够确定同种定量关系之间的转换关系,进而定第三点云数据与第四点云数据之间的旋转矩阵。
本实施例中,将第三点云数和第四点云去中心化,并且基于去中心化的点云云数据确定了用于表征点云数据包括的点之间的定量关系的对称矩阵,使得通过对称矩阵能够确定点云数据之间的转换关系。
在一个实施例中,上述步骤231包括:步骤231A。
步骤231A,采用第一计算公式,确定第三点云数据的第一对称矩阵,第一计算公式包括:
其中,A为第一对称矩阵,ri终点为第三点云数据包括的任一点,且起点为第三点云数据的质心,rix、riy、riz为ri在坐标轴上的分向量的长度,该坐标系的坐标原点为第三点云数据的质心,n为第三点云数据包括的点的个数。
示例性地,自由向量ri的计算公式为:
ri=(pix-Cpx,piy-Cpy,piz-Cpz)=(rix,riy,riz) (2)
其中,pi为第三点云数据包括的任一点,pix、piy、piz分别为第一坐标系下pi在x轴、y轴、z轴上的分向量的长度,Cp为第三点云数据的质心,Cpx、Cpy、Cpz分别为第一坐标系下Cp在x轴、y轴、z轴上的分向量的长度。
进一步地,上述步骤232包括:步骤232A。
步骤232A,采用第一计算公式,确定第四点云数据的第二对称矩阵。
其中,确定第二对称的方式与上述步骤231A中确定第一对称矩阵的方式相同,本实施例在此不做赘述。
本实施例中,示例性地给出了用于表征第三点云数据包括的点之间的定量关系的第一对称矩阵,以及用于表征第四点云数据包括的点之间的定量关系的第二对称矩阵。
在一个实施例中,上述第一计算公式的获得方式,包括:步骤A1、步骤A2。
步骤A,基于第三点云数据,确定第三点云数据的第一方向向量,第三点云数据包括的所有点到第一方向向量的欧式距离之和最小。
示例性地,设第一方向向量为v,且v经过第三点云数据的质心Cp,v的表达式为:
v=(vx,vy,vz) (3)
其中,vx、vy、vz均为自由变量。
设第三点云数据包括的任一点pi到第一方向向量v的欧式距离为di,di的计算公式为:
设第一方向向量v为单位向量,也即是,|v|=1,di的计算公式为:
其中,e1、e2、e3为与x轴、y轴、z轴方向相同的单位向量,rix、riy、riz可以由上述公式(2)得到,vx、vy、vz可以由上述公式(3)得到。
为使第三点云数据包括的所有点到第一方向向量的欧式距离之和最小,构建评价函数J(v,λ),当该评价函数最小时,第三点云数据包括的所有点到第一方向向量的欧式距离之和最小,J(v,λ)的表达式为:
其中,λ为大于0的标量,rix、riy、riz可以由上述公式(2)得到,vx、vy、vz可以由上述公式(3)得到。
为使函数J(v,λ)最小,可以计算函数J(v,λ)的梯度分量,当函数J(v,λ)的梯度分量均为0时,函数J(v,λ)最小,函数J(v,λ)的梯度分量的表达式为:
当函数J(v,λ)的梯度分量均为0时,上述表达式(7)等价为:
也即是,当第三点云数据包括的所有点到第一方向向量的欧式距离之和最小时,第一方向向量(vx,vy,vz)满足:
步骤B,基于第一方向向量,确定第一计算公式。
基于步骤A可知,当第三点云数据包括的所有点到第一方向向量的欧式距离之和最小时,第一方向向量v满足:
Av=-λv (10)
其中,
也即是,第一方向向量v为矩阵A的特征向量。因此,将矩阵A作为第一计算公式,能够确定用于表征点云数据方向的向量。
示例性地,第一方向向量v可以为矩阵A最大特征值对应的特征向量。在一种可能的实现方式中,第一方向向量可用于表征第三点云数据的主方向。在另一种可能的实现方式中,矩阵A的多个特征向量均可以用于表征第三点数据的方向。
可以理解的是,确定第一计算公式的过程并不涉及具体的数值,因此,也可以基于其它点云数据获得上述第一计算公式,本实施例对此不做限定。
在一个实施例中,上述步骤233包括:步骤233A、步骤233B、步骤233C。
步骤233A,基于第一对称矩阵的特征向量,确定第三点云数据的第一特征矩阵。
示例性地,将第三点云数据带入第一计算公式得到第一对称矩阵AP,计算第一对称矩阵AP的特征向量,由第一对称矩阵AP的特征向量构成第一特征矩阵U。此时,第一特征矩阵U可以用于表征第三点云数据的方向信息。
步骤233B,基于第二对称矩阵的特征向量,确定第四点云数据第二特征矩阵。
类似地,将第四点云数据带入第一计算公式得到第二对称矩阵AQ,计算第二对称矩阵AQ的特征向量,由第二对称矩阵AQ的特征向量构成第二特征矩阵V。此时,第二特征矩阵V可以用于表征第四点云数据的方向信息。
步骤233C,采用第二计算公式,确定旋转矩阵,第二计算公式包括:
R=VU-1 (11)
其中,R为旋转矩阵,U为第一特征矩阵,V为第二特征矩阵。
可以理解的是,此时,旋转矩阵R用于左乘第一特征矩阵,以得到第二特征矩阵,第二计算公式也可以为:
R′=UV-1 (12)
此时,旋转矩阵R′用于左乘第二特征矩阵,以得到第一特征矩阵。
在一个实施例中,上述步骤233A包括:步骤B1、步骤B2、步骤B3。
步骤B1,计算第一对称矩阵的第一特征向量、第二特征向量和第三特征向量。
示例性地,可以基于公式:
APu=-λu (13)
计算第一对称矩阵AP的特征值λ1、λ2、λ3,以及相应的特征向量u1、u2、u3
步骤B2,对第一特征向量、第二特征向量和第三特征向量进行归一化处理。
其中,对向量进行归一化处理为将向量转换为方向不变的单位向量。
步骤B3,基于归一化的第一特征向量、归一化的第二特征向量和归一化的第三特征向量,确定第一特征矩阵。
示例性地,由归一化的第一特征向量、归一化的第二特征向量和归一化的第三特征向量构成第一特征矩阵U,此时,第一特征矩阵U为(u1,u2,u3)。
进一步地,确定第二特征矩阵的方法可以与上述步骤中确定第一特征矩阵的方法相同,此时,第二特征矩阵V为(v1,v2,v3)。
这样,在第三点云数据的尺度单位与第四点云数据的尺度单位相同的情况下,基于第一特征矩阵和第二特征矩阵确定的旋转矩阵,对第一点云数据或第二点云数据进行旋转时,不会造成第一点云数据或第二点云数据的拉伸,保证了第一点云数据或第二点云数据的尺度不变。
在一个实施例中,上述步骤230还包括:步骤234、步骤235、步骤236。
步骤234,基于第三点云数据,确定第三点云数据的质心。
示例性地,可以基于公式:
计算第三点云数据的质心CP,其中pi为第三点云数据包括的任一点,n为第三点云数据包括的所有点的个数。
步骤235,基于第四点云数据,确定第四点云数据的质心。
类似地,可以基于公式:
计算第四点云数据的质心CQ,其中qi为第四点云数据包括的任一点,m为第四点云数据包括的所有点的个数。
步骤236,基于第三点云数据的质心和第四点云数据的质心,确定第三点云数据与第四点云数据之间的平移向量,平移向量的起点和终点分别为第三点云数据的质心和第四点云数据的质心。
示例性地,可以基于公式:
t=CQ-CP (16)
计算第四点云数据相对于第三点云数据的平移向量。
可以理解的是,此时,平移向量用于与第三点云数据的质心相加,以得到第四点云数据的质心。平移向量也可以为:
t′=CP-CQ (17)
此时,平移向量用于与第四点云数据的质心相加,以得到第三点云数据的质心。
在一个实施例中,如图3所示,上述房屋点云数据的处理方法还包括:步骤260、步骤270。
步骤260,对第一点云数据和第二点云数据进行预处理,使得第一点云数据和第二点云数据仅包括房屋或房屋附属物的点云数据。
具体的,初步采集的第一点云数据和第二点云数据可能包括与房屋及其附属物无关的,例如:房屋外部的树木、街道、街道附属物、其他非目标房屋的建筑主体等多余物。
这样,能够保证多余物的点云数据不会对点云数据的处理造成干扰,进一步提高了通过确定不同坐标系下的公共区域对应的点云数据之间的配准关系,将第一点云数据和第二点云数据转换到同一坐标系下的准确性。
步骤270,对第三点云数据或第四点云数据进行数据抽稀处理,使得第三点云数据的数据量,与第四点云数据的数据量之间的差值小于预设的期望差值。
其中,期望差值可预先设置为较小值,使得第三点云数据和第四点云数据的数据量相近。在一种可能的实现方式中,若第三点云数据的数据量,小于第四点云数据的数据量,可以以第三点云数据的数据量为参考量,按比例舍弃第四点云数据中的部分数据,以保证第三点云数据和第四点云数据的数据量相近。若第四点云数据的数据量,小于第三点云数据的数据量,可以以第四点云数据的数据量为参考量,按比例舍弃第三点云数据中的部分数据,以保证第三点云数据和第四点云数据的数据量相近。
在另一种可能的实现方式中,可以在通过激光扫描仪或相机等设备对公共区域进行点云采集时,确保对共有区域的采集时间、采集轨迹一致,以保证第三点云数据和第四点云数据的数量级在同一级别。
进一步地,在通过激光扫描仪或相机等设备对公共区域进行点云采集时,可以适当延长采集时间,这样,在通过第三点云数据和第四点云数据计算配准关系时,结果更加准确。
这样,能够进一步提升第三点云数据和第四点云数据之间配准的准确性。
在一个实施例中,上述第一配准关系包括:
Q=RP+t (18)
其中,P为第三点云数据,Q为第四点云数据,R可以通过上述公式(11)得到,t可以通过上述公式(16)得到。
可以理解的是,上述第一配准关系也可以为:
P=R'Q+t' (19)
其中,R'可以通过上述公式(12)得到,t可以通过上述公式(17)得到。
进一步地,在得到第一配准关系后,可以基于第一配准关系转换第一点云数据。在一种可能的实现方式中,对第一点云数据进行转换的表达式为:
P0'=RP0+t (20)
其中,R、t可以通过上述公式(18)得到,P0为第一点云数据,P0′为转换后的第一点云数据,此时,P0′位于第二坐标系下。
类似地,也可以基于第一配准关系转换第二点云数据,对第二点云数据进行转换的表达式为:
Q0′=R′Q0+t′ (21)
其中,R′、t′可以通过上述公式(19)得到,Q0为第一点云数据,Q0′为转换后的第二点云数据,此时,Q0′位于第一坐标系下。
这样,在获取到第一点云数据和第二点云数据后,基于上述第一配准关系,能够快速确定第一点云数据与第二点云数据之间的相对位置,实现第一点云数据和第二点云数据之间的初步配准。
可选地,为进一步提升配准的准确性,还可以将基于第一配准关系转换后的第一点云数据或第二点云数据,通过其它配准工具或配准算法进行进一步地配准。
综上所述,基于房屋点云数据的数据量小,且房屋的形状特征明显的特点,能够快速、准确地分割第一点云数据和第二点云数据中公共区域对应的点云数据,通过确定不同坐标系下的公共区域对应的点云数据之间的配准关系,将第一点云数据和第二点云数据转换到同一坐标系下,降低了处理点云数据所需占用的计算资源,同时避免了非公共区域的点云数据的干扰,且在确定配准关系的过程中,公共区域对应的点云数据的数据量接近,提升了配准的准确性。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的房屋点云数据的处理方法的房屋点云数据的处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个房屋点云数据的处理装置实施例中的具体限定可以参见上文中对于房屋点云数据的处理方法的限定,在此不再赘述。
在一个实施例中,如图7所示,提供了一种房屋点云数据的处理装置300,包括:获取模块310、分割模块320、第一确定模块330、第二确定模块340和转换模块350,其中:
获取模块310,用于获取第一区域的第一点云数据、以及第二区域的第二点云数据,第一区域与第二区域具有公共区域,第一点云数据为第一坐标系下的数据,第二点云数据为第二坐标系下的数据。
分割模块320,用于分割第一点云数据得到公共区域的第三点云数据,分割第二点云数据得到公共区域的第四点云数据。
第一确定模块330,用于基于第三点云数据和第四点云数据,确定第三点云数据和第四点云数据之间的旋转矩阵、以及平移向量。
第二确定模块340,用于基于旋转矩阵和平移向量,确定第一配准关系。
转换模块350,用于基于第一配准关系,将第一点云数据转换至第二坐标系下。
在一种可能的实现方式中,上述第一确定模块330包括:
第一确定子模块,用于基于第三点云数据和第三点云数据的质心,确定第三点云数据的第一对称矩阵。
第二确定子模块,用于基于第四点云数据和第四点云数据的质心,确定第四点云数据的第二对称矩阵。
第三确定子模块,用于基于第一对称矩阵和第二对称矩阵,确定第三点云数据与第四点云数据之间的旋转矩阵。
在一种可能的实现方式中,上述第一确定子模块包括:
第一计算单元,用于采用第一计算公式,确定第三点云数据的第一对称矩阵,第一计算公式包括:
其中,A为第一对称矩阵,ri为终点为第三点云数据包括的任一点,且起点为第三点云数据的质心的向量,rix、riy、riz为ri在坐标轴上的分向量的长度,n为第三点云数据包括的点的个数。
在一种可能的实现方式中,第一计算公式的获得单元,包括:
第一确定子单元,用于基于第三点云数据,确定第三点云数据的第一方向向量,第三点云数据包括的所有点到第一方向向量的欧式距离之和最小。
第二确定子单元,用于基于第一方向向量,确定第一计算公式。
在一种可能的实现方式中,上述第三确定子模块包括:
第一确定单元,用于基于第一对称矩阵的特征向量,确定第三点云数据的第一特征矩阵。
第二确定单元,用于基于第二对称矩阵的特征向量,确定第四点云数据的第二特征矩阵。
第三确定单元,用于采用第二计算公式,确定旋转矩阵,第二计算公式包括:
R=VU-1 (11)
其中,R为旋转矩阵,U为第一特征矩阵,V为第二特征矩阵。
在一种可能的实现方式中,上述第一确定单元包括:
第一计算子单元,用于计算第一对称矩阵的第一特征向量、第二特征向量和第三特征向量。
归一化处理子单元,用于对第一特征向量、第二特征向量和第三特征向量进行归一化处理。
第三确定子单元,用于基于归一化的第一特征向量、归一化的第二特征向量和归一化的第三特征向量,确定第一特征矩阵。
在一种可能的实现方式中,上述第一确定模块330包括:
第四确定子模块,用于基于第三点云数据,确定第三点云数据的质心。
第五确定子模块,用于基于第四点云数据,确定第四点云数据的质心。
第六确定子模块,用于基于第三点云数据的质心和第四点云数据的质心,确定第三点云数据与第四点云数据之间的平移向量,平移向量的起点和终点分别为第三点云数据的质心和第四点云数据的质心。
在一种可能的实现方式中,上述房屋点云数据的处理装置300还包括:
预处理模块,用于对第一点云数据和第二点云数据进行预处理,使得第一点云数据和第二点云数据仅包括房屋或房屋附属物的点云数据。
抽稀模块,用于对第三点云数据或第四点云数据进行数据抽稀处理,使得第三点云数据的数据量,与第四点云数据的数据量之间的差值小于预设的期望差值。
上述房屋点云数据的处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储房屋点云数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种房屋点云数据的处理方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种XXX方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive RandomAccess Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种房屋点云数据的处理方法,其特征在于,所述方法包括:
获取第一区域的第一点云数据、以及第二区域的第二点云数据,所述第一区域与所述第二区域具有公共区域,所述第一点云数据为第一坐标系下的数据,所述第二点云数据为第二坐标系下的数据;
分割所述第一点云数据得到所述公共区域的第三点云数据,分割所述第二点云数据得到所述公共区域的第四点云数据;
基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵、以及平移向量;
基于所述旋转矩阵和所述平移向量,确定第一配准关系;
基于所述第一配准关系,将所述第一点云数据转换至所述第二坐标系下。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵包括:
基于所述第三点云数据和所述第三点云数据的质心,确定所述第三点云数据的第一对称矩阵;
基于所述第四点云数据和所述第四点云数据的质心,确定所述第四点云数据的第二对称矩阵;
基于所述第一对称矩阵和所述第二对称矩阵,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第三点云数据和所述第三点云数据的质心,确定所述第三点云数据的第一对称矩阵包括:
采用第一计算公式,确定所述第三点云数据的第一对称矩阵,所述第一计算公式包括:
其中,A为所述第一对称矩阵,ri为终点为所述第三点云数据包括的任一点,且起点为所述第三点云数据的质心的向量,rix、riy、riz为ri在坐标轴上的分向量的长度,n为所述第三点云数据包括的点的个数。
4.根据权利要求3所述的方法,其特征在于,所述第一计算公式的获得方式,包括:
基于第三点云数据,确定所述第三点云数据的第一方向向量,所述第三点云数据包括的所有点到所述第一方向向量的欧式距离之和最小;
基于所述第一方向向量,确定第一计算公式。
5.根据权利要求2所述的方法,其特征在于,所述基于所述第一对称矩阵和所述第二对称矩阵,确定所述旋转矩阵包括:
基于所述第一对称矩阵的特征向量,确定所述第三点云数据的第一特征矩阵;
基于所述第二对称矩阵的特征向量,确定所述第四点云数据的第二特征矩阵;
采用第二计算公式,确定所述旋转矩阵,所述第二计算公式包括:
R=VU-1(11)
其中,R为所述旋转矩阵,U为所述第一特征矩阵,V为所述第二特征矩阵。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第一对称矩阵的特征向量,确定所述第三点云数据的第一特征矩阵包括:
计算所述第一对称矩阵的第一特征向量、第二特征向量和第三特征向量;
对所述第一特征向量、所述第二特征向量和所述第三特征向量进行归一化处理;
基于归一化的第一特征向量、归一化的第二特征向量和归一化的第三特征向量,确定第一特征矩阵。
7.根据权利要求1所述的方法,其特征在于,所述基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据相对于所述第四点云数据的平移向量包括:
基于所述第三点云数据,确定所述第三点云数据的质心;
基于所述第四点云数据,确定所述第四点云数据的质心;
基于所述第三点云数据的质心和所述第四点云数据的质心,确定所述第三点云数据与所述第四点云数据之间的平移向量,所述平移向量的起点和终点分别为所述第三点云数据的质心和所述第四点云数据的质心。
8.根据权利要求1所述的方法,其特征在于,所述获取第一区域的第一点云数据、以及第二区域的第二点云数据,之后还包括:
对所述第一点云数据和所述第二点云数据进行预处理,使得所述第一点云数据和所述第二点云数据仅包括房屋或房屋附属物的点云数据;
对所述第三点云数据或所述第四点云数据进行数据抽稀处理,使得所述第三点云数据的数据量,与所述第四点云数据的数据量之间的差值小于预设的期望差值。
9.根据权利要求1所述的方法,其特征在于,所述第一配准关系包括:
Q=RP+t (18)
其中,P为所述第三点云数据,Q为所述第四点云数据,R为所述旋转矩阵,t为所述平移向量。
10.一种房屋点云数据的处理装置,其特征在于,所述装置包括:
获取模块,用于获取第一区域的第一点云数据、以及第二区域的第二点云数据,所述第一区域与所述第二区域具有公共区域,所述第一点云数据为第一坐标系下的数据,所述第二点云数据为第二坐标系下的数据;
分割模块,用于分割所述第一点云数据得到所述公共区域的第三点云数据,分割所述第二点云数据得到所述公共区域的第四点云数据;
第一确定模块,用于基于所述第三点云数据和所述第四点云数据,确定所述第三点云数据与所述第四点云数据之间的旋转矩阵、以及平移向量;
第二确定模块,用于基于所述旋转矩阵和所述平移向量,确定第一配准关系;
转换模块,用于基于所述第一配准关系,将所述第一点云数据转换至所述第二坐标系下。
CN202311115657.8A 2023-08-31 2023-08-31 房屋点云数据的处理方法和装置 Pending CN116977386A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311115657.8A CN116977386A (zh) 2023-08-31 2023-08-31 房屋点云数据的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311115657.8A CN116977386A (zh) 2023-08-31 2023-08-31 房屋点云数据的处理方法和装置

Publications (1)

Publication Number Publication Date
CN116977386A true CN116977386A (zh) 2023-10-31

Family

ID=88476716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311115657.8A Pending CN116977386A (zh) 2023-08-31 2023-08-31 房屋点云数据的处理方法和装置

Country Status (1)

Country Link
CN (1) CN116977386A (zh)

Similar Documents

Publication Publication Date Title
CN111127655B (zh) 房屋户型图的构建方法及构建装置、存储介质
US9189853B1 (en) Automatic pose estimation from uncalibrated unordered spherical panoramas
CN113240769B (zh) 空间链接关系识别方法及装置、存储介质
CN112348863B (zh) 图像对齐方法、图像对齐装置及终端设备
US11367263B1 (en) Image-guided three dimensional modeling
CN116109765A (zh) 标注对象的三维渲染方法、装置、计算机设备、存储介质
CN111459269A (zh) 一种增强现实显示方法、系统及计算机可读存储介质
CN112435193A (zh) 一种点云数据去噪的方法、装置、存储介质和电子设备
TW202238449A (zh) 室內定位系統及室內定位方法
CN112733641A (zh) 物体尺寸测量方法、装置、设备及存储介质
CN116170689A (zh) 视频生成方法、装置、计算机设备和存储介质
CN113034582A (zh) 位姿优化装置及方法、电子设备及计算机可读存储介质
CN114022518B (zh) 图像的光流信息获取方法、装置、设备和介质
CN116977386A (zh) 房屋点云数据的处理方法和装置
CN111107307A (zh) 基于单应性变换的视频融合方法、系统、终端及介质
CN115578432A (zh) 图像处理方法、装置、电子设备及存储介质
CN115294280A (zh) 三维重建方法、装置、设备、存储介质和程序产品
CN115272470A (zh) 相机定位方法、装置、计算机设备和存储介质
CN115375740A (zh) 位姿确定方法和三维模型的生成方法、装置、设备、介质
CN112132909A (zh) 参数获取方法及装置、媒体数据处理方法和存储介质
CN113570660B (zh) 拍摄装置位姿估计方法、装置、计算机设备和存储介质
CN114750147B (zh) 机器人的空间位姿确定方法、装置和机器人
WO2022193180A1 (zh) 视频帧处理方法和装置
CN117994334A (zh) 拍摄设备的位姿估计方法、装置、计算机设备和存储介质
CN110019982B (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