CN117274486A - 点云数据处理方法、装置、电子设备及存储介质 - Google Patents

点云数据处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117274486A
CN117274486A CN202311144611.9A CN202311144611A CN117274486A CN 117274486 A CN117274486 A CN 117274486A CN 202311144611 A CN202311144611 A CN 202311144611A CN 117274486 A CN117274486 A CN 117274486A
Authority
CN
China
Prior art keywords
point cloud
cloud data
data set
original point
original
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
CN202311144611.9A
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.)
China Automotive Innovation Co Ltd
Original Assignee
China Automotive Innovation 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 China Automotive Innovation Co Ltd filed Critical China Automotive Innovation Co Ltd
Priority to CN202311144611.9A priority Critical patent/CN117274486A/zh
Publication of CN117274486A publication Critical patent/CN117274486A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种点云数据处理方法、装置、电子设备及存储介质,该方法包括:在预设浏览器页面上获取待处理点云数据区域;基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;在预设浏览器页面上对目标点云数据集进行重加载。本方案通过在浏览器页面上获取到的待处理点云数据区域先构建一个三维体,由于三维体对应的是进行编辑处理的点云数据,这样将原始点云数据集与三维体进行对比后,生成的目标点云数据就是发生变化的点云数据,最后只对该变化的点云数据进行重加载即可,提高了重加载编辑后的点云数据时的响应速度。

Description

点云数据处理方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种点云数据处理方法、装置、电子设备及存储介质。
背景技术
点云数据一般是指通过例如激光雷达扫描目标物所获取的数据,目前,点云数据在机器人、自动驾驶等领域有着广泛的应用。例如,在自动驾驶领域,点云数据可以应用于障碍物检测和地图构建。采集到点云数据后,通常需要对点云数据编辑处理,以适应实际业务的需求。
传统地,通常是基于桌面端产品对点云数据进行编辑处理,具体地,通过计算机设备上安装的应用程序打开待编辑的点云数据文件后,将点云数据进行展示。接着,由用户选取部分点云数据并进行编辑操作,在编辑完成后会重新生成一个新的点云数据文件,再对该新的点云数据文件进行重加载后,就可以展示出编辑后的点云数据。
然而,采用上述方式存在重加载编辑后的点云数据时的响应速度较慢的问题。
发明内容
本发明旨在至少解决现有技术中存在的技术问题,为此,本发明第一方面提出一种点云数据处理方法,该方法包括:
在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;
基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;
对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;
在预设浏览器页面上对目标点云数据集进行重加载。
在一种可能的实施方式中,对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集,包括:
从预设数据库中获取原始点云数据集;
对原始点云数据集进行解压处理,生成解压后的原始点云数据集;解压后的原始点云数据集中包括多个原始点云数据块
将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集。
在一种可能的实施方式中,对原始点云数据集进行解压处理,生成解压后的原始点云数据集,包括:
采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集;
采用预设解压模块在多个子线程中对重加载后的原始点云数据集进行解压处理,生成解压后的原始点云数据集。
在一种可能的实施方式中,将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集,包括:
针对各原始点云数据块,获取原始点云数据块的第一坐标范围,并获取三维体的第二坐标范围;
在预设浏览器页面上获取对各目标点云数据的预设处理方式;
判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果;
基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。
在一种可能的实施方式中,在预设浏览器页面上对目标点云数据集进行重加载,包括:
将目标点云数据集传输至预先创建的多个父线程;
将多个父线程中获取到的目标点云数据集传输至主线程;
通过主线程删除待处理点云数据区域对应的各原始点云数据,并在预设浏览器页面上对目标点云数据集进行重加载。
在一种可能的实施方式中,基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体,包括:
获取待处理点云数据区域对应的轮廓点云数据;
基于轮廓点云数据,构建与待处理点云数据区域对应的拉伸几何体;
对拉伸几何体进行坐标转换处理,生成三维体。
在一种可能的实施方式中,该方法还包括:
获取原始点云数据集;
对原始点云数据集进行拆分处理,生成多个原始点云数据块;
采用预设压缩模块对各原始点云数据块进行压缩处理,生成压缩后的原始点云数据集;
将压缩后的原始点云数据集保存至预设数据库中。
本发明第二方面提出一种点云数据处理装置,该装置包括:
获取模块,用于在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;
构建模块,用于基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;
处理模块,对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;
重加载模块,用于在预设浏览器页面上对目标点云数据集进行重加载。
在一种可能的实施方式中,上述处理模块具体用于:
从预设数据库中获取原始点云数据集;
对原始点云数据集进行解压处理,生成解压后的原始点云数据集;解压后的原始点云数据集中包括多个原始点云数据块
将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集。
在一种可能的实施方式中,上述处理模块还用于:
采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集;
采用预设解压模块在多个子线程中对重加载后的原始点云数据集进行解压处理,生成解压后的原始点云数据集。
在一种可能的实施方式中,上述处理模块还用于:
针对各原始点云数据块,获取原始点云数据块的第一坐标范围,并获取三维体的第二坐标范围;
在预设浏览器页面上获取对各目标点云数据的预设处理方式;
判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果;
基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。
在一种可能的实施方式中,上述重加载模块具体用于:
将目标点云数据集传输至预先创建的多个父线程;
将多个父线程中获取到的目标点云数据集传输至主线程;
通过主线程删除待处理点云数据区域对应的各原始点云数据,并在预设浏览器页面上对目标点云数据集进行重加载。
在一种可能的实施方式中,上述构建模块具体用于:
获取待处理点云数据区域对应的轮廓点云数据;
基于轮廓点云数据,构建与待处理点云数据区域对应的拉伸几何体;
对拉伸几何体进行坐标转换处理,生成三维体。
在一种可能的实施方式中,上述点云数据处理装置还用于:
获取原始点云数据集;
对原始点云数据集进行拆分处理,生成多个原始点云数据块;
采用预设压缩模块对各原始点云数据块进行压缩处理,生成压缩后的原始点云数据集;
将压缩后的原始点云数据集保存至预设数据库中。
本发明第三方面提出一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的点云数据处理方法。
本发明第四方面提出一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的点云数据处理方法。
本发明实施例具有以下有益效果:
本发明实施例提供的点云数据处理方法、装置、电子设备及存储介质,该方法包括:在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;在预设浏览器页面上对目标点云数据集进行重加载。本方案通过在浏览器页面上获取到的待处理点云数据区域先构建一个三维体,由于三维体对应的是进行编辑处理的点云数据,这样将原始点云数据集与三维体进行对比后,生成的目标点云数据就是发生变化的点云数据,最后只对该变化的点云数据进行重加载即可,与传统技术相比,不需要生成一个新的点云数据文件后,对所有的点云数据全部进行重加载,提高了重加载编辑后的点云数据时的响应速度。
附图说明
图1为本申请实施例提供的一种计算机设备的框图;
图2为本发明实施例提供的一种点云数据处理方法的步骤流程图;
图3为本发明实施例提供的一种保存原始点云数据集的步骤流程图;
图4为本发明实施例提供的一种构建三维体的步骤流程图;
图5为本发明实施例提供的一种生成目标点云数据集的步骤流程图;
图6为本发明实施例提供的一种生成解压后的原始点云数据集的步骤流程图;
图7为本发明实施例提供的另一种生成目标点云数据集的步骤流程图;
图8为本发明实施例提供的一种对目标点云数据集进行重加载的步骤流程图;
图9为本发明实施例提供的一种点云数据处理的整体框架图;
图10为本发明实施例提供的一种点云数据处理装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的区域。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。另外,“基于”或“根据”的使用意味着开放和包容性,因为“基于”或“根据”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
本申请提供的点云数据处理方法可以应用于计算机设备(电子设备)中,计算机设备可以是服务器,也可以是终端,其中,服务器可以为一台服务器也可以为由多台服务器组成的服务器集群,本申请实施例对此不作具体限定,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
以计算机设备是服务器为例,图1示出了一种服务器的框图,如图1所示,服务器可以包括通过系统总线连接的处理器和存储器。其中,该服务器的处理器用于提供计算和控制能力。该服务器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序以及数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种点云数据处理方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,可选地服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
需要说明的是,本申请实施例的执行主体可以是计算机设备,也可以是点云数据处理装置,下述方法实施例中就以计算机设备为执行主体进行说明。
图2为本发明实施例提供的一种点云数据处理方法的步骤流程图。如图2所示,该方法包括以下步骤:
步骤202、在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集。
其中,预设浏览器页面可以是HTML5页面(HyperText Markup Language,简称HTML),HTML5是一种标记语言,也是网页的规范编程语言。预设浏览器页面上可以预先加载整个原始点云数据集,可选地,可以通过预设浏览器页面建立容器渲染,从而加载展示出整个原始点云数据集。
在用户需要对该原始点云数据集进行编辑处理的情况下,可以先在该预设浏览器页面上选择待处理点云数据区域,从而计算机设备通过响应于用户的选择操作,从预设浏览器页面上获取到待处理点云数据区域,实现对原始点云数据集的在线编辑处理。
在一些可选地实施例中,原始点云数据集可以是从预设数据库中获取到的,可以直接将从实际业务中采集到的原始点云数据集保存至预设数据库中。
在另一些可选地实施例中,还可以对采集到的原始点云数据集进行数据处理后进行保存,如图3所示,图3为本发明实施例提供的一种保存原始点云数据集的步骤流程图,包括:
步骤302、获取原始点云数据集。
步骤304、对原始点云数据集进行拆分处理,生成多个原始点云数据块。
步骤306、采用预设压缩模块对各原始点云数据块进行压缩处理,生成压缩后的原始点云数据集。
步骤308、将压缩后的原始点云数据集保存至预设数据库中。
其中,原始点云数据集是从实际业务中采集到的数据,例如,在自动驾驶业务中,原始点云数据集可以是采集到的道路环境中的点云数据,从而可以识别出行人、道路、汽车等物体。采集到的原始点云数据集可以先依据传统的八叉树方式进行分层分块处理,将原始点云数据集拆分为多个原始点云数据块,每个原始点云数据块可以建立对应的索引。分层分块处理的具体过程可以参考标准的八叉树处理算法,在此不再赘述。
接着,可以对拆分后得到的多个原始点云数据块采用预设压缩模块进行压缩处理,生成压缩后的原始点云数据集,最后可以将进行压缩后的原始点云数据集保存至预设数据库中。其中,预设压缩模块可以是Draco压缩模块,Draco模块本身是一个用于压缩和解压缩3D几何网格和点云的库,它旨在改进3D图形的存储和传输。Draco模块专为提高压缩效率和速度而设计和制造。有了Draco模块,使用3D图形的应用程序可以显著变小,而不会影响视觉保真度,并且可以更快地加载浏览器中的3D图形。
本实施例中,通过对原始点云数据集进行拆分处理,从而可以对海量点云数据集进行更便捷的管理维护,并采用预设数据库对点云数据集进行统一管理,降低人工管理的成本,也提高了后续对各原始点云数据块进行处理的效率。另外,通过对各原始点云数据块进行压缩处理,再将压缩后的原始点云数据集保存至预设数据库中,可以提高保存的效率,也能节约预设数据库的存储资源,降低存储成本。
步骤204、基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体。
其中,三维体是一个用于表征待处理点云数据区域轮廓的结构体,基于获取到的待处理点云数据区域,可以构建出对应的三维体。
在一些可选地实施例中,如图4所示,图4为本发明实施例提供的一种构建三维体的步骤流程图,包括:
步骤402、获取待处理点云数据区域对应的轮廓点云数据。
步骤404、基于轮廓点云数据,构建与待处理点云数据区域对应的拉伸几何体。
步骤406、对拉伸几何体进行坐标转换处理,生成三维体。
其中,轮廓点云数据为待处理点云数据区域对应的多个原始点云数据中,能表征待处理点云数据区域的轮廓的原始点云数据。例如,待处理点云数据区域为一座大楼对应的多个原始点云数据组成的区域,选取的轮廓点云数据可以为大楼的轮廓处的部分原始点云数据。
可选地,用户可以在预设浏览器页面上通过鼠标选取轮廓点云数据,即在计算机设备的屏幕上基于轮廓点云数据绘制出多个屏幕点。再将屏幕点与三维场景内的近相机面进行射线相交交出交点,利用交点构建出多个平面,再根据透射投影原理中的近截面和远截面的距离,构建出拉伸几何体。
接着,可以将对拉伸几何体进行坐标转换处理生成三维体。可选地,可以将拉伸几何体的中心点先平移至坐标系原点位置,再根据绘制时的倾斜角进行旋转,最后再平移至初始绘制的位置点即可构建出三维体,构建出的三维体也可以保存到预设数据库中。其中,绘制时的倾斜角可以根据原始点云数据集的实际位置坐标与三维场景中的位置坐标预先计算得到。初始绘制的位置点即为在计算机设备的屏幕上基于轮廓点云数据绘制出的屏幕点。
本实施例中,通过选取少量的轮廓点云数据来构建三维体,提高了构建三维体的效率,另外,直接将构建出的三维体保存到预设数据库中,降低了存储成本。
步骤206、对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集。
其中,与三维体对应的各目标点云数据即为原始点云数据集中待处理的各原始点云数据。在一些可选地实施例中,如图5所示,图5为本发明实施例提供的一种生成目标点云数据集的步骤流程图,包括:
步骤502、从预设数据库中获取原始点云数据集。
步骤504、对原始点云数据集进行解压处理,生成解压后的原始点云数据集;解压后的原始点云数据集中包括多个原始点云数据块。
步骤506、将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集。
其中,对原始点云数据集进行解压处理时,也可以采用Draco解压缩模块进行解压处理。由于存储在预设数据库中的原始点云数据集是进行拆分处理后的,因而,解压处理后的原始点云数据集中也包括了多个原始点云数据块。
可选地,在对原始点云数据及进行解压处理时,可以采用预先创建的多个子线程实现,如图6所示,图6为本发明实施例提供的一种生成解压后的原始点云数据集的步骤流程图,包括:
步骤602、采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集。
步骤604、采用预设解压模块在多个子线程中对重加载后的原始点云数据集进行解压处理,生成解压后的原始点云数据集。
其中,Web Worker是HTML5标准的一部分,允许用户在JavaScript主线程之外开辟新的Worker线程,并将一段JavaScript脚本运行其中,它赋予了开发者利用JavaScript操作多线程的能力。基于此,可以通过构建Web Worker线程池,预先创建多个父线程以及多个子线程。可选地,可以根据计算机设备的机器配置创建一定数量的父线程,再根据父线程构建一定数量的子线程,线程间进行转移数据传输,父线程中可以引用Draco模块的WebAssembly版本的解压编译方式,先在子线程中编译c++解压方法,并初始持久化Draco模块。
从而可以采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集,接着,在多个子线程中再对重加载后的原始点云数据集采用Draco解压缩模块进行解压处理,从而得到解压后的原始点云数据集。
本实施例中,通过采用预先创建的多个子线程对原始点云数据集进行重加载及解压处理,提高了数据处理的效率,进而提高了后续重加载目标点云数据集的响应速度。
在一些可选地实施例中,在对各原始点云数据块与三维体进行比对时,如图7所示,图7为本发明实施例提供的另一种生成目标点云数据集的步骤流程图,包括:
步骤702、针对各原始点云数据块,获取原始点云数据块的第一坐标范围,并获取三维体的第二坐标范围。
步骤704、在预设浏览器页面上获取对各目标点云数据的预设处理方式。
步骤706、判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果。
步骤708、基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。
其中,原始点云数据块中均包括多个原始点云数据,每个原始点云数据均有对应的三维坐标位置,通过将各个原始点云数据的三维坐标位置进行转换得到实际坐标位置后,就能够确定出该原始点云数据块对应的第一坐标范围。同样地,可以将三维体中各个轮廓点云数据的三维坐标位置进行转换后得到实际位置坐标,从而基于各个实际位置坐标就能够得到三维体的第二坐标范围。
在多个子线程中将各原始点云数据块与三维体进行比对,即判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果,从而确定出第一坐标范围落在第二坐标范围内的目标点云数据块,该目标点云数据块即为各原始点云数据块与三维体的交集。
从而基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。其中,预设处理方式可以为用户在预设浏览器页面上所选择的,例如,可以为裁切处理、分类处理等,当然也可以为其他类型的预设处理方式,如位置移动、数据配准等,本申请实施例对此不作具体限定。
其中,裁切处理即为剔除目标点云数据块,分类处理即为对目标点云数据块中各点云数据所属的类别重新进行划分,将该目标点云数据块融合到新分类中,例如,目标点云数据块中各点云数据所属的类别为地面数据,重新划分后,可以将该目标点云数据块划分为“树”这一新分类中。需要说明的是,对目标点云数据块进行分类处理时,每个点云数据都带有自身的类别标识信息,从而通过修改类别标识将目标点云数据块融合到新分类中。
目标点云数据集为对各目标点云数据块进行处理后的数据集合,目标点云数据集中可以为空集,例如,预设处理方式为裁切处理,则对各目标点云数据块进行剔除处理后,目标点云数据集中就不包含点云数据了。目标点云数据集中也可以包括多个处理后的各目标点云数据块,例如,预设处理方式为分类处理,那么目标点云数据集中就包括重新分类后的各目标点云数据块。
需要说明的是,在对目标点云数据块依次采用多个预设处理方式进行处理时,例如先进行分类处理,再进行裁切处理,可以分别构建两个三维体,也可以重复利用构建的一个三维体实现后续比对的具体过程。另外,若出现用户对目标点云数据块采用预设处理方式进行处理时产生了误差,还可以随时撤回,计算机设备基于用户的撤回操作可以在后台删除构建的相应三维体即可,无需重新进行繁琐的数据更改,便于撤回恢复。
本实施例中,通过分块将原始点云数据块与三维体进行比对,易操作且容易实现,提高了比对效率,从而提高了后续生成目标点云数据集的效率。
步骤208、在预设浏览器页面上对目标点云数据集进行重加载。
其中,在生成目标点云数据集后,可以在预设浏览器页面上对发生变化的目标点云数据集进行重加载。可选地,若预设处理方式为裁切处理,则对各目标点云数据块进行剔除处理后,目标点云数据集中就不包含点云数据了,那么重加载该目标点云数据后,在预设浏览器页面上该目标点云数据对应的待处理点云数据区域就是空白的。
在一些可选地实施例中,如图8所示,图8为本发明实施例提供的一种对目标点云数据集进行重加载的步骤流程图,包括:
步骤802、将目标点云数据集传输至预先创建的多个父线程。
步骤804、将多个父线程中获取到的目标点云数据集传输至主线程。
步骤806、通过主线程删除待处理点云数据区域对应的各原始点云数据,并在预设浏览器页面上对目标点云数据集进行重加载。
其中,在多个子线程中生成的目标点云数据集可以通过内存转移传输给预先创建的多个父线程,多个父线程再将获取到的目标点云数据集通过内存转移传输给主线程,主线程获取到目标点云数据集后,可以删除待处理点云数据区域对应的各原始点云数据,然后在预设浏览器页面上对目标点云数据集进行重加载,即可快速响应到用户进行编辑处理后的成果。
将本申请实施例提供的点云数据处理方法应用在20GB的原始点云数据集中,通过上述实施例提供的方法存储至预设数据库中,并在预设浏览器页面上进行编辑处理,包括裁切处理和分类处理,经过实验验证可以达到毫秒(ms)级的数据编辑后响应能力。同时,多个终端网页端可以即时访问,即可以同时在预设浏览器页面上对原始点云数据集进行编辑处理,在预设浏览器页面上实现在线任务协作。
本实施例中,通过多个子线程将生成的目标点云数据集传输给多个父线程,再由多个父线程传输给主线程,提高了数据传输的效率,进而提高了后续重加载目标点云数据集的响应速度,也无需多层数据传输,数据安全性高。
本发明实施例提供的点云数据处理方法包括:在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;在预设浏览器页面上对目标点云数据集进行重加载。本方案通过在浏览器页面上获取到的待处理点云数据区域先构建一个三维体,由于三维体对应的是进行编辑处理的点云数据,这样将原始点云数据集与三维体进行对比后,生成的目标点云数据就是发生变化的点云数据,最后只对该变化的点云数据进行重加载即可,与传统技术相比,不需要生成一个新的点云数据文件后,对所有的点云数据全部进行重加载,提高了重加载编辑后的点云数据时的响应速度。
图9为本发明实施例提供的一种点云数据处理的整体框架图,通过在浏览器页面上获取到的待处理点云数据区域先构建一个三维体,由于三维体对应的是进行编辑处理的点云数据,这样将原始点云数据集与三维体进行对比后,生成的目标点云数据就是发生变化的点云数据,最后只对该变化的点云数据进行重加载即可,与传统技术相比,不需要生成一个新的点云数据文件后,对所有的点云数据全部进行重加载,提高了重加载编辑后的点云数据时的响应速度。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
图10为本发明实施例提供的一种点云数据处理装置的结构框图。
如图10所示,该点云数据处理装置1000包括:
获取模块1002,用于在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;
构建模块1004,用于基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;
处理模块1006,对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;
重加载模块1008,用于在预设浏览器页面上对目标点云数据集进行重加载。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。上述点云数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块的操作。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;
基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;
对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;
在预设浏览器页面上对目标点云数据集进行重加载。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
从预设数据库中获取原始点云数据集;
对原始点云数据集进行解压处理,生成解压后的原始点云数据集;解压后的原始点云数据集中包括多个原始点云数据块
将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集;
采用预设解压模块在多个子线程中对重加载后的原始点云数据集进行解压处理,生成解压后的原始点云数据集。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
针对各原始点云数据块,获取原始点云数据块的第一坐标范围,并获取三维体的第二坐标范围;
在预设浏览器页面上获取对各目标点云数据的预设处理方式;
判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果;
基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
将目标点云数据集传输至预先创建的多个父线程;
将多个父线程中获取到的目标点云数据集传输至主线程;
通过主线程删除待处理点云数据区域对应的各原始点云数据,并在预设浏览器页面上对目标点云数据集进行重加载。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取待处理点云数据区域对应的轮廓点云数据;
基于轮廓点云数据,构建与待处理点云数据区域对应的拉伸几何体;
对拉伸几何体进行坐标转换处理,生成三维体。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取原始点云数据集;
对原始点云数据集进行拆分处理,生成多个原始点云数据块;
采用预设压缩模块对各原始点云数据块进行压缩处理,生成压缩后的原始点云数据集;
将压缩后的原始点云数据集保存至预设数据库中。
上述实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
在预设浏览器页面上获取待处理点云数据区域;其中,预设浏览器页面上预先加载了整个原始点云数据集;
基于待处理点云数据区域,构建与待处理点云数据区域对应的三维体;
对原始点云数据集中与三维体对应的各目标点云数据进行处理,生成目标点云数据集;
在预设浏览器页面上对目标点云数据集进行重加载。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从预设数据库中获取原始点云数据集;
对原始点云数据集进行解压处理,生成解压后的原始点云数据集;解压后的原始点云数据集中包括多个原始点云数据块
将各原始点云数据块与三维体进行比对,根据比对结果对与三维体对应的目标点云数据块进行处理,生成目标点云数据集。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
采用预先创建的多个子线程重加载原始点云数据集,生成重加载后的原始点云数据集;
采用预设解压模块在多个子线程中对重加载后的原始点云数据集进行解压处理,生成解压后的原始点云数据集。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
针对各原始点云数据块,获取原始点云数据块的第一坐标范围,并获取三维体的第二坐标范围;
在预设浏览器页面上获取对各目标点云数据的预设处理方式;
判断第一坐标范围是否在三维体的第二坐标范围内,生成判断结果;
基于判断结果,在多个子线程中将第一坐标范围落在第二坐标范围内的目标点云数据块采用预设处理方式进行处理,生成目标点云数据集。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将目标点云数据集传输至预先创建的多个父线程;
将多个父线程中获取到的目标点云数据集传输至主线程;
通过主线程删除待处理点云数据区域对应的各原始点云数据,并在预设浏览器页面上对目标点云数据集进行重加载。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取待处理点云数据区域对应的轮廓点云数据;
基于轮廓点云数据,构建与待处理点云数据区域对应的拉伸几何体;
对拉伸几何体进行坐标转换处理,生成三维体。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取原始点云数据集;
对原始点云数据集进行拆分处理,生成多个原始点云数据块;
采用预设压缩模块对各原始点云数据块进行压缩处理,生成压缩后的原始点云数据集;
将压缩后的原始点云数据集保存至预设数据库中。
上述实施例提供的计算机存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的区域。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利区域的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护区域。因此,本申请的保护区域应以所附权利要求为准。

Claims (10)

1.一种点云数据处理方法,其特征在于,所述方法包括:
在预设浏览器页面上获取待处理点云数据区域;其中,所述预设浏览器页面上预先加载了整个原始点云数据集;
基于所述待处理点云数据区域,构建与所述待处理点云数据区域对应的三维体;
对所述原始点云数据集中与所述三维体对应的各目标点云数据进行处理,生成目标点云数据集;
在所述预设浏览器页面上对所述目标点云数据集进行重加载。
2.根据权利要求1所述的方法,其特征在于,所述对所述原始点云数据集中与所述三维体对应的各目标点云数据进行处理,生成目标点云数据集,包括:
从预设数据库中获取所述原始点云数据集;
对所述原始点云数据集进行解压处理,生成解压后的原始点云数据集;所述解压后的原始点云数据集中包括多个原始点云数据块;
将各所述原始点云数据块与所述三维体进行比对,根据比对结果对与所述三维体对应的目标点云数据块进行处理,生成所述目标点云数据集。
3.根据权利要求2所述的方法,其特征在于,所述对所述原始点云数据集进行解压处理,生成解压后的原始点云数据集,包括:
采用预先创建的多个子线程重加载所述原始点云数据集,生成重加载后的原始点云数据集;
采用预设解压模块在所述多个子线程中对所述重加载后的原始点云数据集进行解压处理,生成所述解压后的原始点云数据集。
4.根据权利要求3所述的方法,其特征在于,所述将各所述原始点云数据块与所述三维体进行比对,根据比对结果对与所述三维体对应的目标点云数据块进行处理,生成所述目标点云数据集,包括:
针对各所述原始点云数据块,获取所述原始点云数据块的第一坐标范围,并获取所述三维体的第二坐标范围;
在所述预设浏览器页面上获取对所述各目标点云数据的预设处理方式;
判断所述第一坐标范围是否在所述三维体的第二坐标范围内,生成判断结果;
基于所述判断结果,在所述多个子线程中将所述第一坐标范围落在所述第二坐标范围内的所述目标点云数据块采用所述预设处理方式进行处理,生成所述目标点云数据集。
5.根据权利要求4所述的方法,其特征在于,所述在所述预设浏览器页面上对所述目标点云数据集进行重加载,包括:
将所述目标点云数据集传输至预先创建的多个父线程;
将所述多个父线程中获取到的所述目标点云数据集传输至主线程;
通过所述主线程删除所述待处理点云数据区域对应的各原始点云数据,并在所述预设浏览器页面上对所述目标点云数据集进行重加载。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述基于所述待处理点云数据区域,构建与所述待处理点云数据区域对应的三维体,包括:
获取所述待处理点云数据区域对应的轮廓点云数据;
基于所述轮廓点云数据,构建与所述待处理点云数据区域对应的拉伸几何体;
对所述拉伸几何体进行坐标转换处理,生成所述三维体。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
获取所述原始点云数据集;
对所述原始点云数据集进行拆分处理,生成多个原始点云数据块;
采用预设压缩模块对各所述原始点云数据块进行压缩处理,生成压缩后的原始点云数据集;
将所述压缩后的原始点云数据集保存至预设数据库中。
8.一种点云数据处理装置,其特征在于,所述装置包括:
获取模块,用于在预设浏览器页面上获取待处理点云数据区域;其中,所述预设浏览器页面上预先加载了整个原始点云数据集;
构建模块,用于基于所述待处理点云数据区域,构建与所述待处理点云数据区域对应的三维体;
处理模块,对所述原始点云数据集中与所述三维体对应的各目标点云数据进行处理,生成目标点云数据集;
重加载模块,用于在所述预设浏览器页面上对所述目标点云数据集进行重加载。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-7任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1-7任一项所述的方法的步骤。
CN202311144611.9A 2023-09-06 2023-09-06 点云数据处理方法、装置、电子设备及存储介质 Pending CN117274486A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311144611.9A CN117274486A (zh) 2023-09-06 2023-09-06 点云数据处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311144611.9A CN117274486A (zh) 2023-09-06 2023-09-06 点云数据处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117274486A true CN117274486A (zh) 2023-12-22

Family

ID=89205395

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311144611.9A Pending CN117274486A (zh) 2023-09-06 2023-09-06 点云数据处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117274486A (zh)

Similar Documents

Publication Publication Date Title
Gwak et al. Generative sparse detection networks for 3d single-shot object detection
CN110990516B (zh) 地图数据的处理方法、装置和服务器
CN110378063B (zh) 基于智慧建筑空间的设备部署方法、装置、以及电子设备
US20230033019A1 (en) Data processing method and apparatus, computerreadable medium, and electronic device
US20230386041A1 (en) Control Method, Device, Equipment and Storage Medium for Interactive Reproduction of Target Object
US11481450B2 (en) Interactive and non-interactive execution and rendering of templates to automate control and exploration across systems
CN109472871A (zh) 一种三维模型重建方法、系统及电子设备
CN114792355B (zh) 虚拟形象生成方法、装置、电子设备和存储介质
CA3182430A1 (en) Systems and methods for automatic alignment of drawings
CN110413808B (zh) 一种三维点云数据存储、查询方法及装置
CN113778961B (zh) 一种cim模型数据的生产管理方法、装置及系统
CN114708374A (zh) 虚拟形象生成方法、装置、电子设备和存储介质
Kerbl et al. Interactive disassembly planning for complex objects
CN111026895B (zh) 一种数据可视化处理方法、装置及存储介质
CN117274486A (zh) 点云数据处理方法、装置、电子设备及存储介质
CN113033337A (zh) 基于TensorRT的行人重识别方法及装置
CN116630552B (zh) 面向大规模的三维流程工厂模型的优化渲染方法
CN106610855B (zh) 将3D模型导入3dsMAX的方法和装置
CN118153129B (zh) 基于微调大模型的工件三维模型生成方法、设备及介质
US12008792B1 (en) Independently determining adjustments to bounding shapes for detected objects in image data
CN114820575B (zh) 图像验证方法、装置、计算机设备及存储介质
CN118229843A (zh) 构件操作方法、装置和存储介质及电子装置
CN112328073B (zh) 基于增强现实设备的评标方法、装置、系统和计算机设备
MATTHIAS et al. A Service-Oriented Approach for Classifying 3D Points Clouds by Example of Office Furniture Classification
CN117726746A (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