CN108596976B - 相机姿态追踪过程的重定位方法、装置、设备及存储介质 - Google Patents
相机姿态追踪过程的重定位方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN108596976B CN108596976B CN201810394878.6A CN201810394878A CN108596976B CN 108596976 B CN108596976 B CN 108596976B CN 201810394878 A CN201810394878 A CN 201810394878A CN 108596976 B CN108596976 B CN 108596976B
- Authority
- CN
- China
- Prior art keywords
- image
- key frame
- frame image
- camera
- repositioning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/269—Analysis of motion using gradient-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Abstract
本申请公开了一种相机姿态追踪过程的重定位方法、装置及存储介质,属于增强现实领域。所述方法包括:获取所述多个标记图像中第i个标记图像后采集的当前图像;当所述当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像;所述关键帧图像库中存储有至少一个关键帧图像的图像信息,所述关键帧图像是在所述相机姿态追踪过程中缓存的相对于其它图像进行第一重定位成功的图像;将所述当前图像相对于所述目标关键帧图像进行第二重定位;根据所述第一重定位的定位结果和所述第二重定位的定位结果,计算得到所述相机采集所述当前图像时的相机姿态参数。
Description
技术领域
本申请实施例涉及增强现实领域,特别涉及一种相机姿态追踪过程的重定位方法、装置、设备及存储介质。
背景技术
视觉SLAM(simultaneous Localization and mapping,同时定位与地图构建)是指搭载相机的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动的技术。SLAM可以应用在AR(Augmented Reality,增强显示)领域、机器人领域和无人驾驶领域中。
以单目视觉SLAM为例,通常将相机采集的第一帧图像作为标记图像(Anchor)。在相机后续采集到当前图像时,设备对当前图像与标记图像之间共同具有的特征点进行追踪,根据当前图像与标记图像之间的特征点位置变化计算得到相机在现实世界中的位姿变化。但某些场景下会发生当前图像中的特征点丢失(Lost),无法继续追踪的情况。此时,需要使用SLAM重定位方法对当前图像进行重定位。
但是在AR(Augmented Reality,增强现实)领域进行相机姿态追踪时,比如使用手机拍摄桌面进行AR游戏的场景,由于AR使用场景存在其场景特殊性,直接使用相关技术中的SLAM重定位方法的效果较差,尚需提供一种适用于AR领域的重定位解决方案。
发明内容
本申请实施例提供了一种相机姿态追踪过程的重定位方法、装置、设备及存储介质,可以解决AR使用场景中直接使用相关技术中的SLAM重定位方法的效果较差的问题。所述技术方案如下:
根据本申请的一个方面,提供了一种相机姿态追踪过程的重定位方法,应用于具有相机的设备中,所述设备用于按序执行多个标记图像的相机姿态追踪,所述方法包括:
获取所述多个标记图像中第i个标记图像之后采集的当前图像,i为大于1的整数;
当所述当前图像符合重定位条件时,获取所述多个标记图像中的第一个标记图像的初始特征点和初始位姿参数,所述初始位姿参数用于指示所述相机采集所述第一个标记图像时的相机姿态;
将所述当前图像相对于所述第一个标记图像进行特征点追踪,得到与所述初始特征点匹配的目标特征点;
根据所述初始特征点和所述目标特征点,计算所述相机从所述第一相机姿态改变至目标相机姿态时的位姿变化量,所述目标相机姿态是所述相机在采集所述当前图像时的相机姿态;
根据所述初始位姿参数和所述位姿变化量,重定位得到所述目标相机姿态对应的目标位姿参数。
根据本申请的另一方面,提供了一种相机姿态追踪过程的重定位装置,应用于具有相机的设备中,所述装置用于按序执行多个标记图像的相机姿态追踪,所述装置包括:
图像获取模块,用于获取所述多个标记图像中第i个标记图像之后采集的当前图像,i为大于1的整数;
信息获取模块,用于当所述当前图像符合重定位条件时,获取所述多个标记图像中的第一个标记图像的初始特征点和初始位姿参数,所述初始位姿参数用于指示所述相机采集所述第一个标记图像时的相机姿态;
特征点追踪模块,用于将所述当前图像相对于所述第一个标记图像进行特征点追踪,得到与所述初始特征点匹配的目标特征点;
变化量计算模块,用于根据所述初始特征点和所述目标特征点,计算所述相机从所述第一相机姿态改变至目标相机姿态时的位姿变化量,所述目标相机姿态是所述相机在采集所述当前图像时的相机姿态;
重定位模块,用于根据所述初始位姿参数和所述位姿变化量,重定位得到所述目标相机姿态对应的目标位姿参数。
根据本申请实施例的另一方面,提供了一个电子设备,所述电子设备包括存储器和处理器;
所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的重定位方法。
根据本申请实施例的另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的重定位方法。
本申请实施例提供的技术方案带来的有益效果是:
通过在当前图像符合重定位条件时,将当前图像与关键帧图像库中的关键帧图像进行重定位,能够在对连续多个标记图像进行追踪的Anchor-SLAM算法中实现重定位,从而减少了追踪过程中断的可能性,由于关键帧图像库中的关键帧图像可以为多个,如果关键帧图像库包括有覆盖相机采集场景的四周区域的不同关键帧图像,则有极大概率能够重定位成功,从而提高了重定位过程的成功几率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的AR应用场景的场景示意图;
图2是本申请一个示例性实施例提供的AR应用场景的场景示意图;
图3是本申请一个示例性实施例提供的Anchor-Switching AR System算法的原理示意图;
图4是本申请一个示例性实施例提供的电子设备的结构框图;
图5是本申请一个示例性实施例提供的相机姿态追踪过程的重定位方法的流程图;
图6是本申请一个示例性实施例提供的第一个标记图像、当前图像和一阶关键帧图像的对比示意图;
图7是本申请一个示例性实施例提供的重定位方法的流程图;
图8是本申请一个示例性实施例提供的重定位方法的流程图;
图9是本申请一个示例性实施例提供的重定位方法的流程图;
图10是本申请一个示例性实施例提供的重定位方法的流程图;
图11是本申请一个示例性实施例提供的重定位方法的流程图;
图12是本申请一个示例性实施例提供的相机姿态追踪过程的重定位装置的框图;
图13是本申请一个示例性实施例提供的电子设备的框图。
具体实施方式
首先对本申请涉及的若干个名词进行简介:
AR(Augmented Reality,增强现实):一种在相机采集图像的过程中,实时地计算相机在现实世界(或称三维世界、真实世界)中的相机姿态参数,根据该相机姿态参数在相机采集的图像上添加虚拟元素的技术。虚拟元素包括但不限于:图像、视频和三维模型。AR技术的目标是在屏幕上把虚拟世界套接在现实世界上进行互动。该相机姿态参数包括位移向量和旋转矩阵,位移向量用于表征相机在现实世界中发生的位移距离,旋转矩阵用于表征相机在现实世界中发生的旋转角度。
例如,参见图1和参见图2,设备在相机拍摄到的图像中添加了一个虚拟人物形象。随着相机在现实世界中的运动,相机拍摄到的图像会发生变化,虚拟人物的拍摄方位也发生变化,模拟出了虚拟人物在图像中静止不动,而相机随着位置和姿态的变化同时拍摄图像和虚拟人物的效果,为用户呈现了一幅真实立体的画面。
Anchor-Switching AR System:是基于连接多个标记图像(Anchor)的相机姿态追踪来确定在自然场景下的相机姿态参数,进而根据相机姿态参数在相机采集的图像上叠加虚拟世界的AR系统。
IMU(Inertial Measurement Unit,惯性测量单元):是用于测量物体的三轴姿态角(或角速率)以及加速度的装置。一般的,一个IMU包含了三个单轴的加速度计和三个单轴的陀螺,加速度计用于检测物体在三维坐标系中每个坐标轴上的加速度信号,进而计算得到位移向量;而陀螺用于检测物体在三维坐标系中的旋转矩阵。可选地,IMU包括陀螺仪、加速度计和地磁传感器。
示意性的,三维坐标系的建立方式为:1、X轴使用向量积Y*Z来定义,在X轴在设备当前的位置上,沿与地面相切的方向指向东方;2、Y轴在设备当前的位置上,沿与地面相切的方向指向地磁场的北极;3、Z轴指向天空并垂直于地面。
本申请提供了一种适用于Anchor-Switching AR System算法的重定位方法。Anchor-Switching AR System算法在确定相机姿态的过程中,将相机的运动过程划分为至少两段追踪过程进行追踪,每段追踪过程对应各自的标记图像。具体地,当第i个标记图像对应的追踪过程中,当当前图像相对于第i个标记图像的追踪效果差于预设条件(比如能够匹配到的特征点少于预设阈值)时,将当前图像的上一个图像确定为第i+1个标记图像,开启第i+1段追踪过程。其中,i为正整数。示意性的参考图3,其示出了本申请一个示例性实施例提供的Anchor-Switching AR System算法的原理示意图。在现实世界中存在物体320,设置有相机的设备340被用户手持进行移动,在移动过程中拍摄得到包括物体320的多帧图像1-6。设备将图像1确定为第1个标记图像(born-anchor或born-image)并记录初始位姿参数,该初始位姿参数可以是IMU采集的,然后将图像2相对于图像1进行特征点追踪,根据初始位姿参数和特征点追踪结果计算出相机在拍摄图像2时的位姿参数;将图像3相对于图像1进行特征点追踪,根据初始位姿参数和特征点追踪结果计算出相机在拍摄图像3时的位姿参数;将图像4相对于图像1进行特征点追踪,根据初始位姿参数和特征点追踪结果计算出相机在拍摄图像4时的位姿参数。
然后,将图像5相对于图像1进行特征点追踪,如果特征点追踪效果差于预设条件(比如匹配的特征点数量较少),则将图像4确定为第2个标记图像,将图像5相对于图像4进行特征点追踪,计算出相机在拍摄图像4至图像5之间的位移变化量,再结合相机在拍摄图像4至图像1之间的位移变化量以及初始位姿参数,计算出相机在拍摄图像5时的位姿参数。然后再将图像6相对于图像4进行特征点追踪,依次类推,若当前图像的特征点追踪效果变差时,即可将当前图像的上一帧图像确定为新的标记图像,切换新的标记图像后重新进行特征点追踪。
可选地,特征点追踪可以采用基于视觉里程计原理的算法,比如特征点法或直接法。但是若相机在追踪过程中处于发生较为剧烈的运动、朝向强光源、朝向白色墙壁等各种异常场景时,上述Anchor-Switching AR System追踪过程可能会发生丢失(Lost)现象。丢失现象是指在当前图像中无法匹配到足够多的特征点,导致追踪失败。
参考图4,其示出了本申请一个示例性实施例提供的电子设备的结构框图。该设备包括:处理器420、存储器440、相机460和IMU 480。
处理器420包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器420用于执行存储器440中存储的指令、代码、代码片段和程序中的至少一种。
处理器420与存储器440电性相连。可选地,处理器420通过总线与存储器440相连。存储器440存储有一个或多个指令、代码、代码片段和/或程序。该指令、代码、代码片段和/或程序在被处理器420执行时,用于实现如下实施例中提供的SLAM重定位方法。
处理器420还与相机460电性相连。可选地,处理器420通过总线与相机460相连。相机460是具有图像采集能力的传感器件。相机460还可称为摄像头、感光器件等其它名称。相机460具有连续采集图像或多次采集图像的能力。可选地,相机460设置在设备内部或设备外部。
处理器420还与IMU480电性相连。可选地,IMU480用于每隔预定时间间隔采集相机的位姿参数,并记录每组位姿参数在采集时的时间戳。相机的位姿参数包括:位移向量和旋转矩阵。其中,IMU480采集的旋转矩阵相对准确,采集的位移向量受实际环境可能会有较大的误差。
参考图5,其示出了本申请一个示例性实施例中提供的相机姿态跟踪过程的重定位方法的流程图。本实施例以该重定位方法应用于图4所示的设备中来举例说明,该设备用于按序执行多个标记图像的相机姿态追踪。该方法包括:
步骤502,获取多个标记图像中第i个标记图像之后采集的当前图像;
设备内的相机按照预设时间间隔采集一帧帧图像,形成图像序列。可选地,相机是在运动(平移和/或旋转)过程中,按照预设时间间隔采集一帧帧图像形成图像序列。
可选地,设备将图像序列中的第一帧图像(或前几帧图像中符合预定条件的一帧图像)确定为第一个标记图像,将后续采集的图像相对于第一个标记图像进行特征点追踪,并根据特征点追踪结果计算相机的相机姿态参数;若当前帧图像的特征点追踪效果差于预设条件时,将当前帧图像的上一帧图像确定为第二个标记图像,将后续采集的图像相对于第二个标记图像进行特征点追踪,并根据特征点追踪结果计算相机的相机姿态参数,依次类推。设备可以按序进行连续多个标记图像的相机姿态追踪。
当处于第i个标记图像对应的第i个追踪过程时,相机会采集到当前图像。当前图像是第i个标记图像之后采集的某一帧图像,其中,i为大于1的整数。
步骤504,当当前图像符合重定位条件时,获取多个标记图像中的第一个标记图像的初始特征点和初始位姿参数,初始位姿参数用于指示相机采集第一个标记图像时的相机姿态;
设备会确定当前图像是否符合重定位条件。重定位条件用于指示当前图像相对于第i个标记图像的追踪过程失败,或者,重定位条件用于指示历史追踪过程中的累积误差已经高于预设条件。
在一个可选的实施例中,设备对当前图像相对于第i个标记图像进行追踪,若当前图像中不存在与第i个标记图像匹配的特征点,或者,当前图像中与第i个标记图像匹配的特征点少于第一数量时,确定当前图像相对于第i个标记图像的追踪过程失败,符合重定位条件。
在另一个可选的实施例中,设备确定当前图像与上一次重定位的图像之间的帧数大于第二数量时,确定历史追踪过程中的累积误差已经高于预设条件,或者,设备确定第i个标记图像和第一个标记图像之间的标记图像数量大于第三数量时,确定历史追踪过程中的累计误差已经高于预设条件。
本实施例对重定位条件的具体条件内容不加以限定。
当当前图像符合重定位条件时,设备尝试将当前图像相对于第一个标记图像进行特征点追踪。此时,设备获取缓存的第一个标记图像中的初始特征点以及初始位姿参数,该初始位姿参数用于指示相机采集第一个标记图像时的相机姿态。
步骤506,将当前图像相对于第一个标记图像进行特征点追踪,得到与初始特征点匹配的目标特征点;
可选地,每组匹配特征点对中包括两个互相匹配的初始特征点和目标特征点。
特征点追踪可采用基于视觉里程计的追踪算法,本申请对此不加以限定。在一个实施例中,特征点追踪采用KLT(Kanade-Lucas)光流追踪算法;在另一个实施例中,特征点追踪采用基于SIFT(Scale-Invariant Feature Transform,尺度不变特征转换)算法提取的SIFT特征描述子、ORB(Oriented FAST and Rotated BRIEF,快速特征点提取和描述)算法提取的ORB特征描述子进行特征点跟踪。本申请对特征点追踪的具体算法不加以限定,特征点追踪过程可以采用特征点法或直接法。
在一个实施例中,设备对第一个标记图像进行特征点提取,得到N个初始特征点;设备还对当前图像进行特征点提取,得到M个候选特征点;然后将M个候选特征点逐一与N个初始特征点进行匹配,确定出至少一组匹配特征点对。每组匹配特征点对包括:一个初始特征点和一个目标特征点。初始特征点是第1个标记图像上的特征点,目标特征点是当前图像上与该初始特征点匹配度最高的候选特征点。
可选地,初始特征点的数量大于或等于目标特征点的数量。比如,初始特征点的数量是450个,目标特征点为320个。
步骤508,根据初始特征点和目标特征点,计算相机从初始姿态参数改变至目标姿态参数时的位姿变化量,目标姿态参数用于表征相机在采集当前图像时的相机姿态;
可选地,设备根据初始特征点和目标特征点计算两帧图像之间的单应性矩阵homography;对单应性矩阵homography进行分解,得到相机从初始姿态参数改变至目标姿态参数时的位姿变化量Rrelocalize和Trelocalize。
单应性矩阵描述了两个平面之间的映射关系,若自然场景(现实环境)中的特征点都落在同一物理平面上,则可以通过单应性矩阵进行运动估计。当存在至少四对相匹配的初始特征点和目标特征点时,设备通过ransac对该单应性矩阵进行分解,得到旋转矩阵Rrelocalize和平移向量Trelocalize。
其中,Rrelocalize是相机从初始姿态参数改变至目标姿态参数时的旋转矩阵,Trelocalize是相机从初始姿态参数改变至目标姿态参数时的位移向量。
步骤510,根据初始位姿参数和位姿变化量,重定位得到目标位姿参数。
设备将初始位姿参数利用位姿变化量进行变换后,重定位得到目标位姿参数,从而计算得到相机在采集当前图像时的相机姿态。
综上所述,本实施例提供的重定位方法,通过在当前图像符合重定位条件时,将当前图像与第一个标记图像进行重定位,能够在连续多个标记图像进行追踪的Anchor-Switching AR System算法中实现重定位,从而减少了追踪过程中断的可能性,从而解决相关技术中的SLAM重定位方法并不适用于变种后的SLAM算法的问题。
另外,由于重定位过程是将当前图像相对于第一个标记图像进行重定位,第一个标记图像可以认为是没有累积误差的,所以本实施例还能消除多个标记图像的追踪过程所产生的累积误差。
图5所示出的重定位方法是将当前图像相当于第一个标记图像进行重定位,该方法在某些场景下会存在重定位失败的可能性。比如当前图像对应的拍摄姿态与第一个标记图像的拍摄姿态之间的差别较大时,直接将当前图像和第一个标记图像建立匹配来实现重定位会失败。示意性的,设图6的(1)图是第一个标记图像,图6的(2)图是当前图像,由于当前图像和第一个标记图像之间的重合区域太少,达不到足够的匹配度,因此直接将当前图像和第一个标记图像进行重定位会失败。本申请实施例中,引入图6的(3)图作为一阶关键帧图像,将当前图像相对于一阶关键帧图像的匹配结果,以及一阶关键帧图像相对于第一个标记图像的匹配结果(重定位结果)分别计算出旋转矩阵和平移向量,通过切换标记图像(将一阶关键帧图像作为一个标记图像)的方式将两个匹配结果联系在一起,进而得到当前图像相对于第一个标记图像的旋转矩阵和平移向量,从而重定位成功。
参考图7,其示出了本申请另一个示例性实施例提供的相机姿态跟踪过程的重定位方法的流程图。本实施例以该重定位方法应用于图4所示的设备中来举例说明。该设备用于按序执行多个标记图像的相机姿态追踪。该方法包括:
步骤701,获取多个标记图像中第i个标记图像后采集的当前图像,i>1;
设备内的相机按照预设时间间隔采集一帧帧图像,形成图像序列。可选地,相机是在运动(平移和/或旋转)过程中,按照预设时间间隔采集一帧帧图像形成图像序列。
可选地,设备将图像序列中的第一帧图像(或前几帧图像中符合预定条件的一帧图像)确定为第一个标记图像,将后续采集的图像相对于第一个标记图像进行特征点追踪,并根据特征点追踪结果计算相机的相机姿态参数;若当前帧图像的特征点追踪效果差于预设条件时,将当前帧图像的上一帧图像确定为第二个标记图像,将后续采集的图像相对于第二个标记图像进行特征点追踪,并根据特征点追踪结果计算相机的相机姿态参数,依次类推。设备可以按序进行连续多个标记图像的相机姿态追踪。
当处于第i个标记图像对应的第i个追踪过程时,相机会采集到当前图像。当前图像是第i个标记图像之后采集的某一帧图像,其中,i为大于1的整数。
步骤702,当当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像;关键帧图像库中存储有至少一个关键帧图像的图像信息,关键帧图像是在相机姿态追踪过程中缓存的相对于其它图像存在第一重定位成功的图像;
在相机姿态追踪过程中会存在不止一次重定位过程。设备会在重定位成功的图像中挑选一些有代表性的图像作为关键帧图像保存至关键帧图像库。关键帧图像库是用于存储关键帧图像的数据库。关键帧图像库中存储有多个关键帧图像的图像信息。该图像信息包括:关键帧图像的图像本身、关键帧图像中的特征点和关键帧图像对应的第一重定位结果。可选地,图像信息还包括:关键帧图像的第一全局描述子,第一全局描述子用于以简要的数据量表示关键帧图像的图像特征。或者,第一全局描述子用于以简要的数据量唯一性地表示关键帧图像的图像特征。
设备会确定当前图像是否符合重定位条件。重定位条件用于指示当前图像相对于第i个标记图像的追踪过程失败,或者,重定位条件用于指示历史追踪过程中的累积误差已经高于预设条件。
在一个可选的实施例中,设备对当前图像相对于第i个标记图像进行追踪,若当前图像中不存在与第i个标记图像匹配的特征点,或者,当前图像中与第i个标记图像匹配的特征点少于第一数量时,确定当前图像相对于第i个标记图像的追踪过程失败,符合重定位条件。
在另一个可选的实施例中,设备确定当前图像与上一次重定位的图像之间的帧数大于第二数量时,确定历史追踪过程中的累积误差已经高于预设条件,或者,设备确定第i个标记图像和第一个标记图像之间的标记图像数量大于第三数量时,确定历史追踪过程中的累计误差已经高于预设条件。
本实施例对重定位条件的具体条件内容不加以限定。
当当前图像符合重定位条件时,设备从关键帧图像库中挑选出目标关键帧图像。可选地,目标关键帧图像是在关键帧图像库中与当前图像的图像距离最接近的图像。在不同实施例中,图像距离能够采用图像相似度、图像特征相似度、相匹配的特征点之间的距离中的任意一种形式来表征,本申请实施例对此不加以限定。
在一个实施例中,设备从关键帧图像库中通过关键帧图像的第一全局描述子和当前图像的第二全局描述子之间的相似度,来挑选目标关键帧图像;在另一个实施例中,由于IMU能够采集到相机采集当前图像时的参考姿态参数(可能存在误差),设备从关键帧图像库中通过关键帧图像的第一姿态参数和当前图像的参考姿态参数之间的相似度,来挑选目标关键帧图像。
步骤703,将当前图像相对于目标关键帧图像进行第二重定位;
当设备在关键帧图像库中挑选出目标关键帧图像之后,将当前图像相对于目标关键帧图像进行重定位。可选地,重定位的过程包括如下步骤:
1、获取目标关键帧图像的关键帧特征点和第一重定位的定位结果;
关键帧图像库中存储有每个关键帧图像上的关键帧特征点和第一相机姿态追踪结果。可选地,关键帧特征点采用SIFT特征描述子或ORB特征描述子来表征。第一重定位的定位结果是相机采集关键帧图像时的相机姿态参数(简称关键帧姿态参数),或者,第一相机姿态追踪结果是相机采集关键帧图像时的相机姿态参数相对于相机采集第一个标记图像时的相机姿态参数的姿态变化量(旋转矩阵和位移向量)。
2、将当前图像相对于目标关键图像库进行特征点追踪,得到与关键帧特征点匹配的目标特征点;
可选地,每组匹配特征点对中包括两个互相匹配的关键帧特征点和目标特征点。
特征点追踪可采用基于视觉里程计的追踪算法,本申请对此不加以限定。在一个实施例中,特征点追踪采用KLT(Kanade-Lucas)光流追踪算法;在另一个实施例中,特征点追踪采用基于SIFT(Scale-Invariant Feature Transform,尺度不变特征转换)算法提取的SIFT特征描述子、ORB(Oriented FAST and Rotated BRIEF,快速特征点提取和描述)算法提取的ORB特征描述子进行特征点跟踪。本申请对特征点追踪的具体算法不加以限定,特征点追踪过程可以采用特征点法或直接法。
在一个实施例中,由于目标关键帧图像是已经重定位成功的图像,设备对目标关键帧图像进行特征点提取,得到N个关键帧特征点;设备还对当前图像进行特征点提取,得到M个候选特征点;然后将M个候选特征点逐一与N个初始特征点进行匹配,确定出至少一组匹配特征点对。每组匹配特征点对包括:一个关键帧特征点和一个目标特征点。关键帧特征点是目标关键帧图像上的特征点,目标特征点是当前图像上与该关键帧特征点匹配度最高的候选特征点。
可选地,关键帧特征点的数量大于或等于目标特征点的数量。比如,关键帧特征点的数量是480个,目标特征点为350个。
3、根据关键帧特征点和目标特征点,计算相机从关键帧姿态参数改变至目标姿态参数时的位姿变化量,目标姿态参数用于表征相机在采集当前图像时的相机姿态。
可选地,设备根据关键帧特征点和目标特征点计算两帧图像之间的单应性矩阵homography;对单应性矩阵homography进行分解,得到相机从关键帧姿态参数改变至目标姿态参数时的位姿变化量Rcm和Tcm。
其中,Rcm是相机从关键帧姿态参数改变至目标姿态参数时的旋转矩阵,Tcm是相机从关键帧姿态参数改变至目标姿态参数时的位移向量。
步骤704,根据第一重定位的定位结果和第二重定位的定位结果,计算得到相机采集当前图像时的目标姿态参数。
假设第一重定位的定位结果包括Rmf和Tmf。Rmf是相机从初始姿态参数改变至关键帧姿态参数时的旋转矩阵,Tmf是相机从初始姿态参数改变至关键帧姿态参数时的位移向量,采用如下公式计算得到相机采集当前图像时的目标姿态参数:
其中,R和T是目标姿态参数,Smf是从第一个标记图像到目标关键帧图像的尺度。
综上所述,本实施例提供的重定位方法,通过在当前图像符合重定位条件时,将当前图像与关键帧图像库中的关键帧图像进行重定位,能够在对连续多个标记图像进行追踪的Anchor-Switching AR System算法中实现重定位,从而减少了追踪过程中断的可能性,由于关键帧图像库中的关键帧图像可以为多个,如果关键帧图像库包括有覆盖相机采集场景的四周区域的不同关键帧图像,则有极大概率能够重定位成功,从而提高了重定位过程的成功几率。
关键帧图像库(keyframe Database)中的关键帧图像(keyframe)是在整个相机姿态追踪过程中逐渐增加和删除的。关键帧图像均为重定位成功的图像。可选地,关键帧图像包括如下两种图像中的至少一种:
1、相对于多个标记图像中的第一个标记图像进行第一重定位成功的一阶关键帧图像;
2、相对于关键帧图像库中的n-1阶关键帧图像进行第一重定位成功的n阶关键帧图像,n为大于1的整数。
图像全局描述子的计算方式:
出于快速衡量两个图像之间的相似度的目的,设备可以将相机采集到的图像向量化,采用全局描述子来代表图像的特征。该全局描述子用于以简要的信息量代表图像中的特征信息。在本申请实施例中,将关键帧图像的全局描述子称为第一全局描述子,将当前图像的全局描述子称为第二全局描述子,将候选图像的全局描述子称为第三全局描述子。这三种全局描述子的计算方式相同,采用第一、第二、第三的描述仅为示意性说明。
在可选的实施例中,采用BoW(Bag of Words,词袋模型)来计算图像的全局描述子。BoW是自然语言处理领域经常使用的一个概念。以文本为例,一篇文章可能有一万个词,其中可能只有500个不同的单词,每个词出现的次数各不相同。词袋就像一个个袋子,每个袋子里装着同样的词。这构成了一种文本的表示方式。这种表示方式不考虑文法以及词的顺序。在计算机视觉领域,图像通常以特征点以及该特征点的特征描述子来表达。如果把该特征点的特征描述子看做单词,那么能构建出相应的词袋模型。利用BoW库(比如开源的DBoW2库),图像可以方便地转化为一个低维的向量表示。比较两个图像的相似度问题,也相应转化为比较两个向量的相似度问题,本质上是一个信息压缩的过程。
计算图像全局描述子的过程如下,如图8所示:
步骤801,提取图像的m个特征点描述子;
设备还提取图像中的m个特征点描述子,m为正整数。特征点描述子是图像特征点中的一种。可选地,设备提取特征点时采用的特征提取算法可以为FAST(Features fromAccelerated Segment Test,加速段测试特征点)检测算法、Shi-Tomasi(史托马西)角点检测算法、Harris Corner Detection(Harris角点检测)算法、SIFT算法、ORB算法等。
由于SIFT特征描述子的实时计算难度较大,为了保证实时性,设备可以提取图像中的ORB特征描述子。一个ORB特征描述子包括FAST角点(Key-point)和BRIER描述子(Binary Robust Independent Elementary Feature Descirptor)两部分。当然在设备计算能力足够时,也可以提取SIFT特征描述子,本申请实施例对此不加以限定。
步骤802,将m个特征点描述子通过聚类算法聚类至节点树中,节点树中的每个父亲节点包括k个孩子节点,每个节点中包括聚类为同一类的特征点描述子;
设备通过词袋模型将m个特征点描述子通过聚类算法聚类至节点树中,节点树中的每个父亲节点包括k个孩子节点,每个节点中包括聚类为同一类的特征点描述子。
可选地,如图9所示,设备先将多个特征点描述子作为节点树的根节点,通过词袋模型将多个特征点描述子聚类为K个分类构成第一层节点,每个节点中包括属于同一类的特征点描述子;然后,第一层节点中的任意一个节点再聚类为K个分类,构成该节点的K个孩子节点,依此类推,设备将第L层节点中的任意一个节点再聚类为K个分类,构成该节点的K个孩子节点。可选地,聚类算法采用K-means聚类算法,该K-means聚类算法可以采用训练集中的图像提取到的特征点描述子进行训练。
步骤803,计算节点树中每个节点的权重值;
节点树的每一层中的每一个节点记录有:属于同一类的所有特征点描述子的权重和在当前类别中属于聚类中心的特征点描述子。然后,设备采用TF-IDF计算每个节点的权重值。
TF-IDF较多用在语音处理领域。TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。TF-IDF实际上是TF*IDF,TF代表词频(Term Frequency),表示词条在文档d中出现的频率。IDF代表逆向文件频率(Inverse Document Frequency)。如果包含词条t的文档越少,IDF越大,表明词条t具有很好的类别区分能力。将图像中所有特征点描述子认为是一个文档,属于同一个节点(同一类)的图像描述子认为是一个词,则对于每个节点,按照TF-IDF公式计算当前节点在整个图像中所占的权重值。
假设节点树中的每一层节点都划分为k类,最后的节点树有L层,则第i层节点有k^(i-1)个类,这也是这一层对应的全局描述子长度。
对于图像中每一个尚未分类的新的特征点描述子,可以根据每个节点的特征点描述子对应聚类至对应类别(也即各个节点上)。图像中的每个特征点描述子都在节点树中搜索其最近邻的叶节点。
步骤804,根据节点树中各个叶节点的权重值集合,得到图像的图像全局描述子。
对于最终聚类后的节点树,所有叶节点上的权重集合构成了BoW向量。设叶子节点位于节点数的第i层,则为图像生成一个k^(i-1)位的描述子作为该图像的图像全局描述子。
本实施例中的图像可以是关键帧图像、当前图像和候选图像。在本申请实施例中,将关键帧图像的图像全局描述子称为第一全局描述子,将当前图像的图像全局描述子称为第二全局描述子,将候选图像的图像全局描述子称为第三全局描述子。这三种全局描述子的计算方式相同,采用第一、第二、第三的描述仅为示意性说明。
综上所述,本实施例提供的方法,通过将图像上的特征点描述子利用词袋模型聚类至节点树,利用节点树的叶子节点来计算得到图像全局描述子。能够利用词袋模型快速地将图像特征压缩为一个向量,以更简要的信息来表示图像特征,从而加速计算两个图像的相似度时的速度。
本实施例提供的方法,还通过TF-IDF来计算每个节点的权重值,能够将已经成熟的TF-IDF算法从自然语言处理领域转用到图像处理领域,进而准确表征图像的特征,提高计算两个图像的相似度时的准确性。
关键帧图像的添加阶段:
基于图7的可选实施例中,设备需要在历史重定位过程中向关键帧图像库添加关键帧图像。如图10所示,该方法还包括如下步骤:
步骤1001,获取最近一个重定位成功的候选图像;
在初始状态下,关键帧图像库可以为空,设备仅使用第一个标记图像作为重定位时的标记图像。随着整个相机追踪过程的执行,会出现越来越多与第一个标记图像(或已加入关键帧图像库的关键帧图像)进行重定位成功的图像,
设备在每次重定位成功时,将重定位成功的图像作为可能添加至关键帧图像库的候选图像。可选地,重定位成功包括:相对于第一个标记图像进行重定位成功,或者,相对于关键帧图像库中已有的关键帧图像进行重定位成功。
设备从候选图像中挑选出一部分图像作为关键帧图像,添加至关键帧图像库中。
步骤1002,确定候选图像是否满足添加条件,添加条件包括:候选图像和第一个标记图像之间的第一距离大于第一阈值,和/或,候选图像与上一次加入的关键帧图像之间的第二距离大于第二阈值;
可选地,本次添加的关键帧图像需要与第一个标记图像存在一定距离,因为如果两个图像比较接近,那么与直接用第一个标记图像进行重定位的效果没有明显差别。
设备计算候选图像与第一个标记图像之间的第一距离,第一距离用于表示候选图像和第一个标记图像之间的图像相似度或者相机姿态相似度。本申请对第一距离的具体计算方式不加以限定,在一个可选的实施例中,对于第一个标记图像中的初始特征点,候选图像中存在与初始特征点匹配的目标特征点,一个初始特征点和对应的目标特征点构成一个匹配特征点对,根据每一组匹配特征点分别计算L2距离(对应L2范数的欧几里得距离),将所有L2距离的平均值作为候选图像和第一个标记图像之间的第一距离。以第一阈值为50个像素点为例,当候选图像和第一个标记图像之间的第一距离大于50个像素点时,将候选图像添加至关键帧图像库。
可选地,本次添加的关键帧图像需要与上一次添加的关键帧图像存在一定距离,因为如果两个图像比较接近,那么与使用上一次添加的关键帧图像进行重定位的效果没有明显差别。
设备计算候选图像与上一次添加的关键帧图像之间的第二距离,第二距离用于表示候选图像和上一次添加的关键帧图像之间的图像相似度或相机姿态相似度。本申请对第二距离的具体计算方式不加以限定,在一个可选的实施例中,采用候选图像和上一次添加的关键帧图像之间的重定位图像个数作为第二距离,以第二阈值为10为例,若候选图像和上一次添加的关键帧图像之间的重定位图像个数超过10帧,则将候选图像添加至关键帧图像库中。
步骤1003,当候选图像满足添加条件时,将候选图像加入关键帧图像库;
当确定候选图像满足添加条件时,将候选图像作为关键帧图像添加至关键帧图像库。可选地,将关键帧图像的第一全局描述子、关键帧特征点、第一重定位的定位结果存储至关键帧图像库。其中,第一全局描述子用于以简要的数据量表示关键帧图像的图像特征,第一重定位的定位结果可以使用相机采集关键帧图像时的关键帧姿态参数来表示,也可以采用相机从初始姿态参数改变至关键帧姿态参数时的姿态变化量来表示。
步骤1004,当候选图像不满足添加条件时,将候选图像不加入关键帧图像库。
当候选图像与第一个标记图像之间的第一距离小于第一阈值,或者,候选图像与上一次添加的关键帧图像之间的第二距离小于第二阈值,则不将该候选图像加入关键帧图像库。
可选地,满足上述添加条件的关键帧图像可以用来扩展关键帧图像库,但是关键帧图像库中的关键帧图像不应当太多,太多的关键帧图像会造成重定位过程的计算量负担,导致难以搜索到理想的图像。在一个示意性的例子中,关键帧图像库中的关键帧图像不超过1000张。
当候选图像满足添加条件且关键帧图像库中的关键帧图像数量达到最大值(比如1000张)时,计算该候选图像和已有关键帧图像之间的相似度。将具有最大相似度的关键帧图像从关键帧图像库中删除,将候选图像加入关键帧图像库中。
综上所述,本实施例提供的方法,通过添加条件对候选图像进行选择,能够选择出具有代表性的关键帧图像,使得关键帧图像库中的关键帧图像能够尽量覆盖现实场景中的不同区域,从而保证当前图像相对于关键帧图像进行第二重定位时的成功率。
本实施例提供的方法,还通过在关键帧图像库中的关键帧图像达到最大值(比如1000张)时,将与候选图像最近的一个关键帧图像进行删除,使得关键帧图像库中尽量保留具有代表性的关键帧图像,从而保证在关键帧图像库中查询关键帧图像时的效率。
请参考图11,其示出了本申请一个示例性实施例提供的相机姿态追踪过程的重定位方法的方法流程图。本实施例以该方法应用于图4所述的终端中进行举例说明。该方法包括:
步骤1101,获取多个标记图像中第i个标记图像后采集的当前图像,i>1;
设备内的相机按照预设时间间隔采集一帧帧图像,形成图像序列。可选地,相机是在运动(平移和/或旋转)过程中,按照预设时间间隔采集一帧帧图像形成图像序列。
当处于第i个标记图像对应的第i个追踪过程时,相机会采集到当前图像。当前图像是第i个标记图像之后采集的某一帧图像,其中,i为大于1的整数。
步骤1102,当当前图像符合重定位条件时,从关键帧图像库中获取关键帧图像的第一全局描述子;
设备会确定当前图像是否符合重定位条件。重定位条件用于指示当前图像相对于第i个标记图像的追踪过程失败,或者,重定位条件用于指示历史追踪过程中的累积误差已经高于预设条件。本实施例对重定位条件的具体条件内容不加以限定。
当当前图像符合重定位条件时,设备从关键帧图像库中读取各个关键帧图像中的第一全局描述子,该第一全局描述子用于以向量形式表示关键帧图像的图像特征。该第一全局描述子的计算方式可以参考图8所示,由设备在历史时间对关键帧图像进行重定位时计算得到。
步骤1103,计算当前图像的第二全局描述子;
该第二全局描述子的计算方式可以参考图8所示。
步骤1104,计算当前图像的第二全局描述子和关键帧图像的第一全局描述子之间的相似度;
在一个实施例中,设备分别计算当前图像的第二全局描述子和每个关键帧图像的第一全局描述子之间的相似度。
在另一个实施例中,由于图像全局描述子是根据图像的节点树中的各个叶子节点的权重值所生成的向量,关键帧图像库中能够存储有各个第一全局描述子的反向索引(也称倒排索引),该反向索引是按照图像全局描述子中的各个叶子节点的倒排顺序生成索引的。在匹配过程中,设备根据反向索引从关键帧图像库中选择出候选关键帧图像,该候选关键帧图像的第一全局描述子和当前图像的第二全局描述子具有相同的叶子节点。然后设备计算第二全局描述子和候选关键帧图像的第一全局描述子之间的相似度。
在另一个实施例中,设备通过IMU获取相机的参考姿态参数,参考姿态参数用于表征相机采集当前图像时的参考相机姿态;计算当前图像的参考姿态参数和关键帧图像库中的关键帧图像中的第一姿态参数之间的相似度,比如距离差和角度差均在预设范围之内;将具有最高相似度的关键帧图像确定为目标关键帧图像。
步骤1105,将具有最高相似度的关键帧图像确定为目标关键帧图像;
在计算到相似度后,按照相似度对关键帧图像进行排序。然后,设备将具有最高相似度的关键帧图像确定为目标关键帧图像。
步骤1106,获取目标关键帧图像的关键帧特征点和第一重定位的定位结果;
关键帧图像库中存储有每个关键帧图像上的关键帧特征点和第一相机姿态追踪结果。可选地,关键帧特征点采用SIFT特征描述子或ORB特征描述子来表征。第一重定位的定位结果是相机采集关键帧图像时的相机姿态参数(简称关键帧姿态参数),或者,第一相机姿态追踪结果是相机采集关键帧图像时的相机姿态参数相对于相机采集第一个标记图像时的相机姿态参数的姿态变化量(旋转矩阵和位移向量)。
步骤1107,将当前图像相对于目标关键图像库进行特征点追踪,得到与关键帧特征点匹配的目标特征点;
可选地,每组匹配特征点对中包括两个互相匹配的关键帧特征点和目标特征点。
特征点追踪可采用基于视觉里程计的追踪算法,本申请对此不加以限定。在一个实施例中,由于目标关键帧图像是已经重定位成功的图像,设备对目标关键帧图像进行特征点提取,得到N个关键帧特征点;设备还对当前图像进行特征点提取,得到M个候选特征点;然后将M个候选特征点逐一与N个初始特征点进行匹配,确定出至少一组匹配特征点对。每组匹配特征点对包括:一个关键帧特征点和一个目标特征点。关键帧特征点是目标关键帧图像上的特征点,目标特征点是当前图像上与该关键帧特征点匹配度最高的候选特征点。
可选地,关键帧特征点的数量大于或等于目标特征点的数量。比如,关键帧特征点的数量是480个,目标特征点为350个。
步骤1108,根据关键帧特征点和目标特征点,计算相机从关键帧姿态参数改变至目标姿态参数时的位姿变化量,目标姿态参数用于表征相机在采集当前图像时的相机姿态。
可选地,设备根据关键帧特征点和目标特征点计算两帧图像之间的单应性矩阵homography;对单应性矩阵homography进行分解,得到相机从关键帧姿态参数改变至目标姿态参数时的位姿变化量Rcm和Tcm。
其中,Rcm是相机从关键帧姿态参数改变至目标姿态参数时的旋转矩阵,Tcm是相机从关键帧姿态参数改变至目标姿态参数时的位移向量。
步骤1109,根据第一重定位的定位结果和第二重定位的定位结果,计算得到相机采集当前图像时的目标姿态参数。
假设第一重定位的定位结果包括Rmf和Tmf。Rmf是相机从初始姿态参数改变至关键帧姿态参数时的旋转矩阵,Tmf是相机从初始姿态参数改变至关键帧姿态参数时的位移向量,采用如下公式计算得到相机采集当前图像时的目标姿态参数:
其中,R和T是目标姿态参数,Smf是从第一个标记图像到目标关键帧图像的尺度。
综上所述,本实施例提供的重定位方法,通过在当前图像符合重定位条件时,将当前图像与关键帧图像库中的关键帧图像进行重定位,能够在对连续多个标记图像进行追踪的Anchor-SLAM算法中实现重定位,从而减少了追踪过程中断的可能性,由于关键帧图像库中的关键帧图像可以为多个,如果关键帧图像库包括有覆盖相机采集场景的四周区域的不同关键帧图像,则有极大概率能够重定位成功,从而提高了重定位过程的成功几率。
在基于图11的一个可选实施例中,若当前图像符合重定位条件,则设备优先将当前图像相对于第一个标记图像进行第三重定位;当第三重定位失败时,将当前图像尝试与关键帧图像库中的关键帧图像进行重定位,也即执行步骤1102至1109的过程。也即,优先进行零阶重定位,若零阶重定位成功,则使用零阶重定位结果,若零阶重定位不成功,则进行一阶重定位。
在基于图11的另一个可选的实施例中,若当前图像符合重定位条件,则设备并行进行两个重定位过程。一方面,将当前图像相对于关键帧图像库中的关键帧图像进行第二重定位;另一方面,将当前图像相对于第一个标记图像进行第三重定位。也即,一阶重定位和零阶重定位是独立的,可以并行的执行,当其中一个重定位成功时,采用成功的重定位结果;如果两个重定位均成功,则优先使用零阶重定位结果。
在基于图11的一个可选的实施例中,若上述方法应用于AR系统中,直接使用重定位的结果可能会导致跳变,设备可将计算得到目标姿态参数输入滤波器(卡尔曼滤波器或互补滤波器),将目标姿态参数作为观测值,利用运动模型估计一个预测值,使用预测值作为实际使用的目标姿态参数,也即大概率相信观测值的前提下进行后续处理。从而使得AR系统得到平滑的结果,所显示用户画面中不会出现跳变,保证更好的用户体验。
以下为本申请的装置实施例,对于装置实施例中未详细描述的细节,可以参考如上所述的方法实施例。
请参考图12,其示出了本申请一个示例性实施例提供的相机姿态追踪过程的重定位装置的框图。该重定位装置可以通过软件、硬件或者两者的结合实现成为电子设备(或称移动终端)的全部或一部分,该重定位装置包括:获取模块1210、选择模块1220、重定位模块1230以及计算模块1240;
获取模块1210,用于获取所述多个标记图像中第i个标记图像后采集的当前图像,i>1;
选择模块1220,用于当所述当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像;所述关键帧图像库中存储有至少一个关键帧图像的图像信息,所述关键帧图像是在所述相机姿态追踪过程中缓存的相对于其它图像进行第一重定位成功的图像;
重定位模块1230,用于将所述当前图像相对于所述目标关键帧图像进行第二重定位;
计算模块1240,用于根据所述第一重定位的定位结果和所述第二重定位的定位结果,计算得到所述相机采集所述当前图像时的相机姿态参数。
在一个可选的实施例中,所述关键帧图像包括:
相对于所述多个标记图像中的第一个标记图像进行第一重定位成功的一阶关键帧图像;
或,
相对于所述关键帧图像库中的n-1阶关键帧图像进行第一重定位成功的n阶关键帧图像,n为大于1的整数。
在一个可选的实施例中,所述关键帧图像的图像信息包括:所述关键帧图像的第一全局描述子;
所述选择模块1220,包括:
计算单元,用于计算所述当前图像的第二全局描述子;
所述计算单元,还用于计算所述当前图像的第二全局描述子和所述关键帧图像库中的关键帧图像中的所述第一全局描述子之间的相似度;
确定单元,用于将具有最高相似度的关键帧图像确定为所述目标关键帧图像。
在一个可选的实施例中,所述关键帧图像的图像信息还包括:所述第一全局描述子的反向索引;
所述计算单元,还用于根据所述反向索引从所述关键帧图像库中选择出候选关键帧图像,所述候选关键帧图像的所述第一全局描述子和所述第二全局描述子具有相同的叶子节点;计算所述第二全局描述子和所述候选关键帧图像的第一全局描述子之间的相似度。
在一个可选的实施例中,所述计算单元,还用于提取所述当前图像的m个特征点描述子;将所述m个特征点描述子通过聚类算法聚类至节点树中,所述节点树中的每个父亲节点包括k个孩子节点,每个节点中包括聚类为同一类的特征点描述子;计算所述节点树中每个节点的权重值;根据所述节点树中各个叶节点的权重值集合,得到所述当前图像的第二全局描述子。
在一个可选的实施例中,所述计算单元,还用于根据TF-IDF算法计算所述节点树中每个节点的权重值。
在一个可选的实施例中,所述关键帧图像的图像信息包括:所述关键帧图像对应的第一姿态参数,所述第一姿态参数用于表征所述相机采集所述关键帧图像时的相机姿态;
所述选择模块1220,还用于通过惯性测量单元获取所述相机的参考姿态参数,所述参考姿态参数用于表征所述相机采集所述当前图像时的参考相机姿态;计算所述当前图像的参考姿态参数和所述关键帧图像库中的关键帧图像中的所述第一姿态参数之间的相似度;将具有最高相似度的关键帧图像确定为所述目标关键帧图像。
在一个可选的实施例中,所述获取模块1210,还用于获取最近一个重定位成功的候选图像;
所述装置,还包括:
确定模块,用于确定所述候选图像是否满足添加条件,所述添加条件包括:所述候选图像和所述第一个标记图像之间的第一距离大于第一阈值,和/或,所述候选图像与上一次加入的关键帧图像之间的第二距离大于第二阈值;
添加模块,用于当所述候选图像满足所述添加条件时,将所述候选图像加入所述关键帧图像库。
在一个可选的实施例中,所述关键帧图像的图像信息还包括:所述关键帧图像的第一全局描述子;
所述添加模块,还用于当所述候选图像满足所述添加条件且所述关键帧图像库中的关键帧图像数量达到最大值时,计算所述候选图像的第三全局描述子和所述第一全局描述子之间的相似度;将具有最大相似度的所述关键帧图像从所述关键帧图像库中删除,将所述候选图像加入所述关键帧图像库。
在一个可选的实施例中,所述选择模块1220,还用于当所述当前图像符合重定位条件时,将所述当前图像相对于第一个标记图像进行第三重定位;当所述第三重定位失败时,从所述关键图像库中选择出所述目标关键帧图像。
需要说明的是:上述实施例提供的相机姿态追踪过程的重定位装置在实现重定位时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的重定位装置与重定位方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图13示出了本申请一个示例性实施例提供的终端1300的结构框图。该终端1300可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio LayerIII,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group AudioLayer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本申请中方法实施例提供的相机姿态追踪过程的重定位方法。
在一些实施例中,终端1300还可选包括有:外围设备接口1303和至少一个外围设备。处理器1301、存储器1302和外围设备接口1303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1303相连。具体地,外围设备包括:射频电路1304、触摸显示屏1305、摄像头1306、音频电路1307、定位组件1308和电源1309中的至少一种。
外围设备接口1303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置终端1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在终端1300的不同表面或呈折叠设计;在再一些实施例中,显示屏1305可以是柔性显示屏,设置在终端1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图形,也即异形屏。显示屏1305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1306用于采集图像或视频。可选地,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
定位组件1308用于定位终端1300的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1308可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1309用于为终端1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
加速度传感器1311可以检测以终端1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制触摸显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1312可以检测终端1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对终端1300的3D动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1313可以设置在终端1300的侧边框和/或触摸显示屏1305的下层。当压力传感器1313设置在终端1300的侧边框时,可以检测用户对终端1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在触摸显示屏1305的下层时,由处理器1301根据用户对触摸显示屏1305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置终端1300的正面、背面或侧面。当终端1300上设置有物理按键或厂商Logo时,指纹传感器1314可以与物理按键或厂商Logo集成在一起。
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制触摸显示屏1305的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1305的显示亮度;当环境光强度较低时,调低触摸显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
接近传感器1316,也称距离传感器,通常设置在终端1300的前面板。接近传感器1316用于采集用户与终端1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变小时,由处理器1301控制触摸显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变大时,由处理器1301控制触摸显示屏1305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对终端1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种相机姿态追踪过程的重定位方法,其特征在于,应用于具有相机的设备中,所述设备用于按序执行多个标记图像的相机姿态追踪过程,所述方法包括:
获取所述多个标记图像中第i个标记图像后采集的当前图像,i>1,所述标记图像是用于开启追踪过程的图像;
当所述当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像;所述关键帧图像库中存储有至少一个关键帧图像的图像信息,所述关键帧图像是在所述相机姿态追踪过程中缓存的相对于其它图像进行第一重定位成功的图像,其中,所述关键帧图像的图像信息包括:所述关键帧图像对应的第一姿态参数,所述第一姿态参数用于表征所述相机采集所述关键帧图像时的相机姿态,所述从关键帧图像库中选择出目标关键帧图像,包括:通过惯性测量单元获取所述相机的参考姿态参数,所述参考姿态参数用于表征所述相机采集所述当前图像时的参考相机姿态;计算所述当前图像的参考姿态参数和所述关键帧图像库中的关键帧图像中的所述第一姿态参数之间的相似度;将具有最高相似度的关键帧图像确定为所述目标关键帧图像;
将所述当前图像相对于所述目标关键帧图像进行第二重定位;
根据所述第一重定位的定位结果和所述第二重定位的定位结果,计算得到所述相机采集所述当前图像时的相机姿态参数;
其中,所述关键帧图像包括:相对于所述关键帧图像库中的n-1阶关键帧图像进行第一重定位成功的n阶关键帧图像,n为大于1的整数;所述关键帧图像是用于重定位的图像;
所述关键帧图像库是由以下步骤构建的:获取最近一个重定位成功的候选图像;确定所述候选图像是否满足添加条件,所述添加条件包括:所述候选图像和所述第一个标记图像之间的第一距离大于第一阈值,和/或,所述候选图像与上一次加入的关键帧图像之间的第二距离大于第二阈值;当所述候选图像满足所述添加条件且所述关键帧图像库中的关键帧图像数量达到最大值时,计算所述候选图像的第三全局描述子和所述关键帧图像的第一全局描述子之间的相似度;将具有最大相似度的所述关键帧图像从所述关键帧图像库中删除,将所述候选图像加入所述关键帧图像库。
2.根据权利要求1所述的方法,其特征在于,所述关键帧图像的图像信息还包括:所述关键帧图像的第一全局描述子;
所述从关键帧图像库中选择出目标关键帧图像,还包括:
计算所述当前图像的第二全局描述子;
计算所述当前图像的第二全局描述子和所述关键帧图像库中的关键帧图像中的所述第一全局描述子之间的相似度;
将具有最高相似度的关键帧图像确定为所述目标关键帧图像。
3.根据权利要求2所述的方法,其特征在于,所述关键帧图像的图像信息还包括:所述第一全局描述子的反向索引;
所述计算所述当前图像的第二全局描述子和所述关键帧图像库中的关键帧图像中的所述第一全局描述子之间的相似度,包括:
根据所述反向索引从所述关键帧图像库中选择出候选关键帧图像,所述候选关键帧图像的所述第一全局描述子和所述第二全局描述子具有相同的叶子节点;
计算所述第二全局描述子和所述候选关键帧图像的第一全局描述子之间的相似度。
4.根据权利要求2所述的方法,其特征在于,所述计算所述当前图像的第二全局描述子,包括:
提取所述当前图像的m个特征点描述子;
将所述m个特征点描述子通过聚类算法聚类至节点树中,所述节点树中的每个父亲节点包括k个孩子节点,每个节点中包括聚类为同一类的特征点描述子;
计算所述节点树中每个节点的权重值;
根据所述节点树中各个叶节点的权重值集合,得到所述当前图像的第二全局描述子。
5.根据权利要求4所述的方法,其特征在于,所述计算所述节点树中每个节点的权重值,包括:
根据词频-逆向文件频率TF-IDF算法计算所述节点树中每个节点的权重值。
6.根据权利要求1至5任一所述的方法,其特征在于,所述当所述当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像,包括:
当所述当前图像符合重定位条件时,将所述当前图像相对于第一个标记图像进行第三重定位;
当所述第三重定位失败时,从所述关键图像库中选择出所述目标关键帧图像。
7.一种相机姿态追踪过程的重定位装置,其特征在于,应用于具有相机的设备中,所述设备用于按序执行多个标记图像的相机姿态追踪过程,所述装置包括:
获取模块,用于获取所述多个标记图像中第i个标记图像后采集的当前图像,i>1,所述标记图像是用于开启追踪过程的图像;
选择模块,用于当所述当前图像符合重定位条件时,从关键帧图像库中选择出目标关键帧图像;所述关键帧图像库中存储有至少一个关键帧图像的图像信息,所述关键帧图像是在所述相机姿态追踪过程中缓存的相对于其它图像进行第一重定位成功的图像,其中,所述关键帧图像的图像信息包括:所述关键帧图像对应的第一姿态参数,所述第一姿态参数用于表征所述相机采集所述关键帧图像时的相机姿态,所述从关键帧图像库中选择出目标关键帧图像,包括:通过惯性测量单元获取所述相机的参考姿态参数,所述参考姿态参数用于表征所述相机采集所述当前图像时的参考相机姿态;计算所述当前图像的参考姿态参数和所述关键帧图像库中的关键帧图像中的所述第一姿态参数之间的相似度;将具有最高相似度的关键帧图像确定为所述目标关键帧图像;
重定位模块,用于将所述当前图像相对于所述目标关键帧图像进行第二重定位;
计算模块,用于根据所述第一重定位的定位结果和所述第二重定位的定位结果,计算得到所述相机采集所述当前图像时的相机姿态参数;
其中,所述关键帧图像包括:相对于所述多个标记图像中的第一个标记图像进行第一重定位成功的一阶关键帧图像;或,相对于所述关键帧图像库中的n-1阶关键帧图像进行第一重定位成功的n阶关键帧图像,n为大于1的整数;所述关键帧图像是用于重定位的图像;
所述关键帧图像库是由以下步骤构建的:获取最近一个重定位成功的候选图像;确定所述候选图像是否满足添加条件,所述添加条件包括:所述候选图像和所述第一个标记图像之间的第一距离大于第一阈值,和/或,所述候选图像与上一次加入的关键帧图像之间的第二距离大于第二阈值;当所述候选图像满足所述添加条件且所述关键帧图像库中的关键帧图像数量达到最大值时,计算所述候选图像的第三全局描述子和所述关键帧图像的第一全局描述子之间的相似度;将具有最大相似度的所述关键帧图像从所述关键帧图像库中删除,将所述候选图像加入所述关键帧图像库。
8.根据权利要求7所述的装置,其特征在于,所述关键帧图像的图像信息包括:所述关键帧图像的第一全局描述子;
所述选择模块,包括:
计算单元,用于计算所述当前图像的第二全局描述子;
所述计算单元,还用于计算所述当前图像的第二全局描述子和所述关键帧图像库中的关键帧图像中的所述第一全局描述子之间的相似度;
确定单元,用于将具有最高相似度的关键帧图像确定为所述目标关键帧图像。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器;
所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至6任一所述的重定位方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至6任一所述的重定位方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810394878.6A CN108596976B (zh) | 2018-04-27 | 2018-04-27 | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810394878.6A CN108596976B (zh) | 2018-04-27 | 2018-04-27 | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108596976A CN108596976A (zh) | 2018-09-28 |
CN108596976B true CN108596976B (zh) | 2022-02-22 |
Family
ID=63610397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810394878.6A Active CN108596976B (zh) | 2018-04-27 | 2018-04-27 | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108596976B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876854B (zh) | 2018-04-27 | 2022-03-08 | 腾讯科技(深圳)有限公司 | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 |
CN110544280B (zh) | 2018-05-22 | 2021-10-08 | 腾讯科技(深圳)有限公司 | Ar系统及方法 |
CN109544615B (zh) * | 2018-11-23 | 2021-08-24 | 深圳市腾讯信息技术有限公司 | 基于图像的重定位方法、装置、终端及存储介质 |
CN109671105B (zh) * | 2018-12-19 | 2020-11-20 | 青岛小鸟看看科技有限公司 | 一种视觉导航系统的跟踪恢复方法和装置 |
CN111829532B (zh) * | 2019-04-18 | 2022-05-17 | 丰翼科技(深圳)有限公司 | 一种飞行器重定位系统和重定位方法 |
CN110069135A (zh) * | 2019-04-28 | 2019-07-30 | 联想(北京)有限公司 | 一种人机交互设备的数据处理方法及人机交互设备 |
CN110170167B (zh) * | 2019-05-28 | 2023-02-28 | 上海米哈游网络科技股份有限公司 | 一种画面显示方法、装置、设备及介质 |
CN112150548B (zh) * | 2019-06-28 | 2024-03-29 | Oppo广东移动通信有限公司 | 定位方法及装置、终端、存储介质 |
CN110363179B (zh) * | 2019-07-23 | 2022-03-25 | 联想(北京)有限公司 | 地图获取方法、装置、电子设备以及存储介质 |
CN110689623B (zh) * | 2019-08-20 | 2020-12-18 | 重庆特斯联智慧科技股份有限公司 | 基于增强现实显示的游客导览系统及方法 |
CN112445929B (zh) * | 2019-08-30 | 2022-05-17 | 浙江商汤科技开发有限公司 | 视觉定位方法及相关装置 |
CN112651991A (zh) * | 2019-10-10 | 2021-04-13 | 阿里巴巴集团控股有限公司 | 视觉定位方法、装置及计算机系统 |
CN111177167B (zh) * | 2019-12-25 | 2024-01-19 | Oppo广东移动通信有限公司 | 增强现实的地图更新方法、装置、系统、存储与设备 |
CN111340887B (zh) * | 2020-02-26 | 2023-12-29 | Oppo广东移动通信有限公司 | 视觉定位方法、装置、电子设备和存储介质 |
CN111311588B (zh) * | 2020-02-28 | 2024-01-05 | 浙江商汤科技开发有限公司 | 重定位方法及装置、电子设备和存储介质 |
CN112066988B (zh) * | 2020-08-17 | 2022-07-26 | 联想(北京)有限公司 | 定位方法及定位设备 |
CN112348888B (zh) * | 2020-09-09 | 2023-06-20 | 北京市商汤科技开发有限公司 | 显示设备的定位方法、装置、显示设备及计算机存储介质 |
CN114184193A (zh) * | 2020-09-14 | 2022-03-15 | 杭州海康威视数字技术股份有限公司 | 定位方法及系统 |
CN116862979A (zh) * | 2022-03-25 | 2023-10-10 | 北京字跳网络技术有限公司 | 重定位方法及相关设备 |
CN115982399B (zh) * | 2023-03-16 | 2023-05-16 | 北京集度科技有限公司 | 图像查找方法、移动设备、电子设备、及计算机程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677898A (zh) * | 2016-02-02 | 2016-06-15 | 中国科学技术大学 | 一种基于特征差异性的改进图像搜索方法 |
CN106855883A (zh) * | 2016-12-21 | 2017-06-16 | 中国科学院上海高等研究院 | 基于视觉词袋模型的人脸图像检索方法 |
CN107392238A (zh) * | 2017-07-12 | 2017-11-24 | 华中师范大学 | 基于移动视觉搜索的户外植物知识拓展学习系统 |
CN107748569A (zh) * | 2017-09-04 | 2018-03-02 | 中国兵器工业计算机应用技术研究所 | 用于无人机的运动控制方法、装置及无人机系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9633819B2 (en) * | 2011-05-13 | 2017-04-25 | Fibics Incorporated | Microscopy imaging method and system |
-
2018
- 2018-04-27 CN CN201810394878.6A patent/CN108596976B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677898A (zh) * | 2016-02-02 | 2016-06-15 | 中国科学技术大学 | 一种基于特征差异性的改进图像搜索方法 |
CN106855883A (zh) * | 2016-12-21 | 2017-06-16 | 中国科学院上海高等研究院 | 基于视觉词袋模型的人脸图像检索方法 |
CN107392238A (zh) * | 2017-07-12 | 2017-11-24 | 华中师范大学 | 基于移动视觉搜索的户外植物知识拓展学习系统 |
CN107748569A (zh) * | 2017-09-04 | 2018-03-02 | 中国兵器工业计算机应用技术研究所 | 用于无人机的运动控制方法、装置及无人机系统 |
Non-Patent Citations (2)
Title |
---|
基于单目视觉的SLAM算法研究;曹恒;《中国优秀硕士学位论文全文数据库信息科技辑》;20180115;第6-25、39-44页 * |
基于双目视觉的四旋翼无人机定位系统设计与实现;何芳;《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》;20180215;第28页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108596976A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108596976B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN108615247B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN108648235B (zh) | 相机姿态追踪过程的重定位方法、装置及存储介质 | |
CN108615248B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN108876854B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN108734736B (zh) | 相机姿态追踪方法、装置、设备及存储介质 | |
CN108537845B (zh) | 位姿确定方法、装置及存储介质 | |
CN108629747B (zh) | 图像增强方法、装置、电子设备及存储介质 | |
CN110599549B (zh) | 界面显示方法、装置及存储介质 | |
CN109947886B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN110222551B (zh) | 识别动作类别的方法、装置、电子设备及存储介质 | |
CN108829881B (zh) | 视频标题生成方法及装置 | |
CN110222789B (zh) | 图像识别方法及存储介质 | |
CN108682037B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN111127509B (zh) | 目标跟踪方法、装置和计算机可读存储介质 | |
CN108288032B (zh) | 动作特征获取方法、装置及存储介质 | |
CN110807361A (zh) | 人体识别方法、装置、计算机设备及存储介质 | |
CN108776822B (zh) | 目标区域检测方法、装置、终端及存储介质 | |
CN112261491B (zh) | 视频时序标注方法、装置、电子设备及存储介质 | |
CN114170349A (zh) | 图像生成方法、装置、电子设备及存储介质 | |
CN112084811A (zh) | 身份信息的确定方法、装置及存储介质 | |
CN110705614A (zh) | 模型训练方法、装置、电子设备及存储介质 | |
CN110942046A (zh) | 图像检索方法、装置、设备及存储介质 | |
CN110503160B (zh) | 图像识别方法、装置、电子设备及存储介质 | |
CN111753606A (zh) | 一种智能模型的升级方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |