信息处理方法、装置、电子设备及存储介质与流程

文档序号:26234654发布日期:2021-08-10 16:36阅读:118来源:国知局
信息处理方法、装置、电子设备及存储介质与流程

本公开涉及计算机视觉技术领域,具体而言,涉及一种信息处理方法、装置、电子设备及存储介质。



背景技术:

基于视觉的即时定位与地图构建(simultaneouslocalizationandmapping,slam),可以描述为机器人在未知环境中从一个未知位置开始移动,在移动过程中根据实时拍摄到的图像来估计自身定位,同时在自身定位的基础上实时构建地图。

由于多种原因,在基于slam技术进行实时定位过程中,会有较大的累计误差,导致在基于slam进行定位过程中出现偏差,通常可以结合预先构建的离线地图中特征点的定位信息对该偏差进行矫正。

在结合预先构建的离线地图中特征点的定位对该偏差进行矫正时,一般采用松耦合的方式进行矫正,比如将当前拍摄到的图像与离线地图中的特征点进行配准,然后直接将配准后的特征点在离线地图中的定位信息作为当前采集到的特征点的准确定位信息进行后续定位,该方式在矫正过程中会引入较大的误差,校准后的准确度不高。



技术实现要素:

本公开实施例至少提供一种信息处理方案。

本公开实施例提供了一种信息处理方法,包括:

获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子;

基于所述三维特征点的三维坐标和特征描述子,确定所述三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差;所述实时定位系统采集多帧第二场景图像的时刻晚于采集所述第一场景图像的时刻;

基于所述三维特征点在所述多帧第二场景图像中的第一重投影残差,对所述实时定位系统的定位结果进行校准。

本公开实施例中,通过实时定位系统采集的第一场景图像和预先构建的离线地图来获取第一场景图像中的多个二维特征点在离线地图中对应的三维特征点,这样可以得到第一场景图像中的各个二维特征点准确度较高的三维坐标,随着实时定位系统的移动,在实时定位结果出现偏差的情况下,通过三维特征点的准确度较高的三维坐标和特征描述子,可以确定三维特征点在实时定位系统采集的位于第一场景图像的后续多帧第二场景图像中的第一重投影残差,进一步借助该第一重投影残差,可以对实时定位系统的定位结果进行准确校准。

在一种可能的实施方式中,所述获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的多个三维特征点的三维坐标和特征描述子,包括:

基于所述第一场景图像和所述三维场景地图,确定所述实时定位系统在拍摄所述第一场景图像时的第一位姿数据;

基于所述第一位姿数据和所述第一场景图像中包含的多个二维特征点,确定所述三维场景地图中,与每个二维特征点匹配的三维特征点的三维坐标,并将该二维特征点在所述第一场景图像中的特征描述子作为所述匹配的三维特征点的特征描述子。

本公开实施例中,在基于第一场景图像和三维场景地图确定出实时定位系统在拍摄第一场景图像时第一位姿数据后,可以快速基于第一场景图像中的多个二维特征点,准确地提取到用于进行跟踪的三维特征点。

在一种可能的实施方式中,所述基于所述三维特征点的三维坐标和特征描述子,确定所述三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差,包括:

针对进入预先构建的滑动窗口中的每帧第二场景图像,获取针对该帧第二场景图像的目标跟踪特征点对;所述目标跟踪特征点对是基于所述滑动窗口中位于该帧第二场景图像之前的至少一帧历史第二场景图像、所述三维特征点的三维坐标和特征描述子确定的;其中,每个所述目标跟踪特征点对中包含所述历史第二场景图像中一个所述二维特征点及其对应的所述三维特征点;

基于所述滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的所述目标跟踪特征点对、以及所述实时定位系统采集该帧第二场景图像时的第二位姿数据,确定所述三维特征点在所述多帧第二场景图像中的第一重投影残差。

本公开实施例中,通过预先构建的三维场景地图,可以引入与实时定位系统拍摄的第一场景图像中的二维特征点匹配度较高的三维特征点,基于此可以在实时定位系统拍摄的多个第二场景图像中对这些三维特征点进行跟踪,从而确定三维特征点在多帧第二场景图像中准确度较高的第一重投影残差。

在一种可能的实施方式中,针对任一帧所述第二场景图像,按照以下方式确定所述目标跟踪特征点对:

基于所述三维特征点的三维坐标和所述实时定位系统拍摄所述历史第二场景图像时的第二位姿数据,确定所述三维特征点在所述历史第二场景图像中对应的二维投影坐标;

针对所述历史第二场景图像中的每个二维投影坐标,在所述历史第二场景图像中搜索与所述二维投影坐标之间的距离小于预设搜索半径的候选二维特征点;

基于所述二维投影坐标对应的三维特征点的特征描述子,和与所述二维投影坐标关联的每个候选二维特征点的特征描述子,确定与所述二维投影坐标对应的初始二维特征点;

将每个所述二维投影坐标对应的三维特征点和初始二维特征点作为一组候选跟踪特征点对,得到多组候选跟踪特征点对;

基于所述多组候选跟踪特征点对中不同候选跟踪点对确定所述实时定位系统的位姿数据,并根据确定的多个位姿数据,确定所述目标跟踪特征点对。

本公开实施例中,首先通过投影的方式,初步选择用于进行跟踪的多组候选跟踪特征点对,进一步再按照多组候选跟踪特征点对确定的实时定位系统的位姿数据,进一步筛选准确度较高的目标跟踪特征点对。

在一种可能的实施方式中,所述基于所述滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的所述目标跟踪特征点对、以及所述实时定位系统采集该帧第二场景图像时的第二位姿数据,确定所述三维特征点在所述多帧第二场景图像中的第一重投影残差,包括:

基于该帧第二场景图像对应的目标跟踪特征点对中的每个三维特征点的三维坐标、和该帧第二场景图像对应的第二位姿数据,确定该三维特征点在该帧第二场景图像中对应的二维投影坐标;

基于该三维特征点对应的二维投影坐标和与所述目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差;

对所述滑动窗口中的多帧第二场景图像分别对应的目标跟踪特征点中的三维特征点的第一重投影残差进行求和,得到所述三维特征点在所述多帧第二场景图像中的第一重投影残差。

本公开实施例中,通过对每个三维特征点在各帧第二场景图像中的第一重投影残差进行求和,可以得到三维特征点在多帧第二场景图像中的第一重投影残差,为后续对实时定位系统的定位结果进行校准提供便利。

在一种可能的实施方式中,在基于该三维特征点对应的二维投影坐标和与所述目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差之前,所述信息处理方法还包括:

获取该三维特征点在所述三维场景地图中的第一权重,所述第一权重是基于该三维特征点在所述三维场景地图中的语义信息确定的;

基于该三维特征点在所述滑动窗口内的跟踪帧数,确定该三维特征点的第二权重;

所述基于该三维特征点对应的二维投影坐标和与所述目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差,包括:

将该三维特征点对应的所述二维投影坐标和与所述目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标的差值,作为该三维特征点在该帧第二场景图像中对应的初始第一重投影残差;

基于该三维特征点的所述第一权重和所述第二权重对所述初始第一重投影残差进行调整,得到该三维特征点在该帧第二场景图像中对应的第一重投影残差。

本公开实施例中,可以基于目标跟踪特征点对中的三维特征点在三维场景地图中的语义信息以及三维特征点在滑动窗口内的跟踪帧数在滑动窗口内的跟踪帧数,对三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差进行调整,以得到更加准确的第一重投影残差,便于对实时定位系统的定位结果进行准确校准。

在一种可能的实施方式中,在基于所述三维特征点在所述多帧第二场景图像中的第一重投影残差,对所述实时定位系统的定位结果进行校准之前,所述信息处理方法还包括:

获取根据移出所述滑动窗口外的至少一帧第二场景图像确定的先验残差、根据所述滑动窗口中的多帧第二场景图像确定的惯性残差、以及基于所述滑动窗口内的多帧第二场景图像确定的第二重投影残差;

所述基于所述三维特征点在所述多帧第二场景图像中的第一重投影残差,对所述实时定位系统的定位结果进行校准,包括:

对所述实时定位系统在拍摄所述滑动窗口中的每帧第二场景图像时的第二位姿数据进行调整,直至所述先验残差、所述惯性残差、所述第一重投影残差和所述第二重投影残差之间的总和达到最小时,得到校准后的定位结果;

其中,所述校准后的定位结果包括所述实时定位系统在拍摄所述滑动窗口中的每帧第二场景图像时的校准后位姿数据。

本公开实施例中,通过多种方式共同对实时定位系统的定位结果进行校准,以提高定位结果校准的准确度。

在一种可能的实施方式中,所述信息处理方法还包括:

在检测到存在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,基于所述实时定位系统拍摄的当前第二场景图像和预先构建的所述三维场景地图,确定所述实时定位系统的当前第一位姿数据;

通过所述当前第一位姿数据替换所述实时定位系统拍摄的当前第二场景图像时的第二位姿数据,得到所述实时定位系统在当前时刻的校准后位姿数据。

在一种可能的实施方式中,按照以下方式确定针对任一帧第二场景图像对应的第二位姿数据存在调整失效的情况:

检测到所述任一帧第二场景图像对应的超过设定数量的目标跟踪特征点对中的三维特征点的初始第一重投影残差大于预设残差阈值;所述初始第一重投影残差基于三维特征点在所述任一帧第二场景图像中的二维投影坐标和该三维特征点对应的二维投影点的二维坐标确定;和/或,

检测到所述超过设定数量的目标跟踪特征点对中的同一三维特征点的第一权重和第二权重的乘积小于预设乘积阈值。

在一种可能的实施方式中,在获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子之前,所述信息处理方法还包括:

响应于预设触发条件,所述预设触发条件包括以下一种或多种:

当前时刻与所述实时定位系统上一次采集三维特征点的三维坐标和特征描述子之间的时间间隔达到预设时间间隔、针对连续设定帧的第二场景图像对应的第二位姿数据调整失效、接收到触发获取所述三维特征点的触发指令。

本公开实施例中,在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,还可以采用松耦合的方式对实时定位系统的定位结果进行校准,以提高实时定位系统的定位结果的准确度。

在一种可能的实施方式中,所述实时定位系统设置于ar设备中,在对所述实时定位系统的定位结果进行校准后,所述信息处理方法还包括:

基于校准后的定位结果以及虚拟对象在所述三维场景地图中的位姿数据,获取与所述校准后的定位结果对应的虚拟对象的呈现特效信息;

基于所述呈现特效信息,通过所述ar设备展示ar场景图像。

本公开实施例中,通过对实时定位系统的定位结果进行校准,可以提高实时定位系统定位结果的准确度,从而在应用于增强现实场景中时,能够展示出准确度较高、且稳定性较高的ar场景图像。

本公开实施例还提供了一种信息处理装置,包括:

获取模块,用于获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子;

确定模块,用于基于所述三维特征点的三维坐标和特征描述子,确定所述三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差;所述实时定位系统采集多帧第二场景图像的时刻晚于采集所述第一场景图像的时刻;

校准模块,用于基于所述三维特征点在所述多帧第二场景图像中的第一重投影残差,对所述实时定位系统的定位结果进行校准。

第三方面,本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面所述的信息处理方法的步骤。

第四方面,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述的信息处理方法的步骤。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开实施例所提供的一种信息处理方法的流程图;

图2示出了本公开实施例所提供的一种确定第一重投影残差的方法流程图;

图3示出了本公开实施例所提供的一种针对实时定位系统的定位结果进行校准的方法流程图;

图4示出了本公开实施例所提供的一种ar场景图像的展示方法流程图;

图5示出了本公开实施例所提供的一种信息处理装置的示意图;

图6示出了本公开实施例所提供的一种电子设备的示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。

本公开提供了一种信息处理方法,通过实时定位系统,比如即时定位与地图构建(simultaneouslocalizationandmapping,slam)系统采集的第一场景图像和预先构建的离线地图来获取第一场景图像中的多个二维特征点在离线地图中对应的三维特征点,这样可以得到第一场景图像中的各个二维特征点准确度较高的三维坐标,随着实时定位系统的移动,在实时定位结果出现偏差的情况下,通过三维特征点的准确度较高的三维坐标和特征描述子,可以确定三维特征点在实时定位系统采集的位于第一场景图像的后续多帧第二场景图像中的第一重投影残差,进一步借助该第一重投影残差,对实时定位系统的定位结果进行准确校准。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种信息处理方法进行详细介绍,本公开实施例所提供的信息处理方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(userequipment,ue)、移动设备、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该信息处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

参见图1所示,为本公开实施例提供的信息处理方法的流程图,该信息处理方法包括以下步骤s101~s103:

s101,获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子。

示例性地,实时定位系统可以是融合相机和惯性测量单元采集的数据实现实时定位与地图构建的实时定位与地图构建(simultaneouslocalizationandmapping,slam)系统,也可以是融合相机和惯性测量单元采集的数据实现实时定位与建图的视觉惯性里程计(visual-inertialodometry,vio)系统。

示例性地,实时定位系统在确定定位结果的过程中,会引入一定的累计误差,从而导致实时定位系统的定位结果的不准确性,因此可以按照本公开实施例方式提供的信息处理方法对定位结果进行修正,以提高定位结果的准确度。

示例性地,第一场景图像中的二维特征点是指能够表征现实场景中一些特殊位置在图像中对应的位置点,比如一些建筑物的边缘位置上的点、顶点、不同物体之间相交的点等。

示例性地,二维特征点可以通过slam系统对应的特征点提取算法进行提取,比如可以通过尺度不变特征变换(scaleinvariantfeaturetransform,sift)算法、尺度不变特征变换算法(sift算法)的加速版surf算法、fast特征点提取算法等方式进行提取。

示例性地,第一场景图像中的二维特征点的特征描述子可以用来描述特征点的特征信息,具体可以通过尺度不变特征变换(scaleinvariantfeaturetransform,sift)算法提取得到,考虑到实时定位系统采集的第一场景图像和预先构建三维场景地图时使用的场景图像中同一特征点的特征描述子可能并不相同,本公开实施例提出二维特征点和匹配的三维特征点的特征描述子需要进行统一,具体将在后文进行阐述。

示例性地,在对实时定位系统的定位结果进行修正的过程中,考虑到实时定位系统在一段时间内采集的连续多帧场景图像中的一些二维特征点是重复的,因此可以每隔一段时间,按照当前采集的第一场景图像来获取用于在后续多帧第二场景图像中进行追踪的三维特征点,这里的第一场景图像是指用于进行获取三维特征点时采集的场景图像。

具体地,在获取实时定位系统采集的第一场景图像中的二维特征点在预先构建的三维场景地图中对应的多个三维特征点的三维坐标和特征描述子之前,信息处理方法还包括:

响应于预设触发条件,预设触发条件包括以下一种或多种:

(1)当前时刻与实时定位系统上一次采集多个三维特征点的三维坐标和特征描述子之间的时间间隔达到预设时间间隔;

(2)针对连续设定帧的第二场景图像对应的第二位姿数据调整失效;

(3)接收到触发获取多个三维特征点的触发指令。

针对上述第(1)种情况,可以预先设定采集三维特征点的时间间隔,比如预设时间间隔为10s,若当前时刻与实时定位系统上一次采集多个三维特征点的三维坐标和特征描述子之间的时间间隔达到10s,则触发上述s101步骤。

针对上述第(2)种情况,在获取到三维特征点后,会基于获取到的三维特征点确定用于进行跟踪的目标跟踪特征点对,具体确定过程将在后文进行阐述,在使用目标跟踪特征点对进行跟踪的过程中,可以基于目标跟踪特征点对中的三维特征点在每帧第二场景图像中的第一重投影误差,对实时定位系统的定位结果进行调整,如果无法获取到有效的目标跟踪特征点对,则无法使用目标跟踪特征点对针对实时定位系统的定位结果进行调整,此时需要重新获取三维特征点,便于后续重新获取有效的目标跟踪点对。

针对上述第(3)种情况,实时定位系统上可以设置有触发目标车辆开始对单应性矩阵进行修正的软件按键或者物理按键,在需要对实时定位系统的定位结果进行修正的情况下,用户可以触发该标定按键,以触发获取多个三维特征点的触发指令。

或者,实时定位系统上还可以设置有与云端或者服务器保持通信连接的通信系统,可以在通过该通信系统接收到云端或者服务器发送的获取多个三维特征点的触发指令。

本公开实施例中,提供了多种触发对实时定位系统的定位结果进行修正的方式,以灵活应用于多种使用场景。

s102,基于三维特征点的三维坐标和特征描述子,确定三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差;实时定位系统采集多帧第二场景图像的时刻晚于采集第一场景图像的时刻。

示例性地,多帧第二场景图像是位于本次采集第一场景图像后采集到的场景图像,比如本次用于获取三维特征点的第一场景图像是10:01采集到的,多帧第二场景图像是位于10:00:00后采集到的场景图像,比如可以包含10:00:01~10:00:10期间每隔1s采集到的10帧第二场景图像。

示例性地,第一场景图像和多帧第二场景图像之间包含多个相同的二维特征点,这些二维特征点在三维场景地图中的三维坐标是相同的,基于此,可以在根据第一场景图像获取到多个二维特征点在三维场景地图中的三维坐标后,基于实时定位系统在采集多帧第二场景图像中的每帧第二场景图像时的第二位姿数据,将多个二维特征点对应的三维特征点投影在每帧第二场景图像中,然后基于每个三维特征点对应的二维投影坐标和特征描述子,确定该三维特征点在第二场景图像中对应的二维特征点,该三维特征点在第二场景图像中对应的二维特征点的二维坐标和该三维投影点对应的二维投影坐标之间的偏差可以作为第一重投影残差。

s103,基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准。

示例性地,考虑到在实时定位系统的定位结果存在误差的情况下,第一重投影残差不为0,可以通过调整第一重投影残差对实时定位系统的定位结果进行校准。

本公开实施例中,通过实时定位系统采集的第一场景图像和预先构建的离线地图来获取第一场景图像中的多个二维特征点在离线地图中对应的三维特征点,这样可以得到第一场景图像中的各个二维特征点准确度较高的三维坐标,随着实时定位系统的移动,在实时定位结果出现偏差的情况下,通过三维特征点的准确度较高的三维坐标和特征描述子,可以确定三维特征点在实时定位系统采集的位于第一场景图像的后续多帧第二场景图像中的第一重投影残差,进一步借助该第一重投影残差,对实时定位系统的定位结果进行准确校准。

下面将结合具体实施例对上述s101~s103进行具体阐述。

针对上述s101,在获取实时定位系统采集的第一场景图像中的二维特征点在预先构建的三维场景地图中对应的多个三维特征点的三维坐标和特征描述子时,包括以下s1011~s1012:

s1011,基于第一场景图像和三维场景地图,确定实时定位系统在拍摄第一场景图像时的第一位姿数据。

示例性地,三维场景地图可以根据预先拍摄的多张现实场景样本图像构建得到,在构建三维场景地图时,可以记录每张现实场景样本图像的拍摄位姿数据,这样在获取到第一场景图像后,可以查找与第一场景图像相似度高于阈值的目标现实场景样本图像,基于目标现实场景样本图像对应的拍摄位姿数据,确定实时定位系统在拍摄第一场景图像时的第一位姿数据。

s1012,基于第一位姿数据和第一场景图像中包含的多个二维特征点,确定三维场景地图中,与每个二维特征点匹配的三维特征点的三维坐标,并将该二维特征点在第一场景图像中的特征描述子作为匹配的三维特征点的特征描述子。

示例性地,可以使用光线投射算法(raycasting),根据第一定位位姿数据和预先构建的三维场景地图,确定多个二维特征点分别对应的三维特征点,比如,可以根据实时定位系统的第一定位位姿数据和多个二维特征点在第一场景图像中的二维坐标,确定三维场景地图中与每个二维特征点匹配的三维特征点,其中,二维特征点在第一场景图像中的二维坐标可以为二维特征点在第一场景图像对应的图像坐标系下的坐标,三维特征点的三维坐标可以为三维特征点在三维场景地图对应的世界坐标系下的坐标。

本公开实施例中,在基于第一场景图像和三维场景地图确定出实时定位系统在拍摄第一场景图像时第一位姿数据后,可以快速基于第一场景图像中的多个二维特征点,准确地提取到用于进行跟踪的三维特征点。

针对上述s102,在基于三维特征点的三维坐标和特征描述子,确定三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差时,包括以下s1021~s1022:

s1021,针对进入预先构建的滑动窗口中的每帧第二场景图像,获取针对该帧第二场景图像的目标跟踪特征点对;目标跟踪特征点对是基于滑动窗口中位于该帧第二场景图像之前的至少一帧历史第二场景图像、三维特征点的三维坐标和特征描述子确定的;其中,每个目标跟踪特征点对中包含历史第二场景图像中一个二维特征点及其对应的三维特征点。

示例性地,滑动窗口中可以动态地包含设定帧的第二场景图像,比如包含10帧第二场景图像,随着实时定位系统不断采集第二场景图像,不断有最新采集到的第二场景图像滑入滑动窗口,同时有历史采集到的第二场景图像滑出滑动窗口。

针对任一帧第二场景图像,可以按照以下方式确定目标跟踪特征点对,具体包括以下s10211~s10215:

s10211,基于三维特征点的三维坐标和实时定位系统拍摄历史第二场景图像时的第二位姿数据,确定三维特征点在历史第二场景图像中对应的二维投影坐标。

示例性地,实时定位系统拍摄历史第二场景图像时的第二位姿数据是实时定位系统根据多帧场景图像预测的待调整的位姿数据。

示例性地,比如当前第二场景图像是滑动窗口中的第n帧场景图像,任一帧历史第二场景图像可以为滑动窗口中的第1帧场景图像至第n-1帧场景图像中任一帧场景图像,以其中任一帧第二场景图像为例,可以根据预先获取到的三维特征点的三维坐标,和实时定位系统拍摄该任一帧历史第二场景图像时确定的第二位姿数据,可以根据如下投影公式(1)确定三维特征点在任一帧历史第二场景图像中对应的二维投影坐标:

xi=π(k*t*xi)(1);

其中,xi表示多个三维特征点中第i个三维特征点在拍摄该任一帧历史第二场景图像对应的图像坐标系中的二维投影坐标;π表示投影方程;k表示实时定位系统中用于采集场景图像的相机的内参;xi表示多个三维特征点中第i个三维特征点的三维坐标。

s10212,针对历史第二场景图像中的每个二维投影坐标,在历史第二场景图像中搜索与二维投影坐标之间的距离小于预设搜索半径的候选二维特征点。

示例性地,按照s10211步骤可以得到多个三维特征点中每个三维特征点对应的二维投影坐标,特别地,有些二维投影坐标指示的位置点并不位于该任一帧历史第二场景图像中,这类二维投影坐标可以直接进行过滤,仅保留位于该任一帧历史第二场景图像中的每个二维投影坐标。

示例性地,预设搜索半径可以根据经验设定,考虑到三维特征点是基于第一场景图像中的多个二维特征点获取到的,且本次定位调整过程中的第二场景图像和第一场景图像之间的采集时间间隔较短,因此第一场景图像中和该任一帧历史第二场景图像中存在一定数量相同的二维特征点,在第二位姿数据不准确的情况下,三维特征点对应的二维投影坐标和三维特征点在该任一历史第二场景图像中对应的二维特征点之间存在一定的偏差,因此可以基于预设搜索半径来搜索与每个二维投影坐标之间的距离小于预设搜索半径的候选二维特征点。

s10213,基于二维投影坐标对应的三维特征点的特征描述子,和与二维投影坐标关联的每个候选二维特征点的特征描述子,确定与二维投影坐标对应的初始二维特征点。

示例性地,针对其中一个二维投影坐标,按照上述s10212步骤的方式,获取到的与该二维投影坐标之间的距离小于预设搜索半径的候选二维特征点可能包含多个,此时可以根据上述确定的三维特征点的特征描述子,以及多个候选二维特征点的特征描述子,选择与该三维特征点最相似的二维特征点,作为与二维投影坐标对应的初始二维特征点。

s10214,将每个二维投影坐标对应的三维特征点和初始二维特征点作为一组候选跟踪特征点对,得到多组候选跟踪特征点对。

s10215,基于所述多组候选跟踪特征点对中不同候选跟踪点对确定所述实时定位系统的位姿数据,并根据确定的多个位姿数据,确定所述目标跟踪特征点对。

示例性地,在得到多组候选跟踪特征点对后,考虑到可能存在一些偏差较大的候选跟踪特征点对,可以将这部分偏差较大的候选更新特征点对称为外点,需要筛选出的可以用于进行跟踪的特征点对称为内点,即这里的目标跟踪特征点对。

具体地,可以将多组候选跟踪特征点对分成多个小组,每个小组包含不同候选跟踪点对,可以通过一些预设算法,比如可以使用pnp算法通过每个小组包含的不同候选跟踪点对确定实时定位系统的位姿数据,进一步基于确定的多个位姿数据,确定所述目标跟踪特征点对。

本公开实施例中,首先通过投影的方式,初步选择用于进行跟踪的多组候选跟踪特征点对,进一步再按照多组候选跟踪特征点对确定的实时定位系统的位姿数据,进一步筛选准确度较高的目标跟踪特征点对。

s1022,基于滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的目标跟踪特征点对、以及实时定位系统采集该帧第二场景图像时的第二位姿数据,确定三维特征点在多帧第二场景图像中的第一重投影残差。

示例性地,针对滑入滑动窗口内的每帧第二场景图像,可以按照该帧第二场景图像对应的目标跟踪特征点对中的三维特征点的三维坐标和该帧第二场景图像对应的第二位姿数据,确定目标跟踪特征点对中的任一三维特征点i在该帧第二场景图像中的二维投影坐标,然后结合目标特征点对中与该三维特征点i对应的二维特征点在该帧第二场景图像中的二维坐标,可以确定三维特征点i的二维投影坐标和该三维特征点i对应的二维特征点的二维坐标之间的差值,该差值可以作为三维特征点i对应的第一重投影残差,按照这样的方式可以确定出该第二帧场景图像对应的目标跟踪特征点对中的所有三维特征点在该帧第二场景图像中的第一重投影残差。

本公开实施例中,通过预先构建的三维场景地图,可以引入与实时定位系统拍摄的第一场景图像中的二维特征点匹配度较高的三维特征点,基于此可以在实时定位系统拍摄的多个第二场景图像中对这些三维特征点进行追踪,从而确定三维特征点在多帧第二场景图像中准确度较高的第一重投影残差。

具体地,针对上述s1022,在基于滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的目标跟踪特征点对、以及实时定位系统采集该帧第二场景图像时的第二位姿数据,确定三维特征点在多帧第二场景图像中的第一重投影残差时,如图2所示,可以包括以下s201~s203:

s201,基于该帧第二场景图像对应的目标跟踪特征点对中的每个三维特征点、和该帧第二场景图像对应的第二位姿数据,确定该三维特征点在该帧第二场景图像中对应的二维投影坐标。

示例性地,以滑动窗口中的其中一帧第二场景图像对应的目标跟踪点对中的三维特征点i为例,可以按照投影公式确定出三维特征点i在该帧第二场景图像中对应的二维投影坐标。

s202,基于该三维特征点对应的二维投影坐标和与该目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差。

示例性地,该目标跟踪特征点对中的二维特征点在当前第二场景图像中的二维坐标可以通过对二维特征点进行跟踪的方式确定,比如可以根据该二维特征点的特征描述子,对该二维特征点进行跟踪,从而确定该二维特征点在当前第二场景图像中的二维坐标。

s203,对滑动窗口中的多帧第二场景图像分别对应的目标跟踪特征点对中的三维特征点的第一重投影残差进行求和,得到三维特征点在多帧第二场景图像中的第一重投影残差。

示例性地,这里可以按照以下公式(2)确定三维特征点在多帧第二场景图像中的第一重投影残差:

其中,ecloud表示三维特征点在多帧第二场景图像中的第一重投影残差;n表示多帧第二场景图像的帧数;i表示多帧第二场景图像中第i帧第二场景图像;m表示基于第一场景图像中的多个二维特征点获取到的三维特征点的数量;j表示获取到的三维特征点中的第j个三维特征点;ρ为鲁棒核函数;ti表示实时定位系统拍摄第i帧第二场景图像时的第二位姿数据;xj表示第j个三维特征点的三维坐标;xij表示第j个三维特征点对应的二维特征点在第i帧第二场景图像中的二维坐标。

本公开实施例中,通过对每个三维特征点在各帧第二场景图像中的第一重投影残差进行求和,可以得到三维特征点在多帧第二场景图像中的第一重投影残差,为后续对实时定位系统的定位结果进行校准提供便利。

在另一种可能的实施方式中,在基于该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差之前,本公开实施例提供信息处理方法还包括以下步骤s2021~s2022:

s2021,获取该三维特征点在三维场景地图中的第一权重,第一权重是基于该三维特征点在三维场景地图中的语义信息确定的。

示例性地,可以预先确定三维场景地图中各三维特征点在三维场景地图中的语义信息,可以预先设定不同语义信息对应的权重,比如属于在三维场景地图中位置信息不变的语义信息对应的权重大于在三维场景地图中位置信息变化的语义信息对应的权重,比如类别为建筑物的权重大于类别为树叶的权重。

示例性地,除了可以根据语义信息确定第一权重外,还可以结合三维特征点在三维场景地图中的位置信息来确定,比如建筑物中边缘位置的权重大于非边缘位置的权重。

s2022,基于该三维特征点在滑动窗口内的跟踪帧数,确定该三维特征点的第二权重。

示例性地,三维特征点在滑动窗口内的跟踪帧数越多,可以该三维特征点对应的第二权重越大,预先可以设定跟踪帧数和权重之间的映射关系,这样可以基于三维特征点在滑动窗口内的跟踪帧数,以及预先设定的映射关系,确定该三维特征点的第二权重。

进一步地,针对上述s202,在基于该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差时,包括以下s2023~s2024:

s2023,将该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标的差值,作为该三维特征点在该帧第二场景图像中对应的初始第一重投影残差;

s2024,基于该三维特征点的第一权重和第二权重对初始第一重投影残差进行调整,得到该三维特征点在该帧第二场景图像中对应的第一重投影残差。

示例性地,每个三维特征点的第一权重和第二权重可以对该三维特征点对应的初始第一重投影残差进行调整,按照以下公式(3)可以确定三维特征点在多帧第二场景图像中的第一重投影残差ecloud:

其中,w1(j)表示第j个三维特征点在追踪过程中的第一权重,w2(j)表示第j个三维特征点在跟踪过程中的第二权重。

本公开实施例中,可以基于目标跟踪特征点对中的三维特征点在三维场景地图中的语义信息以及三维特征点在滑动窗口内的跟踪帧数在滑动窗口内的跟踪帧数,对三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差进行调整,以得到更加准确的第一重投影残差,便于对实时定位系统的定位结果进行准确校准。

在一种实施方式中,在基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准之前,本公开实施例提供的信息处理方法还包括:

获取根据移出滑动窗口外的至少一帧第二场景图像确定的先验残差、根据滑动窗口中的多帧第二场景图像确定的惯性残差、以及基于滑动窗口内的多帧第二场景图像确定的第二重投影残差。

示例性地,在针对实时定位系统的定位结果进行调整的过程中,如果仅仅从相邻两帧图像来确定,其速度虽快但是精度较低,而如果采用全局优化的方法,其精度高但是效率低,因此引入了滑窗窗口的方式,每次对固定数量的第二场景图像进行优化操作,这样可以提高精度的同时又可以提高效率,但是,在滑动的过程中必然会有新的图像帧进来以及旧的图像帧离开,为了能够有效利用利用滑动窗口的第二场景图像,因此提出边缘化的方式,基于移出滑动窗口外的至少一帧第二场景图像确定的先验残差。

示例性地,实时定位系统还可以包含惯性测量单元(inertialmeasurementunit,imu),imu可以基于滑动窗口中相邻两帧第二场景图像确定出用于表示相对状态变化量的惯性残差,相对状态变化量可以包含相对旋转量、相对速度、相对平移等。

示例性地,实时定位系统还可以基于滑动窗口中的多帧第二场景图像,采用三角化的方式,筛选三维特征点,进一步确定基于三角化的方式确定出的三维特征点对应的第二重投影残差。

具体地,针对上述s103,在基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准时,包括:

对实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的第二位姿数据进行调整,直至先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和达到最小时,得到校准后的定位结果;

其中,校准后的定位结果包括实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的校准后位姿数据。

示例性地,可以基于以下公式(4)来进行表示先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和:

其中,e表示先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和;χ表示待调整参数,该待调整参数中包含实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的第二位姿数据;emargin表示先验残差;eimu表示惯性残差;elocal表示第二重投影残差。

示例性地,可以通过对实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的第二位姿数据进行不断调整,使得先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和达到最小后,得到实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的校准后位姿数据。

本公开实施例中,通过多种方式共同对实时定位系统的定位结果进行校准,以提高定位结果校准的准确度。

在另一种实施方式中,如图3所示,本公开实施例提供的信息处理方法还包括以下s301~s302:

s301,在检测到存在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,基于实时定位系统拍摄的当前第二场景图像和预先构建的三维场景地图,确定实时定位系统的当前第一位姿数据。

具体可以按照以下方式确定针对任一帧第二场景图像对应的第二位姿数据存在调整失效的情况:

检测到任一帧第二场景图像对应的超过设定数量的目标跟踪特征点对中的三维特征点的初始第一重投影残差大于预设残差阈值;其中,初始第一重投影残差基于三维特征点在任一帧第二场景图像中的二维投影坐标和该三维特征点对应的二维投影点的二维坐标确定;和/或,

检测到超过设定数量的目标跟踪特征点对中的同一三维特征点的第一权重和第二权重的乘积小于预设乘积阈值。

示例性地,在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,无法通过上述公式(4)的方式调整使得先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和收敛,此时可以采用松耦合的方式对实时定位系统的定位结果进行校准。

示例性地,在采用松耦合的方式对实时定位系统的定位结果进行校准的过程中,可以基于实时定位系统拍摄的当前第二场景图像和预先构建的三维场景地图,确定实时定位系统的当前第一位姿数据,具体方式可以详见上述确定实时定位系统的第一位姿数据的方式,在此不再赘述。

s302,通过当前第一位姿数据替换实时定位系统拍摄的当前第二场景图像时的第二位姿数据,得到实时定位系统在当前时刻的校准后位姿数据。

本公开实施例中,在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,还可以采用松耦合的方式对实时定位系统的定位结果进行校准,以提高实时定位系统的定位结果的准确度。

本公开实施例提供的针对实时定位系统的定位结果进行校准的应用场景可以包含多种,比如可以用于对机器人进行定位,可以应用于增强现实(augmentedreality,ar)领域,在一种实施方式中,实时定位系统设置于ar设备中,在对实时定位系统的定位结果进行校准后,如图4所示,本公开实施例提供的信息处理方法还包括以下s401~s402:

s401,基于校准后的定位结果以及虚拟对象在三维场景地图中的位姿数据,获取与校准后的定位结果对应的虚拟对象的呈现特效信息;

s402,基于呈现特效信息,通过ar设备展示ar场景图像。

示例性地,ar设备可以为任何能够支持ar功能的电子设备,包括但不限于ar眼镜、平板电脑、智能手机等。当ar设备在现实场景中被操作时,通过该ar设备可以观看到叠加在现实场景中的虚拟对象。

示例性地,三维场景地图用于表征现实场景,与现实场景在相同坐标系是等比例呈现的,比如以现实场景为某条街道场景为例,该街道包含一栋高楼,则表征该现实场景的三维场景地图同样包括该条街道的模型以及该条街道中的该栋高楼,且三维场景地图与现实场景在相同坐标系中是按照1:1呈现的,即若将三维场景地图放入该现实场景所在的世界坐标系中,则该三维场景地图会与该现实场景完全重合。

示例性地,虚拟对象例如为在现实场景中展现的虚拟物体,比如虚拟人物、虚拟文字信息、虚拟指示标志等。

示例性地,现实场景可以是建筑物室内场景、街道场景、具体的物体等能够叠加虚拟对象的现实场景,通过在现实场景中叠加虚拟对象,可以在ar设备中呈现增强现实的效果。

示例性地,这里ar设备展示的ar场景图像为与拍摄位姿数据对应的虚拟对象在现实场景中的呈现特效信息与现实场景叠加后的景象。

本公开实施例中,通过对实时定位系统的定位结果进行校准,可以提高实时定位系统定位结果的准确度,从而在应用于增强现实场景中时,能够展示出准确度较高、且稳定性较高的ar场景图像。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一技术构思,本公开实施例中还提供了与信息处理方法对应的信息处理装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述信息处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图5所示,为本公开实施例提供的一种信息处理装置500的示意图,该信息处理装置包括:

获取模块501,用于获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的多个三维特征点的三维坐标和特征描述子;

确定模块502,用于基于三维特征点的三维坐标和特征描述子,确定三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差;实时定位系统采集多帧第二场景图像的时刻晚于采集第一场景图像的时刻;

校准模块503,用于基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准。

在一种可能的实施方式中,获取模块501在用于获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子时,包括:

基于第一场景图像和三维场景地图,确定实时定位系统在拍摄第一场景图像时的第一位姿数据;

基于第一位姿数据和第一场景图像中包含的多个二维特征点,确定三维场景地图中,与每个二维特征点匹配的三维特征点的三维坐标,并将该二维特征点在第一场景图像中的特征描述子作为匹配的三维特征点的特征描述子。

在一种可能的实施方式中,确定模块502在用于基于三维特征点的三维坐标和特征描述子,确定三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差时,包括:

针对进入预先构建的滑动窗口中的每帧第二场景图像,获取针对该帧第二场景图像的目标跟踪特征点对;目标跟踪特征点对是基于滑动窗口中位于该帧第二场景图像之前的至少一帧历史第二场景图像、三维特征点的三维坐标和特征描述子确定的;其中,每个目标跟踪特征点对中包含历史第二场景图像中一个二维特征点及其对应的三维特征点;

基于滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的目标跟踪特征点对、以及实时定位系统采集该帧第二场景图像时的第二位姿数据,确定三维特征点在多帧第二场景图像中的第一重投影残差。

在一种可能的实施方式中,针对任一帧第二场景图像,确定模块502用于按照以下方式确定目标跟踪特征点对:

基于三维特征点的三维坐标和实时定位系统拍摄历史第二场景图像时的第二位姿数据,确定三维特征点在历史第二场景图像中对应的二维投影坐标;

针对历史第二场景图像中的每个二维投影坐标,在历史第二场景图像中搜索与二维投影坐标之间的距离小于预设搜索半径的候选二维特征点;

基于二维投影坐标对应的三维特征点的特征描述子,和与二维投影坐标关联的每个候选二维特征点的特征描述子,确定与二维投影坐标对应的初始二维特征点;

将每个二维投影坐标对应的三维特征点和初始二维特征点作为一组候选跟踪特征点对,得到多组候选跟踪特征点对;

基于多组候选跟踪特征点对中不同候选跟踪点对确定实时定位系统的位姿数据,并根据确定的多个位姿数据,确定目标跟踪特征点对。

在一种可能的实施方式中,确定模块502在用于基于滑动窗口中的每帧第二场景图像、该帧第二场景图像对应的目标跟踪特征点对、以及实时定位系统采集该帧第二场景图像时的第二位姿数据,确定三维特征点在多帧第二场景图像中的第一重投影残差时,包括:

基于该帧第二场景图像对应的目标跟踪特征点对中的每个三维特征点的三维坐标、和该帧第二场景图像对应的第二位姿数据,确定该三维特征点在该帧第二场景图像中对应的二维投影坐标;

基于该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差;

对滑动窗口中的多帧第二场景图像分别对应的目标跟踪特征点中的三维特征点的第一重投影残差进行求和,得到三维特征点在多帧第二场景图像中的第一重投影残差。

在一种可能的实施方式中,在基于该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差之前,确定模块502还用于:

获取该三维特征点在三维场景地图中的第一权重,第一权重是基于该三维特征点在三维场景地图中的语义信息确定的;

基于该三维特征点在滑动窗口内的跟踪帧数,确定该三维特征点的第二权重;

确定模块502在用于基于该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标,确定该三维特征点在该帧第二场景图像中对应的第一重投影残差时,包括:

将该三维特征点对应的二维投影坐标和与目标跟踪特征点对中与该三维特征点对应的二维特征点在该帧第二场景图像中的二维坐标的差值,作为该三维特征点在该帧第二场景图像中对应的初始第一重投影残差;

基于该三维特征点的第一权重和第二权重对初始第一重投影残差进行调整,得到该三维特征点在该帧第二场景图像中对应的第一重投影残差。

在一种可能的实施方式中,在基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准之前,校准模块503还用于:

获取根据移出滑动窗口外的至少一帧第二场景图像确定的先验残差、根据滑动窗口中的多帧第二场景图像确定的惯性残差、以及基于滑动窗口内的多帧第二场景图像确定的第二重投影残差;

校准模块503在用于基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准时,包括:

对实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的第二位姿数据进行调整,直至先验残差、惯性残差、第一重投影残差和第二重投影残差之间的总和达到最小时,得到校准后的定位结果;

其中,校准后的定位结果包括实时定位系统在拍摄滑动窗口中的每帧第二场景图像时的校准后位姿数据。

在一种可能的实施方式中,校准模块503还用于:

在检测到存在针对连续设定帧的第二场景图像对应的第二位姿数据调整失效的情况下,基于实时定位系统拍摄的当前第二场景图像和预先构建的三维场景地图,确定实时定位系统的当前第一位姿数据;

通过当前第一位姿数据替换实时定位系统拍摄的当前第二场景图像时的第二位姿数据,得到实时定位系统在当前时刻的校准后位姿数据。

在一种可能的实施方式中,校准模块503用于按照以下方式确定针对任一帧第二场景图像对应的第二位姿数据存在调整失效的情况:

检测到任一帧第二场景图像对应的超过设定数量的目标跟踪特征点对中的三维特征点的初始第一重投影残差大于预设残差阈值;初始第一重投影残差基于三维特征点在任一帧第二场景图像中的二维投影坐标和该三维特征点对应的二维投影点的二维坐标确定;和/或,

检测到超过设定数量的目标跟踪特征点对中的同一三维特征点的第一权重和第二权重的乘积小于预设乘积阈值。

在一种可能的实施方式中,在获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子之前,获取模块501还用于:

响应于预设触发条件,预设触发条件包括以下一种或多种:

当前时刻与实时定位系统上一次采集三维特征点的三维坐标和特征描述子之间的时间间隔达到预设时间间隔、针对连续设定帧的第二场景图像对应的第二位姿数据调整失效、接收到触发获取三维特征点的触发指令。

在一种可能的实施方式中,实时定位系统设置于ar设备中,信息处理装置还包括展示模块504,在校准模块503对实时定位系统的定位结果进行校准后,展示模块504用于:

基于校准后的定位结果以及虚拟对象在三维场景地图中的位姿数据,获取与校准后的定位结果对应的虚拟对象的呈现特效信息;

基于呈现特效信息,通过ar设备展示ar场景图像。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

对应于图1中的信息处理方法,本公开实施例还提供了一种电子设备600,如图6所示,为本公开实施例提供的电子设备600结构示意图,包括:

处理器61、存储器62、和总线63;存储器62用于存储执行指令,包括内存621和外部存储器622;这里的内存621也称内存储器,用于暂时存放处理器61中的运算数据,以及与硬盘等外部存储器622交换的数据,处理器61通过内存621与外部存储器622进行数据交换,当电子设备600运行时,处理器61与存储器62之间通过总线63通信,使得处理器61执行以下指令:获取实时定位系统采集的第一场景图像中的多个二维特征点在预先构建的三维场景地图中对应的三维特征点的三维坐标和特征描述子;基于三维特征点的三维坐标和特征描述子,确定三维特征点在实时定位系统采集的多帧第二场景图像中的第一重投影残差;实时定位系统采集多帧第二场景图像的时刻晚于采集第一场景图像的时刻;基于三维特征点在多帧第二场景图像中的第一重投影残差,对实时定位系统的定位结果进行校准。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的信息处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例所提供的信息处理方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的信息处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。

本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

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