掌桥专利:专业的专利平台
掌桥专利
首页

定位方法、装置、电子设备及存储介质

文献发布时间:2024-01-17 01:26:37


定位方法、装置、电子设备及存储介质

技术领域

本公开涉及定位技术领域,尤其涉及定位方法、装置、电子设备及存储介质。

背景技术

在自动驾驶领域等场景下,通常需要对相机进行定位,并将相机定位结果用于表征车辆的位置。相关场景中,通过激光雷达进行定位,或者通过图像特征识别进行定位,然而,激光雷达的布置成本较高,因此图像特征识别定位采用较多,但是图像特征识别定位容易受到环境因素影响,导致定位成功率较低。

发明内容

本公开提供一种定位方法、装置、电子设备及存储介质,通过在确定相机位置的初始坐标后,根据NDT点云地图和初始坐标确定对相机位置的目标定位结果,可以降低环境因素的影响,提高了定位的成功率和通用性。

根据本公开实施例的第一方面,提供一种定位方法,包括:

针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点;

确定各所述目标特征点的三维坐标,并根据所述各所述目标特征点的三维坐标以及所述目标特征点与所述相机图像帧对应的深度值,确定对所述相机图像帧进行采集的相机位置的初始坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果。

可选地,所述根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果,包括:

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定所述初始坐标落在每一所述栅格中的概率值;

对所述概率值的平均值求导,得到所述概率值的一阶偏导值;

在所述一阶偏导值小于等于预设阈值的情况下,将所述初始坐标作为对所述相机位置的目标定位结果。

可选地,所述方法还包括:

循环执行以下步骤:

在所述一阶偏导值大于所述预设阈值的情况下,对所述一阶偏导值求导,得到所述概率值的二阶偏导值;

根据所述一阶偏导值以及所述二阶偏导值,确定所述初始坐标的坐标变化量;

根据所述初始坐标以及所述坐标变化量,确定变化坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述变化坐标,确定所述变化坐标落在每一所述栅格中的概率值;

对所述概率值的平均值求导,得到所述概率值的一阶偏导值,直到所述一阶偏导值小于等于所述预设阈值,将所述一阶偏导值对应的变化坐标作为对所述相机位置的所述目标定位结果。

可选地,所述根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定所述初始坐标落在每一所述栅格中的概率值,包括:

将所述初始坐标分别代入所述NDT点云地图中各栅格对应的特征点正态分布函数中,得到所述初始坐标落在每一所述栅格中的概率值。

可选地,所述针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点,包括:

针对相机图像帧进行特征提取,得到所述相机图像帧的多个特征像素点;

从所述多个特征像素点中选取描述子像素点;

确定所述描述子像素点的明暗信息;

根据所述描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定所述多个特征像素点是否与所述兴趣点匹配;

在所述多个特征像素点与所述兴趣点匹配的情况下,将所述多个特征像素点作为所述多个目标特征点。

可选地,所述根据所述描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定所述多个特征像素点是否与所述兴趣点匹配,包括:

根据所述描述子像素点的明暗信息以及所述兴趣点的明暗信息,确定匹配像素点;

在所述匹配像素点的数量满足预设数量阈值的情况下,计算所述相机图像中匹配像素点之间的第一距离,以及所述特征地图中匹配像素点对应的兴趣点之间的第二距离;

根据所述第一距离以及所述第二距离确定所述多个特征像素点是否与所述兴趣点匹配。

可选地,所述确定所述描述子像素点的明暗信息,包括:

以所述描述子像素点为参考像素点,确定对应所述参考像素点的预设固定坐标上的像素点为目标像素点;

根据所述目标像素点的亮度值,确定所述目标像素点的明暗信息;

根据所述目标像素点的明暗信息确定所述描述子像素点的明暗信息。

根据本公开实施例的第二方面,提供一种定位装置,所述装置包括:

提取模块,被配置为用于针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点;

第一确定模块,被配置为用于确定各所述目标特征点的三维坐标,并根据所述各所述目标特征点的三维坐标以及所述目标特征点与所述相机图像帧对应的深度值,确定对所述相机图像帧进行采集的相机位置的初始坐标;

第二确定模块,被配置为用于根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果。

可选地,所述第二确定模块,包括:

第一确定子模块,被配置为用于根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定所述初始坐标落在每一所述栅格中的概率值;

求导子模块,被配置为用于对所述概率值的平均值求导,得到所述概率值的一阶偏导值;

第二确定子模块,被配置为用于在所述一阶偏导值小于等于预设阈值的情况下,将所述初始坐标作为对所述相机位置的目标定位结果。

可选地,所述第二确定模块,被配置为用于循环执行以下步骤:

在所述一阶偏导值大于所述预设阈值的情况下,对所述一阶偏导值求导,得到所述概率值的二阶偏导值;

根据所述一阶偏导值以及所述二阶偏导值,确定所述初始坐标的坐标变化量;

根据所述初始坐标以及所述坐标变化量,确定变化坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述变化坐标,确定所述变化坐标落在每一所述栅格中的概率值;

对所述概率值的平均值求导,得到所述概率值的一阶偏导值,直到所述一阶偏导值小于等于所述预设阈值,将所述一阶偏导值对应的变化坐标作为对所述相机位置的所述目标定位结果。

可选地,所述第一确定子模块,被配置为用于将所述初始坐标分别代入所述NDT点云地图中各栅格对应的特征点正态分布函数中,得到所述初始坐标落在每一所述栅格中的概率值。

可选地,所述提取模块,包括:

提取子模块,被配置为用于针对相机图像帧进行特征提取,得到所述相机图像帧的多个特征像素点;

选取子模块,被配置为用于从所述多个特征像素点中选取描述子像素点;

第一执行子模块,被配置为用于确定所述描述子像素点的明暗信息;

第二执行子模块,被配置为用于根据所述描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定所述多个特征像素点是否与所述兴趣点匹配;

第三执行子模块,被配置为用于在所述多个特征像素点与所述兴趣点匹配的情况下,将所述多个特征像素点作为所述多个目标特征点。

可选地,所述第二执行子模块,被配置为用于:根据所述描述子像素点的明暗信息以及所述兴趣点的明暗信息,确定匹配像素点;

在所述匹配像素点的数量满足预设数量阈值的情况下,计算所述相机图像中匹配像素点之间的第一距离,以及所述特征地图中匹配像素点对应的兴趣点之间的第二距离;

根据所述第一距离以及所述第二距离确定所述多个特征像素点是否与所述兴趣点匹配。

可选地,所述第一执行子模块,被配置为用于:以所述描述子像素点为参考像素点,确定对应所述参考像素点的预设固定坐标上的像素点为目标像素点;

根据所述目标像素点的亮度值,确定所述目标像素点的明暗信息;

根据所述目标像素点的明暗信息确定所述描述子像素点的明暗信息。

根据本公开实施例的第三方面,提供一种电子设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为:

针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点;

确定各所述目标特征点的三维坐标,并根据所述各所述目标特征点的三维坐标以及所述目标特征点与所述相机图像帧对应的深度值,确定对所述相机图像帧进行采集的相机位置的初始坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果。

根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现第一方面中任一项所述方法的步骤。

本公开的实施例提供的技术方案可以包括以下有益效果:通过针对相机图像帧进行特征提取,得到相机图像帧中的多个目标特征点;确定各目标特征点的三维坐标,并根据各目标特征点的三维坐标以及目标特征点与相机图像帧对应的深度值,确定对相机图像帧进行采集的相机位置的初始坐标;根据NDT点云地图中各栅格对应的特征点正态分布信息以及初始坐标,确定对相机位置的目标定位结果。通过在确定相机位置的初始坐标后,根据NDT点云地图和初始坐标确定对相机位置的目标定位结果,可以降低环境因素的影响,例如降低光照强度变化的影响,同时无需对特定对象进行识别定位,提高了定位的成功率和通用性。

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

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的一种定位方法的流程图。

图2是根据一示例性实施例示出的一种实现图1中步骤S11的流程图。

图3是根据一示例性实施例示出的一种实现图2中步骤S113的流程图。

图4是根据一示例性实施例示出的一种实现图2中步骤S114的流程图。

图5是根据一示例性实施例示出的一种实现图1中步骤S13的流程图。

图6是根据一示例性实施例示出的一种对相机定位的示意图。

图7是根据一示例性实施例示出的一种定位装置的框图。

图8是根据一示例性实施例示出的一种用于定位的装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在介绍本公开所提供的介绍定位方法、装置、电子设备及存储介质之前,首先对本公开所提供的各实施例的应用场景进行介绍,本公开的各实施例可以应用于例如自动驾驶场景,室、内外拍摄定位场景等等。

发明人发现,基于图像特征进行定位,由于环境光照强度变化和观察角度变化,会引起特征变化甚至消失,导致在光照强度变化的场景下,或者行驶过程中定位的成功率较低。并且,在自动驾驶场景下,通常需要借助道路标牌、车道线等特定对象进行定位,在雾天、雨天等视线受阻的情况下,难易准确地获取到道路标牌、车道线等特定对象,也会导致行驶过程中定位的成功率较低,此外,只能在高速、快速路等道路标牌、车道线等完备场景下应用,对于普通道路没有完备的特定对象无法进行定位,通用性较低。

有鉴于此,本公开提供一种定位方法,图1是根据一示例性实施例示出的一种定位方法的流程图,如图1所示,该方法包括以下步骤。

在步骤S11中,针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点。

在一种实施方式中,可以通过RGB相机获取相机图像帧,例如在自动驾驶场景下,可以通过配置在车辆上的RGB相机获取相机图像帧。在室、内外定位场景下,可以通过智能设备自带的相机获取相机图像帧,进而对获取到的相机图像帧进行特征提取。

示例地,可以通过机器模型对相机图像帧进行特征提取,例如可以预先训练特征提取模型,并在定位设备上配置特征提取模型,在实际应用时可以将相机图像帧输入到特征提取模型,经过特征提取模型对相机图像帧进行特征降维、文本相似度计算、主成分分析等过程,得到特征提取模型输出的多个目标特征点。

参见图2所示,在该步骤S11中,所述针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点,包括以下步骤。

在步骤S111中,针对相机图像帧进行特征提取,得到相机图像帧的多个特征像素点。

例如前述,可以通过特征提取模型,对相机图像帧进行特征提取,得到相机图像帧的多个特征像素点。

在步骤S112中,从多个特征像素点中选取描述子像素点。

示例地,可以通过设置特定熵值,对特征像素点进行角点检测,将特征像素点中曲率超过预设曲率阈值、或者在某些属性上强度最大或者最小的特征像素点作为描述子像素点。

在步骤S113中,确定描述子像素点的明暗信息。其中,描述子像素点的明暗信息是指描述子像素点的亮度信息或者灰度信息。

参见图3所示,在该步骤S113中,所述确定所述描述子像素点的明暗信息,包括以下步骤。

在步骤S1131中,以描述子像素点为参考像素点,确定对应参考像素点的预设固定坐标上的像素点为目标像素点。

在一种可能的实现方式中,可以预先对固定坐标进行设置,例如,可以按照以参考像素点为坐标原点,将(3,4)、(2,5)等多个坐标作为预设固定坐标。在应用过程中,以描述子像素点为参考像素点,即将描述子像素点作为坐标原点,确定描述子像素点的(3,4)、(2,5)等多个坐标上是否存在像素点,在存在像素点的情况下,将该像素点作为目标像素点。

在一种实施方式中,可以确定描述子像素点的预设固定坐标上存在像素点的个数,在该个数大于预设个数阈值的情况下,确定该描述子像素点可用,并将该描述子像素点的预设固定坐标上的像素点为目标像素点,在该个数小于等于预设个数阈值的情况下,确定该描述子像素点不可用,并将该描述子像素点剔除。

在步骤S1132中,根据目标像素点的亮度值,确定目标像素点的明暗信息。

示例地,获取目标像素点的亮度值,并将亮度值大于预设亮度阈值的目标像素点的亮度值置1,将亮度值小于等于预设亮度阈值的目标像素点的亮度值置0。并将置1或者置0后的亮度值作为目标像素点的明暗信息。

在步骤S1133中,根据目标像素点的明暗信息确定描述子像素点的明暗信息。

在一种实施方式中,可以根据目标像素点的明暗信息得到描述子像素点的明暗序列,将该明暗序列作为描述子像素点的明暗信息。例如,按照固定坐标的各维度坐标的大小对目标像素点进行排序,得到描述子像素点的明暗序列。

示例地,在固定坐标(3,4)上目标像素点的亮度值为120nits,固定坐标(2,5)上目标像素点的亮度值为90nits,固定坐标(-2,5)上目标像素点的亮度值为152nits,固定坐标(2,-5)上目标像素点的亮度值80nits的情况下,若预设亮度阈值为95nits,按照横坐标由小到大组成明暗序列,则可以得到描述子像素点的明暗序列为1001。在横坐标相同的情况下,可以将纵坐标小的在前。

在步骤S114中,根据描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定多个特征像素点是否与兴趣点匹配。

其中,特征地图中预先通过前述方式确定了各兴趣点的明暗信息。

参见图4所示,在该步骤S114中,所述根据所述描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定所述多个特征像素点是否与所述兴趣点匹配,包括以下步骤。

在步骤S1141中,根据描述子像素点的明暗信息以及兴趣点的明暗信息,确定匹配像素点。

其中,将明暗信息一致的描述子像素点和兴趣点作为匹配像素点,沿用步骤S1133的实施例进行说明,根据描述子像素点的明暗序列1001,检索明暗序列也为1001的兴趣点,在检索到明暗序列也为1001的兴趣点的情况下,将该兴趣点与该描述子像素点作为匹配像素点。

可以说明的是,此处以序列为4位进行示例性说明,实际应用过程中,明暗序列的位数越多,匹配到兴趣点的准确度越高。

在步骤S1142中,在匹配像素点的数量满足预设数量阈值的情况下,计算相机图像中匹配像素点之间的第一距离,以及特征地图中匹配像素点对应的兴趣点之间的第二距离。

在一种实施方式中,从相机图像中的匹配像素点中任一选取参考匹配像素点,根据各匹配像素点在相机坐标系中的投影坐标以及参考匹配像素点在相机坐标系中的投影坐标,计算相机图像中的其他各匹配像素点与参考匹配像素点之间的第一距离。

将特征地图中与相机图像中参考匹配像素点对应的兴趣点作为参考兴趣点,根据匹配像素点中各兴趣点在特征地图中的坐标以及参考兴趣点在特征地图中的坐标,计算特征地图中的其他各兴趣点与参考兴趣点之间的第二距离。

在一种实施方式中,在匹配像素点的数量不满足预设数量阈值的情况下,确定多个特征像素点与兴趣点不匹配,将该相机图像帧作为不可用图像帧。示例地,在特征像素点为1000个的情况下,若匹配像素点的数量小于预设数量阈值30,则确定多个特征像素点与兴趣点不匹配,将该相机图像帧作为不可用图像帧。若匹配像素点的数量大于等于预设数量阈值30,则继续执行后面的步骤。

在步骤S1143中,根据第一距离以及第二距离确定多个特征像素点是否与兴趣点匹配。

在一种实施方式中,根据第一距离的平均值与第二距离平均值之间的差值,与预设差值阈值的大小关系,确定多个特征像素点是否与兴趣点匹配。示例地,在第一距离的平均值与第二距离的平均值之间的差值小于预设差值阈值的情况下,确定多个特征像素点与兴趣点匹配。

在步骤S115中,在多个特征像素点与兴趣点匹配的情况下,将多个特征像素点作为多个目标特征点。

其中,在多个特征像素点与兴趣点匹配的情况下,确定该相机图像帧可用,将多个特征像素点作为多个目标特征点。

在步骤S12中,确定各目标特征点的三维坐标,并根据各目标特征点的三维坐标以及目标特征点与相机图像帧对应的深度值,确定对相机图像帧进行采集的相机位置的初始坐标。

其中,可以将特征地图中与目标特征点对应的兴趣点的坐标作为该目标特征点的三维坐标。

其中,可以通过RGB相机结合深度相机的方式,确定各目标特征点的深度值,也可以通过RGB相机中相邻相机图像帧的投影坐标,确定各目标特征点的深度值。进而根据任一目标特征点的三维坐标以及该目标特征点的深度值,反推相机位置的初始坐标,并将多个初始坐标求取平均值,得到对相机图像帧进行采集的相机位置的初始坐标。

在步骤S13中,根据NDT点云地图中各栅格对应的特征点正态分布信息以及初始坐标,确定对相机位置的目标定位结果。

其中,NDT点云地图是对雷达采集的特征点云的均值和方差进行计算,并根据均值和方差确定落在栅格中的概率得到的。

下面对NDT地图的构建进行简单介绍说明,首先分别利用高精度点云地图和激光雷达实时测量数据,分别提取出高精度点云地图中图像帧以及该帧图像帧的连续若干帧图像中的图像特征点,该图像特征点包括特征点在图像上的二维坐标(u,v)和特征描述子desp,进而分别获取到图像帧的图像特征点的深度信息以及连续若干帧图像中的图像特征点的深度信息,进而分别得到每一图像帧中的图像特征点的三维图像坐标(u,v,d)。

进一步地,利用相匹配的特征点在不同帧图像中的三维图像坐标(u,v,d),计算得到采集每一图像帧时相机的相对位置。针对连续图像帧中的每一图像帧,根据采集当前图像帧时相机的相机位置,和该图像帧上的所有像素点的三维图像坐标(u,v,d),计算得到像素点的三维绝对坐标,并将所有像素点的三维绝对坐标转换为多维变量的正态分布,并根据正太分布后的像素点的概率密度之和与激光雷达的地图点云进行匹配,在匹配过程中,可以考虑用优化方法,求出概率密度之和最大的变换参数,以得到匹配性最好的点云数据。进而,以一定尺寸栅格化NDT点云地图,并得到每一栅格中点云的均值和方差,存储每一栅格的均值和方差以得到NDT地图。

参见图5所示,在该步骤S13中,所述根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果,包括以下步骤。

在步骤S131中,根据NDT点云地图中各栅格对应的特征点正态分布信息以及初始坐标,确定初始坐标落在每一栅格中的概率值。

其中,可以将初始坐标分别代入NDT点云地图中各栅格对应的特征点正态分布函数中,得到初始坐标落在每一栅格中的概率值。

在步骤S132中,对概率值的平均值求导,得到概率值的一阶偏导值。

在步骤S133中,在一阶偏导值小于等于预设阈值的情况下,将初始坐标作为对相机位置的目标定位结果。

在一种实施方式中,在初始坐标的一阶偏导值等于0的情况下,即预设阈值为0,将初始坐标作为对相机位置的目标定位结果,初始坐标即为最优化的相机位置。

在图5的实施例基础上,参见图5所示,方法还包括:

循环执行以下步骤:

在步骤S134中,在一阶偏导值大于预设阈值的情况下,对一阶偏导值求导,得到概率值的二阶偏导值。

在步骤S135中,根据一阶偏导值以及二阶偏导值,确定初始坐标的坐标变化量。

示例地,计算一阶偏导值与二阶偏导值的商,并取该商的相反数作为坐标变化量。

在步骤S136中,根据初始坐标以及坐标变化量,确定变化坐标。

示例地,在初始坐标的基础上加上坐标变化量,得到变化坐标。

在步骤S137中,根据NDT点云地图中各栅格对应的特征点正态分布信息以及变化坐标,确定变化坐标落在每一栅格中的概率值。

示例地,可以将变化坐标分别代入NDT点云地图中各栅格对应的特征点正态分布函数中,得到变化坐标落在每一栅格中的概率值。

在步骤S138中,对概率值的平均值求导,得到概率值的一阶偏导值,直到一阶偏导值小于等于预设阈值,将一阶偏导值对应的变化坐标作为对相机位置的目标定位结果。

示例地,针对初始坐标T

进一步地,在初始坐标的一阶偏导值F

进一步地,计算初始坐标T

进一步地,在第一变化坐标T

进一步地,计算第一变化坐标T

同理,在第二变化坐标T

同理,在变化坐标的一阶偏导值等于0的情况下,将变化坐标作为对相机位置的目标定位结果。

参见图6所示,在当前相机位置可以进行图像采集,在当前相机位置之前的任意相机位置也能够进行图像采集,此时需要对当前相机位置进行定位,由于目标对象具有多个面,在当前相机位置只能采集到如图6中朝向当前相机位置一侧的实心填充的像素点云,不能够采集到如图6中未朝向当前相机位置一侧的空心的像素点云。但是在当前相机位置之前的其他相机位置可以采集空心的像素点,即在相机位于当前相机位置的初始坐标的位置或者初始坐标之前的其他相机位置,可以采集空心的像素点,其中,围绕在点云四周的图形用于表征在当前相机位置之前的其他相机位置,这样在确定当前相机位置时,同样可以利用到空心的像素点,当然是否能够利用到空心的像素点需要根据初始坐标落在每一栅格中的概率值,如此可以降低拍摄角度的影响,同时无需对特定对象进行识别定位,提高了定位的成功率和通用性。

上述技术方案,通过在确定相机位置的初始坐标后,根据NDT点云地图和初始坐标确定对相机位置的目标定位结果,可以降低环境因素的影响,例如降低光照强度变化的影响,也可以降低拍摄角度的影响,同时无需对特定对象进行识别定位,提高了定位的成功率和通用性。

基于相同的发明构思,本公开还提供一种定位装置,该装置可以以软件、硬件或者两者相结合的方式实现定位方法的全部或部分步骤。图7是根据一示例性实施例示出的一种定位装置700的框图,如图7所示,所述装置700包括:提取模块710、第一确定模块720和第二确定模块730。

其中,提取模块710,被配置为用于针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点;

第一确定模块720,被配置为用于确定各所述目标特征点的三维坐标,并根据所述各所述目标特征点的三维坐标以及所述目标特征点与所述相机图像帧对应的深度值,确定对所述相机图像帧进行采集的相机位置的初始坐标;

第二确定模块730,被配置为用于根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果。

上述装置通过在确定相机位置的初始坐标后,根据NDT点云地图和初始坐标确定对相机位置的目标定位结果,可以降低环境因素的影响,例如降低光照强度变化的影响,同时无需对特定对象进行识别定位,提高了定位的成功率和通用性。

可选地,所述第二确定模块730,包括:

第一确定子模块,被配置为用于根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定所述初始坐标落在每一所述栅格中的概率值;

求导子模块,被配置为用于对所述概率值的平均值求导,得到所述概率值的一阶偏导值;

第二确定子模块,被配置为用于在所述一阶偏导值小于等于预设阈值的情况下,将所述初始坐标作为对所述相机位置的目标定位结果。

可选地,所述第二确定模块730,被配置为用于循环执行以下步骤:

在所述一阶偏导值大于所述预设阈值的情况下,对所述一阶偏导值求导,得到所述概率值的二阶偏导值;

根据所述一阶偏导值以及所述二阶偏导值,确定所述初始坐标的坐标变化量;

根据所述初始坐标以及所述坐标变化量,确定变化坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述变化坐标,确定所述变化坐标落在每一所述栅格中的概率值;

对所述概率值的平均值求导,得到所述概率值的一阶偏导值,直到所述一阶偏导值小于等于所述预设阈值,将所述一阶偏导值对应的变化坐标作为对所述相机位置的所述目标定位结果。

可选地,所述第一确定子模块,被配置为用于将所述初始坐标分别代入所述NDT点云地图中各栅格对应的特征点正态分布函数中,得到所述初始坐标落在每一所述栅格中的概率值。

可选地,所述提取模块710,包括:

提取子模块,被配置为用于针对相机图像帧进行特征提取,得到所述相机图像帧的多个特征像素点;

选取子模块,被配置为用于从所述多个特征像素点中选取描述子像素点;

第一执行子模块,被配置为用于确定所述描述子像素点的明暗信息;

第二执行子模块,被配置为用于根据所述描述子像素点的明暗信息以及特征地图中兴趣点的明暗信息,确定所述多个特征像素点是否与所述兴趣点匹配;

第三执行子模块,被配置为用于在所述多个特征像素点与所述兴趣点匹配的情况下,将所述多个特征像素点作为所述多个目标特征点。

可选地,所述第二执行子模块,被配置为用于:根据所述描述子像素点的明暗信息以及所述兴趣点的明暗信息,确定匹配像素点;

在所述匹配像素点的数量满足预设数量阈值的情况下,计算所述相机图像中匹配像素点之间的第一距离,以及所述特征地图中匹配像素点对应的兴趣点之间的第二距离;

根据所述第一距离以及所述第二距离确定所述多个特征像素点是否与所述兴趣点匹配。

可选地,所述第一执行子模块,被配置为用于:以所述描述子像素点为参考像素点,确定对应所述参考像素点的预设固定坐标上的像素点为目标像素点;

根据所述目标像素点的亮度值,确定所述目标像素点的明暗信息;

根据所述目标像素点的明暗信息确定所述描述子像素点的明暗信息。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

此外,值得说明的是,上述实施例中的模块在具体实施时可以是相互独立的装置也可以是同一个装置,例如提取模块710和第一确定模块720,可以为同一模块也可以为两个模块,本公开对此不作限定。

根据本公开实施例还提供一种电子设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为:

针对相机图像帧进行特征提取,得到所述相机图像帧中的多个目标特征点;

确定各所述目标特征点的三维坐标,并根据所述各所述目标特征点的三维坐标以及所述目标特征点与所述相机图像帧对应的深度值,确定对所述相机图像帧进行采集的相机位置的初始坐标;

根据NDT点云地图中各栅格对应的特征点正态分布信息以及所述初始坐标,确定对所述相机位置的目标定位结果。

本公开还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开提供的所述定位方法的步骤。

图8是根据一示例性实施例示出的一种用于定位的装置800的框图。可选地,该装置800可以被配置为一配置有相机的定位装置。参照图8,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。

处理组件802通常控制装置800的整体操作,诸如与显示,数据通信和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的定位方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电力组件806为装置800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。例如,装置800通过通信组件816与第一设备以及第二设备进行通信,以获取第一设备和第二设备对目标对象进行拍摄得到的图像,装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述定位方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述定位方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的定位方法的代码部分。

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

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术分类

06120116216174