地图的构建方法、装置及电子设备与流程

文档序号:14038022阅读:197来源:国知局
地图的构建方法、装置及电子设备与流程

本申请涉及导航定位技术领域,特别涉及一种地图的构建方法、装置及电子设备。



背景技术:

目前来说,随着机器人、无人驾驶以及无人机等技术的广泛推广,导航定位技术中的视觉定位以及基于视觉定位的地图构建技术变得越来越重要。在相关技术中,一般通过视觉的方式进行地图构建时,所产生的误差会随着时间的推移逐渐累积,使得地图构建的误差越来越大,并且误差难以消除,从而降低了地图构建的精度。



技术实现要素:

为了解决上述技术问题之一,本申请提供一种地图的构建方法、装置及电子设备。

根据本申请实施例的第一方面,提供一种地图的构建方法,包括:

根据采集设备采集的当前一帧深度图像确定当前所述采集设备的位姿;

根据所述采集设备采集的历史深度图像优化所述位姿,得到目标位姿;

根据所述目标位姿构建地图。

可选的,所述根据采集设备采集的当前一帧深度图像确定当前所述采集设备的位姿,包括:

当预设事件未发生时,基于所述采集设备当前的运动数据及所述当前一帧深度图像确定当前所述采集设备的位姿。

可选的,所述根据采集设备采集的当前一帧深度图像确定当前所述采集设备的位姿,还包括:

当预设事件发生时,基于所述采集设备采集的历史深度图像及所述当前一帧深度图像确定当前所述采集设备的位姿。

可选的,所述根据所述采集设备采集的历史深度图像优化所述位姿,包括:

获取所述历史深度图像中部分或全部关键帧图像作为目标图像;

根据所述目标图像优化所述位姿。

可选的,所述获取所述历史深度图像中部分或全部关键帧图像作为目标图像,包括:

从预先存储的目标数据中获取所述目标图像;其中,所述目标数据中记录有所述历史深度图像中的关键帧图像。

可选的,通过如下方式存储得到所述目标数据:

从所述采集设备采集的深度图像中确定首个关键帧图像;

将所述首个关键帧图像存储记录到所述目标数据中;

在确定所述首个关键帧图像后,对所述采集设备依次采集的每一帧深度图像进行检测,以依次确定关键帧图像;其中,针对所述依次采集的任意一帧深度图像,若所述检测的结果指示该帧深度图像与前一帧关键帧图像的视差大于预设视差,并且具有超过预设数量的匹配路标点,则确定该帧深度图像为关键帧图像;

将依次确定的每帧关键帧图像依次存储记录到所述目标数据中。

可选的,所述根据所述目标图像优化所述位姿,包括:

当预设事件未发生时,根据所述目标图像及所述采集设备当前的运动数据优化所述位姿。

可选的,所述根据所述目标图像优化所述位姿,还包括:

当预设事件发生时,根据所述目标图像及所述当前一帧深度图像优化所述位姿。

根据本申请实施例的第二方面,提供一种地图的构建装置,包括:

确定模块,用于根据采集设备采集的当前一帧深度图像确定当前所述采集设备的位姿;

优化模块,用于根据所述采集设备采集的历史深度图像优化所述位姿,得到目标位姿;

构建模块,用于根据所述目标位姿构建地图。

根据本申请实施例的第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任一项所述的地图的构建方法。

本申请的实施例提供的技术方案可以包括以下有益效果:

本申请的实施例提供的地图的构建方法、装置及电子设备,通过根据采集设备采集的当前一帧深度图像确定当前采集设备的位姿,根据采集设备采集的历史深度图像优化该位姿,得到目标位姿,根据目标位姿构建地图。由于本实施例能够根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到精度更高的目标位姿,并基于目标位姿构建地图,因此,可以减小由于时间的推移而逐渐累积的误差,从而提高了地图构建的精度。

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

附图说明

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

图1是本申请根据一示例性实施例示出的一种地图的构建方法的流程图;

图2是本申请根据一示例性实施例示出的另一种地图的构建方法的流程图;

图3是本申请根据一示例性实施例示出的另一种地图的构建方法的流程图;

图4是本申请根据一示例性实施例示出的一种地图的构建装置的框图;

图5是本申请根据一示例性实施例示出的另一种地图的构建装置的框图;

图6是本申请根据一示例性实施例示出的另一种地图的构建装置的框图;

图7是本申请根据一示例性实施例示出的另一种地图的构建装置的框图;

图8是本申请根据一示例性实施例示出的一种电子设备的结构示意图。

具体实施方式

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

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

为了实施本申请提供的地图的构建方案,首先,可以准备一台用于采集视觉信息以及惯性信息的采集设备(如,导航定位机器人,或者无人机等),该采集设备上可以设置视觉信息采集装置(如,用于采集深度图像的双目相机,或rgbd相机等)以及惯性信息采集装置(如,用于采集运动数据的惯性测量单元等)。接着,使采集设备在目标区域内自由运动,并实时采集视觉信息以及惯性信息。可以实时对采集到的视觉信息及惯性信息进行处理,从而构建出目标区域的地图。需要说明的是,该采集设备上可以设置有处理器,可以直接通过该处理器对采集到视觉信息及惯性信息进行处理,以构建地图。也可以由该采集设备将采集到的视觉信息及惯性信息通过网络传输给另一台电子设备,以构建地图。本申请对此方面不限定。

如图1所示,图1是根据一示例性实施例示出的一种地图的构建方法的流程图,该方法可以应用于电子设备中。在本实施例中,本领域技术人员可以理解,该电子设备可以包括但不限于导航定位机器人、无人机、诸如智能手机的移动终端设备、膝上便携式电脑、平板电脑以及台式电脑等等。该方法包括以下步骤:

在步骤101中,根据采集设备采集的当前一帧深度图像确定当前采集设备的位姿。

在本实施例中,可以基于采集设备当前的运动数据及当前一帧深度图像确定当前采集设备的位姿,也可以基于采集设备采集的历史深度图像及当前一帧深度图像确定当前采集设备的位姿。可以理解,本申请对此方面不限定。

在本实施例中,采集设备可以包括视觉信息采集装置,还可以进一步包括惯性信息采集装置。其中,视觉信息采集装置用于实时采集深度图像,视觉信息采集装置可以是各种能够采集深度图像的装置,可以包括但不限于双目相机,或rgbd相机等。惯性信息采集装置用于实时采集运动数据,惯性信息采集装置可以包括但不限于imu(inertialmeasurementunit,惯性测量单元)等。本申请对采集设备上设置的具体硬件方面不限定。

其中,当前的运动数据为采集设备当前采集到的各种惯性信息,如在三维空间中各个方向的加速度和角速度等信息。当前一帧深度图像为采集设备当前采集到的一帧深度图像数据。可以根据采集设备当前的运动数据和/或采集设备采集的历史深度图像,结合采集设备采集的当前一帧深度图像确定当前采集设备的位姿,其中,位姿可以包括位置和姿态。

在步骤102中,根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到目标位姿。

在本实施例中,上述当前采集设备的位姿的误差可能随着时间的推移而累积变大,因此,可以根据采集设备采集的历史深度图像优化当前采集设备的位姿,从而得到更为精确的目标位姿。其中,历史深度图像可以为上述采集设备在当前时刻之前采集的深度图像。具体来说,可以获取历史深度图像中部分或全部关键帧图像作为目标图像,根据目标图像优化当前采集设备的位姿。例如,可以通过如下方式进行优化:可以根据目标图像及采集设备当前的运动数据优化当前采集设备的位姿,也可以根据目标图像及当前一帧深度图像优化当前采集设备的位姿。可以理解,本申请对上述优化的具体方式方面不限定。

在本实施例中,关键帧图像可以是采集设备采集深度图像的过程中所保存下来的历史深度图像。一般来说,采集设备采集深度图像的过程中,确定首个关键帧图像(一般为采集的第一帧深度图像)后,每采集一帧深度图像,均要检测该一帧深度图像是否满足预设条件,该预设条件为与前一帧关键帧图像的视差大于预设视差,并且具有超过预设数量的匹配路标点。如果满足该预设条件,则确定该一帧深度图像是关键帧图像,在使用完毕后进行保存。如果未满足预设条件,则确定该一帧深度图像不是关键帧图像,则在使用完毕后丢弃。

在本实施例中,可以将全部关键帧图像作为目标图像,也可以将与当前时刻较近的时段内采集的部分关键帧图像作为目标图像,本申请对此方面不限定。

在步骤103中,根据目标位姿构建地图。

在本实施例中,首先,可以确定当前一帧深度图像中的新增路标点(即,与上一帧深度图像相比新增加的路标点)。然后,可以根据当前一帧深度图像的深度信息和目标位姿,确定新增路标点与匹配路标点(即,与上一帧深度图像相比匹配的路标点)之间的相对位置关系,并基于该相对位置关系以及已经确定位置的匹配路标点的位置信息,确定当前一帧深度图像中新增路标点的位置。最后,根据新增路标点的位置实时构建地图。

本申请的上述实施例提供的地图的构建方法,通过根据采集设备采集的当前一帧深度图像确定当前采集设备的位姿,根据采集设备采集的历史深度图像优化该位姿,得到目标位姿,根据目标位姿构建地图。由于本实施例能够根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到精度更高的目标位姿,并基于目标位姿构建地图,因此,可以减小由于时间的推移而逐渐累积的误差,从而提高了地图构建的精度。

如图2所示,图2根据一示例性实施例示出的另一种地图的构建方法的流程图,该实施例描述了确定当前采集设备的位姿的过程,该方法可以应用于电子设备中,包括以下步骤:

在步骤201中,当预设事件未发生时,基于采集设备当前的运动数据及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。

在本实施例中,当预设事件未发生时,可以基于采集设备当前的运动数据及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。具体来说,以设置有双目相机以及imu的采集设备为例,首先可以对imu采集的当前运动数据进行预积分,从而根据预积分的结果确定当前的imu误差项。根据双目相机采集的当前一帧深度图像,确定当前的特征重投影误差项。然后,基于当前的imu误差项以及当前的特征重投影误差项,获取第一目标函数。最后,采用lm(levenberg–marquardt,列文伯格-马夸尔特)算法求解第一目标函数,从而得到当前采集设备的位姿。

在步骤202中,当预设事件发生时,基于采集设备采集的历史深度图像及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。

在本实施例中,当预设事件发生时,可以基于采集设备采集的历史深度图像及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。具体来说,可以从采集设备采集的历史深度图像中获取参考图像,该参考图像与当前一帧深度图像具有超过预设数量的匹配路标点。确定当前一帧深度图像中相对于该参考图像的匹配路标点,获取该参考图像对应的位姿,根据当前一帧深度图像的深度信息以及该参考图像对应的位姿确定当前采集设备的位姿。

在本实施例中,预设事件可以为采集设备采集的数据出现异常,例如,预设事件可以包括:采集设备当前的运动数据发生异常的事件;或者当前一帧深度图像与上一帧深度图像中匹配路标点的数量小于预设数量的事件。可以理解,预设事件还可以包括其它的事件,本申请对预设事件的具体内容方面不限定。

在步骤203中,根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到目标位姿。

在步骤204中,根据目标位姿构建地图。

需要说明的是,对于与图1实施例中相同的步骤,在上述图2实施例中不再进行赘述,相关内容可参见图1实施例。

本申请的上述实施例提供的地图的构建方法,在预设事件未发生时,基于采集设备当前的运动数据及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。在预设事件发生时,基于采集设备采集的历史深度图像及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到目标位姿,根据目标位姿构建地图。由于本实施例在发生异常事件时,可以基于采集设备采集的历史深度图像及当前一帧深度图像确定当前采集设备的位姿。因此,避免了采集设备采集的数据出现异常时,无法正常构建地图的问题,提高了地图构建的效率,也进一步提高了地图构建的精度。

如图3所示,图3根据一示例性实施例示出的另一种地图的构建的流程图,该实施例详细描述了优化位姿的过程,该方法可以应用于电子设备中,包括以下步骤:

在步骤301中,当预设事件未发生时,基于采集设备当前的运动数据及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。

在步骤302中,当预设事件发生时,基于采集设备采集的历史深度图像及当前一帧深度图像确定当前采集设备的位姿。

在步骤303中,获取历史深度图像中部分或全部关键帧图像作为目标图像。

在本实施例中,可以从预先存储的目标数据中获取目标图像,其中,目标数据中记录有历史深度图像中的关键帧图像。具体来说,可以通过如下方式存储得到目标数据:从采集设备采集的深度图像中确定首个关键帧图像。将首个关键帧图像存储记录到目标数据中,并在确定首个关键帧图像后,对采集设备依次采集的每一帧深度图像进行检测,以依次确定关键帧图像。其中,针对依次采集的任意一帧深度图像,若检测的结果指示该帧深度图像与前一帧关键帧图像(即,与该帧深度图像的采集时刻最邻近的关键帧图像)的视差大于预设视差,并且具有超过预设数量的匹配路标点,则确定该帧深度图像为关键帧图像。将依次确定的每帧关键帧图像依次存储记录到所述目标数据中。

在步骤304中,当预设事件未发生时,根据目标图像及采集设备当前的运动数据优化当前采集设备的位姿,得到目标位姿。

在本实施例中,当预设事件未发生时,可以根据目标图像及采集设备当前的运动数据优化当前采集设备的位姿。具体来说,以设置有双目相机以及imu的采集设备为例,首先可以对imu采集的当前运动数据进行预积分,从而根据预积分的结果确定当前的imu误差项。根据双目相机采集的目标图像,确定目标图像对应的特征重投影误差项。然后,基于当前的imu误差项以及目标图像对应的特征重投影误差项,获取第二目标函数。再根据待优化的当前采集设备的位姿确定约束条件。最后,采用lm(levenberg–marquardt,列文伯格-马夸尔特)算法,根据约束条件求解第二目标函数,从而得到目标位姿。

在步骤305中,当预设事件发生时,根据目标图像及当前一帧深度图像优化当前采集设备的位姿,得到目标位姿。

在本实施例中,当预设事件发生时,可以根据目标图像及当前一帧深度图像优化当前采集设备的位姿。具体来说,可以确定当前一帧深度图像中相对于目标图像的匹配路标点,获取该目标图像对应的位姿,根据当前一帧深度图像的深度信息以及目标图像对应的位姿确定当前采集设备的位姿。

在步骤306中,根据目标位姿构建地图。

需要说明的是,对于与图1和图2实施例中相同的步骤,在上述图3实施例中不再进行赘述,相关内容可参见图1和图2实施例。

本申请的上述实施例提供的地图的构建方法,在预设事件未发生时,根据采集设备当前的运动数据及该采集设备采集的当前一帧深度图像确定当前采集设备的位姿。在预设事件发生时,基于采集设备采集的历史深度图像及当前一帧深度图像确定当前采集设备的位姿。获取历史深度图像中部分或全部关键帧图像作为目标图像。在预设事件未发生时,根据目标图像及采集设备当前的运动数据优化当前采集设备的位姿,得到目标位姿。在预设事件发生时,根据目标图像及当前一帧深度图像优化当前采集设备的位姿,得到目标位姿,并根据目标位姿构建地图。由于本实施例能够在预设事件未发生和发生的情况下,均能根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到精度更高的目标位姿,并基于目标位姿构建地图,避免了采集设备采集的数据出现异常时,无法正常优化位姿的问题,进一步提高了地图构建的效率,也进一步提高了地图构建的精度。

应当注意,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

与前述地图的构建方法实施例相对应,本申请还提供了地图的构建装置的实施例。

如图4所示,图4是本申请根据一示例性实施例示出的一种地图的构建装置框图,该装置可以包括:确定模块401,优化模块402以及构建模块403。

其中,确定模块401,用于根据采集设备采集的当前一帧深度图像确定当前采集设备的位姿。

优化模块402,用于根据采集设备采集的历史深度图像优化当前采集设备的位姿,得到目标位姿。

构建模块403,用于根据目标位姿构建地图。

如图5所示,图5是本申请根据一示例性实施例示出的另一种地图的构建装置框图,该实施例在前述图4所示实施例的基础上,确定模块401可以包括:第一确定子模块501。

其中,第一确定子模块501,用于在预设事件未发生时,基于采集设备当前的运动数据及当前一帧深度图像确定当前采集设备的位姿。

如图6所示,图6是本申请根据一示例性实施例示出的另一种地图的构建装置框图,该实施例在前述图5所示实施例的基础上,确定模块401还可以包括:第二确定子模块502。

其中,第二确定子模块502,用于在预设事件发生时,基于采集设备采集的历史深度图像及当前一帧深度图像确定当前采集设备的位姿。

如图7所示,图7是本申请根据一示例性实施例示出的另一种地图的构建装置框图,该实施例在前述图4所示实施例的基础上,优化模块402可以包括:获取子模块701和优化子模块702。

其中,获取子模块701,用于获取历史深度图像中部分或全部关键帧图像作为目标图像。

优化子模块702,用于根据目标图像优化当前采集设备的位姿。

在一些可选实施方式中,获取子模块701被配置用于:从预先存储的目标数据中获取目标图像,其中,目标数据中记录有历史深度图像中的关键帧图像。

在另一些可选实施方式中,优化子模块702被配置用于:当预设事件未发生时,根据目标图像及采集设备当前的运动数据优化当前采集设备的位姿。

在另一些可选实施方式中,优化子模块702被配置用于:当预设事件发生时,根据目标图像及当前一帧深度图像优化当前采集设备的位姿。

应当理解,上述装置可以预先设置在电子设备或者服务器中,也可以通过下载等方式而加载到电子设备或者服务器中。上述装置中的相应模块可以与电子设备或者服务器中的模块相互配合以实现地图的构建方案。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本申请实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1至图3任一实施例提供的地图的构建方法。

对应于上述的地图的构建方法,本申请实施例还提出了图8所示的根据本申请的一示例性实施例的电子设备的示意结构图。请参考图8,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成地图的构建装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

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

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

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