CN111862150A - 图像跟踪的方法、装置、ar设备和计算机设备 - Google Patents

图像跟踪的方法、装置、ar设备和计算机设备 Download PDF

Info

Publication number
CN111862150A
CN111862150A CN202010564644.9A CN202010564644A CN111862150A CN 111862150 A CN111862150 A CN 111862150A CN 202010564644 A CN202010564644 A CN 202010564644A CN 111862150 A CN111862150 A CN 111862150A
Authority
CN
China
Prior art keywords
dimensional feature
image
feature points
tracking
equipment
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.)
Granted
Application number
CN202010564644.9A
Other languages
English (en)
Other versions
CN111862150B (zh
Inventor
李东轩
张高明
刘海伟
丛林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Yixian Advanced Technology Co ltd
Original Assignee
Hangzhou Yixian Advanced Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Yixian Advanced Technology Co ltd filed Critical Hangzhou Yixian Advanced Technology Co ltd
Priority to CN202010564644.9A priority Critical patent/CN111862150B/zh
Publication of CN111862150A publication Critical patent/CN111862150A/zh
Application granted granted Critical
Publication of CN111862150B publication Critical patent/CN111862150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及一种图像跟踪的方法、装置、AR设备和计算机设备,其中,该图像跟踪的方法包括:获取第一图像,根据双目极线约束提取该第一图像中的二维特征点,获取第二图像,根据AR设备的IMU测量值获取AR设备的运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪,根据IMU测量值计算该AR设备的位姿信息,对该二维特征点的跟踪结果进行三角化,得到三维特征点,其中,该二维特征点与该三维特征点对应。通过本申请,解决了VIO算法在对搭载双目相机的AR眼镜进行计算的过程中,适配度较低的问题,提高了VIO算法与搭载双目相机的AR设备之间的匹配度。

Description

图像跟踪的方法、装置、AR设备和计算机设备
技术领域
本申请涉及计算机视觉技术领域,特别是涉及图像跟踪的方法、装置、AR设备和计算机设备。
背景技术
随着互联网和第五代移动通信(5th Generation Mobile Networks,简称为5G)技术的大力发展,增强现实(Augmented Reality,简称为AR)应用的热度正逐渐升高。其中,增强现实技术是一种将虚拟信息与真实世界进行融合的技术,AR技术可以借助相关的硬件载体,例如手机或者眼镜,将计算机生成的虚拟信息融合到真实的三维世界中。在虚拟信息与真实世界的融合过程中,需要用到的核心技术为环境感知类算法,例如惯性视觉里程计(Visual Inertial Odometry,简称为VIO)算法。具体地,VIO算法可以利用AR设备上的相机和惯性测量单元(Inertial Measurement Unit,简称为IMU)传感器信息,将计算机生成的虚拟信息与真实世界中的位置和姿态信息进行融合。
对于不同的设备,由于应用的传感器不同,VIO算法的实现也有所不同。在智能手机平台上,VIO算法多为单目相机加IMU的实现,然而,由于AR眼镜平台的传感器选择更为自由,因此不同的AR眼镜设备需要对算法进行定制。对于搭载单目相机加IMU的AR眼镜,VIO算法与手机平台上的实现类似,但是对于搭载双目鱼眼相机的AR眼镜,已有的VIO算法适配度较低。
目前针对相关技术中VIO算法在对搭载双目鱼眼相机的AR设备进行计算的过程中,适配度较低的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种图像跟踪的方法、装置、AR设备、计算机设备和计算机可读存储介质,以至少解决相关技术中VIO算法在对搭载双目相机的AR设备进行计算的过程中,适配度较低的问题。
第一方面,本申请实施例提供了一种图像跟踪的方法,所述方法包括:
获取第一图像,根据双目极线约束提取所述第一图像中的二维特征点;
获取第二图像,根据AR设备的IMU测量值获取所述AR设备的运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
根据所述IMU测量值,计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应。
在其中一些实施例中,在所述通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪之后,所述方法还包括:
对所述二维特征点进行过滤,在所述二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在所述第二图像中提取补充特征点,其中,所述补充特征点的数量根据所述第一数量与所述第二数量的差值确定,所述第一数量为所述第一图像中所述二维特征点的数量,所述第二数量为所述第二图像中所述二维特征点的数量。
在其中一些实施例中,在所述得到三维特征点之后,所述方法包括:
获取所述三维特征点在所述第二图像中的二维投影点,建立重投影误差方程,计算所述二维特征点与所述二维投影点之间的误差,根据所述AR设备的观测方程计算雅可比矩阵;
根据所述雅可比矩阵和所述误差,通过卡尔曼滤波器,对所述AR设备的系统状态量和系统协方差矩阵进行更新。
在其中一些实施例中,所述建立重投影误差方程包括:
根据所述AR设备的位姿、相机参数、时间参数、滑窗和同时定位与地图构建SLAM特征,建立所述重投影误差方程。
在其中一些实施例中,所述对所述AR设备的系统状态量和系统协方差矩阵进行更新包括:
获取预设时间段内的历史状态参数,根据所述历史状态参数和所述系统状态量中的当前状态参数,确定变化值;
在所述变化值大于预设变化阈值的情况下,不对所述系统状态量和所述系统协方差矩阵进行更新。
第二方面,本申请实施例提供了一种图像跟踪的装置,所述装置包括:双目相机、惯性测量设备和处理器:
所述双目相机获取第一图像,所述处理器根据双目极线约束提取所述第一图像中的二维特征点;
所述双目相机获取第二图像,所述处理器根据所述惯性测量设备的测量值获取AR设备的运动信息,并根据所述运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
所述处理器根据所述惯性测量设备的测量值计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应。
在其中一些实施例中,所述处理器在所述通过光流跟踪对所述二维特征点进行跟踪之后,还用于:
对所述二维特征点进行过滤,在所述二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在所述第二图像中提取补充特征点,其中,所述补充特征点的数量根据所述第一数量与所述第二数量的差值确定,所述第一数量为所述第一图像中所述二维特征点的数量,所述第二数量为所述第二图像中所述二维特征点的数量。
第三方面,本申请实施例提供了一种AR设备,所述AR设备包括双目鱼眼相机、惯性测量设备和处理器:
所述双目鱼眼相机获取第一图像,所述处理器根据双目极线约束提取所述第一图像中的二维特征点;
所述双目鱼眼相机获取第二图像,所述处理器根据所述惯性测量设备的测量值获取所述AR设备的运动信息,并根据所述运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
所述处理器根据所述惯性测量设备的测量值计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应;
所述处理器获取所述三维特征点在所述第二图像中的二维投影点,建立重投影误差方程,计算所述二维特征点与所述二维投影点之间的误差,根据所述AR设备的观测方程计算雅可比矩阵;
所述处理器根据所述雅可比矩阵和所述误差,通过卡尔曼滤波器,对所述AR设备的系统状态量和系统协方差矩阵进行更新。
第四方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一所述方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一所述方法。
相比于相关技术,本申请实施例提供的图像跟踪的方法,通过获取第一图像,根据双目极线约束提取该第一图像中的二维特征点,获取第二图像,根据AR设备的IMU测量值获取AR设备的运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪,根据IMU测量值计算该AR设备的位姿信息,对该二维特征点的跟踪结果进行三角化,得到三维特征点,其中,该二维特征点与该三维特征点对应,解决了VIO算法在对搭载双目相机的AR眼镜进行计算的过程中,适配度较低的问题,提高了VIO算法与搭载双目相机的AR设备之间的匹配度。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的图像跟踪的方法的应用环境示意图;
图2是根据本申请实施例的图像跟踪的方法的流程图;
图3是根据本申请实施例的极线约束的示意图;
图4是根据本申请实施例的系统更新的方法的流程图;
图5是根据本申请实施例的图像跟踪的装置的结构框图;
图6是根据本申请实施例的AR设备的结构框图;
图7是根据本申请实施例的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本申请提供的图像跟踪的方法,可以应用于如图1所示的应用环境中,图1是根据本申请实施例的图像跟踪的方法的应用环境示意图,如图1所示。其中,AR眼镜102配置有AR相机104、IMU 106和芯片108。AR眼镜102通过AR相机104获取第一图像,芯片108根据双目极线约束提取第一图像中的二维特征点,AR相机104获取第二图像,芯片108根据IMU 106获取AR眼镜102的运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪,并根据该IMU 106的测量值计算得到AR设备的位姿信息,对该二维特征点的跟踪结果进行三角化,得到三维特征点,其中,该二维特征点与该三维特征点对应。
本申请基于多状态约束卡尔曼滤波(Multi-State Constraint Kalman Filter,简称为MSCKF)算法实现。MSCKF算法是一种扩展卡尔曼滤波(Extended Kalman Filter,简称为EKF)算法的变种,维护了一个固定帧数的相机队列,在滤波器中保留了更多的信息,因此MSCKF算法的性能比EKF算法更优。
MSCKF算法分两步,预测和更新。预测是通过运动模型对系统状态参数进行预测,其中,系统状态参数是一系列反应系统特性的值;更新是通过观测模型对预测的状态参数进行修正。其中,观测模型与使用的相机有关。
本实施例提供了一种图像跟踪的方法,图2是根据本申请实施例的图像跟踪的方法的流程图,如图2所示,该方法包括如下步骤:
步骤S201,获取第一图像,根据双目极线约束提取该第一图像中的二维特征点。
本实施例中,第一图像可以为AR设备所在的真实世界的场景图像,该场景可以为日常生活场景,例如广场、图书馆或者街道,也可以为景点,例如故宫、长城等等,该第一图像可以通过双目相机获得,进一步地,该双目相机可以为双目鱼眼相机,本实施例中的第一图像包括双目相机在同一时刻得到的两张图像。
极线约束描述的是当同一个点投影到两个不同视角的图像上时,像点、相机光心在投影模型下形成的约束。图3是根据本申请实施例的极线约束的示意图,如图3所示,点P为第一图像中的一个点,双目相机的两个相机光心连线被称作基线,以O1O2表示,基线分别与像平面image1、image2的交点被称为基点,以e1、e2表示,平面O1O2P为极平面,极平面与像平面image1、image2的交线e1P1、e2P2为极线。如果点P在image1上的像点为P1,那么点P在image2上的像点必然在平面O1O2P与像平面image2的交线e2P2上。由于双目相机的同一帧图像包括左目图像和右目图像,因此,本实施例通过双目极线约束,基于双目相机外参,对同一帧的两张图像进行特征点提取,得到左目图像和右目图像之间的特征跟踪对,即为成对的二维特征点。
可选地,本实施例中的通过双目极线约束提取二维特征点,可以在计算左目图像和右目图像间的特征光流之后进行。
步骤S202,获取第二图像,根据AR设备的IMU测量值获取AR设备的运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪。
本实施例中的第二图像与第一图像为同一场景下的图像,且可以形成图像队列,AR设备为AR眼镜或者AR头盔等可以搭载双目相机的设备,运动信息包括AR设备在捕捉图像时刻的速度信息,该运动信息可以通过IMU测量值计算得到,通过IMU和双目极线约束的预测,能够很大程度提升光流跟踪的效率。
对第一图像和第二图像中的二维特征点,本实施例中通过光流跟踪实现,例如角点跟踪算法(Kanade-Lucas-Tomasi Tracking,简称为KLT),该算法假设二维特征点在第一图像与第二图像中,只产生一致性的小位移,并且二维特征点的灰度变化不大,以实现对不同帧图像中的二维特征点进行跟踪。
步骤S203,根据IMU测量值,计算AR设备的位姿信息,根据该位姿信息对该二维特征点的跟踪结果进行三角化,得到三维特征点。
其中,该二维特征点与三维特征点对应,AR设备的位姿信息包括AR设备的位置信息和姿态信息,位置信息为AR设备的坐标位置,姿态信息包括俯仰角、航向角等等。在本实施例中,三角化的思想具体为,在双目相机中观测到图像中的二维特征点的情况下,根据相机的位姿信息和观测向量可以得到三维空间中的一条射线,该射线从相机中心出发,理想情况下,双目相机产生的观测射线相交于三维空间中的一点,该点为二维特征点在三维空间中的位置,记为三维特征点,在得到三维特征点之后,可以建立二维特征点与三维特征点之间的关联关系。
通过上述步骤S201至步骤S203,本实施例通过双目极线约束对同一帧中的左目图像和右目图像提取二维特征点,通过光流跟踪算法对不同帧图像形成的图像队列进行二维特征点的跟踪,最后通过三角化,得到与二维特征点对应的三维特征点,实现了二维特征点与三维特征点之间的关联,解决了相关技术中VIO算法在对搭载双目相机的AR眼镜进行计算的过程中,适配度较低的问题,提高了VIO算法与搭载双目相机的AR设备之间的匹配度。
在其中一些实施例中,在通过光流跟踪对二维特征点进行跟踪之后,还需要对二维特征点进行过滤,在该二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在第二图像中提取补充特征点,其中,该补充特征点的数量根据第一数量与第二数量的差值确定,该第一数量为第一图像中二维特征点的数量,该第二数量为第二图像中二维特征点的数量。由于在对二维特征点进行跟踪的过程中,可能会出现误匹配,因此本实施例中需要对二维跟踪点进行筛选和过滤,本实施例采用随机抽样一致(Random SampleConsensus,简称为RANSAC)算法,对跟踪到的二维特征点进行过滤,在过滤后二维特征点的数量减少的情况下,需要在第二图像的基础上,对二维特征点进行补充,本实施例中,仍然采用双目极线约束对第二图像中的左目图像和右目图像进行二维特征点进行补充提取,得到补充特征点,避免在对图像队列跟踪的过程中,二维特征点数量过少,导致误差增大。本实施例通过光流跟踪实现帧间二维特征点的跟踪,通过双目极线约束进行二维特征点的补充计算,由于光流跟踪的计算量远低于双目极线约束,且补充点数较少,双目极线约束总耗时较低,可以最大限度保证计算效率。
在其中一些实施例中,图4是根据本申请实施例的系统更新的方法的流程图,如图4所示,该方法包括如下步骤:
步骤S401,获取三维特征点在第二图像中的二维投影点,建立重投影误差方程,计算二维特征点与二维投影点之间的误差,根据AR设备的观测方程计算雅可比矩阵。
在三角化的过程中,由于存在噪声,通过双目相机得到的三维特征点与实际的目标点之间存在误差,本实施例通过将三维特征点投影至第二图像得到二维投影点,根据重投影误差方程计算二维特征点与二维投影点之间的误差,最小化所有二维投影点到对应二维特征点之间的距离。
本实施例中,观测方程可以由如下公式1得到:
Xk=[xB,xcamera-parameters,xtime-parameters,xsliding-parameters,xslam-parameters] 公式1
在公式1中,xB为AR设备的设备信息,包括AR设备的位姿信息和运动信息,xcamera-parameters为双目相机的相机参数,包括相机内参和相机外参,通常情况下,相机内参包括相机的焦距和像平面中心点偏置,相机外参包括相机的位置信息,xtime-parameters为时间参数,包括时间延迟和曝光时间,xsliding-parameters为滑窗,记录AR设备的历史位姿信息和历史速度信息,xslam-parameters为同时定位与地图构建(Simultaneous Localization AndMapping,简称为SLAM)特征,本实施例中的SLAM特征为三角化得到的三维特征点。
其中,雅可比矩阵为一种偏微分矩阵,用于对系统状态量和系统协方差矩阵进行更新。
步骤S402,根据雅可比矩阵和误差,通过卡尔曼滤波器,对AR设备的系统状态量和系统协方差矩阵进行更新。
其中,卡尔曼滤波(Kalman Filter)是一种利用线性系统状态方程,通过系统输入和输出的观测数据,对系统状态进行最优估计的算法。
通过上述步骤S401和步骤S402,本实施例根据重投影误差方程计算二维特征点与二维投影点之间的误差,基于该误差和雅可比矩阵,通过卡尔曼滤波器,对系统状态量和系统协方差矩阵进行更新,对系统状态量中的参数进行修正,降低对设备位姿跟踪过程中的计算误差。
在其中一些实施例中,根据该AR设备的位姿、相机参数、时间参数、滑窗和SLAM特征,建立该重投影误差方程。其中,相机参数包括相机内参和相机外参,在相机为鱼眼相机的情况下,还包括鱼眼相机的畸变参数,时间参数包括时间延迟和曝光时间,滑窗记录AR设备的历史位姿信息和历史速度信息。本实施例中根据多种参数建立重投影误差方程,可以在算法运行过程中,通过卡尔曼滤波对参数进行修正,最大程度降低误差。
在其中一些实施例中,在对AR设备的系统状态量和系统协方差矩阵进行更新的过程中,需要先获取预设时间段内的历史状态参数,本实施例中对历史状态参数的统计可以为对参与更新的重投影误差方程的统计,根据该历史状态参数和该系统状态量中的当前状态参数,确定变化值,在该变化值大于预设变化阈值的情况下,不对该系统状态量和该系统协方差矩阵进行更新。其中,预设时间段为获取第二图像的时刻之前的时间段,变化值可以根据历史状态参数与当前状态参数的差值确定,用户可以根据需要设置预设变化阈值,在变化值大于预设变化阈值的情况下,认为系统出现抖动,获取到的数据误差较大,放弃对系统状态量和系统协方差矩阵的更新,以最大限度的保证系统的稳定性。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例还提供了一种图像跟踪的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的图像跟踪的装置的结构框图,如图5所示,该装置包括双目相机51、惯性测量设备52和处理器53:该双目相机51获取第一图像,该处理器53根据双目极线约束提取该第一图像中的二维特征点,该双目相机51获取第二图像,处理器53根据惯性测量设备52的测量值获取AR设备的运动信息,并根据该运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪,该处理器53根据惯性测量设备52的测量值计算AR设备的位姿信息,根据位姿信息对该二维特征点的跟踪结果进行三角化,得到三维特征点,其中,该二维特征点与该三维特征点对应。
本实施例的处理器53通过双目极线约束对双目相机51同一帧中的左目图像和右目图像提取二维特征点,然后处理器53通过光流跟踪算法对不同帧图像形成的图像队列进行二维特征点的跟踪,最后通过三角化,得到与二维特征点对应的三维特征点,实现了二维特征点与三维特征点之间的关联,解决了相关技术中VIO算法在对搭载双目相机51的AR眼镜进行计算的过程中,适配度较低的问题,提高了VIO算法与搭载双目相机51的AR设备之间的匹配度。
在其中一些实施例中,处理器53在通过光流跟踪对二维特征点进行跟踪之后,还用于对该二维特征点进行过滤,在该二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在该第二图像中提取补充特征点,其中,该补充特征点的数量根据该第一数量与该第二数量的差值确定,该第一数量为该第一图像中该二维特征点的数量,该第二数量为该第二图像中该二维特征点的数量。本实施例对跟踪到的二维特征点进行过滤,在过滤后二维特征点的数量可能减少的情况下,需要在第二图像的基础上,对二维特征点进行补充,本实施例中,仍然采用双目极线约束对第二图像中的左目图像和右目图像进行二维特征点的提取,得到补充特征点,避免在对图像队列跟踪的过程中,二维特征点数量过少,导致误差增大。本实施例通过光流跟踪实现帧间二维特征点的跟踪,通过双目极线约束进行二维特征点的补充计算,由于光流跟踪的计算量远低于双目极线约束,且补充点数较少,双目极线约束总耗时较低,可以最大限度保证计算效率。
本实施例还提供了一种AR设备,图6是根据本申请实施例的AR设备的结构框图,如图6所示,该AR设备可以为AR眼镜,也可以为AR头盔等可以配置双目鱼眼相机的AR设备,该AR设备包括双目鱼眼相机61、惯性测量设备52和处理器53:该双目鱼眼相机61获取第一图像,该处理器53根据双目极线约束提取该第一图像中的二维特征点,该双目鱼眼相机61获取第二图像,该处理器53根据该惯性测量设备52的测量值获取该AR设备的运动信息,并根据该运动信息,通过光流跟踪对该第二图像中的该二维特征点进行跟踪,该处理器53根据该惯性测量设备52的测量值计算该AR设备的位姿信息,根据该位姿信息对该二维特征点的跟踪结果进行三角化,得到三维特征点,其中,该二维特征点与该三维特征点对应,该处理器53获取该三维特征点在该第二图像中的二维投影点,建立重投影误差方程,计算该二维特征点与该二维投影点之间的误差,根据该AR设备的观测方程计算雅可比矩阵,该处理器53根据该雅可比矩阵和该误差,通过卡尔曼滤波器,对该AR设备的系统状态量和系统协方差矩阵进行更新。
本实施例的AR设备,处理器53基于双目极线约束对同一帧中的左目图像和右目图像提取二维特征点,通过光流跟踪算法对双目鱼眼相机61不同帧图像形成的图像队列进行二维特征点的跟踪,最后通过三角化,得到与二维特征点对应的三维特征点,实现了二维特征点与三维特征点之间的关联,解决了相关技术中VIO算法在对搭载双目鱼眼相机61的AR眼镜进行计算的过程中,适配度较低的问题,提高了VIO算法与搭载双目鱼眼相机61的AR设备之间的匹配度。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像跟踪的方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在一个实施例中,图7是根据本申请实施例的电子设备的内部结构示意图,如图7所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图7所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的数据库用于存储数据。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像跟踪的方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述各实施例提供的图像跟踪的方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个实施例提供的图像跟踪的方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种图像跟踪的方法,其特征在于,所述方法包括:
获取第一图像,根据双目极线约束提取所述第一图像中的二维特征点;
获取第二图像,根据AR设备的IMU测量值获取所述AR设备的运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
根据所述IMU测量值,计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应。
2.根据权利要求1所述的方法,其特征在于,在所述通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪之后,所述方法还包括:
对所述二维特征点进行过滤,在所述二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在所述第二图像中提取补充特征点,其中,所述补充特征点的数量根据所述第一数量与所述第二数量的差值确定,所述第一数量为所述第一图像中所述二维特征点的数量,所述第二数量为所述第二图像中所述二维特征点的数量。
3.根据权利要求1所述的方法,其特征在于,在所述得到三维特征点之后,所述方法包括:
获取所述三维特征点在所述第二图像中的二维投影点,建立重投影误差方程,计算所述二维特征点与所述二维投影点之间的误差,根据所述AR设备的观测方程计算雅可比矩阵;
根据所述雅可比矩阵和所述误差,通过卡尔曼滤波器,对所述AR设备的系统状态量和系统协方差矩阵进行更新。
4.根据权利要求3所述的方法,其特征在于,所述建立重投影误差方程包括:
根据所述AR设备的位姿、相机参数、时间参数、滑窗和同时定位与地图构建SLAM特征,建立所述重投影误差方程。
5.根据权利要求3所述的方法,其特征在于,所述对所述AR设备的系统状态量和系统协方差矩阵进行更新包括:
获取预设时间段内的历史状态参数,根据所述历史状态参数和所述系统状态量中的当前状态参数,确定变化值;
在所述变化值大于预设变化阈值的情况下,不对所述系统状态量和所述系统协方差矩阵进行更新。
6.一种图像跟踪的装置,其特征在于,所述装置包括:双目相机、惯性测量设备和处理器:
所述双目相机获取第一图像,所述处理器根据双目极线约束提取所述第一图像中的二维特征点;
所述双目相机获取第二图像,所述处理器根据所述惯性测量设备的测量值获取AR设备的运动信息,并根据所述运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
所述处理器根据所述惯性测量设备的测量值计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应。
7.根据权利要求6所述的装置,其特征在于,所述处理器在所述通过光流跟踪对所述二维特征点进行跟踪之后,还用于:
对所述二维特征点进行过滤,在所述二维特征点的第二数量小于第一数量的情况下,根据双目极线约束在所述第二图像中提取补充特征点,其中,所述补充特征点的数量根据所述第一数量与所述第二数量的差值确定,所述第一数量为所述第一图像中所述二维特征点的数量,所述第二数量为所述第二图像中所述二维特征点的数量。
8.一种AR设备,其特征在于,所述AR设备包括双目鱼眼相机、惯性测量设备和处理器:
所述双目鱼眼相机获取第一图像,所述处理器根据双目极线约束提取所述第一图像中的二维特征点;
所述双目鱼眼相机获取第二图像,所述处理器根据所述惯性测量设备的测量值获取所述AR设备的运动信息,并根据所述运动信息,通过光流跟踪对所述第二图像中的所述二维特征点进行跟踪;
所述处理器根据所述惯性测量设备的测量值计算所述AR设备的位姿信息,根据所述位姿信息对所述二维特征点的跟踪结果进行三角化,得到三维特征点,其中,所述二维特征点与所述三维特征点对应;
所述处理器获取所述三维特征点在所述第二图像中的二维投影点,建立重投影误差方程,计算所述二维特征点与所述二维投影点之间的误差,根据所述AR设备的观测方程计算雅可比矩阵;
所述处理器根据所述雅可比矩阵和所述误差,通过卡尔曼滤波器,对所述AR设备的系统状态量和系统协方差矩阵进行更新。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5中任一项所述方法的步骤。
CN202010564644.9A 2020-06-19 2020-06-19 图像跟踪的方法、装置、ar设备和计算机设备 Active CN111862150B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010564644.9A CN111862150B (zh) 2020-06-19 2020-06-19 图像跟踪的方法、装置、ar设备和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010564644.9A CN111862150B (zh) 2020-06-19 2020-06-19 图像跟踪的方法、装置、ar设备和计算机设备

Publications (2)

Publication Number Publication Date
CN111862150A true CN111862150A (zh) 2020-10-30
CN111862150B CN111862150B (zh) 2024-06-14

Family

ID=72987719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010564644.9A Active CN111862150B (zh) 2020-06-19 2020-06-19 图像跟踪的方法、装置、ar设备和计算机设备

Country Status (1)

Country Link
CN (1) CN111862150B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112950677A (zh) * 2021-01-12 2021-06-11 湖北航天技术研究院总体设计所 图像跟踪仿真方法、装置、设备及存储介质
CN113242421A (zh) * 2021-04-02 2021-08-10 青岛小鸟看看科技有限公司 相机校准方法、装置及虚拟现实设备
CN113470181A (zh) * 2021-07-14 2021-10-01 浙江商汤科技开发有限公司 平面构建方法、装置、电子设备及存储介质
CN114170273A (zh) * 2021-12-08 2022-03-11 南方电网电力科技股份有限公司 一种基于双目相机的目标跟踪方法及相关装置
CN114972514A (zh) * 2022-05-30 2022-08-30 歌尔股份有限公司 Slam定位方法、装置、电子设备和可读存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105931275A (zh) * 2016-05-23 2016-09-07 北京暴风魔镜科技有限公司 基于移动端单目和imu融合的稳定运动跟踪方法和装置
CN107590453A (zh) * 2017-09-04 2018-01-16 腾讯科技(深圳)有限公司 增强现实场景的处理方法、装置及设备、计算机存储介质
CN107705333A (zh) * 2017-09-21 2018-02-16 歌尔股份有限公司 基于双目相机的空间定位方法及装置
CN108648235A (zh) * 2018-04-27 2018-10-12 腾讯科技(深圳)有限公司 相机姿态追踪过程的重定位方法、装置及存储介质
CN109991636A (zh) * 2019-03-25 2019-07-09 启明信息技术股份有限公司 基于gps、imu以及双目视觉的地图构建方法及系统
WO2019157925A1 (zh) * 2018-02-13 2019-08-22 视辰信息科技(上海)有限公司 视觉惯性里程计的实现方法及系统
CN110335308A (zh) * 2019-06-28 2019-10-15 中国科学院自动化研究所 基于视差约束与双向环形检验的双目视觉里程计计算方法
WO2019205865A1 (zh) * 2018-04-27 2019-10-31 腾讯科技(深圳)有限公司 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN110490900A (zh) * 2019-07-12 2019-11-22 中国科学技术大学 动态环境下的双目视觉定位方法及系统
CN110517324A (zh) * 2019-08-26 2019-11-29 上海交通大学 基于变分贝叶斯自适应算法的双目vio实现方法
CN111161337A (zh) * 2019-12-18 2020-05-15 南京理工大学 一种动态环境下的陪护机器人同步定位与构图方法
CN111220155A (zh) * 2020-03-04 2020-06-02 广东博智林机器人有限公司 基于双目视觉惯性里程计估计位姿的方法、装置与处理器

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105931275A (zh) * 2016-05-23 2016-09-07 北京暴风魔镜科技有限公司 基于移动端单目和imu融合的稳定运动跟踪方法和装置
CN107590453A (zh) * 2017-09-04 2018-01-16 腾讯科技(深圳)有限公司 增强现实场景的处理方法、装置及设备、计算机存储介质
CN107705333A (zh) * 2017-09-21 2018-02-16 歌尔股份有限公司 基于双目相机的空间定位方法及装置
WO2019157925A1 (zh) * 2018-02-13 2019-08-22 视辰信息科技(上海)有限公司 视觉惯性里程计的实现方法及系统
CN108648235A (zh) * 2018-04-27 2018-10-12 腾讯科技(深圳)有限公司 相机姿态追踪过程的重定位方法、装置及存储介质
WO2019205865A1 (zh) * 2018-04-27 2019-10-31 腾讯科技(深圳)有限公司 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN109991636A (zh) * 2019-03-25 2019-07-09 启明信息技术股份有限公司 基于gps、imu以及双目视觉的地图构建方法及系统
CN110335308A (zh) * 2019-06-28 2019-10-15 中国科学院自动化研究所 基于视差约束与双向环形检验的双目视觉里程计计算方法
CN110490900A (zh) * 2019-07-12 2019-11-22 中国科学技术大学 动态环境下的双目视觉定位方法及系统
CN110517324A (zh) * 2019-08-26 2019-11-29 上海交通大学 基于变分贝叶斯自适应算法的双目vio实现方法
CN111161337A (zh) * 2019-12-18 2020-05-15 南京理工大学 一种动态环境下的陪护机器人同步定位与构图方法
CN111220155A (zh) * 2020-03-04 2020-06-02 广东博智林机器人有限公司 基于双目视觉惯性里程计估计位姿的方法、装置与处理器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WEIBO HUANG, ET AL.: "An Online Initialization and Self-Calibration Method for Stereo Visual-Inertial Odometry", IEEE TRANSACTIONS ON ROBOTICS, 20 February 2020 (2020-02-20), pages 1153 - 1170 *
张旭东;李文龙;胡良梅;叶子瑞;: "基于PMD相机的特征跟踪位姿测量方法", 电子测量与仪器学报, no. 07, 15 July 2013 (2013-07-15), pages 58 - 64 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112950677A (zh) * 2021-01-12 2021-06-11 湖北航天技术研究院总体设计所 图像跟踪仿真方法、装置、设备及存储介质
CN113242421A (zh) * 2021-04-02 2021-08-10 青岛小鸟看看科技有限公司 相机校准方法、装置及虚拟现实设备
CN113470181A (zh) * 2021-07-14 2021-10-01 浙江商汤科技开发有限公司 平面构建方法、装置、电子设备及存储介质
CN114170273A (zh) * 2021-12-08 2022-03-11 南方电网电力科技股份有限公司 一种基于双目相机的目标跟踪方法及相关装置
CN114972514A (zh) * 2022-05-30 2022-08-30 歌尔股份有限公司 Slam定位方法、装置、电子设备和可读存储介质

Also Published As

Publication number Publication date
CN111862150B (zh) 2024-06-14

Similar Documents

Publication Publication Date Title
CN111862150B (zh) 图像跟踪的方法、装置、ar设备和计算机设备
CN107990899B (zh) 一种基于slam的定位方法和系统
JP7178396B2 (ja) 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法およびコンピュータシステム
CN107888828B (zh) 空间定位方法及装置、电子设备、以及存储介质
Tanskanen et al. Live metric 3D reconstruction on mobile phones
KR20220009393A (ko) 이미지 기반 로컬화
CN111127524A (zh) 一种轨迹跟踪与三维重建方法、系统及装置
CN109461208B (zh) 三维地图处理方法、装置、介质和计算设备
US20140369557A1 (en) Systems and Methods for Feature-Based Tracking
CN108871311B (zh) 位姿确定方法和装置
US20110261187A1 (en) Extracting and Mapping Three Dimensional Features from Geo-Referenced Images
CN108389264B (zh) 坐标系统确定方法、装置、存储介质及电子设备
WO2020221307A1 (zh) 一种运动物体的追踪方法和装置
CN113808253A (zh) 场景三维重建的动态对象处理方法、系统、设备及介质
EP2851868A1 (en) 3D Reconstruction
CN107980138A (zh) 一种虚警障碍物检测方法及装置
CN111833447A (zh) 三维地图构建方法、三维地图构建装置及终端设备
CN114820935A (zh) 三维重建方法、装置、设备及存储介质
CN109040525B (zh) 图像处理方法、装置、计算机可读介质及电子设备
CN112991441A (zh) 相机定位方法、装置、电子设备及存储介质
CN108028904B (zh) 移动设备上光场增强现实/虚拟现实的方法和系统
TW202314593A (zh) 定位方法及設備、電腦可讀儲存媒體
WO2023140990A1 (en) Visual inertial odometry with machine learning depth
CN108804161B (zh) 应用的初始化方法、装置、终端和存储介质
CN112258647B (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