三维点云配准方法、装置、电子设备及可读介质

文档序号:1964837 发布日期:2021-12-14 浏览:18次 >En<

阅读说明:本技术 三维点云配准方法、装置、电子设备及可读介质 (Three-dimensional point cloud registration method and device, electronic equipment and readable medium ) 是由 孙晓峰 于 2021-01-13 设计创作,主要内容包括:本公开实施例提供一种三维点云配准方法、装置、电子设备及可读介质,该方法包括:获取待配准点云和基准点云;确定待配准点云在二维平面的第一投影图像,第一投影图像包括多个第一像素点;确定基准点云在二维平面的第二投影图像,第二投影图像包括多个第二像素点;根据第一投影图像的第一像素点和第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点;根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据变化矩阵对待配准点云进行点云配准操作。本公开实施例提供的技术方案能够实现大范围点云的无初值快速精准配准。(The embodiment of the disclosure provides a three-dimensional point cloud registration method, a three-dimensional point cloud registration device, an electronic device and a readable medium, wherein the method comprises the following steps: acquiring point cloud to be registered and reference point cloud; determining a first projection image of the point cloud to be registered on a two-dimensional plane, wherein the first projection image comprises a plurality of first pixel points; determining a second projection image of the reference point cloud on the two-dimensional plane, wherein the second projection image comprises a plurality of second pixel points; determining matched pixel point pairs according to a first pixel point of the first projection image and a second pixel point of the second projection image, wherein each matched pixel point pair comprises a first pixel point and a second pixel point; and determining a transformation matrix according to at least one point cloud to be registered corresponding to a first pixel point in the matching pixel points and at least one reference point cloud corresponding to a second pixel point in the matching pixel points, so as to perform point cloud registration operation on the point cloud to be registered according to the transformation matrix. The technical scheme provided by the embodiment of the disclosure can realize rapid and accurate registration without initial value of large-range point cloud.)

三维点云配准方法、装置、电子设备及可读介质

技术领域

本公开涉及点云配准技术领域,尤其涉及一种三维点云配准方法、装置、电子设备及计算机可读介质。

背景技术

目前,随着激光雷达及各种深度传感器的普及,三维点云数据的获取变得更加便捷。大量的三维点云正在成为三维重建、位姿估计、目标识别等研究领域的新型数据源。然而,大多数情况下,三维点云的采集需要跨时间段、跨视角、跨设备协同才能完成,只有将不同视角、不同时期、不同设备获取的局部三维点云数据配准到一起,形成覆盖整个场景的完整三维数据,才能进行后续的更高层级算法分析。因此,作为点云数据处理的基础算法,三维点云配准技术一直是测绘地理信息、计算机视觉、计算机图形学等领域的一个研究热点。按照配准的目标精度不同,点云配准技术分为粗配准和精配准两大类。粗配准是指在两待配准点云相对位姿完全未知的情况下对点云进行配准,配准结果可为精配准提供良好的初始值。当前主流的粗配准算法包括基于穷举搜索的配准算法和基于特征匹配的配准算法。其中基于穷举搜索的配准算法,需要遍历整个变换空间以选取使误差函数最小的变换关系或者列举出使最多点对满足的变换关系。如随机抽样一致性(RANSAC)配准算法、四点一致集配准算法(4-Point Congruent Set,4PCS)、Super4PCS算法等。基于特征匹配的配准算法通过计算被测物体或场景本身所具备的形态特性构建点云间的匹配对应,然后采用相关算法对变换关系进行估计。如基于快速点特征直方图(Fast Point Feature Histograms,FPFH)特征点的随机采样一致性(SAC-IA)、FGR算法、基于方向直方图特征(Signature ofHistograms of OrienTations,SHOT)特征的AO算法、基于深度学习提取特征的3DsmoothNet方法、以及基于线特征的ICL算法等。精配准的目的是在粗配准结果的基础上让点云之间的空间位置差别最小化。通用的精配准算法主要包括ICP以及ICP的各种变种(如point to plane ICP、Point to line ICP、GICP、NICP)、NDT、基于深度学习的DeepVCP等。

尽管当前各种点云配准算法众多,但与图像配准算法相比,点云配准技术还有很多问题有待解决。当前绝大多数效果较好的点云配准算法主要针对小型特定物体(如经典的斯坦福兔子模型)或几米范围内的室内场景进行的。对于大范围场景下的室内外点云配准问题,目前仍存在较大挑战。由于算法复杂度与内存限制,现有的针对局部小范围设计的配准算法很难扩展到大范围场景。

因此,需要一种新的三维点云配准方法、装置、电子设备及计算机可读介质。

在所述

背景技术

部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

有鉴于此,本公开实施例提供一种三维点云配准方法、装置、电子设备及计算机可读介质,能够实现大范围点云的无初值快速精准配准。

本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

根据本公开实施例的第一方面,提出一种三维点云配准方法,该方法包括:获取待配准点云和基准点云;确定所述待配准点云在二维平面的第一投影图像,所述第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云;确定所述基准点云在二维平面的第二投影图像,所述第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云;根据所述第一投影图像的第一像素点和所述第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点;根据所述匹配像素点中的第一像素点对应的至少一个待配准点云,和所述匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据所述变化矩阵对所述待配准点云进行点云配准操作。

在本公开的一种示例性实施例中,确定所述待配准点云在二维平面的第一投影图像包括:根据所述待配准点云在二维平面的投影位置对二维平面进行划分,获得所述多个第一像素点;根据所述第一像素点对应的至少一个待配准点云的反射强度信息确定所述第一像素点的灰度值;根据所述第一像素点的灰度值生成所述第一投影图像。

在本公开的一种示例性实施例中,根据所述第一像素点对应的至少一个待配准点云的反射强度信息确定所述第一像素点的灰度值包括:获取所述待配准点云的反射强度信息;将所述待配准点云的反射强度信息中的最小值确定为待配准点云的全局最小反射强度,将所述待配准点云的反射强度信息中的最大值确定为待配准点云的全局最大反射强度;根据所述第一像素点对应的至少一个待配准点云的反射强度信息确定所述第一像素点的反射子强度;根据所述待配准点云的全局最小反射强度、所述待配准点云的全局最大反射强度和所述第一像素点的反射子强度确定所述第一像素点的灰度值。

在本公开的一种示例性实施例中,根据所述第一投影图像的第一像素点和所述第二投影图像中的第二像素点确定匹配像素点对包括:对所述第一像素点进行特征提取,获得所述第一像素点的第一特征向量;对所述第二像素点进行特征提取,获得所述第二像素点的第二特征向量;确定所述第一像素点的第一特征向量和各第二像素点的第二特征向量的特征距离;将所述特征距离最小的所述第一像素点和第二像素点和确定为匹配点对。

在本公开的一种示例性实施例中,所述方法还包括:确定所述特征距离中的最小值和次小值的特征距离比值;若所述特征距离比值大于特征距离比值阈值,则将所述匹配点对剔除。

在本公开的一种示例性实施例中,所述方法还包括:确定所述第一投影图像和所述第二投影图像的单应变换;将单应变换后的误差大于误差像素阈值的匹配点对剔除。

在本公开的一种示例性实施例中,根据所述匹配像素点中的第一像素点对应的至少一个待配准点云,和所述匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵包括:将所述匹配像素点中的第一像素点对应的待配准点云中具有最低高程值的待配准点云确定为第一点云;将所述匹配像素点中的第二像素点对应基准点云中具有最低高程值的基准点云确定为第二点云;将所述第一点云和所述第二点云作为匹配点云对确定所述变换矩阵。

根据本公开实施例的第二方面,提出一种三维点云配准装置,该装置包括:点云获取模块,配置为获取待配准点云和基准点云;第一图像模块,配置为确定所述待配准点云在二维平面的第一投影图像,所述第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云;第二图像模块,配置为确定所述基准点云在二维平面的第二投影图像,所述第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云;像素点对模块,配置为根据所述第一投影图像的第一像素点和所述第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点;点云配准模块,配置为根据所述匹配像素点中的第一像素点对应的至少一个待配准点云,和所述匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据所述变化矩阵对所述待配准点云进行点云配准操作。

根据本公开实施例的第三方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一项所述的三维点云配准方法。

根据本公开实施例的第四方面,提出一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述任一项所述的三维点云配准方法。

根据本公开某些实施例提供的三维点云配准方法、装置、电子设备及计算机可读介质,基于投影方式将待配准点云投射为二维平面上的第一像素点,利用第一像素点生成第一投影图像,并将基准点云投射为二维平面上的第二像素点,利用第二像素点生成第二投影图像,利用第一投影图像和第二投影图像确定匹配像素点对,能够将三维点云配准问题降维为二维图像配准问题,降低算法复杂度与内存需求,大幅提升配准效率,能够将配准算法扩展到大范围场景,实现数亿级别点云的无初值快速配准。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据一示例性实施例示出的一种三维点云配准方法及装置的系统框图。

图2是根据一示例性实施例示出的一种三维点云配准方法的流程图。

图3是根据一示例性实施例示出的一种三维点云配准方法的流程图。

图4是根据一示例性实施例示出的点云配准效果图。

图5是根据一示例性实施例示出的投影图像生成方式的示意图。

图6是根据一示例性实施例示出的投影图像的示意图。

图7是根据一示例性示出的特征匹配与误点滤除后的效果示例图。

图8是根据一示例性实施例示出的一种三维点云配准方法的流程图。

图9是根据一示例性实施例示出的一种三维点云配准方法的流程图。

图10是根据一示例性实施例示出的一种三维点云配准方法的流程图。

图11是根据一示例性实施例示出的一种三维点云配准装置的框图。

图12示意性示出本公开一个示例性实施例中一种电子设备的方框图。

具体实施方式

现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本发明将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。

所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。

附图仅为本发明的示意性图解,图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和步骤,也不是必须按所描述的顺序执行。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。

下面结合附图对本发明示例实施方式进行详细说明。

图1是根据一示例性实施例示出的一种三维点云配准方法及装置的系统框图。

服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所进行操作的三维点云配准系统提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的三维点云配准请求等数据进行分析等处理,并将处理结果(例如变换矩阵--仅为示例)反馈给终端设备。

服务器105可例如获取待配准点云和基准点云;服务器105可例如确定所述待配准点云在二维平面的第一投影图像,所述第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云;服务器105可例如确定所述基准点云在二维平面的第二投影图像,所述第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云。服务器105可例如根据所述第一投影图像的第一像素点和所述第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点。服务器105可例如根据所述匹配像素点中的第一像素点对应的至少一个待配准点云,和所述匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据所述变化矩阵对所述待配准点云进行点云配准操作。

服务器105可以是一个实体的服务器,还可例如为多个服务器组成,服务器105中的一部分可例如作为本公开中的三维点云配准任务提交系统,用于获取将要执行三维点云配准命令的任务;以及服务器105中的一部分还可例如作为本公开中的三维点云配准系统,用于获取待配准点云和基准点云;确定所述待配准点云在二维平面的第一投影图像,所述第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云;确定所述基准点云在二维平面的第二投影图像,所述第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云;根据所述第一投影图像的第一像素点和所述第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点;根据所述匹配像素点中的第一像素点对应的至少一个待配准点云,和所述匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据所述变化矩阵对所述待配准点云进行点云配准操作。

图2是根据一示例性实施例示出的一种三维点云配准方法的流程图。本公开实施例提供的三维点云配准方法可以由任意具备计算处理能力的电子设备执行,例如终端设备101、102、103和/或服务器105,在下面的实施例中,以服务器执行方法为例进行举例说明,但本公开并不限定于此。本公开实施例提供的三维点云配准方法20可以包括步骤S202至S208。

如图2所示,在步骤S202中,获取待配准点云和基准点云。

本公开实施例中,待配准点云和基准点云可为不同视角和/或不同时期和/或不同设备获取的局部点云数据。例如,可由采集装置获取大范围室内外场景的待配准点云和基准点云。待配准点云和基准点云可分别包括在三维坐标系下的坐标数据以及反射强度信息。

在步骤S204中,确定待配准点云在二维平面的第一投影图像,第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云。

本公开实施例中,待配准点云可具有三维坐标信息,可根据待配准点云的三维坐标信息将其投影在二维平面,形成多个第一像素点。每个待配准点云可投影在一第一像素点,每个第一像素点可对应至少一个待配准点云。为便于实施本方案,可将待配准点云的三维坐标信息中的某两个维度所在平面确定为二维平面。例如,待配准点云的坐标信息包括X、Y、Z三个维度。其中,Z坐标方向与重力方向趋于一致。X、Y坐标方向与重力方向垂直。可将X、Y坐标维度所在平面确定为二维平面(下称XY平面)。利用正射投影将待配准点云投影到XY平面,达到对待配准点云降维的目的。

在步骤S206中,确定基准点云在二维平面的第二投影图像,第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云。

本公开实施例中,根据基准点云确定第二投影图像的方式可采取与第一投影图像类似的生成方式,此处不再赘述。

在步骤S208中,根据第一投影图像的第一像素点和第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点。

本公开实施例中,采用对投影图像(第一投影图像、第二投影图像中的)像素点(第一像素点、第二像素点)进行二维图像的特征提取与特征匹配的方式,获得匹配成功的像素点对。

在步骤S210中,根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据变化矩阵对待配准点云进行点云配准操作。

本公开实施例中,可将匹配像素点对中的第一像素点和第二像素点分别确定目标待配准点云和目标基准点云,并将该目标待配准点云和目标基准点云确定为匹配点云对,以利用匹配点云对确定变换矩阵。在根据第一像素点确定目标待配准点云时,可以该第一像素点对应的至少一个待配准点云的坐标信息为依据。在将第二像素点提升至目标基准点云时,可以该第二像素点对应的至少一个基准点云的坐标信息为依据。目前采集点云设备通常以与重力方向趋于一致的方向设定为Z坐标方向,基于此先验,以根据XY平面内的第一像素点确定目标待配准点云为例,可将第一像素点在XY平面的中心位置的X、Y维度的坐标分别确定为提升后的目标待配准点云的X、Y维度的坐标值,并将该第一像素点对应的至少一个待配准点云中的最低点(即Z坐标值最小)的Z维度的坐标值确定为提升后的目标待配准点云的高程值。变换矩阵为目标待配准点云和目标基准点云之间的旋转平移矩阵,目的为将目标待配准点云变换到目标基准点云相同的坐标系下。变换坐标可表示为以下的方程:

pt=R·ps+T (1)

其中,pt和ps分别为同一匹配点云对中的目标基准点云和目标待配准点云。R、T分别为旋转矩阵和平移矩阵,统称前述的变换矩阵。

根据本公开实施例提供的三维点云配准方法,基于投影方式将待配准点云投射为二维平面上的第一像素点,利用第一像素点生成第一投影图像,并将基准点云投射为二维平面上的第二像素点,利用第二像素点生成第二投影图像,利用第一投影图像和第二投影图像确定匹配像素点对,能够将三维点云配准问题降维为二维图像配准问题,降低算法复杂度与内存需求,大幅提升配准效率,能够将配准算法扩展到大范围场景,实现数亿级别点云的无初值快速配准。

图3是根据一示例性实施例示出的一种三维点云配准方法的流程图。本公开实施例提供三维点云配准方法30在确定待配准点云在二维平面的第一投影图像时,可以包括步骤S302至S306。

如图3所示,在步骤S302中,根据待配准点云在二维平面的投影位置对二维平面进行划分,获得多个第一像素点。

本公开实施例中,可以图5为例。在确定第一投影图像时,图5中每个包含有三维点的网格(图5中所指像素点)为一第一像素点。当然,在确定第二投影图像时,图5中每个包含有三维点的像素点代表一个第二像素点。其中,在获得多个第一像素点时,可根据每个待配准点云的(X,Y)坐标将其投影到XY平面上,然后统计出待配准点云在XY平面上的投影点在X轴及Y轴上的最小值Xmin、Ymin及最大值Xmax、Ymax。在获取上述四至范围后,以(Xmin,Ymin)为起始点,在四至范围内以间隔s对XY平面进行等距切分,形成多个第一像素点。其中,可将第一像素点以行列号(i,j)进行标识。例如图5中左下角的像素点编号记为(0,0),所覆盖的地理范围为(Xmin,Ymin)→(Xmin+s,Ymin+s)。可按下式(2)依次计算出每个三维点(本实施例为待配准点云)(X,Y,Z)所处的像素点(本实施例为第一像素点)(i,j),建立起空间三维点与其所处像素点的对应关系,得到三维点与像素点的索引关系表。其中代表向下取整。

在步骤S304中,根据第一像素点对应的至少一个待配准点云的反射强度信息确定第一像素点的灰度值。

本公开实施例中,可将每个第一像素点对应的至少一个待配准点云的中高程值最低的待配准点云的反射强度信息确定为第一像素点的灰度值。其中,当二维平面为XY平面,第一像素点对应的至少一个待配准点云的最低的待配准点云为Z坐标值最小的待配准点云。

在步骤S306中,根据第一像素点的灰度值生成第一投影图像。

本公开实施例中,可将每一像素点的灰度值作为该第一像素点子啊第一投影图像中的灰度表达,进而生成第一投影图像。第一投影图像的示例图可例如图6(b)所示。

在示例性实施例中,在执行步骤S304时,可包括以下步骤S3041-S3044:

步骤S3041,获取待配准点云的反射强度信息。

步骤S3042,将待配准点云的反射强度信息中的最小值确定为待配准点云的全局最小反射强度,将待配准点云的反射强度信息中的最大值确定为待配准点云的全局最大反射强度。

步骤S3043,根据第一像素点对应的至少一个待配准点云的反射强度信息确定第一像素点的反射子强度。

步骤S3044,根据待配准点云的全局最小反射强度、待配准点云的全局最大反射强度和第一像素点的反射子强度确定第一像素点的灰度值。

其中,由于不同激光器反射强度差异较大,不利于后续的特征匹配,为此在得到每一第一像素点的反射强度信息后,可按照公式(3)对第一像素点对应的至少一个待配准点云的反射强度信息进行归一化处理。

v(i,j)=255(I(i,j)-Imin)/(Imax-Imin) (3)

其中I(i,j)为归一化前第一像素点的反射强度信息。Imax与Imin为所有待配准点云(即获取到的整个范围内的待配准点云)中的最大反射强度值与最小反射强度值,v(i,j)为归一化后第一像素点的反射强度信息。

本公开图3所示实施例提供的为第一投影图像的生成方式,第二投影图像的生成方式可采用与本公开实施例步骤S302至S306或步骤S3041至S3042类似的步骤。第二投影图像的示例图可例如图6(a)所示。例如,在确定基准点云在二维平面的第二投影图像时,可根据基准点云在二维平面的投影位置对二维平面进行划分,获得多个第二像素点;根据第二像素点对应的至少一个基准点云的反射强度信息确定第二像素点的灰度值;根据第二像素点的灰度值生成第二投影图像。

又例如,在根据第二像素点对应的至少一个基准点云的反射强度信息确定第二像素点的灰度值时,可获取基准点云的反射强度信息;将基准点云的反射强度信息中的最小值确定为基准点云的全局最小反射强度,将基准点云的反射强度信息中的最大值确定为基准点云的全局最大反射强度;根据第二像素点对应的至少一个基准点云的反射强度信息确定第二像素点的反射子强度;根据基准点云的全局最小反射强度、基准点云的全局最大反射强度和第二像素点的反射子强度确定第二像素点的灰度值。

图8是根据一示例性实施例示出的一种三维点云配准方法的流程图。本公开实施例提供三维点云配准方法80在根据第一投影图像的第一像素点和第二投影图像中的第二像素点确定匹配像素点对时,可以包括步骤S802至S808。

在步骤S802中,对第一像素点进行特征提取,获得第一像素点的第一特征向量。

在步骤S804中,对第二像素点进行特征提取,获得第二像素点的第二特征向量。

在步骤S806中,确定第一像素点的第一特征向量和各第二像素点的第二特征向量的特征距离。

本公开实施例中,对于第一像素点A1,第二投影图像中所有的第二像素点依次为A2、B2、C2,则可依次确定A1与A2的特征距离S1,A1与B2的特征距离S2,以及A1与C2的特征距离S3。

在步骤S808中,将特征距离最小的第一像素点和第二像素点和确定为匹配点对。

本公开实施例中,接前述举例,可将S1、S2、S3中最小的特征距离对应的第一像素点可第二像素点确定为匹配点对。例如,当S1为S1、S2、S3中的最小值,则可将A1和A2确定为匹配点对。

本公开实施例中,可采用对图像缩放、旋转、仿射变换保持不变性的加速稳健特征(Speeded Up Robust Features,SURF)算法进行特征点检测与描述子计算,SURF是对尺度不变特征变换(Scale-invariant feature transform,SIFT)算法的改进,在保证匹配精度与鲁棒性的前提下,效率较SIFT有数倍提升。整个匹配流程包括Hessian矩阵构建、尺度空间构建、特征点定位、特征点主方向计算、特征描述子生成与基于Kdtree的特征向量匹配6个部分。在示例性实施例中,还可采用双向匹配策略,以得到更多的匹配点对,提升匹配鲁棒性。

在示例性实施例中,可确定特征距离中的最小值和次小值的特征距离比值;若特征距离比值大于特征距离比值阈值,则将匹配点对剔除。其中,接前述举例,当S1<S2<S3时,S1为特征距离中的最小值,S2为特征距离中的次小值,特征距离比值为S1/S2,当特征距离比值S1/S2大于特征比例阈值,则认为对于第一像素点A1,其与第二像素点A2、B2的均可能为匹配点对,在该种情况下,直接将第一像素点A1与第二像素点A2确定为匹配点对的行为可信度较低,因此,可将该A1与A2的匹配点对剔除,以提升匹配鲁棒性。

在示例性实施例中,还可确定第一投影图像和第二投影图像的单应变换;将单应变换后的误差大于误差像素阈值的匹配点对剔除。例如,可采用随机抽样一致性(RANSAC)算法建立第一投影图像和第二投影图像间的单应变换,并将单应投影后误差超过误差像素阈值的匹配点对确定为外点并进行滤除。图7是根据一示例性示出的特征匹配与误点滤除后的效果示例图。在该实施例中,利用基于三维欧式变换的RANSAC算法进行剔除。最后,基于误点剔除后的所有内点匹配对,通过有效的特征匹配与多层级粗差剔除机制,可实现了厘米级的大范围点云精确配准。

图9是根据一示例性实施例示出的一种三维点云配准方法的流程图。本公开实施例提供三维点云配准方法90在根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵时,可以包括步骤S902至S906。

在步骤S902中,将匹配像素点中的第一像素点对应的待配准点云中具有最低高程值的待配准点云确定为第一点云。

在步骤S904中,将匹配像素点中的第二像素点对应基准点云中具有最低高程值的基准点云确定为第二点云。

在步骤S906中,将第一点云和第二点云作为匹配点云对确定变换矩阵。

其中,可采用列文伯格-马夸尔特(Levenberg-Marquard,LM)算法迭代计算匹配点云对中两点云间的6自由度变换矩阵,并将计算得到的变换矩阵作用于待配准点云中的所有三维点,实现点云间的三维配准。

本公开实施例通过将二维的第一像素点和第二像素点分别提升到三维空间中的第一点云和第二点云,并基于第一点云和第二点云确定变换矩阵。能够在二维图像配准获得的匹配点对转换为三维的匹配点云对,进而实现将三维点云配准问题转化为二维图像配准问题,实现无需初值的快速配准。

在示例性实施例中,在根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵时,还可按照公式(4)根据匹配点对获得匹配点云对。

其中,(i,j)为像素点(在确定第一点云时为第一像素点,在确定第二点云时为第二像素点)的坐标,(X(i,j),Y(i,j))为该像素点对应的三维空间中X、Y两个维度对应的坐标。三维空间坐标Z(i,j)取值可为图5中所示的像素点对应的待配准点云或基准点云中Z坐标值最小的三维点的高程值(即Z坐标值)。

图10是根据一示例性实施例示出的一种三维点云配准方法的流程图。本公开实施例提供三维点云配准方法100可以包括点云投影1002、特征提取与匹配1004、三维空间变换1006三个技术环节。其中点云投影1002主要完成三维点云(待配准点云和基准点云)到二维图像(第一投影图像和第二投影图像)的映射,网格索引为每个网格(即第一像素点或第二像素点)与待配准点云或基准点云的对应关系。特征提取与匹配1004基于映射后的二维图像计算同名像素点对,最终通过同名像素点对三维映射与变换完成两组点云的配准。图4以具体实例展示了待配准点云与基准点云配准后的效果图。其中,图4(a)为基准点云的效果图,图4(b)为待配准点云的效果图,图4(c)为配准后点云的效果图。根据本公开实施例提供的三维点云配准方法,针对大范围三维稠密点云的配准难题,将复杂的三维点云配准问题转化为二维图像配准问题,提出了一种无需初值的基于正射投影的三维点云配准方法。大量实验证明,利用本发明提到的方法可以有效解决大范围(公里级别)三维稠密点云配准问题。具体来说,本发明提出的方法在配准效率与配准精度方面较现有技术均具有明显优势。在效率方面,本发明将三维点云配准问题转化为二维图像配准问题,大幅提升了配准效率,实现了数亿级别点云的无初值快速配准;在配准精度方面,本发明以RANSAC算法为基础设计了有效的特征匹配与多层级粗差剔除机制,实现了厘米级的大范围点云精确配准。

应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。

本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由中央处理器(Central Processing Unit,CPU)执行的计算机程序。在该计算机程序被中央处理器CPU执行时,执行本公开提供的上述方法所限定的上述功能。的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。

此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。

图11是根据一示例性实施例示出的一种三维点云配准装置的框图。参照图11,本公开实施例提供的三维点云配准装置1100可以包括:点云获取模块1102、第一图像模块1104、第二图像模块1106、像素点对模块1108和点云配准模块1110。

在三维点云配准装置1100中,点云获取模块1102可配置为获取待配准点云和基准点云。

第一图像模块1104可配置为确定待配准点云在二维平面的第一投影图像,第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云。

第二图像模块1106可配置为确定基准点云在二维平面的第二投影图像,第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云。

像素点对模块1108可配置为根据第一投影图像的第一像素点和第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点。

点云配准模块1110可配置为根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据变化矩阵对待配准点云进行点云配准操作。

根据本公开实施例提供的三维点云配准装置,基于投影方式将待配准点云投射为二维平面上的第一像素点,利用第一像素点生成第一投影图像,并将基准点云投射为二维平面上的第二像素点,利用第二像素点生成第二投影图像,利用第一投影图像和第二投影图像确定匹配像素点对,能够将三维点云配准问题降维为二维图像配准问题,降低算法复杂度与内存需求,大幅提升配准效率,能够将配准算法扩展到大范围场景,实现数亿级别点云的无初值快速配准。

在示例性实施例中,第一图像模块可包括:平面划分子模块,可配置为根据待配准点云在二维平面的投影位置对二维平面进行划分,获得多个第一像素点;灰度值子模块,可配置为根据第一像素点对应的至少一个待配准点云的反射强度信息确定第一像素点的灰度值;以及第一图像子模块,可配置为根据第一像素点的灰度值生成第一投影图像。

在示例性实施例中,灰度值子模块可包括:反射强度获取单元,可配置为获取待配准点云的反射强度信息;全局反射强度单元,可配置为将待配准点云的反射强度信息中的最小值确定为待配准点云的全局最小反射强度,将待配准点云的反射强度信息中的最大值确定为待配准点云的全局最大反射强度;反射子强度单元,可配置为根据第一像素点对应的至少一个待配准点云的反射强度信息确定第一像素点的反射子强度;灰度值单元,可配置为根据待配准点云的全局最小反射强度、待配准点云的全局最大反射强度和第一像素点的反射子强度确定第一像素点的灰度值。

在示例性实施例中,像素点对模块可包括:第一特征向量子模块,可配置为对第一像素点进行特征提取,获得第一像素点的第一特征向量;第二特征向量子模块,可配置为对第二像素点进行特征提取,获得第二像素点的第二特征向量;特征距离子模块,可配置为确定第一像素点的第一特征向量和各第二像素点的第二特征向量的特征距离;匹配点对子模块,可配置为将特征距离最小的第一像素点和第二像素点和确定为匹配点对。

在示例性实施例中,三维点云配准装置还可包括:特征距离比值模块,配置为确定特征距离中的最小值和次小值的特征距离比值;第一匹配点对剔除模块,可配置为若特征距离比值大于特征距离比值阈值,则将匹配点对剔除。

在示例性实施例中,三维点云配准装置还可包括:单应变换模块,可配置为确定第一投影图像和第二投影图像的单应变换;第二匹配点对剔除模块,可配置为将单应变换后的误差大于误差像素阈值的匹配点对剔除。

在示例性实施例中,点云配准模块可包括:第一点云子模块,可配置为将匹配像素点中的第一像素点对应的待配准点云中具有最低高程值的待配准点云确定为第一点云;第二点云子模块,可配置为将匹配像素点中的第二像素点对应基准点云中具有最低高程值的基准点云确定为第二点云;变换矩阵子模块,可配置为将第一点云和第二点云作为匹配点云对确定变换矩阵。

下面参照图12来描述根据本发明的这种实施方式的电子设备1200。图12显示的电子设备1200仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图12所示,电子设备1200以通用计算设备的形式表现。电子设备1200的组件可以包括但不限于:上述至少一个处理单元1210、上述至少一个存储单元1220、连接不同系统组件(包括存储单元1220和处理单元1210)的总线1230。

其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1210执行,使得所述处理单元1210执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元1210可以执行如图1中所示的步骤S202,获取待配准点云和基准点云;步骤S204,确定待配准点云在二维平面的第一投影图像,第一投影图像包括多个第一像素点,每个第一像素点对应至少一个待配准点云;步骤S206,确定基准点云在二维平面的第二投影图像,第二投影图像包括多个第二像素点,每个第二像素点对应至少一个基准点云;步骤S208,根据第一投影图像的第一像素点和第二投影图像中的第二像素点确定匹配像素点对,每个匹配像素点对包括一第一像素点和一第二像素点;步骤S210,根据匹配像素点中的第一像素点对应的至少一个待配准点云,和匹配像素点中的第二像素点对应的至少一个基准点云确定变换矩阵,以根据变化矩阵对待配准点云进行点云配准操作。

存储单元1220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)12201和/或高速缓存存储单元12202,还可以进一步包括只读存储单元(ROM)12203。

存储单元1220还可以包括具有一组(至少一个)程序模块12205的程序/实用工具12204,这样的程序模块12205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线1230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备1200也可以与一个或多个外部设备1300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1200交互的设备通信,和/或与使得该电子设备1200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1250进行。并且,电子设备1200还可以通过网络适配器1260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1260通过总线1230与电子设备1200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。

在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和构思由权利要求指出。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:目标分割追踪方法、装置、电子设备和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!