APP下载

一种基于几何约束和直线特征的目标跟踪算法

2021-05-12刘婉君

现代计算机 2021年7期
关键词:特征向量重合边缘

刘婉君

(四川大学计算机学院,成都610065)

0 引言

平面目标跟踪是增强现实领域中一种针对平面目标的三维跟踪技术,同时也是各种视频应用中的一个基本任务[1]。随着社会智能化进程的加快,其需求和应用场景不断扩大。近年来,无人驾驶汽车、SLAM 系统等领域的出现,使得平面目标跟踪技术对于跟踪的精确性和鲁棒性要求也越来越高。回顾过去的几十年,在前人的不断努力和探索中,目标跟踪已取得了长足的进步,技术相对成熟。虽然各类优秀的算法和有效的新理论相继涌现,但现有的平面目标跟踪算法依旧无法完全适应各种恶劣的跟踪条件,特别是在视点移动过程中造成的运动模糊、遮挡、超出视野等复杂情况下仍面临着巨大挑战。

本文针对上述问题,介绍了一种结合边缘几何约束和直线特征的平面目标跟踪算法。在直线检测基础上,利用光流点确定平面物体的凸包范围筛选候选直线,再求解相邻两帧之间的直线重合度,构建像素点邻域内线段描述子,并基于重合度和特征向量相似度实现平面目标边缘直线的匹配,同时引入单应性矩阵对角点坐标进行约束,以确定最终目标位置。

1 相关工作

到目前为止,常用的平面目标跟踪方法大致可分为三类,一是基于关键点的方法[2-3],需要提取原始特征构建周围点的二维描述符,以最近邻的方式进行匹配,但一旦出现重复纹理或者关键点稀疏,特征点可能会失效。二是基于模板的方法[4],直接利用像素的外观特征,不考虑特征点,然后通过最小化测量两帧间误差来估算模板的转换参数,通常容易受到局部遮挡和快速运动等扰动因素的影响。三是基于图的方法[5],采用一种几何图形匹配方法,输出匹配度最好、关系最优的候选图,最后转化为跟踪目标的图像位置,此类方法对视点变化比较敏感。

上述算法在一般场景中都能工作良好,但复杂环境下跟踪的稳定性和准确性却难以得到保证,而本文算法不仅适用于室内,还能很好地适应户外场景,极大拓展了自身的应用范围。并且在直线特征描述子构建过程中充分考虑了旋转、尺度变化等因素,与以前的方法相比,克服了视点远近带来的局限性,在保证有效跟踪的基础上,能够一定程度上减少对跟踪器的跟踪性能[6]的影响。

2 算法实现

算法将初始图像帧中已标定的四个顶点坐标作为输入,通过预处理操作筛选出目标周围符合要求的部分候选直线,满足重合度和特征相似度约束的则认为匹配成功,输出为视频序列下一帧中平面目标的具体位置信息。具体流程如图1 所示。

图1 算法流程图

2.1 图像预处理

首先把彩色图像转换为灰度图像,并进行高斯平滑滤波消除图像噪声。之后通过Canny 算子[7]检测图像平面内的有效直线,其原理类似于其他梯度算子,不同的是它会从水平、垂直和对角线四个不同的方向计算梯度幅值估计边缘强度,寻找像素点局部最大值。其中非最大值抑制可以较好地减少宽度细化边缘,接着再用双阈值处理和连接合并断裂的短线段。然后对时刻t 的视频帧中平面物体边缘按比采样获得轮廓点集,利用Lucas-Kanade 稀疏光流法[8]进行跟踪。该算法基于三个不变性假设:①亮度恒定,②像素偏移小,③空间一致性,可大致计算出t+1 时刻对应点的图像坐标。由光流跟踪结果能够确定目标物体所在位置的凸包范围,位于该区域内的直线将作为候选直线用于后续重合度约束和直线特征构建处理。

2.2 计算重合度

假设摄像机运动微小,视频相邻两帧之间运动偏移量不大。在理想情况下,基于前提条件相互重合或匹配的两条直线线段理应基本平行,并接近于一条直线。但实际匹配过程中,绝大多数的候选直线与待匹配直线都存在一定的距离和角度,如图2,l 表示待匹配直线,l’表示候选直线。

图2 候选直线与待匹配直线位置关系

为突出两条直线重合区域间的大小变化,本文采取积分求解面积的方法。以待匹配直线和候选直线交点作为原点,所交锐角的角平分线为x 轴建立新的坐标系。(x1,y1)和(x2,y2)分别对应重合区域的起点和终点坐标。设x 代表重合区域内位于待匹配直线上的点的横坐标,s 表示任意点x 的距离,有:

为避免式(1)中的s 值因两直线斜率相近较小而导致失效,直线重合度函数公式(2)的定义引入了模糊数学中常见的隶属度概念,然后在定义域内继续对该函数求定积分,所得结果即为待匹配直线与当前候选直线段重合区域的长度。

式中dis 设置为候选直线和待匹配直线对应的起点距离和终点距离的均值,分别计算当前帧中每条候选直线的重合度。本文中重合度下限为待匹配直线长度的1/2,当O( l,l' )大于等于该阈值时,则保留其重合度值,记录匹配结果。

2.3 特征匹配与矫正

直线特征描述子的构建如图3 所示,在候选直线上按顺时针方向等距采点,并沿x 轴或y 轴方向确定邻域范围。为解决尺度因素影响,邻域大小可根据图像和边缘像素比自适应调整。分别选取所在直线梯度方向上下各两个点a1,a2,b1,b2和边缘上一点pt,基于Lab颜色模型计算a、b 方向上采样点与直线上的点的通道梯度值,以保证特征向量具有光照不变性和旋转不变性。然后将其封装成一个多维向量d(ii=1,2,…,n),最终候选线段n 个采样点的特征向量组合构成直线特征描述子D=(d1,d2,d3,…,dn)。

图3 直线特征向量示意图

候选直线的匹配需要对特征向量进行重定位,即确定候选直线的特征描述子对应于待匹配直线描述子的相对位置。根据直线预处理过程光流跟踪结果计算边缘的最小外接圆,以圆的半径作为基准,将候选直线的起点和终点投影到该线段上,相应占比为直线匹配的具体范围。皮尔逊相关系数能够反映两个变量之间的线性相关程度,因此本文选取该统计指标作为匹配的衡量标准之一。对多维的直线描述子均一化为一维的特征向量,按积差方法得到相似度,同时求解梯度方向的残差和。以重合度约束为前提,候选直线中相似度最高的成为平面目标的匹配边缘。

跟踪过程中,由于目标被遮挡或相机出现瞬间抖动造成图像模糊,可能会出现直线特征的丢失或是找不到任何对应的直线段,从而匹配失败。本文主要是通过单应性变换来完成平面目标边缘的修补和校正,从相邻两帧提取SIFT 特征点后恢复出单应性矩阵,利用同一平面的变换关系将当前帧的角点投射到下一帧,以此解决边缘遮挡直线特征描述子提取失败的问题,确保跟踪的稳定性。

3 实验结果

实验环境为Intel Core i5-7400 CPU,8G 运行内存,以OpenCV 3.4.3、Boost、Eigen、Ceres 等开源库作为支持,在虚拟机Ubuntu 16.04 操作系统下运行。根据场景首帧中人工标注的角点坐标,针对移动视点视频里的平面目标进行定位跟踪,红色框内为跟踪目标,第一张为初始标定帧。与Ferns[3]算法对比,相同场景下同帧实验结果如下,(a)(b)分别为Ferns 和本文算法,。图4 为室内场景遮挡的情况,视频某些帧会不定时出现遮挡物,图5 为超出视野,目标物体部分位于图像平面外不可见,此时Ferns 算法跟踪不稳定,容易产生偏差和形变,甚至丢失跟踪目标,而本文提出的方法,可以准确地定位到平面目标物体,可见整体上是优于Ferns 算法的。

4 结语

本文针对平面物体存在部分遮挡、超出视野的移动视点视频影像,提出基于几何约束和直线特征的目标跟踪算法。该算法不仅利用了直线的几何特征,同时参考了周围点的颜色信息,不同于其他基于特征点的描述子构建方法,本文引入了尺度因子,能够有效规避缩放带来的极大多数问题,而且摄像机的旋转受益于特征点采样时的方向校正,也能保持较好的稳定性。其次对于视频中的每帧进行在线处理,可以极大扩宽在增强现实领域的应用。但当视点快速移动出现明显的运动模糊时,本文算法较难提取到足够特征,因此如何提高适应性将是未来的工作重心。

图4 遮挡

图5 超出视野

猜你喜欢

特征向量重合边缘
克罗内克积的特征向量
高中数学特征值和特征向量解题策略
500kV线路重合闸故障分析与处理
三个高阶微分方程的解法研究
一张图看懂边缘计算
浅析重合闸
表针重合
正方体平面展开图中重合点的判定方法
矩阵方法求一类数列的通项
在边缘寻找自我