«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (3): 102-108, 116  DOI: 10.19678/j.issn.1000-3428.0058414
0

引用本文  

尚桠朝, 孟令军. 基于多特征和尺度估计的KCF_MTSA算法[J]. 计算机工程, 2021, 47(3), 102-108, 116. DOI: 10.19678/j.issn.1000-3428.0058414.
SHANG Yachao, MENG Lingjun. KCF_MTSA Algorithm Based on Multiple Features and Scale Estimation[J]. Computer Engineering, 2021, 47(3), 102-108, 116. DOI: 10.19678/j.issn.1000-3428.0058414.

基金项目

山西省自然科学基金(201901D111162)

作者简介

尚桠朝(1995-), 男, 硕士研究生, 主研方向为目标跟踪;
孟令军, 副教授、博士

文章历史

收稿日期:2020-05-25
修回日期:2020-07-16
基于多特征和尺度估计的KCF_MTSA算法
尚桠朝 , 孟令军     
中北大学 电子测试技术国家重点实验室, 太原 030051
摘要:多模板尺度自适应核相关滤波器(KCF_MTSA)跟踪算法在目标移动模糊、旋转和尺度变化时跟踪距离精度与成功率较低。针对该问题,提出一种结合多特征和尺度估计的改进KCF_MTSA目标跟踪算法。采用方向梯度直方图和颜色名两种特征对目标进行表征,在训练阶段分别使用多模板核相关滤波器对上述特征进行训练,同时在检测阶段将两个滤波器的响应以权重形式进行自适应融合获取响应图实现目标定位,并使用一维相关滤波器进行目标尺度估计。实验结果表明,该算法的跟踪距离精度和准确率较改进前KCF_MTSA算法有明显提升,其距离精度和准确率分别提高15.8%和28.5%。
关键词核相关滤波器    自适应特征融合    目标跟踪    颜色名特征    多模板    
KCF_MTSA Algorithm Based on Multiple Features and Scale Estimation
SHANG Yachao , MENG Lingjun     
National Key Laboratory of Electronic Measurement Technology, North University of China, Taiyuan 030051, China
Abstract: The Kernelized Correlation Filter based on Multiple-Template Scale Adaptation(KCF_MTSA)tracking algorithm encounters a reduction in the tracking range precision and success rate when the target moves blurred, rotates and scales change rapidly.To address the problem, this paper proposes an improved KCF_MTSA target tracking algorithm combining multiple features and scale estimation.The Histogram of Oriented Gradient (HOG) and Color Name(CN)are used to represent the target.In the training phase, the multiple template Kernelized Correlation Filter (KCF) is used to train the above features.At the same time, in the detection phase, the responses of the two filters are adaptively fused in the form of weight to obtain the response map to realize the target localization, and the one-dimensional correlation filter is used to estimate the target scale.Experimental results show that the tracking range precision and accuracy of the proposed algorithm are significantly higher than the original KCF_MTSA algorithm, it improves the range precision and accuracy by 15.8% and 28.5% respectively.
Key words: Kernelized Correlation Filter(KCF)    adaptive feature fusion    object tracking    Color Name(CN) feature    multiple templates    
0 概述

目标跟踪作为计算机视觉的重要组成部分,被广泛应用于交通安全[1]、自动驾驶[2]和行为识别[3]等领域。然而在实际应用场景中,由于目标常出现形变、遮挡和快速移动等情况,造成跟踪效果急剧下降,因此提高复杂情况下的目标跟踪精度和成功率具有重要意义[4]

相关滤波器算法因具有跟踪精度高和速度快的特性成为目标跟踪的研究热点之一[5-6]。文献[7]提出一种使用方向梯度直方图(Histogram of Oriented Gradient,HOG)特征的核相关滤波器(Kernelized Correlation Filter,KCF)跟踪算法,引入循环矩阵和核函数使该算法在保持高帧率的情况下跟踪精度得到极大提升。文献[8]提出一种SAMF算法将多种特征进行融合,在定位目标的同时求解最佳目标尺寸。文献[9]提出判别尺度空间跟踪(Discriminative Scale Space Tracker,DSST)算法,通过引入一维相关滤波器完成目标尺度估计。上述算法求解滤波器时会忽略目标的历史信息,对此,文献[10]提出多模板尺度自适应核相关滤波器(Kernelized Correlation Filter based on Multiple-Template Scale Adaptation,KCF_MTSA)跟踪算法,同时更新历史模板信息与当前模板信息来求解滤波器,从而实现滤波器的时间一致性。文献[11]提出Staple算法,将方向梯度直方图特征与颜色直方图特征进行融合,有效提升算法性能。文献[12]提出背景感知相关滤波器(Background-Aware Correlation Filter,BACF)算法,利用掩膜矩阵获取正负样本建立目标模板,在实现高精度的同时确保高速率。随着深度学习的兴起,文献[13-14]利用卷积神经网络进行跟踪目标的特征提取,特征辨识度更高,算法性能得到较大提升,但是其计算开销较大,在实际应用中难以满足实时跟踪的要求。

针对KCF_MTSA算法提取特征单一与尺度策略较简单的问题,本文提出一种改进的多模板尺度自适应核相关滤波器跟踪算法。通过方向梯度直方图和颜色名(Color Name,CN)表征目标特征,在决策层对两种特征的响应进行自适应融合以实现目标定位,同时引入一维相关滤波器进行尺度估计,并计算多尺度样本信息中尺度滤波器的响应,从而得到当前目标的最佳估计尺寸。

1 KCF_MTSA算法 1.1 分类器训练

在KCF算法中,利用非线性映射函数$ \varphi \left(\boldsymbol{x}\right) $使映射后的样本在高维空间线性可分,在新空间使用岭回归[15]方法对回归函数$ f\left(\boldsymbol{x}\right)={\boldsymbol{w}}^{\mathrm{T}}\boldsymbol{x} $训练如下:

$ \underset{w}{\mathrm{m}\mathrm{i}\mathrm{n}}\sum\limits _{i}^{n}{\left(f\left(\boldsymbol{w};{\boldsymbol{P}}^{i}\boldsymbol{x}\right)-{y}_{i}\right)}^{2}+\lambda {\left\|\boldsymbol{w}\right\|}_{2}^{2} $ (1)

其中,$ {\boldsymbol{P}}^{i} $为循环移位算子,$ \boldsymbol{x} $为基础样本,$ {\boldsymbol{P}}^{i}\boldsymbol{x} $为基础样本$ \boldsymbol{x} $循环右移i个单位,$ {y}_{i} $为对应样本的期望输出。

上述目标函数可改写为:

$ \underset{\boldsymbol{w}}{\mathrm{m}\mathrm{i}\mathrm{n}}{\left\|\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}\boldsymbol{w}-\boldsymbol{y}\right\|}_{2}^{2}+\lambda {\left\|\boldsymbol{w}\right\|}_{2}^{2} $ (2)

其中,$ \mathit{\boldsymbol{ \boldsymbol{\varPhi} }} $为包含样本$ \boldsymbol{x} $所有循环移位样本的映射。在KCF_MTSA算法中,将训练滤波器中样本扩展到2个,假设在第n帧滤波器训练中目标模板为$ {\boldsymbol{x}}_{n} $,其循环矩阵为$ {\boldsymbol{X}}_{n} $,则KCF_MTSA算法的目标函数为:

$ \underset{\boldsymbol{w}}{\mathrm{m}\mathrm{i}\mathrm{n}}{\left\|\left(\begin{array}{c}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}\\ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}\end{array}\right)\boldsymbol{w}-\left(\begin{array}{c}\boldsymbol{y}\\ \boldsymbol{y}\end{array}\right)\right\|}_{2}^{2}+\lambda {\left\|\boldsymbol{w}\right\|}_{2}^{2} $ (3)

其中,$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1} $$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2} $为上一帧目标模板$ {\boldsymbol{x}}_{1} $和当前帧目标模板$ {\boldsymbol{x}}_{2} $的循环移位样本的映射矩阵。$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{i} $为循环矩阵,通过引入一个辅助变量分别对两个目标模板进行滤波器求解,并加入一个约束使两个目标模板所求滤波器相等,表达式如下:

$ \left\{\begin{array}{l}\underset{{\boldsymbol{w}}_{1}, {\boldsymbol{w}}_{2}}{\mathrm{m}\mathrm{i}\mathrm{n}}{\left\|\left(\begin{array}{c}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\boldsymbol{w}}_{1}-\boldsymbol{y}\\ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}{\boldsymbol{w}}_{2}-\boldsymbol{y}\end{array}\right)\right\|}_{2}^{2}+\lambda {\left\|\left(\begin{array}{c}{\boldsymbol{w}}_{1}\\ {\boldsymbol{w}}_{2}\end{array}\right)\right\|}_{2}^{2}\\ \mathrm{s}\mathrm{u}\mathrm{b}\mathrm{j}\mathrm{e}\mathrm{c}\mathrm{t}\;\mathrm{t}\mathrm{o}\;{\boldsymbol{w}}_{1}={\boldsymbol{w}}_{2}\end{array}\right. $ (4)

上述问题可通过将硬约束换成软约束求解,引入正则项如下:

$ \frac{\mu }{2}{\left\|{\boldsymbol{w}}_{1}-{\boldsymbol{w}}_{2}\right\|}_{2}^{2} $ (5)

式(5)中额外的正则项可确保两个滤波器的一致性。在每次迭代过程中,参数$ \mu $不断增大,且每次迭代通过交替定点来优化问题:首先初始化滤波器$ {\boldsymbol{w}}_{2} $,再利用其优化另一个滤波器$ {\boldsymbol{w}}_{1} $,然后利用滤波器$ {\boldsymbol{w}}_{1} $求解滤波器$ {\boldsymbol{w}}_{2} $,如此进行多次循环直到满足迭代要求。使用单模板的核相关滤波器进行滤波器初始化,在第j次迭代过程中,求解对偶问题如下:

$ \underset{{\boldsymbol{w}}_{1}}{\mathrm{m}\mathrm{i}\mathrm{n}}{\left\|{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\boldsymbol{w}}_{1}-\boldsymbol{y}\right\|}_{2}^{2}+\lambda {\left\|{\boldsymbol{w}}_{1}\right\|}_{2}^{2}+\mu {\left\|{\boldsymbol{w}}_{1}-{\boldsymbol{w}}_{2}^{\boldsymbol{j}}\right\|}_{2}^{2} $ (6)
$ \underset{{\boldsymbol{w}}_{2}}{\mathrm{m}\mathrm{i}\mathrm{n}}{\left\|{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}{\boldsymbol{w}}_{2}-\boldsymbol{y}\right\|}_{2}^{2}+\lambda {\left\|{\boldsymbol{w}}_{2}\right\|}_{2}^{2}+\mu {\left\|{\boldsymbol{w}}_{2}-{\boldsymbol{w}}_{1}^{\boldsymbol{j}+1}\right\|}_{2}^{2} $ (7)

由于式(6)和式(7)形式相同,因此求解其中任意一个即可。将式(6)改写为多特征核函数如下:

$ \underset{{\boldsymbol{w}}_{1}}{\mathrm{m}\mathrm{i}\mathrm{n}}\sum\limits _{\boldsymbol{i}}{\left({\boldsymbol{w}}_{1}^{\mathrm{T}}\varphi \left({\boldsymbol{x}}_{\boldsymbol{i}}\right)-{\boldsymbol{y}}_{\boldsymbol{i}}\right)}^{2}+\lambda {\left\|{\boldsymbol{w}}_{1}\right\|}_{2}^{2}+\mu {\left\|{\boldsymbol{w}}_{1}-\boldsymbol{b}\right\|}_{2}^{2} $ (8)

其中,$ \boldsymbol{b}={\boldsymbol{w}}_{2}^{j} $

根据KCF求解策略将式(8)求导为0,计算得到:

$ {\boldsymbol{w}}_{1}={\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\boldsymbol{a}}_{1}+k\boldsymbol{b} $ (9)

其中,$ {\boldsymbol{a}}_{1}^{i}=\frac{1}{\lambda +\mu }\left({\boldsymbol{w}}_{1}^{\mathrm{T}}\varphi \left({\boldsymbol{x}}_{i}\right)-{y}_{i}\right) $$ k=\frac{\mu }{\lambda +\mu } $。将对偶形式的$ {\boldsymbol{w}}_{1} $代入式(8)并求导为0,计算得到:

$ \begin{array}{l}\left({\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}^{\mathrm{T}}+(\lambda +\mu )\boldsymbol{I}\right){\boldsymbol{a}}_{1}=\\ y-\left(k\boldsymbol{I}+\left(\lambda k+\mu \left(k-1\right)\right){\left({\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}^{\mathrm{T}}\right)}^{-1}\right)\tilde{\boldsymbol{b}}\end{array} $ (10)

其中,$ \tilde{\boldsymbol{b}}={\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}\boldsymbol{b}={\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}^{\mathrm{T}}{\boldsymbol{a}}_{2} $

利用$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}^{\mathrm{T}} $$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}^{\mathrm{T}} $的傅里叶对角化性质得到:

$ \mathrm{\Gamma }\left(\tilde{\boldsymbol{b}}\right)=\mathrm{\Gamma }\left(\boldsymbol{F}\mathrm{d}\mathrm{i}\mathrm{a}\mathrm{g}\left({\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{2}}\right){\boldsymbol{F}}^{\mathrm{H}}{\boldsymbol{a}}_{2}\right)={\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{2}}\odot {{\widehat{a}}_{2}}^{\mathrm{*}} $ (11)

其中,$ \mathrm{\Gamma } $为离散傅里叶变换,$ {{\widehat{a}}_{2}}^{\mathrm{*}} $为变量$ {\boldsymbol{a}}_{2} $离散傅里叶变换的共轭形式,$ {\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{2}} $$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}^{\mathrm{T}} $的离散傅里叶变换。根据$ {\boldsymbol{k}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{2}}={\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{2}^{\mathrm{T}} $计算得到:

$ \mathrm{\Gamma }\left({\left({\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}^{\mathrm{T}}\right)}^{-1}\tilde{\boldsymbol{b}}\right)={\left({\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{1}}\right)}^{-1}\odot {\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{2}{\boldsymbol{x}}_{1}}\odot {{\widehat{a}}_{2}}^{\mathrm{*}} $ (12)

由式(12)计算得到:

$ {\widehat{a}}_{1}=\frac{\widehat{\boldsymbol{\psi }}}{{\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{1}{\boldsymbol{x}}_{1}}+\lambda +\mu } $ (13)

其中,$ \widehat{\boldsymbol{\psi }}=\mathrm{\Gamma }\left(-\left(k\boldsymbol{I}+(\lambda k+\mu (k-1\left)\right){\left({\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{1}^{\mathrm{T}}\right)}^{-1}\right)\tilde{\boldsymbol{b}}+\boldsymbol{y}\right) $。将更新$ {\boldsymbol{w}}_{1} $$ {\boldsymbol{w}}_{2} $转变为更新$ {\boldsymbol{a}}_{1} $$ {\boldsymbol{a}}_{2} $,由上述计算可得到式(3)的解。停止迭代的条件是目标模板的响应与高斯标签的误差小于阈值,若上述条件成立,则优化过程结束。

1.2 目标位置检测

KCF_MTSA目标位置检测和尺度估计同时进行,以上一帧检测到的目标中心点为中心,在当前帧图像中建立尺度池,采样n个尺度,计算每个尺度图像的响应,第i个尺度图像响应的计算公式如下:

$ \widehat{f}\left(\boldsymbol{z}\right)={\widehat{\boldsymbol{k}}}^{\boldsymbol{x}{\boldsymbol{z}}_{\boldsymbol{i}}}\odot \widehat{\boldsymbol{a}} $ (14)

其中,$ {\boldsymbol{z}}_{i} $为第i个尺度的样本,$ \boldsymbol{x} $为上一次跟踪完成后更新的模板,$ {\widehat{\boldsymbol{k}}}^{\boldsymbol{x}{\boldsymbol{z}}_{\boldsymbol{i}}} $$ {\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{\boldsymbol{x}}{\mathit{\boldsymbol{ \boldsymbol{\varPhi} }}}_{{\boldsymbol{z}}_{\boldsymbol{i}}}^{\mathrm{T}} $的离散傅里叶变换,$ \widehat{\boldsymbol{a}} $为多模板核相关滤波器参数。通过计算最大响应值的位置可得到目标的中心和尺寸。

1.3 模板更新

完成目标位置的定位与尺度估计后,更新目标模板和滤波器参数如下:

$ {{\overset\frown{\boldsymbol{X}}}_{t}}=\eta {{\boldsymbol{X}}_{t}}+(1-\eta ){{\overset\frown{X}}_{t-1}} $ (15)
$ {\overset\frown{\boldsymbol{a}}}={\widehat{\boldsymbol{a}}}_{t} $ (16)

其中,$ \eta $为学习率,${{\overset\frown{\boldsymbol{X}}}_{t}}$$ {{\overset\frown{\boldsymbol{X}}}_{t-1}}$分别为第t帧目标模板和第t-1帧目标模板,$ {\boldsymbol{X}}_{t} $为未更新的第t帧目标模板,$ {\widehat{\boldsymbol{a}}}_{t} $为第t帧滤波器参数。

2 改进的KCF_MTSA算法 2.1 互补特征自适应双核融合

本文使用方向梯度直方图和颜色名双核融合的方式进行目标定位。HOG特征通过计算和统计图像局部区域的梯度方向直方图构成特征,对光照和目标的几何变换不敏感;CN特征具有光照不变性,对目标大小和形变不敏感,但是在光照剧烈变化的情况下无法准确表征目标[16-17]。在复杂场景下,采用自适应特征融合的方式通过HOG和CN特征来表征目标,可实现目标跟踪。

提取上述特征,并分别计算两种特征的滤波器响应如下:

$ {\boldsymbol{R}}_{\mathrm{h}\mathrm{o}\mathrm{g}}={\widehat{\boldsymbol{k}}}^{{\boldsymbol{x}}_{\mathrm{h}\mathrm{o}\mathrm{g}}{\boldsymbol{z}}_{\mathrm{h}\mathrm{o}\mathrm{g}}}\odot {\widehat{\boldsymbol{a}}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $ (17)
$ {\boldsymbol{R}}_{\mathrm{c}\mathrm{n}}={\widehat{\boldsymbol{k}}}^{{x}_{\mathrm{c}\mathrm{n}}{z}_{\mathrm{c}\mathrm{n}}}\odot {\widehat{\boldsymbol{a}}}_{\mathrm{c}\mathrm{n}} $ (18)

其中,$ {\boldsymbol{x}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\boldsymbol{x}}_{\mathrm{c}\mathrm{n}} $分别为当前帧图像目标区域内的HOG特征和CN特征,$ {\boldsymbol{z}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\boldsymbol{z}}_{\mathrm{c}\mathrm{n}} $分别为上一帧图像目标模板更新后的HOG特征和CN特征,$ {\widehat{\boldsymbol{a}}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\widehat{\boldsymbol{a}}}_{\mathrm{c}\mathrm{n}} $分别为上一帧图像求解的HOG特征多模板核相关滤波器参数的离散傅里叶变换和CN特征多模板核相关滤波器参数的离散傅里叶变换。

在特征融合方面,使用两个多模板核相关滤波器,将每种特征获得的响应以权重形式进行融合如下:

$ \boldsymbol{R}={w}_{\mathrm{h}\mathrm{o}\mathrm{g}}\times {\boldsymbol{R}}_{\mathrm{h}\mathrm{o}\mathrm{g}}+\left(1-{w}_{\mathrm{h}\mathrm{o}\mathrm{g}}\right)\times {\boldsymbol{R}}_{\mathrm{c}\mathrm{n}} $ (19)

在式(19)中,$ {w}_{\mathrm{h}\mathrm{o}\mathrm{g}} $由HOG特征获取响应图的峰值旁瓣比(Peak to Side Lobe Ratio,PSR)和CN特征获取响应图的PSR共同决定,计算公式如下:

$ {w}_{\mathrm{h}\mathrm{o}\mathrm{g}}=\frac{{P}_{\mathrm{h}\mathrm{o}\mathrm{g}}}{{P}_{\mathrm{h}\mathrm{o}\mathrm{g}}+{P}_{\mathrm{c}\mathrm{n}}} $ (20)

PSR可作为跟踪结果的评价指标,该值越大,跟踪结果越可靠[18]

式(20)中$ P $的计算公式如下:

$ P=\frac{q-u}{\sigma } $ (21)

其中:$ q $为响应图的峰值,峰值周围区域为旁瓣区域;$ u $$ \sigma $分别为旁瓣区域的平均值和标准差。通过计算获得融合后的响应图,其峰值位置即为目标位置。

2.2 一维相关滤波器尺度估计

由于KCF_MTSA算法的尺度估计方法与SAMF算法类似,两者对尺度的估计均不理想,因此本文算法引入一维相关滤波器进行尺度估计[19]。假设当前图像为$ {\boldsymbol{I}}_{n} $,目标尺寸为$ P\times R $,对图像$ {\boldsymbol{I}}_{n} $提取训练样本,其中心为目标位置,样本的尺寸表达式如下:

$ {a}^{n}P\times {a}^{n}R $ (22)

其中,$n \in \left\{ {\left\lfloor { - \frac{{s - 1}}{2}} \right\rfloor , \cdots , \left\lfloor {\frac{{s - 1}}{2}} \right\rfloor } \right\}$为选取的尺度个数(本文中n=33),尺度因子a=1.02。

采用岭回归的方式训练样本并计算尺度滤波器,目标函数为:

$ \mathrm{m}\mathrm{i}\mathrm{n}{\left\|\boldsymbol{g}-\sum\limits _{i=1}^{n}{\boldsymbol{h}}_{i}\otimes {\boldsymbol{f}}_{i}\right\|}_{2}^{2}+\beta \sum\limits _{i=1}^{n}{\left\|{\boldsymbol{h}}_{i}\right\|}_{2}^{2} $ (23)

其中,$ \otimes $为相关算子,$ \boldsymbol{g} $为一维高斯函数,$ {\boldsymbol{h}}_{i} $$ {\boldsymbol{f}}_{i} $分别为第i个尺度的滤波器和样本,$ \beta $=0.01为正则化参数。

根据Parseval定理,将目标函数转换到频域进行求导,令导数为0,计算得到:

$ {\boldsymbol{H}}^{i}=\frac{\overline{\boldsymbol{G}}{\boldsymbol{F}}^{i}}{\sum\limits _{k=1}^{n}{\overline{\boldsymbol{F}}}^{k}{\boldsymbol{F}}^{k}+\beta }, i=\mathrm{1, 2}\cdots , n $ (24)

其中,大写字母变量代表响应小写字母变量的离散傅里叶变换,$ \overline{\boldsymbol{G}} $$ \boldsymbol{G} $的共轭形式。

将式(24)的分子和分母分别表示为$ {\boldsymbol{A}}_{t}^{i} $$ {\boldsymbol{B}}_{t}^{i} $,分别对$ {\boldsymbol{A}}_{t}^{i} $$ {\boldsymbol{B}}_{t}^{i} $更新如下:

$ \left\{\begin{array}{l}{\boldsymbol{A}}_{t}^{i}=(1-\theta ){\boldsymbol{A}}_{t-1}^{i}+\theta \overline{\boldsymbol{G}}{\boldsymbol{F}}_{t}^{i}, i=\mathrm{1, 2}, \cdots , n\\ {\boldsymbol{B}}_{t}^{i}=(1-\theta ){\boldsymbol{B}}_{t-1}^{i}+\theta \sum\limits _{k=1}^{n}{\overline{\boldsymbol{F}}}_{t}^{k}{\boldsymbol{F}}_{t}^{k}\end{array}\right. $ (25)

其中:$ \theta $为学习率,本文中$ \theta $=0.025;$ {\boldsymbol{A}}_{t}^{i} $$ {\boldsymbol{B}}_{t}^{i} $分别表示当前帧的分子与分母;$ {\boldsymbol{A}}_{t-1}^{i} $$ {\boldsymbol{B}}_{t-1}^{i} $分别表示上一帧的分子与分母。

对于第t帧样本$ \boldsymbol{Z} $,建立尺度池$ {\boldsymbol{Z}}_{t}^{i}(i=\mathrm{1, 2}, \cdots , n) $并进行相应尺度滤波器的计算,相关公式如下:

$ \boldsymbol{y}={\mathrm{\Gamma }}^{-1}\left(\frac{\sum\limits _{i=1}^{n}{\overline{\boldsymbol{A}}}_{t-1}^{i}{\boldsymbol{Z}}_{t}^{i}}{{\boldsymbol{B}}_{t-1}+\beta }\right) $ (26)

其中,$ {\mathrm{\Gamma }}^{-1} $为离散傅里叶的逆变换。通过计算尺度滤波器的响应可得到当前目标的最佳估计尺寸。

2.3 FMMTSA_DSST算法

本文对KCF_MTSA算法进行改进后提出FMMTSA_DSST算法,在该算法中目标定位和尺度估计各自独立进行。在目标定位过程中,使用两个核相关滤波器实现目标定位;在尺度估计过程中,先建立尺度池,再使用相关滤波器求解以完成目标尺度估计,并将最佳尺度参数传递到两个核相关滤波器的训练和尺度相关滤波器的训练中,具体步骤如下:

1)快速检测:

(1)输入第tt > 1)帧图像,根据上一帧图像目标中位置$ {D}_{t-1} $和尺寸参数$ {S}_{t-1} $截取候选样本的HOG特征$ {\boldsymbol{z}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $和CN特征$ {\boldsymbol{z}}_{\mathrm{c}\mathrm{n}} $

(2)根据式(17)~式(19)求得目标定位用响应,再对$ \boldsymbol{R} $进行离散傅里叶逆变换获取目标的新位置$ {D}_{t} $

(3)以$ {D}_{t} $为中心位置、$ {S}_{t-1} $为基础目标尺寸,根据式(22)构建尺度池$ {\boldsymbol{Z}}_{t}^{i}(i=\mathrm{1, 2}, \cdots , n) $。由式(26)计算得到尺度滤波器的响应,其最大值为当前目标最佳尺度估计$ {S}_{t} $

2)训练分类器:

(1)以当前目标中心位置$ {D}_{t} $和最佳尺度$ {S}_{t} $为参数,截取HOG特征目标模板$ {\boldsymbol{x}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $和CN特征目标模板$ {\boldsymbol{x}}_{\mathrm{c}\mathrm{n}} $,根据式(14)迭代计算得到$ {\boldsymbol{a}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\boldsymbol{a}}_{\mathrm{c}\mathrm{n}} $

(2)根据式(15)和式(16)更新得到$ {\widehat{\boldsymbol{x}}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\widehat{\boldsymbol{x}}}_{\mathrm{c}\mathrm{n}} $$ {\widehat{\boldsymbol{a}}}_{\mathrm{h}\mathrm{o}\mathrm{g}} $$ {\widehat{\boldsymbol{a}}}_{\mathrm{c}\mathrm{n}} $

(3)以当前目标中心位置$ {D}_{t} $和最佳尺度$ {S}_{t} $为参数,根据式(22)构建尺度池$ {\boldsymbol{F}}_{t}^{i}(i=\mathrm{1, 2}, \cdots , n) $,通过式(25)计算完成尺度滤波器的更新。

(4)如果为最后一帧,则训练结束;否则依次执行快速检测与训练分类器中的全部步骤。

3 实验与结果分析 3.1 实验方法

为验证本文所提FMMTSA_DSST算法(以下称为本文算法)的有效性,在OTB100[20]数据集中选取25组视频序列进行实验,其中包括尺度变化、光照变化、运动模糊、平面旋转和遮挡等属性。将本文算法与ECO_HC、STAPLE_CA[21]、SAMF_AT[22]、KCF、KCF_MTSA和SAMF算法进行对比。实验采用Ubuntu18.04系统和MATLAB2016a软件平台,计算机配置Intel XeonTM CPU E5-2697 v2 @ 2.70 GHz处理器和RTX2070显卡。

3.2 结果分析

中心误差(Center Location Error,CLE)是算法跟踪到的目标位置与人工标注目标位置的欧氏距离,若CLE小于某个阈值(本文中CLE阈值设置为20),则跟踪成功;否则跟踪失败。距离精度(Distance Precision,DP)为CLE小于某个阈值的视频帧数占总视频帧数的比例。重叠率(Overlap Rate,OR)为算法跟踪到的目标边界框与人工标注边界框重合部分占整个目标边界框的比例,若OR小于某个阈值(本文中OR阈值设置为0.5),则跟踪成功;否则跟踪失败。重叠分数(Overlap Score,OS)为算法跟踪过程中OR小于某个阈值的视频帧数占总视频帧数的比例,以此作为准确率的评价指标。为对上述算法进行定量分析,使用DP和OS作为算法跟踪性能的评价指标。

图 1~图 4分别为7种算法的综合评价结果以及在目标旋转、尺度变化和运动模糊情况下的评价结果(图 1(a)~图 4(a)中的中括号内数字为算法在重叠率阈值为0.5时的准确率,图 1(b)~图 4(b)中的中括号内数字为算法在中心误差阈值为20时的距离精度)。可以看出:本文算法综合评价的准确率和距离精度均排在第二位,较改进前KCF_MTSA算法的准确率和距离精度分别提升28.5%和15.8%;ECO_HC算法由于引入卷积神经网络,因此其综合评价结果较其他算法更好;本文算法在目标旋转和尺度变化情况下的准确率和距离精度均排在前两位,较改进前KCF_MTSA算法有明显提升,且在目标出现旋转时其跟踪性能最佳。

Download:
图 1 7种算法的综合评价结果 Fig. 1 Comprehensive evaluation results of seven algorithms
Download:
图 2 7种算法在目标旋转时的评价结果 Fig. 2 Evaluation results of seven algorithms when the target rotates
Download:
图 3 7种算法在尺度变化时的评价结果 Fig. 3 Evaluation results of seven algorithms when the scale changes
Download:
图 4 7种算法在目标运动模糊时的评价结果 Fig. 4 Evaluation results of seven algorithms when the target is blurred by motion

将上述算法在不同属性数据集中处理速度的平均值作为算法的处理速度进行对比,结果如表 1所示。可以看出:本文算法由于引入CN特征并应用尺度估计策略,因此处理速度较KCF_MTSA算法更慢,但仍快于SAMF_AT算法和STAPLE_CA算法,结合图 1~图 4分析结果可知,本文算法跟踪效果更好;ECO_HC算法处理速度较快,可满足算法的实时性要求,其跟踪性能也最好。

下载CSV 表 1 7种算法的处理速度对比 Table 1 Comparison of processing speed of seven algorithms  

为更直观地验证本文算法的跟踪效果,将7种算法在BlurBody、Human7、KiteSurf、Panda、CarScale、Human6、BlurOwl和Shaking 8个视频序列中的跟踪结果进行对比,结果如图 5所示。可以看出:上述算法在BlurBody、Human7和BlurOwl视频序列中均存在由镜头晃动造成运动模糊的问题;随着运动模糊程度的加剧,仅用HOG特征的KCF算法和KCF_MTSA算法最先出现定位误差增大现象,其他算法均实现目标的准确跟踪;当KiteSurf视频序列第42帧目标出现旋转和快速移动时,仅本文算法和STAPLE_CA算法可跟踪到目标,SAMF算法在64帧重新跟踪到目标,ECO_HC、SAMF_AT、KCF和KCF_MTSA算法均出现跟踪丢失现象;在Panda视频序列中,目标熊猫在第100帧第1次转身导致KCF算法出现目标定位框偏移,目标熊猫在第490帧再次转身,KCF和KCF_MTSA算法完全丢失目标,目标熊猫在第633帧第3次转身后,仅本文算法和ECO_HC算法可继续进行目标跟踪;当CarScale视频序列第225帧目标尺度迅速变化时,虽然SAMF算法也有尺度估计策略,但是仅STAPLE_CA、ECO_HC算法和本文算法能实现较好的跟踪效果;Human6视频序列在第245帧将镜头拉近使得目标尺寸变大,此时本文算法可很好地对边界框定位,而SAMF算法和SAMF_AT算法由于所用尺度样本较少,尺度估计效果较差,SAMF、SAMF_AT和KCF算法在第497帧丢失跟踪目标;Shaking视频序列在第25帧出现背景杂波,此时仅本文算法和ECO_HC算法完成目标跟踪,且在第61帧出现光照变化时,上述两种算法跟踪效果未下降,在第71帧和第150帧目标旋转后,本文算法仍能完成目标跟踪任务。

Download:
图 5 7种算法在8个视频序列中的跟踪效果 Fig. 5 Tracking effect of seven algorithms in eight video sequences
4 结束语

本文针对KCF_MTSA算法在目标移动模糊、旋转和尺度变化时跟踪精度下降的问题,在KCF_MTSA算法基础上,提出一种结合多特征和尺度估计的改进目标跟踪算法。使用互补特征HOG+CN进行目标表征,根据响应图的峰值旁瓣比将两种特征的响应进行自适应融合,同时引入一维相关滤波器进行尺度估计。实验结果表明,与改进前KCF_MTSA算法相比,该算法的跟踪距离精度和准确率明显提升,在目标尺度变化较大时,能很好地完成目标尺度估计,有效避免尺度估计不准确导致背景信息引入时目标偏移的问题。后续将利用神经网络提取特征实现目标跟踪,进一步提升跟踪距离精度。

参考文献
[1]
TIAN Bin, YAO Qingming, GU Yuan, et al.Video processing techniques for traffic flow monitoring: a survey[C]//Proceedings of 2011 IEEE Conference on Intelligent Transportation Systems.Washington D.C., USA: IEEE Press, 2011: 1103-1108.
[2]
BROWN M, FUNKE J, ERLIEN S, et al. Safe driving envelopes for path tracking in autonomous vehicles[J]. Control Engineering Practice, 2017, 61(4): 307-316.
[3]
AGGARWAL J K, XIA L. Human activity recognition from 3D data: a review[J]. Pattern Recognition Letters, 2014, 48(10): 70-80.
[4]
XU Tao, MA Ke, LIU Caihua. Multi object pedestrian tracking based on deep learning[J]. Journal of Jilin University(Engineering and Technology Edition), 2021, 51(1): 27-38. (in Chinese)
徐涛, 马克, 刘才华. 基于深度学习的行人多目标跟踪方法[J]. 吉林大学学报(工学版), 2021, 51(1): 27-38.
[5]
MENG Lu, LI Chengxin. Brief review of object tracking algorithms in recent years: correlated filtering and deep learning[J]. Journal of Image and Graphics, 2019, 24(7): 1011-1016. (in Chinese)
孟琭, 李诚新. 近年目标跟踪算法短评——相关滤波与深度学习[J]. 中国图象图形学报, 2019, 24(7): 1011-1016.
[6]
LU Huchuan, LI Peixia, WANG Dong. Visual object tracking: a survey[J]. Pattern Recognition and Artifical Intelligence, 2018, 31(1): 61-76. (in Chinese)
卢湖川, 李佩霞, 王栋. 目标跟踪算法综述[J]. 模式识别与人工智能, 2018, 31(1): 61-76.
[7]
HENRIQUES J F, RUI C, MARTINS P, et al. High-speed tracking with kernelized correlation filters[J]. IEEE Transactions on Pattern Analysis and Marchine Intelligence, 2015, 37(3): 583-596. DOI:10.1109/TPAMI.2014.2345390
[8]
LI Yang, ZHU Jianke.A scale adaptive kernel correlation filters tracker with feature integration[C]//Proceedings of 2014 European Conference on Computer Vision.Berlin, Germany: Springer, 2014: 254-265.
[9]
DANELLJAN M, HAGER G, KHAN F S, et al. Discriminative scale space tracking[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(8): 1561-1575. DOI:10.1109/TPAMI.2016.2609928
[10]
BIBI A, GHANEM B.Multi-template scale-adaptive kernelized correlation filters[C]//Proceedings of 2015 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2015: 50-57.
[11]
BERTINETTO L, VALMADRE J, GOLODETZ S.Staple: complementary learners for real-time tracking[C]//Proceedings of 2016 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2016: 1401-1409.
[12]
KIANI H, FAGG A, LUCEY S.Learning background-aware correlation filters for visual tracking[C]//Proceedings of 2017 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2017: 1135-1143.
[13]
DANELLJAN M, ROBINSON A, KHAN F S, et al.Beyond correlation filters: learning continus convolution operators for visual tracking[C]//Proceedings of 2016 European Conference on Computer Vision.Berlin, Germany: Springer, 2016: 472-488.
[14]
DANELLJAN M, BHAT G, SHAHBAZKHAN F, et al.Eco: efficient convolution operators for tracking[C]//Proceedings of 2017 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2017: 6638-6646.
[15]
SQUARES R L, RIFKIN R, YEO G W, et al.Regularized least-squares classification[EB/OL].[2020-04-10].https://www.researchgate.net/publication/2833962_Regularized_Least-Squares_Classification.
[16]
HUANG Yuqing, LI Leimin, HU Hong. Particle filter tracking combined with HOG and ARMA model[J]. Computer Engineering, 2012, 38(22): 126-129. (in Chinese)
黄玉清, 李磊民, 胡红. 融合HOG与ARMA模型的粒子滤波跟踪[J]. 计算机工程, 2012, 38(22): 126-129.
[17]
DANELLJAN M, KHAN F S, FELSBERG M.Adaptive color attributes for real-time visual tracking[C]//Proceedings of 2014 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2014: 1090-1097.
[18]
BOLME D S, BEVERIDGE J R, DRAPER B A, et al.Visual object tracking using adaptive correlation filters[C]//Proceedings of 2010 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2010: 2544-2550.
[19]
HU Yunceng, LU Hong, YANG Chen, et al. Scale adaptive tracking algorithm combining DSST and KCF[J]. Computer Engineering and Design, 2019, 40(12): 3563-3568. (in Chinese)
胡云层, 路红, 杨晨, 等. 融合DSST和KCF的尺度自适应跟踪算法[J]. 计算机工程与设计, 2019, 40(12): 3563-3568.
[20]
WU Y, LIM J, YANG M H, et al. Object tracking benchmark[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1834-1848.
[21]
MUELLER M, SMITH N, GHANEM B.Context-aware correlation filter tracking[C]//Proceedings of 2017 International Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2017: 1396-1404.
[22]
BIBI A, MUELLER M, GHANEM B.Target response adaptation for correlation filter tracking[C]//Proceedings of 2016 European Conference on Computer Vision.Berlin, Germany: Springer, 2016: 419-433.