地图更新方法及装置与流程

文档序号:22545505发布日期:2020-10-17 02:14阅读:136来源:国知局
地图更新方法及装置与流程

本发明实施例涉及计算机技术,尤其涉及一种地图更新方法及装置。



背景技术:

随着车辆自动驾驶技术的不断进步和发展,具有详细地图元素的高精度地图作为自动驾驶的核心技术之一也被广泛应用,为保证自动驾驶的安全性,通常需要持续更新高精度地图数据。

目前,在进行高精度地图的更新时,通常是通过对现场进行采集得到点云数据,从点云数据中提取特征进行相似性匹配生成同名点,其次根据同名点将新的地图数据以及旧的地图数据进行配准及差分,得到新旧地图数据的差异部分,再对差异部分进行更新作业。

然而,从点云数据中提取特征以生成同名点非常困难,会导致高精度地图的更新效率低下。



技术实现要素:

本发明实施例提供一种地图更新方法及装置,以克服高精度地图的更新效率低下的问题。

第一方面,本发明实施例提供一种地图更新方法,包括:

对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,所述点云矢量数据为所述点云数据对应的矢量数据;

根据原始地图数据和所述点云矢量数据,得到多个同名点,其中,所述原始地图数据为矢量数据;

根据所述同名点对所述原始地图数据进行更新,得到更新后的地图数据。

第二方面,本发明实施例提供一种地图更新装置,包括:

处理模块,用于对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,所述点云矢量数据为所述点云数据对应的矢量数据;

同名点生成模块,用于根据原始地图数据和所述点云矢量数据,得到多个同名点,其中,所述原始地图数据为矢量数据;

更新模块,用于根据所述同名点对所述原始地图数据进行更新,得到更新后的地图数据。

第三方面,本发明实施例提供一种(设备主题),包括:

存储器,用于存储程序;

处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。

第四方面,本发明实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。

本发明实施例提供一种地图更新方法及装置,该方法包括:对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据;根据原始地图数据和点云矢量数据,得到多个同名点,其中,原始地图数据为矢量数据;根据同名点对原始地图数据进行更新,得到更新后的地图数据。通过将采集的点云数据处理为点云矢量数据,其次根据原始地图数据和点云矢量数据得到多个同名点,其中原始地图数据和点云矢量数据均为矢量数据,因此可以高效便捷的确定多个同名点,再根据同名点对原始地图数据进行更新,从而能够有效提高地图更新的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的地图更新方法的场景示意图一;

图2为本发明第一实施例提供的地图更新方法的流程图;

图3为本发明第二实施例提供的地图更新方法的流程图;

图4为本发明第三实施例提供的地图更新方法的流程图;

图5为本发明提供的地图更新方法的场景示意图二;

图6为本发明提供的地图更新装置的结构示意图;

图7为本发明提供的云平台的硬件结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

随着电子地图导航技术的不断进步和发展,车辆自动驾驶技术也被广泛研究,其中车辆自动驾驶技术必须依赖于高精度地图,适用于自动驾驶的高精度地图相对于普通导航电子地图而言,具有更高精度、更加详细的地图元素、更加丰富的属性,对自动驾驶的无人车定位、导航、控制以及安全都至关重要。

为确保高精度地图能反映最新的道路情况,高精度地图的时效性是非常重要的,因此需要持续更新高精度地图以满足实际需求,在进行地图更新时,通常是在某一段路或某一片区域采用高精度地图更新采集车进行再次采集,例如可以通过激光雷达采集得到点云数据,可选的,还例如可以将双目相机采集的数据转化为点云数据,其次再对点云数据进行矢量化,形成车道边线、路牙、护栏等几何要素以替换原始的矢量数据从而实现更新。

进一步地,将新采集的矢量数据与原始的矢量数据进行配准操作,再对新旧数据进行差分,即可生成新旧数据的矢量差异部分,仅针对矢量差异部分进行更新作业,能够提高地图更新作业的效率,具体的,在进行配准操作之前需要寻找大量的同名点。

目前,现有技术在寻找同名点时通常是从点云数据中提取特征,其次进行将提取的特征与原始的矢量数据进行相似性匹配从而得到同名点,但是因为以下因素,导致寻找同名点的操作非常困难,

1.更新作业往往是发生在上次作业多年之后,自然环境已经发生了变化(比如路面标线重新刷漆,护栏重新修葺等),使得在点云数据与原始矢量数据中提取相同特征非常困难

2.点云数据可能采用不同的手段获取,比如激光雷达和双目视觉,提取特征的技术手段上存在差异(如激光雷达可通过发射强度确定特征,而双目视觉没有强度信息,但其可通过图像分割提取特征),导致提取特征困难。

3.从点云数据中自动提取特征比较困难,能够自动提取的同名点的个数较少,通常在自动提取特征后,还需要补充一部分人工刺点以补充同名点

4.原始地图数据是矢量数据,而新采集的数据是点云数据,两者之间没有相同特征,无法直接匹配,必须找到原始地图数据所对应的点云数据才能够寻找同名点。

上述因素会导致高精度地图的更新效率低下,基于此问题,本发明实施例提供一种地图更新方法及装置,下面结合图1首先对本发明的应用场景进行简单介绍。

图1为本发明提供的地图更新方法的场景示意图一。如图1所示,原始地图数据101中包含某区域的道路信息,例如红绿灯、道牙、路面标线、护栏等信息,原始地图数据中所包含的具体道路信息为根据实际的自然场景确定的,此处对此不做限定。

进一步地,例如自然场景中在当前区域的某路口增加了禁止驶入标志,则需要对原始地图数据进行更新,从而使得自动驾驶的无人车能够及时获取到新的道路信息,更新之后的地图入102所示,在地图中加入了禁止驶入标志103。

本领域技术人员可以理解,图1中的地图仅为示意性的说明,并非实际应用中的高精度地图,具体的,高精度地图的地图数据为矢量数据,下面结合图2以及具体的实施例对本发明提供的地图更新方法进行详细介绍,图2为本发明第一实施例提供的地图更新方法的流程图。

如图2所示,该方法包括:

s201、对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据。

具体的,首先通过高精度地图采集车采集得到点云数据,其中点云是指目标表面特性的海量点集合,可选地,例如通过激光雷达的激光测量原理得到的点云,其点云数据包括三维坐标和激光反射强度。

可选地,通过双目视觉的摄影测量原理得到的点云,其点云数据包括三维坐标和颜色信息,,本领域技术人员可以理解,具体的采集数据的方式可以根据需求进行选择,此处对点云数据不做特别限制。

进一步地,对采集的点云数据进行矢量化处理,从而得到点云矢量数据,其中,矢量化处理的具体实现方式例如可以为采用自动矢量化算法对点云数据进行矢量化处理,本实施例对自动矢量化算法不做限定,矢量化处理的具体实现方式还例如可以为手动对点云数据依次进行矢量化处理,其具体实现方式可以根据需求进行选择。

在本实施例中,矢量数据是利用欧几里德几何学中点、线、面及其组合体来表示地理实体的空间分布的一种数据组织方式对应的数据,矢量数据可以通过记录坐标的方式来表现地理实体的空间位置。

s202、根据原始地图数据和点云矢量数据,得到至少一个同名点,其中,原始地图数据为矢量数据。

进一步地,原始地图数据以及点云矢量数据均为矢量数据,因此可以直接将原始地图数据和点云矢量数据进行匹配从而得到至少一个同名点。

其中,同名点是指地面上同一个点在不同影像上成的像点,在本实施例中,同名点例如可以为原始地图数据与新采集的点云矢量数据中的相同位置的同一限速标志的左上角的点,即原始地图数据与新采集的点云矢量数据中相同对象所对应的点。

具体的,匹配得到多个同名点的实现方式例如可以为,根据原始地图数据中的特征点的位置与新采集的点云矢量数据中的矢量点的位置,确定原始地图数据中的各特征点与新采集的点云矢量数据中的各矢量点之间的距离,其中,原始地图数据中的特征点的位置与新采集的点云矢量数据中的矢量点的位置对应同一对象的相同位置。

进一步地,针对每一个原始地图数据中的特征点,确定和它距离最小的新采集的点云矢量数据中的矢量点为对应的同名点,从而得到多个同名点。

可选地,还例如可以为手动选取人工刺点从而得到多个同名点,本实施例生成同名点的具体实现方式不做限定。

s203、根据同名点对原始地图数据进行更新,得到更新后的地图数据。

进一步地,根据同名点对原始地图数据进行更新,其具体的实现方式例如可以为,根据同名点在原始地图数据中的位置以及在点云矢量数据中的位置,确定当前原始地图数据和点云矢量数据之间的差异部分,其次对差异部分进行更新,从而得到更新后的地图数据。

可选的,其实现方式还例如可以为根据当前同名点指示的对象的语义信息,在原始地图数据以及点云矢量数据之间进行比较,从而实现地图的更新等,本实施例对此不做限定。

本发明实施例提供的地图更新方法,包括:对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据;根据原始地图数据和点云矢量数据,得到多个同名点,其中,原始地图数据为矢量数据;根据同名点对原始地图数据进行更新,得到更新后的地图数据。通过将采集的点云数据处理为点云矢量数据,其次根据原始地图数据和点云矢量数据得到多个同名点,其中原始地图数据和点云矢量数据均为矢量数据,因此可以高效便捷的确定多个同名点,再根据同名点对原始地图数据进行更新,从而能够有效提高地图更新的效率。

在上述实施例的基础上,下面首先结合具体的实施例对生成同名点的具体实现方式进行进一步地详细介绍,结合图3进行说明,图3为本发明第二实施例提供的地图更新方法的流程图。

如图3所示,该方法包括:

s301、根据预设分类的分类类型对点云数据进行分类处理,得到分类处理后的点云数据,分类处理后的点云数据包含语义信息。

具体的,预设分类的分类类型包括如下中的至少一种:点状数据类、线状数据类以及面状数据类,可选的,线状数据类例如又可以细分为路牙类、护栏类等,面状数据类例如又可以细分为交通牌类,墙类等,本实施例对预设分类的具体分类类型不做限制,其可以根据需求进行设定。

进一步地,对点云数据进行分类处理,其中分类处理例如可以根据上述介绍的自动矢量化算法实现,还例如可以根据单独的分类算法实现,以得到分类处理后的点云数据,将点云数据至少划分为点状数据类的点云数据、线状数据类的点云数据以及面状数据类的点云数据。

在本实施例中,分类处理后的点云数据还包含语义信息,其中语义信息用于指示点云数据对应的具体对象内容,具体的,语义信息例如可以为车道边界线、路牙、护栏、墙等,从而使得高精度地图数据具备丰富的实际场景信息。

s302、对分类处理后的点云数据进行矢量化处理,得到点云矢量数据。

其中,矢量化处理在上述实施例中已经进行了详细介绍,此处不再赘述。

s303、获取点云矢量数据所属的分类类型,其中,分类类型包括如下中的至少一种:点状数据类、线状数据类以及面状数据类。

具体的,矢量数据为点、线、面组成的数据,本实施例针对不同分类类型的点云矢量数据,其生成同名点的方式不同,因此首先获取点云矢量数据所述的分类类型。

s304、根据点云矢量数据所属的分类类型,在原始地图数据中获取与点云矢量数据对应的特征点数据;其中,特征点数据与点云矢量数据对应同一对象。

进一步地,在生成同名点的过程中,需要以点为基本单位进行同名点的匹配,因此首先在原始地图数据中获取与点云矢量数据对应的特征点数据,特征点数据例如可以对应多个特征点,其中特征点数据与点云矢量数据对应同一对象,例如在点云矢量数据中存在一目标红绿灯的矢量数据,其次在原始地图数据中获取与该目标红绿灯对应的矢量数据,原始地图数据中与该目标红绿灯对应的矢量数据即为特征点数据。

在本实施例中,针对不同分类类型的点云矢量数据,确定其特征点数据的实现方式不同,下面对获取特征点数据进行具体介绍。

可选地,若点云矢量数据所属的分类类型为点状数据类,则确定原始地图数据中与点云矢量数据对应的至少一个点状数据为特征点数据。

具体的,点状数据类的点云矢量数据为具体的矢量点,可直接进行匹配以生成同名点,进一步地,因为系统误差及随机误差的影响,可能导致矢量点无法完全对准,针对一个点状数据类的点云矢量数据可能存在多个特征点,因此直接确定与点云矢量数据对应的至少一个点状数据为特征点数据。

进一步可选地,若点云矢量数据所属的分类为线状数据类,确定原始地图数据中与点云矢量数据对应的至少一个线状数据的形状点为特征点数据。

具体的,线状数据类的矢量数据无法直接进行同名点的匹配,因此需要将线状数据的矢量数据进行离散化得到线状数据的形状点,在本实施例中,首先获取原始地图数据中与点云矢量数据对应的至少一个线状数据,其次对获取的线状数据进行离散化得到线状数据的形状点,其中,线状数据的形状点即为线状数据的特征点,从而根据得到的形状点确定特征点数据。

进一步可选地,若点云矢量数据所属的分类为面状数据类,确定原始地图数据中与点云矢量数据对应的至少一个面状数据的质心和角点为特征点数据。

具体的,面状数据类的矢量数据同样无法直接进行匹配,因为同一对象的质心和角点是确定的,因此首先获取面状数据类的矢量数据的质心和角点,其次确定原始地图数据中与点云矢量数据对应的至少一个面状数据的质心和角点为特征点数据。

本领域技术人员可以理解,上述介绍的确定特征点并非唯一的实现方式,其中针对不同分类类型的确定特征点的方式可以根据实际需求进行选择,可选地,例如还可以手动确定特征点等,本实施例对此不做限定。

s305、获取点云矢量数据所对应的每个矢量点分别与特征点数据所对应的特征点之间的第一距离。

在本实施例中,点云矢量数据中包含点、线、面组成的矢量数据,首先将线状数据类和面状数据类的矢量数据处理为对应的点状数据类的矢量数据,以矢量点为单位对点云矢量数据进行处理。

其次,针对点云矢量数据所对应的每个矢量点,获取其与特征点数据所对应的特征点之间的第一距离,其中的一个矢量点例如可以对应多个特征点,因此一个矢量点的第一距离可以为多个距离数值。

可选的,当点云矢量数据为线状数据类时,可以通过原始地图数据中与点云矢量数据对应的至少一个线状数据的形状点向点云矢量数据的矢量点进行投影从而得到第一距离。

s306、针对每个矢量点,确定矢量点对应的最小第一距离。

s307、若最小第一距离在预设距离范围内,则将最小第一距离对应的特征点作为矢量点的同名点。

进一步地,针对点云矢量数据中的每个矢量点,确定该矢量点的第一距离中的最小第一距离,其次判断该最小第一距离是否在预设距离范围内,若是,则将最小第一距离对应的特征点作为矢量点的同名点,其中,预设距离范围用于限制选取的同名点距离不能太远,其具体数值可以根据需求进行选择。

在本实施例中,即针对每个矢量点,选取与该矢量点距离最近的特征点作为待选的同名点,其次通过设置预设距离范围对待选的同名点进行进一步地筛选,从而避免选取的同名点误差过大,提升同名点确定的可靠性。

s308、根据同名点对原始地图数据进行更新,得到更新后的地图数据。

具体的,s308的实现方式与s203类似,此处不再赘述。

本发明实施例提供的地图更新方法,包括:根据预设分类的分类类型对点云数据进行分类处理,得到分类处理后的点云数据,分类处理后的点云数据包含语义信息。对分类处理后的点云数据进行矢量化处理,得到点云矢量数据。获取点云矢量数据所属的分类类型,其中,分类类型包括如下中的至少一种:点状数据类、线状数据类以及面状数据类。根据点云矢量数据所属的分类类型,在原始地图数据中获取与点云矢量数据对应的特征点数据;其中,特征点数据与点云矢量数据对应同一对象。获取点云矢量数据所对应的每个矢量点分别与特征点数据所对应的特征点之间的第一距离。针对每个矢量点,确定矢量点对应的最小第一距离。若最小第一距离在预设距离范围内,则将最小第一距离对应的特征点作为矢量点的同名点。根据同名点对原始地图数据进行更新,得到更新后的地图数据。通过根据点云数据的分类类型首先确定特征点数据,其次根据矢量点与特征点之间的距离确定同名点,从而保证了确定同名点的准确性,以及根据线状数据类可生成的同名点数量较多,避免了需要人工补充同名点,保证了确定同名点的高效性。

在上述实施例的基础上,下面结合具体的实施例对根据同名点进行地图更新的具体实现方式进行详细介绍,下面结合图4及图5进行说明,图4为本发明第三实施例提供的地图更新方法的流程图,图5为本发明提供的地图更新方法的场景示意图二。

如图4所示,该方法包括:

s401、对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据。

s402、根据原始地图数据和点云矢量数据,得到多个同名点,其中,原始地图数据为矢量数据。

其中,s401、s402的实现方式与s201、s202类似,此处不再赘述。

s403、针对原始地图数据中的每个特征点,选取各特征点周边预设数量个同名点作为控制点。

其中,上述实施例在进行同名点的匹配时,在原始地图数据中获取了多个特征点数据,进一步地,本实施例针对每个特征点及其周边的同名点进行配准,实现原始地图数据和新采集的地图数据之间的相对平滑,从而在保证数据精度的前提下能够进一步进行差分处理。

具体的,针对原始地图数据中的每个特征点,选取各特征点周边预设数量个同名点,其中,预设数量的具体数值可以根据需求进行设定,此处对此不作限制,其次各特征点的周边例如可以为以该形状点为圆心,预设距离为半径的圆形范围,还例如可以为以该特征点为中心的矩形范围等,本实施例对此不做限制。

进一步地,将选取的同名点作为控制点,其中控制点用于指示特征点在进行配准时的位置信息变化。

s404、针对每个控制点,获取控制点与其余控制点之间的第二距离。

进一步地,选取了预设数量个同名点作为控制点,其中,选取的同名点可能是精度较高的同名点,即该同名点在原始地图数据和新采集的点云数据之间的对应关系比较准确。

可选的,选取的同名点也可能是精度较差的同名点,即该同名点在原始地图数据和新采集的点云数据之间的对应关系存在一定的偏差,在本实施例中,通过对各控制点赋予权值,从而使得精度不同的同名点在配准过程中所影响的程度也不同。

具体的,针对每个控制点,获取控制点与其余控制点之间的第二距离,例如当前存在3个控制点a、b、c,首先针对控制点a,可得到ab之间以及ac之间的第二距离,针对控制点b,可得到ba之间以及bc之间的第二距离,其余的实现方式类似,此处不再赘述。

s405、根据预设权重计算模型和各第二距离,确定各控制点的权重,其中,权重用于指示控制点的影响范围,预设权重计算模型用于表征第二距离与控制点的权重为负相关关系。

在本实施例中,预设权重计算模型如下公式一所示:

其中,i用于表示每个控制点,wi(r)用于表示控制点的权重,r为控制点的权重指示参数,具体的,r的计算方式如下公式二所示:

其中,rin为当前控制点x与k个其余控制点中最远的其余控制点之间的距离,dist(x,xi)为当前控制点x与k个其余控制点之间的第二距离,对应k个数值,则r为当前控制点x与k个其余控制点之间的第二距离与最远距离之比。

在本实施例中,预设权重计算模型用于表征第二距离与控制点的权重为负相关关系,具体的,根据公式一和公式二计算每个控制点的权重,其中权重用于指示控制点的影响范围,具体的,在r>1时,表明当前控制点与某个控制点之间的距离大于最远距离,表明该控制点的选取偏差非常大,将该控制点的权重设置为0,使其不产生影响。

进一步地,在0≤r≤1时,将控制点的权重设置为1-r2,实现了距离形状点越近其配准过程中的影响范围越大,距离形状点越远其配准过程中的影响范围越小,即第二距离与控制点的权重为负相关关系,从而消除部分因同名点选取不精确导致的数据不平滑。

s406、根据各控制点的权重与薄板样条形变模型,确定特征点更新之后的位置,其中,薄板样条形变模型为薄板样条函数对应的模型。

在本实施例中,基于薄板样条形变模型实现配准,其中薄板样条形变模型为薄板样条函数对应的模型,薄板样条函数是一种插值函数,通常基于二维进行插值,因此常应用于图像配准中,具体的,采用薄板样条函数可以将各特征点形变到各控制点的对应位置,同时实现整个空间的形变,从而实现配准。

下面首先结合图5对本实施例中的薄板样条形变模型进行简单说明,如图5所示,其中叉形501用于指示各特征点,例如在各特征点501周边选取一个同名点作为控制点,即图5中圈形502所指示的对象即为控制点,其次,根据薄板样条形变模型将各特征点形变至控制点所在的位置,其中空间同样发生形变,从而实现原始地图数据和新采集的地图数据之间的配准。

可选的,例如选取多个同名点作为控制点时,则图5中圈形502所指示的对象为根据各控制点的权重综合得到的形变目标位置,从而实现根据各控制点的权重与薄板样条形变模型,确定特征点更新之后的位置。

下面对薄板样条形变模型进行具体介绍,其中,薄板样条形变模型的表达式如下公式三所示:

其中,x、y为特征点的二维坐标,i表示各控制点,表示控制点i到特征点之间的距离,wi和a、ax、ay为待求参数,f(x,y)为形变之后的坐标数值分量(x值分量,y值分量,z值分量),在本实施例中,共有n个控制点,则由n个控制点可组成n个f(x,y))的表达式,上述公式三指示配准过程中特征点的坐标变化。

进一步地,上述公式三用矩阵表示则如下公式四所示:

其中,矩阵k是n×n矩阵,其表达形式如公式五所示:

其中,与公式三中的部分相对应,其中σ为正则化参数。

具体的,由于传统的薄板样条形变模型在形变时需要所有控制点均参与变换,计算量大且局部变换不一致时会导致配准效果不佳,为避免出现此问题,以及高精度地图的道路要素一般变化比较平缓,本实施例在薄板样条形变模型中引入了正则化参数,其中正则化参数与薄板样条弯曲能量之间呈负相关关系,弯曲能力用于指示空间形变的程度,具体的,正则化参数越大,弯曲能量越小,其拟合的曲面越趋于平缓。

进一步地,矩阵m是n维列矩阵,其表达形式如公式六所示,与公式一中的部分相对应:

进一步地,a是3维列矩阵,其表达形式如公式七所示,与公式一中的a+axx+ayy部分中的a、ax、ay部分相对应:

进一步地,矩阵p是n×3矩阵,其表达形式如公式八所示,与公式一中的a+axx+ayy部分中的1、x、y相对应:

进一步地,矩阵n是n维列矩阵,其表达形式如公式九所示,与公式一中的f(x,y)部分相对应:

可选的,根据公式二可得到ptm=0,其中该公式为边界限制条件,保证在无限远处刚性变换为0。

具体的,公式三中wi和a、ax、ay为待求参数,对应的矩阵m和矩阵a为待求矩阵,本实施例中,用已经发生形变的点的坐标以及形变之后的位置来求解得到薄板样条形变模型,则其中k、p、v均为已知矩阵,其次通过公式四即可解出矩阵m以及矩阵a,对应的,可以得到公式三中的wi和a、ax、ay,从而得到完整的薄板样条形变模型。

可选的,本实施例通过设置正则化参数σ实现对弯曲能量的调节,具体的,首先设定一个弯曲能量的收敛阈值,如果弯曲能量大于设定的收敛阈值,则调整正则化参数,重新迭代,直至弯曲能量小于收敛阈值,迭代结束,其中弯曲能量可以通过公式十求得:

if=mtkm公式十

其中,if即为弯曲能量。

进一步地,在本实施例中,利用加权平均的方法,对过任一点p(x,y)的所有薄板样条函数取加权平均来确定其对应的各个分量。

其中x值分量映射函数f(x,y)的计算如下公式十一所示:

y值分量映射函数g(x,y)的计算如下公式十一所示:

z值分量映射函数h(x,y)的计算如下公式十三所示:

其中,上述基于局部加权的薄板样条形变模型的目的是使得距离点p(x,y)最近的控制点的影响最大,其距离越远影响越小,当控制点p(xi,yi)与点p(x,y)的距离大于rin时,则不计其影响。

s407、根据各特征点更新之后的位置与各特征点更新之前的位置进行差分处理,得到待更新数据。

进一步地,配准之后得到各特征点更新之后的位置,其次根据各特征点更新之后的位置与各特征点更新之前的位置进行差分处理,得到待更新数据,其中待更新数据为需要增加、删除、修改的部分,在本实施例中,差分处理例如可以为比较各特征点的坐标位置,还例如可以为手动对数据进行比较等,此处对此不作限制。

s408、根据点云数据对待更新数据进行更新,得到更新后的地图数据。

进一步地,将待更新数据的部分进行更新,例如对于需要增加的部分,根据点云数据将该部分增加至原始地图数据中,例如对于需要修改的部分,根据点云数据将该部分进行修改,从而得到更新后的地图。

本发明实施例提供的地图更新方法,包括:对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据。根据原始地图数据和点云矢量数据,得到至少一个同名点,其中,原始地图数据为矢量数据。针对原始地图数据中的每个特征点,选取各特征点周边预设数量个同名点作为控制点。针对每个控制点,获取控制点与其余控制点之间的第二距离。根据预设权重计算模型和各第二距离,确定各控制点的权重,其中,权重用于指示控制点的影响范围,预设权重计算模型用于表征第二距离与控制点的权重为负相关关系。根据各控制点的权重与薄板样条形变模型,确定特征点更新之后的位置,其中,薄板样条形变模型为薄板样条函数对应的模型。根据各特征点更新之后的位置与各特征点更新之前的位置进行差分处理,得到待更新数据。根据点云数据对待更新数据进行更新,得到更新后的地图数据。通过根据同名点确定控制点,其次对每个控制点赋予不同的权重,从而消除因控制点的选取导致的配准精度降低,其次根据各特征点更新之后的位置与各特征点更新之前的位置进行差分处理,再对待更新数据进行更新,得到更新后的地图数据,从而避免了需要对全部的原始地图数据都进行处理,减少了更新地图的工作量,提高更新的效率。

图6为本发明提供的地图更新装置的结构示意图。如图6所示,该装置60包括:处理模块601、同名点生成模块602以及更新模块603。

处理模块601,用于对采集的点云数据进行矢量化处理,得到点云矢量数据,其中,点云矢量数据为点云数据对应的矢量数据;

同名点生成模块602,用于根据原始地图数据和点云矢量数据,得到多个同名点,其中,原始地图数据为矢量数据;

更新模块603,用于根据同名点对原始地图数据进行更新,得到更新后的地图数据。

可选地,同名点生成模块602具体用于:

在原始地图数据中获取与点云矢量数据对应的特征点数据;其中,特征点数据与点云矢量数据对应同一对象;

获取点云矢量数据所对应的每个矢量点分别与特征点数据所对应的特征点之间的第一距离;

根据各第一距离,得到多个同名点。

可选地,同名点生成模块602具体用于:

针对每个矢量点,确定矢量点对应的最小第一距离;

若最小第一距离在预设距离范围内,则将最小第一距离对应的特征点作为矢量点的同名点。

可选地,同名点生成模块602具体用于:

获取点云矢量数据所属的分类类型,其中,分类类型包括如下中的至少一种:点状数据类、线状数据类以及面状数据类;

根据点云矢量数据所属的分类类型,在原始地图数据中获取与点云矢量数据对应的特征点数据。

可选地,同名点生成模块602具体用于:

若点云矢量数据所属的分类类型为点状数据类,则确定原始地图数据中与点云矢量数据对应的至少一个点状数据为特征点数据;

若点云矢量数据所属的分类为线状数据类,则确定原始地图数据中与点云矢量数据对应的至少一个线状数据的形状点为特征点数据;

若点云矢量数据所属的分类为面状数据类,确定原始地图数据中与点云矢量数据对应的至少一个面状数据的质心和角点为特征点数据。

可选地,处理模块601具体用于:

根据预设分类的分类类型对点云数据进行分类处理,得到分类处理后的点云数据,分类处理后的点云数据包含语义信息;

对分类处理后的点云数据进行矢量化处理,得到点云矢量数据。

可选地,更新模块603具体用于:

针对原始地图数据中的每个特征点,选取各特征点周边预设数量个同名点作为控制点;

根据各控制点之间的第二距离,确定各控制点的权重;

根据各控制点的权重与薄板样条形变模型,确定特征点更新之后的位置,其中,薄板样条形变模型为薄板样条函数对应的模型;

根据各特征点更新之后的位置,得到更新后的地图数据。

可选地,更新模块603具体用于:

针对每个控制点,获取控制点与其余控制点之间的第二距离;

根据预设权重计算模型和各第二距离,确定各控制点的权重,其中,权重用于指示控制点的影响范围,预设权重计算模型用于表征第二距离与控制点的权重为负相关关系。

可选地,更新模块603具体用于:

根据各特征点更新之后的位置与各特征点更新之前的位置进行差分处理,得到待更新数据;

根据点云数据对待更新数据进行更新,得到更新后的地图数据。

本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。

图7为本发明提供的云平台的硬件结构示意图,如图7所示,本实施例的云平台70包括:处理器701以及存储器702;其中

存储器702,用于存储计算机执行指令;

处理器701,用于执行存储器存储的计算机执行指令,以实现上述实施例中地图更新方法所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。

可选地,存储器702既可以是独立的,也可以跟处理器701集成在一起。

当存储器702独立设置时,该云平台还包括总线703,用于连接所述存储器702和处理器701。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上云平台所执行的地图更新方法。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。

应理解,上述处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。

总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponent,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。

上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1