基于金字塔光流法的移动增强现实三维跟踪注册研究

2022-01-19 11:48王占刚
物联网技术 2022年1期
关键词:光流法光流摄像机

郑 磊,王占刚

(北京信息科技大学 信息与通信工程学院,北京 100101)

0 引 言

随着智能移动设备相关技术和人机交互技术的不断成熟,移动增强现实技术渐渐引起人们的关注。增强现实拥有虚实融合、实时交互和三维注册三个特性,其中三维注册技术是移动增强现实系统的核心技术,是虚拟场景和现实场景之间的配准,需要通过相应坐标公式计算出位移变化时的摄像机位姿,将虚拟信息实时显示在屏幕正确位置,完成三维注册。

三维注册技术分为基于硬件传感器的三维注册、基于计算机视觉的三维注册和混合注册。其中,基于计算机视觉的三维注册技术由于不再受场景和设备的限制,是当前应用较多的注册技术,一般分为基于人工标识的三维注册和基于无标识的三维注册。基于人工标识的三维注册技术需要提前在真实场景中放置某些定义的标志来进行跟踪注册,虽然简化了识别和跟踪的难度,但存在应用场景的局限性;而无标识的跟踪注册技术是通过识别场景图像的自然特征,比如轮廓、角点或者边缘等进行跟踪,因此无标识跟踪注册技术应用更广泛。但实际测试中,无标识的跟踪注册存在匹配准确率低、跟踪不稳定等缺点,导致三维注册效果差,因此需要运用高效的特征检测和跟踪算法来实现实时、稳定、精准的三维注册。

现阶段常用的特征检测和匹配算法有SIFT、SURF、ORB等,虽然各类算法匹配效果好,但需要考虑到移动增强现实系统的实时性,要求实时精准地检测用户摄像头相对于真实世界的位置和姿态信息,并且需要通过稳定的算法跟踪特征点,当摄像机与真实世界场景发生位移变化时能持续跟踪目标区域。本文提出一种AKAZE与金字塔光流法相结合的算法,采用AKAZE算法进行特征点的检测,再用光流法进行目标区域的跟踪,引入跟踪失败自动检测机制确保跟踪的持续性,利用持续跟踪的特征点进行特征匹配并计算摄像机内外参数实现注册。

1 AKAZE特征点检测

1.1 非线性扩散滤波

AKAZE算法采用非线性扩散滤波构建非线性尺度空间的形式来避免线性空间带来的图像细节丢失。扩散滤波描述图像亮度的演化是通过提升尺度参数作为热扩散函数的散度因子来控制扩散过程的,采用非线性偏微分方程来求解,方程如下:

为了优先保留宽度较大的区域,做到对区域扩散平滑的最优化,选择式(2)作为核函数:

其中参数表示扩散的程度,用于控制边缘信息保留量。

AKAZE算法利用FED的框架来快速求解式(1)。FED的理论思想与box滤波器的显式理论分解思想相似,在执行个循环的次显示步骤过程中,用变化的步长解决大量线性方程的计算问题,结合显式方案和半隐式的优点,保证稳定性的同时减少计算量。

首先将经典的非线性偏微分公式进行矢量化,得到以下公式:

其中是对图像编码的传导矩阵。然后,假设初始状态L=L,用变化的步长τ取代,则FED的周期变为:

其中:为最大步长值,保证显式求解稳定;为循环长度,表示整个FED算法循环的次数。

1.2 非线性尺度空间的建立

AKAZE算法建立尺度空间需要分组octaves,每个阶层有个sub-level,分别用和去标记octave和sub-level。设定一个尺度参数,由此构建的非线性尺度空间公式如下:

其中:σ是初始值;=,是所有图像的数量。

通过卷积公式将尺度空间里得到的σ进行时间单位的转换,使其单位与非线性扩散滤波保持一致,映射公式如下:

其中t是进化时间。通过式(7)能够将尺度空间中得到的σ转换成时间参数t

1.3 特征点的检测

AKAZE算法的特征点检测是通过寻找不同尺度归一化后的Hessian局部极大值点来实现的。比较空间定义为3×3×3的立方体,如图1所示。

图1 尺度空间示意图

将中心位置的检测点与图1所示空间的其余26个点进行比较,Hessian矩阵公式为:

在空间位置里找到极大值点后,采用Hessian矩阵做行列式的拟合并进行准确定位。根据Taylor展开式,则有:

求得特征点亚像素解为:

2 金字塔光流法

光流法实质是一种两帧差分光流估计算法,把视频流捕捉到某一帧的特征点作为持续跟踪的对象,找出点在下一帧的位置来做相机对场景的自运动估计。假设场景中亮度恒定、物体小幅度运动的条件下,在相同空间中的特征点运动一致,则两个相同特征点之间的灰度值一致,视频流两帧之间特征点相对图片中物体移动的距离与特征点灰度值之间存在联系,求解特征点相对物体移动的距离即可跟踪特征点。

2.1 光流法算法原理

光流法金字塔算法分为三个步骤:金字塔的建立、金字塔跟踪以及算法的迭代过程。建立金字塔时将原始图像放在底层,将最低分辨率的图像放在顶层。每一层均是上一层的下采样。从顶层开始,通过匹配每个点最小化邻域内误差和来计算光流。假设每次图像的尺寸都缩小为上一层的一半,原图为第0层,共缩放层,假设原图运动物体的位移距离为,那么每层图像的位移为:

先在最后一层即层求解位移进行光流计算,将结果反馈到上一层-1,作为该层的初始光流估计值,计算公式为:

以此类推,将-1层结果向-2层反馈,并作为该层的初始光流值,直到第0层图像,得到原始图像的光流大小。

其中:是要求的光流准确值;是估算值;是残值。由于每一层点的光流计算都是该点最小化邻域内所有匹配点误差的累计和,这样的匹配搜索能解决图像内事物位移变化较大的跟踪问题,也可以在同样大小的窗口内尽量多地跟踪特征点,以此解决孔径问题。最小化匹配累计和的优化公式为:

室外用移动设备捕获目标场景来检测特征点时,一般处于大幅度运动情况,特征点检测窗口的选择需要权衡准确性和鲁棒性。金字塔光流法的迭代过程能有效地弱化窗口的局限性,是对光流法的小幅度运动假设条件的改善,适合应用于室外场景。

2.2 跟踪失效自动检测机制

光流法跟踪计算摄像机的位姿信息,是基于相邻帧之间的特征点关系来估算的。跟踪识别的时间越长,匹配点的光流累计误差和越大,估算的相机位姿信息会有误差。因此需要引进特征点跟踪失败机制,将跟踪失败的特征点进行删除,减小相邻帧间点的累计误差,提高计算姿态信息的准确性。

采用前向后向误差法实现跟踪失效的自动检测,如图2所示。该方法基于前后一致性假设,将一串视频序列里某一点的位置定义为一个轨迹。跟踪过程中,在时间序列上向前向后生成的两条轨迹是重叠的,则保证该点一直处于正确跟踪的状态。

图2 前后误差检测假设图

对于某一特征点的轨迹进行前后误差计算,假设存在视频序列=(I,I, ...,I)。某一特征点在时刻的位置为X,向前检测时刻得到的轨迹为:

其中f代表向前。将点X向后跟踪到第一帧形成另一条轨迹,则有:

如果距离值过大表示轨迹相差过大,跟踪失效;当差距小于一定的阈值,则表示跟踪正确。

3 FLANN特征匹配

区别于AKAZE算法的BF暴力匹配,本文采用高维最近邻FLANN算法来提升匹配效率。FLANN算法是在已知数据集内,根据分布特点和所要求的空间资源消耗有效快速地得到搜索类型。根据计算欧式距离寻找特征点邻域的最近距离点,欧氏距离的公式如下:

值越低表示特征点对之间的距离越近,即图像中特征点对匹配程度越高。为了能直接表述匹配效果,设一个阈值与(特征点的最近点与次近点比值)进行比较来判断是否成功匹配。将最近邻与次近邻的特征点的欧式距离分别用DD表示,则最近点与次近点比值为:

如果<,则表示匹配成功。

4 摄像机位姿计算方法

三维跟踪注册技术是指在移动增强现实系统中,智能移动设备的摄像头拍摄真实世界场景时,通过计算确定摄像机内部参数和外部参数,将世界坐标系、摄像机坐标系和图像平面坐标系三个重要的坐标系联系起来,从而将三维模型、文字信息等虚拟信息显示在根据摄像机坐标系计算出的现实世界屏幕上的位置,最终达到虚实融合。

世界坐标系(-)、图像坐标系(-)和相机坐标系(-)存在如图3所示的映射关系。如果要将一个图像上的像素点(,)与真实世界的点(,,)之间建立关系,则映射公式为:

图3 坐标系关系示意图

其中:为摄像机内部参数;=[]为摄像机外部参数,包含着旋转分量和平移变化矩阵,决定了摄像机的位置和姿态信息。根据张式标定法,图像平面坐标系位于世界坐标系中时,=0,式(20)变为:

式中为图像坐标系和世界坐标系之间的单应性矩阵。假设矩阵的列向量分别为、、,由于旋转矩阵的正交性,求得、、的值简写为:

通过式(22)求解出摄像机的外部参数。

5 实验过程与分析

为了验证本文算法的实时性、跟踪的准确性和三维注册系统的稳定性,本文先进行特征检测算法的实验对比,验证AKAZE算法的特征提取速率更快;再通过一段视频流的目标跟踪测试验证算法的跟踪稳定性和三维注册效果的精准度。视频流时长为15 s,选择的图像集为真实场景的室外建筑物图像,并分别进行亮度变化、视角变化的特征点检测实验。

为了进行不同视角的SIFT、SURF、KAZE、AKAZE算法特征点检测速率比较,分别选用了同一建筑物的左、中、右三种视角的图片,如图4所示。将图4中三张图片分别进行特征检测,比较四种算法的检测速率。实验结果见表1所列。

图4 不同视角下的图像

表1 不同视角下的特征点检测时间

对不同光照变化下的图像进行特征检测实验,该组包含如图5所示的5张图像,检测结果见表2所列。

图5 不同光照下的图像

表2 不同光照条件下的特征点检测时间

表1和表2的结果表明,视角和光照变化的情况下,本文所使用的AKAZE算法比其他算法的特征检测时间更短,并且速率变化幅度小,较稳定。

本文的目标跟踪结果和三维注册效果是依次截取的视频流中的图像帧,其中包含对物体的角度变化的跟踪和注册实验、局部目标跟踪和被遮挡时的三维注册实验。跟踪效果如图6所示。

图6 跟踪效果

实验结果表明,在视频中随着时间的增加,当物体存在角度变化和部分区域丢失的情况时,黑色方框变化幅度小,验证了在长时间跟踪的情况下采用本文的跟踪方法时,相邻帧之间的特征点运动导致的光流累计误差和小,能稳定持续地进行目标跟踪。同时,在三维注册实验中,当存在视角变化、旋转变化和遮挡情况时,虚拟的三维动物模型依然可以准确地叠加在目标的相同位置上,能达到准确的三维注册和虚实融合效果,如图7所示。

图7 三维注册效果

6 结 语

本文采用AKAZE算法进行目标跟踪区域的特征点检测,利用光流法进行特征点的跟踪,同时引入跟踪失效自动检测机制,保证特征点数量充足,确保持续稳定的跟踪效果;最终通过FLANN匹配相邻帧的特征点并计算摄像机位姿信息实现移动增强现实的三维注册。实验结果表明,光照变化和视角变化时与其他方法相比,本文的方法检测速率较高,能够保证实时性;且在物体运动变化、部分区域丢失和受到遮挡时能保持稳定地跟踪和精准地注册,满足移动增强现实系统的性能需求。

猜你喜欢
光流法光流摄像机
利用掩膜和单应矩阵提高LK光流追踪效果
基于物理学的改善粒子图像测速稳健光流方法研究
基于背景分类的监控视频中的运动目标检测算法综述
摄像机低照成像的前世今生
Matlab下视频处理系统设计与实现
新安讯士Q6155-E PTZ摄像机
权重系数自适应光流法运动目标检测
初始段安控图像目标识别方法研究
融合光流速度场与背景差分的自适应背景更新方法
利用PSO估算Lucas-Kanade光流模型的参数