CN105389800A - 行参数对象估计 - Google Patents
行参数对象估计 Download PDFInfo
- Publication number
- CN105389800A CN105389800A CN201510681296.2A CN201510681296A CN105389800A CN 105389800 A CN105389800 A CN 105389800A CN 201510681296 A CN201510681296 A CN 201510681296A CN 105389800 A CN105389800 A CN 105389800A
- Authority
- CN
- China
- Prior art keywords
- projection
- point
- lpo
- orientation
- capstan
- 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
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/61—Scene description
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/16—Using real world measurements to influence rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Abstract
行参数对象估计。一种方法可以包括将第一投影体积内来自环境的点云的第一点投影到第一投影体积的第一投影平面上的步骤。此外,该方法可以包括将多个投影的第一点与对应于环境的行参数对象的横截面模板匹配以确定第一主投影元素的多个第一元素点的步骤。此外,该方法可以包括将第二投影体积内来自点云的第二点投影到第二投影体积的第二投影平面上并将多个投影的第二点与横截面模板匹配以确定第二主投影元素的多个第二元素点的步骤。而且,该方法可以包括基于第一元素点和第二元素点生成参数方程的步骤。
Description
技术领域
本文中讨论的实施方式涉及从3维(3D)数据估计行参数对象(LPO:LineParametricObject)。
背景技术
激光扫描用于勘察许多不同环境,责任建筑工地、历史建筑、工业设施或任意其它可适用环境。激光扫描可以用于获得所述环境的三维(3D)模型。
发明内容
根据至少一个实施方式,一种方法可以包括接收可以对应于环境的三维(3D)数据的点云的步骤。所述3D数据可以包括可对应于所述环境中包含的行参数对象(LPO)的多个LPO点。该方法还可以包括生成对应于第一投影平面的三维扩展的第一投影体积。所述第一投影平面可以包括沿主导轴的第一位置,所述LPO围绕所述主导轴延伸。此外,所述第一投影平面可以在所述第一位置处垂直于方向轴,并且所述方向轴可至少大致对应于所述主导轴。该方法还可以包括将来自所述第一投影体积内的所述点云的第一点投影到所述第一投影平面上的步骤。此外,该方法可以包括将多个投影的第一点与对应于所述LPO的横截面模板匹配,以确定第一主投影元素的多个第一元素点的步骤。所述第一元素点可以包括第一多个LPO点。另外,该方法可以包括以下步骤:生成包含第二投影平面的第二投影体积并按照使得所述第二投影平面包括沿所述主导轴的不同于所述第一位置的第二位置的方式放置所述第二投影体积。放置所述第二投影体积的步骤可以基于所述方向轴,使得所述第二投影平面相对于所述第一投影平面沿所述方向轴移动,并且在所述第二位置处垂直于所述方向轴。该方法还可以包括以下步骤:将来自所述第二投影体积内的所述点云的第二点投影到所述第二投影平面,并且将多个投影的第二点与所述横截面模板匹配,以确定第二主投影元素的多个第二元素点。所述第二元素点可以包括第二多个LPO点。而且,该方法可以包括基于所述第一元素点和所述第二元素点生成参数函数的步骤。所述参数函数可以将所述LPO的参数表示为沿所述主导轴的位置的函数。
这些实施方式的目的和优点将至少由权利要求中特别指出的元件、特征及组合来实现和获得。
要理解,以上的一般性描述和以下的详细描述均是示例性和说明性的,而非限定所要求保护的本发明。
附图说明
通过使用附图,以额外的特征和细节来描述和解释示例性实施方式,其中:
图1A是表示被配置为从三维(3D)数据提取行参数对象(LPO)的模型的示例性***的图;
图1B示出了可包括图1A的提取模块的示例性电子设备;
图2A是可用于从3D数据提取LPO模型的示例性流程的流程图;
图2B示出了可根据3D数据建模的示例性建模环境的示例性投影体积;
图2C示出了根据图2B所示的示例将点投影到投影平面的示例;
图2D例示了沿Y轴绘制主投影元素的总面积并且沿X轴绘制对应的投影体积的厚度的图;以及
图3是从3D数据提取LPO参数的示例性方法。
具体实施方式
激光扫描仪可以通过用激光扫描环境、采集与所述环境关联的数千、数百万或甚至数十亿三维位置信息的点来采集所述环境相关的数据。所述点及关联信息可被保存为点数据,它们可被采集为“点云”。在某些实施方式中,所述点可被大密度地采集,使得关联的点数据可用于有效地重建由激光扫描仪扫描的环境的场景。在本公开中,术语“点”可以是指点和/或其关联的点数据。
这样,点云可以实际包含数据的聚合,其可以与所述环境中可包含的对象集合相关联。在某些实例中,一个或更多个对象可以包括行参数对象(LPO)。一个LPO可以包括对象类,特征可以是具有LPO可围绕延伸的主导轴。LPO可围绕该主导轴分段连续,使得LPO的横截面可以是主导轴周围的位置的函数。这样,LPO的一个或更多个参数可以表示为主导轴周围的位置的函数。LPO的示例包括工字梁、管道、路缘(curb)、电缆桥架等。
在某些实例中,作为所述主导轴周围的位置的函数,LPO的横截面可以变化或基本不变,使得作为所述主导轴周围的位置的函数,所述参数也可以变化或基本不变。例如,管道的直径可以在沿所述管道的主导轴的不同位置处变化或保持不变,所述管道可围绕所述主导轴延伸。此外,在某些实例中,LPO可以关于主导轴基本对称,而在其它实例中,LPO可以关于其主导轴周围不对称。例如,特定管道可以关于其主导轴基本对称,而路缘可以关于其主导轴周围不对称。另外,LPO可以基本沿直线延伸,或可以包括LPO可改变方向的一个或更多个弯曲。例如,特定管道可以基本是直的,或可以包括可以改变所述管道方向的弯头或其它弯曲。
虽然点云可以包括与LPO关联的点(称为“LPO点”),但LPO点可能未与点云中的其它点区分开。这样,从点云中识别个别点及其关联参数可能包括进一步处理。如下详述,根据本公开文件的一个或更多个实施方式,可从点云中包含的3D数据提取LPO模型。
现在参考所述附图说明本公开的实施方式。
图1A是表示根据本文描述的至少一个实施方式配置的示例性***100的图,该示例性***100被配置为从三维(3D)数据的点云提取LPO模型。***100可以包括提取模块106。提取模块106可以配置为接收3D数据104。3D数据104可以包括可包含与环境相对应的信息的任何适当数据。例如,3D数据可以是所述环境的点云的一部分。在某些实施方式中,点云可由激光扫描仪生成。然而,点云不限于由激光扫描仪生成的3D数据,而是可以包括经由任意适当机制生成的环境的3D数据。提取模块106可被配置为为了可对应于3D数据104的环境内所包含的一个或更多个LPO中的每一个提取LPO模型108。
如下详述,在某些实施方式中,提取模块106可被配置为为了对应于投影平面的3D扩展的点云生成投影体积(projectionvolume)。所述投影体积可以包括可由3D数据104表示的环境内的3D空间。投影平面可以包括沿LPO的主导轴的位置,并可以垂直于至少大致对应于主导轴的方向轴。例如,方向轴可以至少大致与所述主导轴同轴。提取模块106可被配置为将来自所述投影体积内的点云的点投影到投影平面上。在某些实施方式中,提取模块106可被配置为将来自投影体积内的点云的所有点都投影到投影平面上。
提取模块106还可被配置为将可投影到投影平面上的至少一组点(称作“投影点”)与对应于LPO的横截面模板匹配。横截面模板可以包括LPO的一般横截面形状。因此,投影点与横截面模板的匹配可用于确定哪些投影点形成至少大致匹配横截面模板的形状的形状。这样,至少大致匹配横截面模板的形状的投影点可对应于LPO,并且可以包含多个LPO点。至少大致匹配横截面模板的形状的投影点及其关联的簇形状可称作包括“元素点”的“主投影元素”,其中元素点可以包括多个LPO点。
这样,提取模块106可被配置为通过将元素点与横截面模板匹配来确定主投影元素,从而确定一组LPO点。提取模块106可被配置为在沿主导轴的一个或更多个其它位置执行类似操作,以确定多个投影元素及对应的元素点。
如上所示及如下所述,点与横截面模板的匹配可以关于可沿主导轴的不同位置交叉的不同投影平面而发生。因此,还可以认为投影平面的位置指示横截面模板模型的位置,使得可以认为沿所述横截面模板模型移动,或者所述横截面模板模型根据沿所述主导轴的投影平面的不同位置追踪所述LPO。
如下详述,提取模块106还可被配置为确定元素点相对于它们沿LPO的主导轴的每一个相应位置的坐标变换。坐标变换可以是指从可对应于由点云表示的环境的全局坐标***至可对应于主导轴的局部坐标***的的变换。
例如,所述局部坐标***可以是使得主导轴位于局部坐标***的中心,并且全局坐标***可以基于所述环境中的中心位置。因此,坐标变换可以是指关联元素点的坐标从基于环境的中心位置至基于LPO的主导轴的变换。
在某些实施方式中,各坐标变换可以包括相应的元素点在沿LPO的主导轴的对应位置处的平移(translation)和旋转。各元素点的平移和旋转可以是指相应的元素点在全局坐标***和局部坐标***之间的平移和旋转。在某些实施方式中,各元素点的平移和旋转可以各自视为LPO的参数,这是因为它们可以指示环境中LPO的位置、方位和方向。
基于所述坐标变换和/或元素点,提取模块106可被配置为确定沿LPO的主导轴的各个关联位置处所述LPO的一个或更多个其它参数。所述参数可以包括LPO的坐标平移及旋转(可以指示所述LPO的位置、方位和/或方向)、直径、厚度、高度、宽度、长度等。例如,坐标变换可以用于定义LPO的主导轴的位置、方位和方向。又例如,使用与管道关联的元素点的坐标变换和/或无坐标变换地使用元素点本身,提取模块106可被配置为确定该管道在沿该管道的主导轴的对应位置处的直径。
提取模块106还可被配置为基于对应的参数确定来确定一个或更多个参数的参数函数。各参数函数可将其对应的参数表示为沿主导轴的位置的函数。例如,提取模块106可被配置为确定沿主导轴的多个位置处的坐标变换的平移和/或旋转,并且可将平移和/或旋转表示为沿主导轴的位置的函数。又例如,提取模块106可以确定特定管道在沿其主导轴的多个位置处的直径。提取模块106接着可被配置为基于多个位置处的直径来生成将管道的直径表示为沿管道的位置的函数的参数函数。
提取模块106可被配置为基于为LPO确定的一个或更多个参数函数,生成对应的LPO的LPO模型108。LPO模型108可包括所述对应的LPO的3D模型和渲染,并可以指示对应的LPO的一个或更多个参数。例如,基于与管道沿其主导轴的直径关联的的参数函数并且基于与所述旋转和平移关联的参数函数(可定义管道的主导轴),可生成管道的3D模型,其中,管道的直径可以由沿管道的主导轴的模型指示。
因此,提取模块106可被配置为从3D数据104提取LPO模型108。根据某些实施方式,提取模块106可被配置为执行下面关于图2A至图2D描述的流程200的一个或更多个操作。
图1B示出了根据本文中描述的至少一个实施方式的示例性电子设备102,该电子设备102可包括提取模块106。电子设备102可包括被配置为从3D数据104提取LPO模型108的任意适当***、装置或设备。电子设备102可包括可通信地连结到存储器112的处理器110。在某些实施方式中,提取模块106可以具体实施为存储器112中驻留的逻辑或指令以由处理器110执行。
处理器110可以包括包含各种计算机硬件或软件模块的专用或通用计算机、计算实体或处理设备,并可被配置为执行任意存储在任何适用的计算机可读存储介质上的指令。例如,处理器110可以包括微处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、场可编程门阵列(FPGA)或被配置为解释和/或执行程序指令和/或处理数据的任意其它数字或模拟电路。虽然在图1B中被示为一个处理器,但要理解,处理器110可以包括被配置为执行任意数量个操作的任意数量个处理器。在某些实施方式中,处理器110可解释和/或执行存储器112中存储的程序指令和/或处理数据。
存储器112可以包括用于承载或具有其上存储的计算机可执行指令或数据结构的计算机可读存储介质。此类计算机可读存储介质可以是可由例如处理器110的通用或专用计算机存取的任意可用介质。举例而非限定,此类计算机可读存储介质可包括有形或非暂时计算机可读存储介质,包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)或其它光盘存储、磁盘存储或其它磁存储设备、闪存设备(例如,固态存储设备)或可用于承载或存储计算机可读指令或数据结构形式的程序代码并可由通用或专用计算机存取的其它存储介质。上述的组合还可被包含在计算机可读存储介质的范畴内。计算机可执行指令可以包括例如被配置为使处理器110执行某一函数或函数组的指令和数据。关于数据存储的位置,处理器110的位置可以是本地或远程的。
提取模块106可以包括被配置为使处理器110从3D数据104提取LPO模型108的指令及数据。这样,当将提取模块106描述为被配置成执行操作时,在某些实施方式中,所述操作可由处理器110执行,如提取模块106指导的一样。因此,电子设备102可包含提取模块106以从3D数据104提取LPO模型108。电子设备102仅是可被配置为从3D数据104提取LPO模型108的示例性计算***。例如分布式服务器***的其它计算***也可被配置为个别或集总地从3D数据104提取LPO模型108。
图2A为根据本文中描述的至少一个实施方式的可用于从3D数据204提取LPO模型208的示例性流程200的流程图。流程200可由任意适当的通用或专用计算设备或计算***实现。例如,方法300的一个或更多个操作可由被配置为实现提取模块106的电子设备102实现。另外,3D数据204和LPO模型208可以类似于如上关于图1A所述的3D数据104和LPO模型108。流程200可以包括体积生成阶段202、体积扩展阶段210、参数导出阶段212和模型生成阶段214。虽然按特定次序和序列描述并示出各个阶段,但可以同时或以不同于所述和所示的次序执行与各个阶段关联的一个或更多个操作。所述和所示的特定序列仅是一个示例。
在体积生成阶段202,投影体积可以从3D数据204生成。所述投影体积可以包括可由3D数据204表示的环境内的3D空间。所述投影体积可以对应于可包括沿所选择的LPO的主导轴的位置并可以垂直于至少大致对应于主导轴的方向轴的投影平面的3D扩展。这样,所述投影平面可以按照所选择的LPO的从投影平面的角度的视图可提供所选择的LPO的横截面的方式截断所选择的LPO。
图2B示出了可从3D数据204建模的示例性模型环境252(“环境252”)内的示例性投影体积250。环境252可以包括LPO254、LPO256、LPO258和LPO260。环境252可以包括其它LPO或对象,所示出的那些仅是出于解释目的。此外,图2B仅示出了可以用3D数据204描述的部分环境252。此外,下面所述的关于环境252、投影体积250和LPO254、LPO256、LPO258和LPO260的操作总体上可应用于其它环境、投影体积和/或LPO。
投影体积250可以是投影平面262的扩展。在所示的示例中,投影平面262可以基于沿LPO254的主导轴264选择的位置生成。在某些实施方式中,所选择的位置可以由用户经由电子设备的被配置为执行流程200的用户界面来选择。所选择的位置可以包括可对应于LPO254的选择的LPO点266。这样,LPO254可以称作“选择的LPO”。另外,在某些实施方式中,配置投影平面262可被配置为使得所选择的LPO点266基本上位于投影平面262的中心。投影平面262的大小可以根据具体实现变化。例如,投影平面262可由XY笛卡尔坐标平面定义,投影平面262在X方向和/或Y方向上的扩展可以变化。此外,X方向或Y方向上的扩展的量可以变化。在某些实施方式中,X方向或Y方向的扩展的量可以基于可被瞄准的LPO类的预期大小。在这些或其它实施方式中,所述扩展可以是LPO的预期大小的几倍。
投影平面262还可以基于可穿过所选择的LPO点266的方向轴268而生成。例如,投影平面262可按照垂直于方向轴268的方式生成。方向轴268可以是可至少大致对应于主导轴264的轴。例如,方向轴268可以与主导轴264至少大致同轴。在所示的实施方式中,方向轴268可以与主导轴264大致同轴,使得可以用同一条线指示方向轴268和主导轴264。
某些实施方式中,方向轴268可以基于用户输入而生成。例如,在某些实施方式中,用户可以经由用户界面从选择的LPO点266指示方向。方向轴268可以由可从指示的方向上从选择的LPO点266形成的线生成。作为另一示例,用户可以沿主导轴264选择另一LPO点,并且方向轴268可被生成为包括介于所选择的LPO点266与另一个点之间的线。
投影体积250可被生成为投影平面262沿方向轴268的3D扩展。例如,当投影平面262由垂直于方向轴268的XY笛卡尔坐标平面表示时,方向轴268可以对应于关联的笛卡尔坐标Z轴(其中,可沿Z轴重复投影平面262以生成投影体积250)。在某些实施方式中,投影平面262的扩展可以在所指示的方向(用于生成方向轴268)上从选择的LPO点266扩展。在这些或其它实施方式中,投影平面262的扩展可以在与所指示的方向相反的方向上从所选择的LPO点266扩展。沿方向轴268关于投影平面262的扩展的投影体积250的大小可以称作投影体积250的“厚度”。例如,投影体积250可以具有厚度251。
投影体积250可以包括可包括在点云中的多个点。在某些实施方式中,可包含在投影体积250中的点可被投影到投影平面262上。在某些这样的实施方式中,可包含在投影体积250中的所有点都可被投影到投影平面262上。投影到投影平面262上可以包括相对于方向轴268移动投影体积250中的点,直至所述点沿方向轴268全部位于与投影平面262相同的位置。作为另一示例,使用方向轴是Z轴的笛卡尔坐标***,可以忽略投影体积250内的点的Z坐标,并可以将投影体积250内的点的X坐标和Y坐标映射在投影平面262上。因此,投影体积250内的点可以从3D表示转换为二维(2D)表示或2D图。
在某些实施方式中,投影到投影平面262上的点可以基于相互的接近而聚集以形成一个或更多个形状。可以使用诸如图像滤波训练、连接分量分析、接近分析和/或形态运算等任意适当的计算机视觉算法来执行所述聚集。可形成的形状可以称作“投影元素”。例如,在图2B的示例中,一个或更多个投影元素可以对应于LPO,诸如LPO254、LPO256和LPO258中的一个或更多个。注意,在所示的示例中,投影体积250可能不在任意位置截断LPO260,使得投影体积250可能不包含对应于投影元素(对应于LPO260)的任何点。
图2C示出了根据图2B中示出的示例将投影体积250内的点投射到投影平面262上的示例。在所述示例中,投影平面262可以包括投影到该投影平面262上的投影元素274、投影元素276和投影元素278。投影元素274可以与LPO254关联,并且可以包括可对应于LPO254的多个LPO点。在所述示例中,投影元素274可以包括所选择的LPO点266,并且因此可以称作“主投影元素”。投影元素276可以与LPO256关联,并去可以包括可对应于LPO256的多个LPO点。另外,投影元素278可以与LPO254关联,并且可以包括可对应于LPO254的多个LPO点。
在某些实施方式中,体积生成阶段202可以包括识别一个或更多个投影元素的一般几何特性。可以使用任意适当的计算机视觉技术执行所述识别。例如,Hough变换可以用于确定投影元素274的2D线。又例如,可以使用椭圆拟合算法确定投影元素278的弯曲部分。
在某些实施方式中,可以关于主投影元素(例如,主投影元素274)执行上述计算机视觉技术,并可以忽略与其它投影元素关联的其它点。集中于主投影元素可以基于通过选择所选择的LPO点(例如,选择的LPO点266)用户对主投影元素中的关注的指示。在某些实施方式中,体积生成阶段202可以包括针对相对紧邻所选择的LPO点的点的图像滤波、形态、连接分量分析和/或接近分析运算,以确定关注区域(region-of-interest)。例如,可以选择图2C中所示的关注区域280。在所述示例中,关注区域280可以包括主投影元素274。在某些这样的实施方式中,可将注意力集中在关注区域内的点并针对所述点进行运算的执行。
在某些实施方式中,主投影元素(例如,主投影元素274)可以与横截面模板匹配。横截面模板可以包括所选择的LPO的一般横截面形状。在某些实施方式中,横截面模板可以通过用户选择导出,其中用户可以基于所选择的LPO可能是什么类型的LPO的用户观察而从一组横截面模板中选择横截面模板。例如,在所述示例中,用户可以选择工字梁横截面模板,这是因为所选择的LPO254可能看起来是工字梁。
在这些或其它实施方式中,可以基于主投影元素的一般几何特性来确定横截面模板。例如,可以在主投影元素的一般几何特性与一组预定义的横截面模板中的一个或更多个横截面模板的几何特性之间进行比较。然后,可以选择几何特性与主投影元素的几何特性最佳匹配的横截面模板。
在某些实施方式中,主投影元素的点(“元素点”)与横截面模板的关联部分匹配,使得主投影元素可以与横截面模板匹配。在某些实施方式中,可以使用形状匹配技术和多数表决来执行匹配。具体地,在某些实施方式中,横截面模板可以离散化为个别的点(“模板点”),并且可以针对模板点的一个或更多个点来计算平移不变量(translatino-invariant)、比例不变量(scale-invariant)、二进制形状描述符。此外,还可以为所述元素点计算平移不变量、比例不变量、二进制形状描述符。接着,可以执行元素点的描述符与模板点的描述符之间的每点匹配(per-pointmatching),以确定一个或更多个元素点与横截面模板的特定部分之间的可能关联。例如,主投影元素274的元素点可以与工字梁横截面模板匹配,以确定哪些元素点可以在哪些位置与工字梁横截面模板关联。所述每点匹配还可以用于显式地或隐式地估计主投影元素和横截面模板之间的旋转角。
在某些实施方式中,通过针对元素点的旋转角加强一致性和/或通过针对可以包含在主投影元素中的元素点簇应用多数表决来改进关联。然后,可以使用被认为与横截面模板关联的元素点来拟合横截面模板。
在某些实施方式中,可以基于确定投影点与横截面模板的匹配来确定主投影元素,而不是基于包含所选择的LPO点的主投影元素来确定主投影元素。在某些实施方式中,可以使用例如上述的描述符匹配技术来执行匹配,以确定哪些投影点可以与横截面模板关联。在这些或其它实施方式中,可以使用最近点迭代技术和/或随机采样一致性(RANSAC)技术来执行匹配,以确定哪些投影点可以与横截面模板关联。被认为与横截面模板关联或与横截面模板最关联的投影点可以被认作元素点,并且这些元素点聚集形成的形状可以认作是主投影元素。
投影体积的厚度可涉及将投影体积内的点精确聚集为至少大致对应于LPO的一个或更多个投影元素的能力。例如,如果投影体积的厚度太小,则对于捕捉形成表示LPO的形状的点的聚合而言,投影点的数量可能不足够大。相反,如果投影体积的厚度太大,则投影点的数量可能太大,使得对应于不同对象(例如,LPO和另一LPO或其它类型对象)可能被聚合在一起。据此,在某些实施方式中,可以调整投影体积的厚度以获得目标厚度。
在某些实施方式中,厚度可以基于主投影元素。例如,可以选择投影体积的各种厚度,针对不同厚度聚集所选择的LPO周围的投影点以生成不同大小的主投影元素。可以针对不同的厚度测量不同的主投影元素的一个或更多个特性并绘制。当厚度包含不够的点或太多的点时,即使厚度变化相对小,所述特性也可能具有从一个厚度至另一厚度很大变化,指示主投影元素可能不包括足够的点以充分表示所选择的LPO或者可能包括与其它对象关联的点。相反,当厚度在某一范围内时,当厚度变化相对小时,特性可能变化不大,指示主投影元素可能与所选择的LPO关联。这样,可以从其中特性在厚度范围内变化量相对小的厚度范围选择厚度。
例如,图2D示出了图表290,其中沿Y轴绘制主投影元素的总面积,并且沿X轴绘制对应投影体积的厚度。如图2D的区域292中所示,随着投影体积的厚度开始增加,主投影元素的面积可以迅速变化。如区域294所示,随着区域294内厚度增加,主投影元素的面积变化可能相对小。而且,如区域296所示,随着厚度在域296内增加,主投影元素的面积变化可能又迅速变化。这样,可以从区域294内选择投影体积的厚度,这是因为相较于区域292和区域296,厚度(例如斜率)的每次变化导致的面积变化在区域294内最小。在某些实施方式中,可以基于厚度范围297内处于阈值298内的面积变化来选择区域294。
体积扩展阶段210可以包括生成一个或更多个附加的投影体积,其中每个附加的投影体积都包括可将其相应投影体积内的点投影到的投影平面。在某些实施方式中,附加的投影体积可以基于在体积生成阶段202中确定的投影体积生成。在体积生成阶段202中确定的投影体积可以称作“主投影体积”。例如,图2B中的投影体积250可以称作主投影体积。在某些实施方式中,附加的投影体积可被配置为厚度与主投影体积的厚度相似或相同。
还可以按照使附加的投影体积的相应投影平面至少基本上以与所选择的LPO相关联的方向轴为中心的方式生成额外的投影体积。此外,可以按照使附加的投影体积至少基本上垂直于与所选择的LPO相关联的方向轴的方式来配置附加的投影体积。另外,可以按照使附加的投影体积的相应投影平面沿对于的方向轴的位置对于每一个附加的投影体积都不同的方式来配置附加的投影体积。所述位置可以位于主投影体积相对于对应的方向轴的位置前和/或后。而且,如上所示,选择投影体积的位置及其关联的投影平面可以用于确定横截面模板的位移和移动。
例如,关于图2B,可以配置与所选择的LPO254关联的附加投影体积,使得它们的相应投影平面至少基本上以方向轴268为中心,并且使得它们至少基本垂直于方向轴268。此外,附加投影体积的相应投影平面的位置可以相对于彼此并且相对于围绕方向轴268的投影平面262的位置处于围绕方向轴268的不同位置。
可以将各投影体积内的点投影到如上所述的相应投影平面上。此外,对于与各个附加投影体积关联的每一组投影点,可以确定主投影元素。在某些实施方式中,可以基于对应的投影点与例如上述的横截面模板的匹配来确定主投影元素。例如,可以通过使用如上所示的最近点迭代技术、随机采样一致性技术和/或描述符匹配技术来执行匹配。
在这些或其它实施方式中,可以聚合第一投影体积的投影点以形成一个或更多个第一投影元素。另外,第一投影体积的第一投影元素内可以包含来自之前确定的第二投影体积的第二主投影元素的一个或更多个第二元素点。因此,包含一个或更多个第二元素点的第一投影元素可被视为第一投影体积的第一主投影元素。接着,可以将所确定的主投影元素的元素点与如上所述的横截面模板匹配。
在某些实施方式中,一个或更多个附加投影体积的宽度(例如,关于X轴的扩展)和高度(例如,关于Y轴的扩展)可以基于体积生成阶段202中确定的关注区域的大小。这样,可以简化与这种附加投影体积关联的主投影元素的识别。此外,在某些实施方式中,可在体积生成阶段202中确定的横截面模板的参数可以用于更加快速地匹配哪些投影点可以对应于横截面模板。
在某些实施方式中,可以迭代地生成附加投影体积。如上所示,附加投影体积的位移可以相对于方向轴。另外,如下所讨论的,在某些实施方式中,可以基于与投影体积关联的主投影元素的确定的中心或其它模板参考点来调整确定的方向轴的位置,使得方向轴可以与所选择的LPO的主导轴更好地对齐。这样,在某些实施方式中,各个后续的投影体积的位置可以更好地追踪所选择的LPO的主导轴。在某些实施方式中,参数导出阶段212中可以包含各个主投影元素的确定的中心或其它模板参考点。
例如,可以如上所述地确定与第一投影体积关联的第一主投影元素的第一中心或参考点。另外,还可以确定与在第一投影体积之后连续确定的第二投影体积关联的第二主投影元素的第二中心或参考点。穿过第一中心或参考点以及第二中心或参考点的线可被视为对应的方向轴的一部分,使得可以基于可穿过第一点和第二点的线来确定和/或调整对应的方向轴的位置和方向。这样,可以使用基于第一中心或参考点以及第二中心或参考点确定的位置和方向沿对应的方向轴生成第三投影体积。因此,第三投影体积的位置更可能以对应的所选择的LPO的主导轴(方向轴被配置为与其对应)为中心。
在这些或其它实施方式中,可以假定主导轴的方向恒定,使得方向轴的调整可以涉及被发现属于所选择的LPO的所有点的任意部分。因此,在某些这样的实施方式中,可以基于主导轴不变的假定来确定后续投影体积的位置,这是因为可以根据方向轴来放置后续的投影体积。
在某些实施方式中,可以基于邻近的之前生成的投影体积来放置后续的投影体积,使得后续的投影体积可以包括可对应于之前生成的投影体积的之前主投影元素的一个或更多个元素点。可由邻近的投影体积共享的元素点(称作“共享点”)可以允许更快速地识别与后续的投影体积关联的主投影元素。另外,共享点可以允许更精确地确定主投影元素。
另选地或附加地,在某些实施方式中,可以基于邻近的之前生成的投影体积来放置后续的投影体积和关联的投影平面,使得后续的投影体积可能不包括可对应于之前生成的投影体积的之前的主投影元素的一个或更多个元素点。在这些或其它实施方式中,可以沿方向轴随机地放置后续的投影体积。
另选地或附加地,可以基于横截面模板模型和之前的主投影元素来放置后续的投影体积和关联的投影平面。例如,如果横截面模板被确定为圆形并且主投影元素为椭圆形,则可以确定对应的LPO可在与椭圆相对应的方向上弯曲。这样,可以根据所确定的弯曲来放置后续的投影体积。在某些实施方式中,可以调整方向轴以解决弯曲,并可以沿调整的方向轴放置后续的投影体积。
因此,在某些实施方式中,相对于方向轴放置投影体积及其关联的投影平面还可以在沿所选择的LPO的主导轴的多个位置放置横截面模板,使得可以沿所选择的LPO追踪横截面模板。
在某些实施方式中,可以将质量测量指标应用于一个或更多个主投影元素与横截面模板的匹配。当质量测量指标不满足特定主投影元素的目标阈值(这可指示该特定主投影元素可能与所选择的LPO关联不大)时,可以修改关联的投影体积的一个或更多个特性。例如,在某些实施方式中,可以修改关联的投影体积的位置、厚度、宽度和/或高度。修改后,可以确定后续的主投影元素,将其与横截面模板匹配,并且质量测量指标可以应用于所述匹配。在某些实施方式中,这可以发生一次或更多次,直至所述质量测量指标满足目标阈值为止。在某些实施方式中,可以基于RANSAC或任意其它适当的搜索技术做出改变,直至质量测量指标满足目标阈值为止。
在某些实例中,在一次或更多次修改后,质量测量指标可能仍不满足目标阈值,这可以指示已到达所选择的LPO的末端。这样,在某些实施方式中,当果不满足质量测量指标时,可以确定所选择的LPO已经结束。在这些及其它实施方式中,可以针对已满足质量测量指标的一个或更多个投影体积执行搜索算法,以确定LPO可能沿方向轴在哪儿终止。
例如,末端投影体积可以从方向轴上的最远且还包括具有满足目标阈值的质量测量指标的上一个主投影元素开始沿该方向轴递增地移动。所述递增移动可以是使得末端投影体积可以包括邻近主投影元素的一个或更多个元素点,直至关联的质量测量指标不满足目标阈值为止。因此,可以确定所选择的LPO已终止。在某些实施方式中,可以使用二进制或其它适当的搜索方法,沿方向轴定位可能不满足阈值的点以及所选择的LPO终点。上述实例中的术语“末端”和“上一个”用于区分投影体积,并且可不意指确定投影体积的绝对的“末端”和“上一个”。
参数导出阶段212可以包括与确定所选择的LPO的一个或更多个参数相关联的一个或更多个操作。虽然将参数导出阶段212示为在体积生成阶段202和体积扩展阶段210之后,但可以结合体积生成阶段202和/或体积扩展210执行参数导出阶段212的一个或更多个操作。这样,所示的次序不是限制性的也不是严格的。例如,参数导出阶段212可以包括关于上述的中心确定、方向轴调整和/或横截面特性确定的一个或更多个操作。
在某些实施方式中,参数导出阶段212可以包括确定各个投影体积的各个主投影元素的中心点或其它模板参考点。在某些实施方式中,可以基于与横截面模板的比较来确定中心或参考点。
例如,从元素点与横截面模板的匹配,可以确定主投影元素的中心或其它参考点。在这些或其它实施方式中,可以针对所述点执行插值,以确定可用作所述方向轴的线。这样,可以确定方向轴的位置,使得方向轴可以穿过主投影元素的确定的参考点。在某些实施方式中,插值可以包括样条插值。另外,取决于所选择的LPO,方向轴可以包括基本直的线、曲线和/或分段连续线。如上所示,方向轴可以对应于所选择的LPO的主导轴,并且所选择的LPO的主导轴可以穿过所选择的LPO的横截面的中心或参考点。因此,通过确定主投影元素的中心或参考点并且基于中心或参考点来确定方向轴,可以通过方向轴的位置、方位和方向来估计LPO的主导轴的位置、方位和方向。
在某些实施方式中,插值可以包括主导轴为基本直的线的假定,而在其它实施方式中,插值可以包括主导轴可包括一个或更多个弯曲段的假定。此外,在某些实施方式中,插值可以包括特征为样条的段。
在某些实施方式中,可以确定与方向轴交叉和/或相对紧邻的点(称作“方向轴点”)。还可以确定方向轴点关于与点云关联的全局坐标***的对应坐标。在某些实施方式中,基于这些坐标,可以确定环境中的方向轴的位置,使得还可以确定所选择的LPO的主导轴的估计的位置。
在这些或其它实施方式中,参数导出阶段212可以包括与确定与主投影元素关联的一个或更多个元素点的坐标变换关联的操作。在某些实施方式中,可以针对各个元素点执行坐标变换。如上所述,坐标变换可以是指从可以对应于由点云表示的环境的全局坐标***至可对应于可基于方向轴确定的所选择的LPO的主导轴的局部坐标***的变换。这样,如上所述,坐标变换可以是这样的,方向轴位于局部坐标***的中心。因此,主导轴还可以基本上位于局部坐标***的中心。另外,坐标变换还可以指示方向轴和主导轴的位置、方位和/或方向,使得坐标变换本身可以有助于定义主导轴。
在某些实施方式中,插值及中心确定可以用来调整方向轴的之前确定的位置、方位和/或方向,使得方向轴可更好地对应于主导轴。例如,方向轴可以是之前确定的(例如,基于初始用户输入),使得方向轴不与插值期间确定的线对齐。这样,可以调整方向轴的位置、方位和/或方向,使得方向轴可更好地与插值的线对齐。所述调整因此可以进一步将方向轴与对应的主导轴对齐。
在这些和其它实施方式中,还可以基于方向轴的调整来调整投影体积。例如,可以调整方向轴的方向,并且如上所示,之前生成的投影体积的方位可能已按照使它们对应的投影平面在调整方向轴之前至少基本垂直于方向轴的方式来定向。这样,方向轴的方向的调整可以是这样的,即,一个或更多个投影平面可能不再至少基本上垂直于方向轴。因此,可以根据方向轴的方向的调整来调整一个或更多个投影体积的方位,使得还可以按照使一个或更多个投影体积的对应投影平面再次至少基本上垂直于方向轴的方式来调整它们对应的投影平面。在这些或其它实施方式中,可以再次针对调整的投影体积执行对应的主投影元素的确定及匹配,这可以改进主投影元素至横截面模板的匹配以及相应的所选择的LPO。
在某些实施方式中,可以多次重复所述插值、坐标变换、方向轴调整、投影体积调整及匹配,以提高可将所选择的LPO建模的精度。在这些或其它实施方式中,可以重复一个或更多个操作,直至到达目标收敛点为止。在其它实施方式中,可以仅执行所述过程一次,以提高其中初始确定的线插值可被确定为充分代表主导轴的速度。
在某些实施方式中,参数导出阶段212可以包括与确定横截面模板的一个或更多个参数关联的操作。例如,可以基于针对横截面模板匹配的点来确定横截面模板的方位、厚度、宽度、高度、直径等。横截面模板的参数可在体积扩展阶段210中使用,以助于识别与附加投影体积关联的主投影元素。在这些或其它实施方式中,还可以基于对方向轴、坐标变换、投影体积、投影平面等的调整,调整在沿主导轴的一个或更多个关联位置处的横截面模板的一个或更多个参数(例如,方位)。此外,如上所示,在某些实施方式中,投影体积、投影平面及其关于主导轴的关联位置的调整还可以导致在某些实例中对横截面模板及其沿主导轴的位置的追踪的调整。
参数导出阶段212还可以包括与确定所选择的LPO的一个或更多个参数关联的一个或更多个操作。如上所示,参数可以包括LPO的坐标平移及旋转(可以指示LPO的位置、方位和/或方向)、直径、厚度、高度、宽度、长度等。此外,参数导出阶段212可以包括基于坐标变换和/或各个位置关联的元素点在沿所选择的LPO的主导轴的一个或更多个位置处确定一个或更多个参数的操作。
参数导出阶段还可以包括被配置为基于对应的参数确定来确定一个或更多个参数的参数函数的一个或更多个操作,其中各个参数函数可将其对应的参数表示为沿主导轴的位置的函数。例如,可以确定在沿主导轴的多个位置处用于坐标变换的平移和/或旋转,并可将其表示为沿主导轴的位置的函数。
在这些或其它实施方式中,参数导出阶段212可以包括与确定沿主导轴的各个对应位置处的确定的参数的确定性关联的一个或更多个操作。所述确定性可以指示参数的确定在对应位置处可能多准确。在某些实施方式中,可以基于对应的元素点与横截面模板关联得多好、与横截面模板关联的多个对应元素点。在这些或其它实施方式中,所述确定性还可以表示为沿主导轴的位置的函数,使得在沿主导轴的任意指定点处,可以确定对应的参数确定可能多准确。在某些实施方式中,特定位置的确定性可以基于插值和/或特定位置处可能为LPO点的周围的点。在某些实施方式中,所述确定性可以表示为被确定为LPO点的误差均值或被确定为LPO点的点的标准偏差。所述均值和标准偏差可以针对LPO表面来计算。局部地,确定所述表面的点可以具有均值误差,并同样具有拟合的标准偏差,如可以在比局部大的区域确定所述拟合。
模型生成阶段214可以包括对应于基于为所选择的LPO确定的一个或更多个参数函数生成LPO模型208的一个或更多个操作。LPO模型208可以包括所选择的LPO的3D模型和渲染,并可以指示所选择的LPO的一个或更多个参数。
在某些实施方式中,模型生成阶段214可以包括与指示LPO模型208的精度或“拟合质量”关联的操作。例如,在某些实施方式中,模型生成阶段214可以包括与将具有彩色像素的纹理图应用于LPO模型208关联的操作。不同颜色可以指示沿所选择的LPO的特定位置处的若干点(例如,LPO点),其可以支持该点处的所选择的LPO的表示。在这些或其它实施方式中,不同颜色可以基于所确定的确定性(例如,标准偏差和/或均值误差)。附加地或另选地,着色(coloring)可以指示在生成LPO模型208时已被确定为LPO点的实际点。这样,不同颜色可以指示所选择的LPO的参数的表示可更多基于插值猜想而非真实数据的位置。
因此,流程200可被配置为从3D数据204提取LPO模型208。可以对流程200做修改、添加或省略,不会背离本公开的范畴。例如,如上所示,相较于所给出的介绍及说明的次序,执行操作的次序可以变化。另外,一个或更多个操作可包含比所述操作多或少的操作。
图3是根据本文中所述的至少一个实施方式布置的从3D数据提取一个或更多个LPO参数的示例方法300的流程图。方法300可以由任意适当的通用或专用计算设备实现。例如,方法300的一个或更多个操作可由被配置为实现提取模块106的电子设备102实现。此外,方法300可以包括可以关于流程200执行的一个或更多个操作。虽然被示为包含离散的框,但取决于想要的实现方式,可以将方法300的各种框划分成附加的框、合并为更少的框、或消除。
方法300可以开始于框302,其中可以接收与环境相对应的3D数据的点云。3D数据可以包括对应于环境中包含的LPO的多个LPO点。
在框304,可以生成对应于第一投影平面的3D扩展的第一投影体积。第一投影平面可以包括沿主导轴的第一位置,LPO围绕主导轴扩展。此外,第一投影平面可以在第一位置垂直于方向轴,所述方向轴可以至少大致对应于主导轴。在某些实施方式中,可以接收可对应于LPO的初始点(例如,LPO点)作为输入,并可以生成和定位第一投影平面,使得第一投影平面包括所述初始点。这样,初始点可以对应于上述的所选择的LPO点。此外,如上所述,在这些或其它实施方式中,可以接收方向轴的指示作为输入。
另外,在某些实施方式中,可以基于第一主投影元素特性关于沿方向轴的位置的变化来选择第一投影体积沿方向轴的厚度。在这些或其它实施方式中,可以至少基于阈值厚度内特性的变化量来选择厚度。例如,某些实施方式中,可以基于上述关于图2D的原理来选择厚度。
在框306,可以将第一投影体积内来自点云的第一点投影到第一投影平面。在框308,可将多个第一点与对应于LPO的横截面模板匹配。在某些实施方式中,可以接收横截面模板作为初始条件。附加地或另选地,如上所述,可以基于选择基本匹配第一主投影元素的候选横截面模板来确定横截面模板。
可以执行匹配以确定第一主投影元素的第一元素点。第一元素点可以包括第一多个LPO点。如上所示,在某些实施方式中,可以基于聚合可包含所选择的LPO点的投影第一点来确定第一主投影元素,然后可以执行匹配。附加地或另选地,匹配可以用于确定第一主投影元素。
在框310,可以生成包含第二投影平面的第二投影体积。在某些实施方式中,可以基于第一投影体积生成第二投影体积。例如,第二投影体积可被配置为与第一投影体积的厚度基本相同的的厚度。
在框312,可以放置第二投影体积,使得第二投影平面包括沿主导轴的不同于第一位置的第二位置。放置第二投影体积可以基于方向轴,使得第二投影平面相对于第一投影平面沿方向轴移动,并且在第二位置垂直于方向轴。
此外,在某些实施方式中,可以按照使第一点和第二点包括来自点云的一个或更多个相同点的方式选择第二位置。附加地或另选地,可以按照使第一点和第二点不包括来自点云的一个或更多个相同点的方式选择第二位置。而且,在某些实施方式中,第二位置可以随机选择和/或基于方向轴的调整。方向轴的调整可以基于一个或更多个之前确定的主投影元素的确定的中心、横截面模板的特性(例如,横截面模板的中心、横截面模板的形状等)、相对于横截面模板的特性与横截面模板拟合的类型(例如,与圆形横截面模板拟合的椭圆形主投影元素)等。
在框314,可以将第二投影体积内来自点云的第二点投影到第一投影平面上。在框316,可以将多个第二点与横截面模板匹配。可以执行匹配以确定第二主投影元素的第二元素点。第二元素点可以包括第二多个LPO点。如上所示,在某些实施方式中,可以基于聚合可包括之前确定的LPO点的投影第二点(例如,投影第二点可包括一个或更多个第一元素点)来确定第二主投影元素,然后可以执行匹配。附加地或另选地,匹配可以用于确定第二主投影元素。
在框318,可以基于第一元素点和第二元素点来生成参数函数。参数函数可以将LPO的参数表示为沿主导轴的位置的函数。在某些实施方式中,如上所述,可以基于确定沿主导轴多个位置处的参数来确定参数函数,并可以执行插值以确定参数函数。例如,确定参数函数可以包括基于关于一个或更多个第一元素点及一个或更多个第二元素点的插值,确定关于主导轴的参数。
据此,方法300可以用来从可包括LPO的环境的3D数据提取LPO的一个或更多个参数。本领域技术人员理解,可以按不同次序实现方法300中执行的功能。而且,概述的步骤及动作仅作为示例而提供,并且某些步骤及动作可以是可选的、可被合并为较少的步骤及动作或扩展成附加的步骤及动作,不偏离公开的实施方式的本质。
例如,在某些实施方式中,方法300可包括与确定第一元素点的第一坐标变换关联的操作。如上所述,第一坐标变换可以包括关于沿主导轴的第一位置,从点云关联的全局坐标***至与方向轴并因此与主导轴关联的局部坐标***的变换。方法300还可以包括与确定第二元素点的第二坐标变换关联的操作。也是如上所述,第二坐标变换可以包括关于沿主导轴的第二位置,从全局坐标***至局部坐标***的变换。在这些或其它实施方式中,方法300可以包括与基于第一坐标变换及第二坐标变换生成参数函数关联的操作。
附加地或另选地,方法300可以进一步包括与基于第一坐标变换和第二坐标变换确定环境中主导轴的位置关联的操作。在这些或其它实施方式中,确定主导轴的位置可以包括执行关于一个或更多个第一元素点和一个或更多个第二元素关的插值(例如,样条插值)。此外,方法300可以包括与基于一个或更多个第一变换及第二变换调整方向轴关联的操作。如上所示,方向轴的调整还可以用于确定主导轴的位置。方向轴还可以基于插值来调整。
附加地或另选地,方法300可以包括与确定LPO终止关联的操作。例如,方法300可以包括将第三投影体积内来自点云的第三点投影到第三投影体积的第三投影平面上,并基于与匹配投影的第三点的聚合与横截面模板关联的质量测量指标来确定LPO终止。
在这些或其它实施方式中,方法300可以包括与基于参数函数生成LPO的模型关联的操作。在某些实施方式中,方法300可以包括生成LPO的模型的纹理图,其具有指示关于LPO点的LPO的模型的拟合质量的不同颜色。在这些或其它实施方式中,方法300可以包括在所述LPO的模型上显示所述LPO点。
如本文所用的,术语“模块”或“组件”可以表示被配置为执行可以由计算***的通用硬件(例如,计算机可读设备、处理设备等)存储和/或执行的模块或组件和/或软件对象或软件例程的动作。在某些实施方式中,可以将本文所述的不同组件、模块、引擎和服务实现为在计算***上执行的对象或过程(例如,独立线程)。虽然通常将本文所述的某些***及方法描述为用软件实现(由通用硬件存储和/或执行),但也可能有特定硬件实现或软件与具体硬件实现的组合。在此说明书中,“计算实体”或“计算***”可以包含任意数量的本文之前定义的硬件配置,或硬件配置上运行的任意模块或模块组合。例如,计算实体或计算***可以包括一个或更多个处理器和/或一个或更多个计算机可读介质,其中一个或更多个处理器和/或计算机可读介质可被配置为共同或单独执行本文所述的操作。
本文列举的所有示例及条件语言都出于教导的目的,以帮助读者理解本公开文件和发明人贡献的推动本领域技术的概念,并被解释为不限于此类具体列举的示例和条件。虽然已详述了本公开的实施方式,但应该理解能够对所述实施方式做出各种修改、替换或变更,而不背离本公开的精神和范畴。
Claims (25)
1.一种方法,该方法包括以下步骤:
接收对应于环境的三维数据的点云,其中,所述三维数据包括与所述环境中包含的行参数对象相对应的多个行参数对象点;
生成与第一投影平面的三维扩展相对应的第一投影体积,其中,所述第一投影平面包括沿主导轴的第一位置,所述行参数对象围绕所述主导轴扩展,所述第一投影平面在所述第一位置处垂直于方向轴,并且所述方向轴至少大致对应于所述主导轴;
将所述第一投影体积内来自所述点云的第一点投影到所述第一投影平面;
将多个投影的第一点与对应于所述行参数对象的横截面模板相匹配,以确定第一主投影元素的多个第一元素点,其中,所述第一元素点包括第一多个行参数对象点;
生成包括第二投影平面的第二投影体积;
放置所述第二投影体积,使得所述第二投影平面包括沿所述主导轴的不同于所述第一位置的第二位置,其中,放置所述第二投影体积基于所述方向轴,使得所述第二投影平面相对所述第一投影平面沿所述方向轴移动,并且在所述第二位置处垂直于所述方向轴;
将所述第二投影体积内来自所述点云的第二点投影到所述第二投影平面上;
将多个投影的第二点与所述横截面模板相匹配,以确定第二主投影元素的多个第二元素点,其中,所述第二元素点包括第二多个行参数对象点;以及
基于所述第一元素点和所述第二元素点生成参数函数,其中,所述参数函数将所述行参数对象的参数表示为沿所述主导轴的位置的函数。
2.根据权利要求1所述的方法,该方法还包括以下步骤:
针对所述第一元素点确定第一坐标变换,其中,所述第一坐标变换包括关于沿所述主导轴的所述第一位置从与所述点云关联的全局坐标***至与所述主导轴关联的局部坐标***的变换;
针对所述第二元素点确定第二坐标变换,其中,所述第二坐标变换包括关于沿所述主导轴的所述第二位置从所述全局坐标***至所述局部坐标***的变换;以及
基于所述第一坐标变换和所述第二坐标变换生成所述参数函数。
3.根据权利要求2所述的方法,该方法还包括基于所述第一坐标变换和所述第二坐标变换来确定所述环境中所述主导轴的位置的步骤。
4.根据权利要求3所述的方法,其中,确定所述主导轴的位置的步骤包括执行关于一个或更多个所述第一元素点和一个或更多个所述第二元素点的插值。
5.根据权利要求4所述的方法,其中,所述插值包括样条插值。
6.根据权利要求2所述的方法,该方法还包括基于所述第一变换和所述第二变换中的一个或更多个来调整所述方向轴的步骤。
7.根据权利要求1所述的方法,该方法还包括基于投影的第一点的聚合来确定所述第一主投影元素的步骤。
8.根据权利要求1所述的方法,该方法还包括基于投影的第二点的聚合来确定所述第二主投影元素的步骤。
9.根据权利要求1所述的方法,该方法还包括基于所述第一投影体积生成所述第二投影体积的步骤。
10.根据权利要求1所述的方法,该方法还包括以下步骤:
接收所述多个行参数对象点的初始点作为输入;以及
生成所述第一投影体积,使得所述第一投影平面包括所述初始点。
11.根据权利要求1所述的方法,该方法还包括接收所述方向轴的指示作为输入的步骤。
12.根据权利要求1所述的方法,该方法还包括基于所述第一主投影元素的特性的变化,选择沿所述方向轴的所述第一投影体积的厚度的步骤。
13.根据权利要求12所述的方法,该方法还包括至少基于阈值厚度内所述特性的变化量,选择所述厚度的步骤。
14.根据权利要求1所述的方法,该方法还包括基于选择基本匹配所述第一主投影元素的候选横截面模板,确定所述横截面模板的步骤。
15.根据权利要求1所述的方法,该方法还包括接收所述横截面模板作为初始条件的步骤。
16.根据权利要求1所述的方法,该方法还包括基于所述横截面模板的特性,调整所述方向轴的步骤。
17.根据权利要求1所述的方法,该方法还包括基于关于一个或更多个所述第一元素点和一个或更多个所述第二元素点的插值,调整所述方向轴的步骤。
18.根据权利要求1所述的方法,该方法还包括选择所述第二位置以使得所述第一点和所述第二点包括来自所述点云的一个或更多个相同点的步骤。
19.根据权利要求1所述的方法,该方法还包括选择所述第二位置以使得所述第一点和所述第二点不包括来自所述点云的一个或更多个相同点的步骤。
20.根据权利要求1所述的方法,其中,确定所述参数函数的步骤包括基于关于一个或更多个所述第一元素点和一个或更多个所述第二元素点的插值,确定关于所述主导轴的参数的步骤。
21.根据权利要求12所述的方法,其中,所述插值包括样条插值。
22.根据权利要求1所述的方法,该方法还包括以下步骤:
将所述第三投影体积内来自所述点云的第三点投影到第三投影体积的第三投影平面上;以及
基于与将一组投影的第三点与所述横截面模板匹配相关联的质量测量指标,确定所述行参数对象的终止。
23.根据权利要求1所述的方法,该方法还包括基于所述参数函数生成所述行参数对象的模型的步骤。
24.根据权利要求23所述的方法,该方法还包括用不同颜色生成所述行参数对象的模型的纹理图的步骤,所述不同颜色指示关于所述行参数对象点的所述行参数对象的所述模型的拟合质量。
25.根据权利要求24所述的方法,该方法还包括在所述行参数对象的模型上显示所述行参数对象点的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/473,507 US9443312B2 (en) | 2014-08-29 | 2014-08-29 | Line parametric object estimation |
US14/473,507 | 2014-08-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105389800A true CN105389800A (zh) | 2016-03-09 |
CN105389800B CN105389800B (zh) | 2018-04-10 |
Family
ID=54238175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510681296.2A Active CN105389800B (zh) | 2014-08-29 | 2015-08-28 | 行参数对象估计方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9443312B2 (zh) |
EP (1) | EP2990995A3 (zh) |
CN (1) | CN105389800B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106908052A (zh) * | 2017-02-09 | 2017-06-30 | 北京光年无限科技有限公司 | 用于智能机器人的路径规划方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7300930B2 (ja) * | 2019-08-26 | 2023-06-30 | 株式会社トプコン | 測量データ処理装置、測量データ処理方法および測量データ処理用プログラム |
CN111583423A (zh) * | 2020-05-19 | 2020-08-25 | 北京数字绿土科技有限公司 | 一种提取点云数据的断面线的方法和设备 |
US11703457B2 (en) | 2020-12-29 | 2023-07-18 | Industrial Technology Research Institute | Structure diagnosis system and structure diagnosis method |
CN114485608B (zh) * | 2021-12-13 | 2023-10-10 | 武汉中海庭数据技术有限公司 | 一种用于高精度地图制作的局部点云快速配准方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071453A (zh) * | 2006-05-09 | 2007-11-14 | 乐必峰软件公司 | 使用3d扫描数据识别初始设计意图的***和方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4794262A (en) * | 1985-12-03 | 1988-12-27 | Yukio Sato | Method and apparatus for measuring profile of three-dimensional object |
US5388318A (en) * | 1992-10-09 | 1995-02-14 | Laharco, Inc. | Method for defining a template for assembling a structure |
US5694203A (en) * | 1995-01-31 | 1997-12-02 | Kabushikikaisha Wacom | Distance camera device having light gate for extracting distance information |
US6420698B1 (en) * | 1997-04-24 | 2002-07-16 | Cyra Technologies, Inc. | Integrated system for quickly and accurately imaging and modeling three-dimensional objects |
US6069700A (en) * | 1997-07-31 | 2000-05-30 | The Boeing Company | Portable laser digitizing system for large parts |
US6931364B1 (en) * | 2000-01-14 | 2005-08-16 | G. Douglas Anturna | Volume detailed building structure |
US7212278B2 (en) * | 2001-08-06 | 2007-05-01 | Siemens Aktiengesellschaft | Method and device for recording a three-dimensional distance-measuring image |
US6724467B1 (en) * | 2002-04-19 | 2004-04-20 | Richard I. Billmers | System for viewing objects at a fire scene and method of use |
US7317456B1 (en) * | 2002-12-02 | 2008-01-08 | Ngrain (Canada) Corporation | Method and apparatus for transforming point cloud data to volumetric data |
US7323670B2 (en) * | 2004-03-16 | 2008-01-29 | Leica Geosystems Hds Llc | Laser operation for survey instruments |
GB2421383A (en) * | 2004-12-07 | 2006-06-21 | Instro Prec Ltd | Surface profile measurement |
EP2288935A2 (en) * | 2008-06-05 | 2011-03-02 | Koninklijke Philips Electronics N.V. | Extended field of view ultrasonic imaging with guided efov scanning |
KR101319471B1 (ko) * | 2008-08-29 | 2013-10-17 | 미쓰비시덴키 가부시키가이샤 | 부감 화상 생성장치, 부감 화상 생성방법 및 기록매체 |
AU2009286075B2 (en) * | 2008-08-29 | 2015-10-22 | Werner Extrusion Solutions LLC | Solar trough frame, part and method |
US8717578B2 (en) * | 2009-04-10 | 2014-05-06 | Omron Corporation | Profilometer, measuring apparatus, and observing apparatus |
US9322950B2 (en) * | 2011-09-29 | 2016-04-26 | Voca As | Method and apparatus for finding stick-up height of a pipe or finding a joint between two pipes in a drilling environment |
US9245062B2 (en) * | 2012-03-22 | 2016-01-26 | Virtek Vision International Inc. | Laser projection system using variable part alignment |
US9064165B2 (en) * | 2012-03-28 | 2015-06-23 | Metrologic Instruments, Inc. | Laser scanning system using laser beam sources for producing long and short wavelengths in combination with beam-waist extending optics to extend the depth of field thereof while resolving high resolution bar code symbols having minimum code element widths |
US9163936B1 (en) * | 2012-05-07 | 2015-10-20 | Physical Optics Corporation | Three-dimensional profilometer |
US20140244219A1 (en) * | 2013-02-28 | 2014-08-28 | Autodesk, Inc. | Method of creating a pipe route line from a point cloud in three-dimensional modeling software |
US9832487B2 (en) * | 2013-03-15 | 2017-11-28 | Leica Geosystems, Ag | Model-based scan line encoder |
US9154773B2 (en) * | 2013-03-15 | 2015-10-06 | Seiko Epson Corporation | 2D/3D localization and pose estimation of harness cables using a configurable structure representation for robot operations |
US9098773B2 (en) * | 2013-06-27 | 2015-08-04 | Chevron U.S.A. Inc. | System and method of detecting objects in scene point cloud |
US9355495B2 (en) * | 2013-10-09 | 2016-05-31 | Trimble Navigation Limited | Method and system for 3D modeling using feature detection |
-
2014
- 2014-08-29 US US14/473,507 patent/US9443312B2/en active Active
-
2015
- 2015-08-25 EP EP15182358.0A patent/EP2990995A3/en not_active Withdrawn
- 2015-08-28 CN CN201510681296.2A patent/CN105389800B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071453A (zh) * | 2006-05-09 | 2007-11-14 | 乐必峰软件公司 | 使用3d扫描数据识别初始设计意图的***和方法 |
Non-Patent Citations (5)
Title |
---|
ANTONIS I. PROTOPSALTIS等: "A Feature-Based Approach to Re-engineering CAD Models from Cross Sections", 《COMPUTER-AIDED DESIGN & APPLICATIONS》 * |
V. STAMATI 等: "Building Editable B-rep Models from Unorganized Point Clouds", 《NONAME MANUSCRIPT》 * |
VINESH RAJA 等: "《Reverse Engineering: An Industrial Perspective》", 31 December 2008, 《SPRINGER PUBLISHING COMPANY》 * |
张舜德 等: "反求工程中三维几何形状测量及数据预处理", 《机电工程技术》 * |
王令文 等: "基于三维激光扫描技术的隧道检测技术研究", 《工程勘察》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106908052A (zh) * | 2017-02-09 | 2017-06-30 | 北京光年无限科技有限公司 | 用于智能机器人的路径规划方法及装置 |
CN106908052B (zh) * | 2017-02-09 | 2020-06-02 | 北京光年无限科技有限公司 | 用于智能机器人的路径规划方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20160063716A1 (en) | 2016-03-03 |
US9443312B2 (en) | 2016-09-13 |
EP2990995A3 (en) | 2016-04-20 |
CN105389800B (zh) | 2018-04-10 |
EP2990995A2 (en) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110307838B (zh) | 机器人重定位方法、装置、计算机可读存储介质及机器人 | |
KR102210715B1 (ko) | 도로 중의 차도선을 확정하기 위한 방법, 장치 및 기기 | |
Yousif et al. | An overview to visual odometry and visual SLAM: Applications to mobile robotics | |
Guo et al. | An accurate and robust range image registration algorithm for 3D object modeling | |
CN105389800A (zh) | 行参数对象估计 | |
KR101856401B1 (ko) | 차선 데이터의 처리 방법, 장치, 저장매체 및 기기 | |
CN108801268B (zh) | 目标对象的定位方法、装置及机器人 | |
KR102388230B1 (ko) | 객체 인식 서비스 제공 시스템 및 방법, 그리고 이를 위한 장치 및 컴퓨터 프로그램이 기록된 기록매체 | |
JP2016071846A (ja) | 単眼カメラに基づく障害物検知方法及び装置 | |
JP7046533B2 (ja) | 加工対象物内に形成された穴の位置及びベクトルを決定するためのシステム及び方法で使用される表面ベース穴ターゲット | |
JP6681682B2 (ja) | 移動体計測システム及び移動体計測方法 | |
Gao et al. | Evaluation of different features for matching point clouds to building information models | |
JP2015002547A (ja) | 画像処理装置、プログラム、および画像処理方法 | |
JP2013205175A (ja) | 3次元対象面認識装置および方法、ならびにプログラム | |
CN113393524A (zh) | 一种结合深度学习和轮廓点云重建的目标位姿估计方法 | |
Jelinek et al. | Fast total least squares vectorization | |
CN107274446B (zh) | 一种利用法向一致性的尖锐几何边缘点识别方法 | |
CN104992431A (zh) | 多光谱图像配准的方法及装置 | |
JPWO2018131163A1 (ja) | 情報処理装置、データベース生成装置、方法、プログラム、及び記憶媒体 | |
KR102135828B1 (ko) | 3차원 파이프 라인 검출 자동화 장치 | |
CN104217458A (zh) | 一种三维点云的快速配准方法 | |
CN105225219A (zh) | 信息处理方法及电子设备 | |
Ghorbani et al. | A Robust and Automatic Algorithm for TLS-ALS Point Cloud Registration in Forest Environments based on Tree Locations | |
US10012729B2 (en) | Tracking subjects using ranging sensors | |
Ward et al. | A model-based approach to recovering the structure of a plant from images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |