环境感知能力是移动机器人自主移动的基础。视觉传感器直观, 获取信息量大, 能够为自主移动机器人提供丰富的环境信息[1]。在各种视觉传感器中, 折反射式全景视觉系统具有“一体化成像、大视场、成像旋转不变性”等优点; 能够一次获取移动机器人周边环境的视觉信息, 经过图像处理、分析和理解可以帮助自主移动机器人充分实现智能化[2]。而且, 折反射全景成像系统不需要为光电跟踪装置附加随动系统, 空间物体位置定位简单, 监控时不用瞄准目标, 是一种快速、可靠的视觉信息采集手段[3]。因此已经在视频监控、虚拟现实, 尤其是移动机器人视觉导航等相关工程领域得到了广泛的应用。
目标跟踪作为计算机视觉的重要问题, 已经被广泛应用到各个领域, 如机器人导航、人机交互和医学成像等[4-5]。目标跟踪主要目的在于使计算机能够模拟人类的视觉系统, 具备运动感知和辨识运动目标的功能, 为视频分析、目标物探测以及运动估计等提供重要的信息[6]。目标跟踪其实是通过检测目标进而实现跟踪的问题(tracking-by-detection problem), 按其模型构建机制的不同, 可以分为生成法、判别法和混合法。生成法主要侧重于建立目标模型, 通过检测在候选目标中选取与样本完美匹配的目标; 而判别法是将目标跟踪看作是二值分类问题, 侧重于将目标区域与非目标区域进行分离开[7]。典型的生成法有ASLA、DFT、IVT、L1APG、LOT、LSHT、SMS等; 典型的判别法则有CT、MIL、SBT、STRUCK、TLD等。基于生成法的跟踪模型只考虑了目标的信息, 在实际中, 很难确定目标模型的正确性。所以, 当背景干扰较大, 成像畸变严重时, 这种跟踪方法往往失效。相比之下, 判别法考虑了前景背景, 通过在线学习判别方程, 以达到区分目标和非目标区域的目的, 取得较好的效果。核相关滤波目标跟踪方法是由Henriques等[8]提出的一种判别式跟踪算法。目前流行的判别式跟踪器, 都是通过对平移和尺度变换所得的目标样本进行训练学习, 以得到将目标与背景进行分离的分类器。因此, 大量的样本矩阵运算就是这些跟踪器算法的基础。Henriques等将样本构造成循环矩阵形式, 并通过傅里叶变换使其对角化, 将矩阵运算转化为向量内积运算, 大幅度提高了计算速度, 减小了存储空间。在此基础上, 本文提出了非线性岭回归分析方法, 设计了有效的快速目标跟踪器。通过改进非线性核相关滤波跟踪算法, 使其可以有效实现全景视觉下目标跟踪。
1 非线性核相关滤波跟踪算法核相关滤波跟踪算法通过学习训练岭回归分类器, 将目标与背景进行二值分类以实现目标跟踪。岭回归具有简单的封闭解, 所以相对于其他复杂的分类方法具有更高的计算效率。假设回归方程为f(z)=wTz, 那么优化目标即为, 使样本x与回归目标y的平方差最小:
$ \mathop {{\text{min}}}\limits_\mathit{\boldsymbol{w}} \sum {\left( {f\left( \mathit{\boldsymbol{x}} \right) - y} \right)^2} + \mathit{\lambda }{\left\| \mathit{\boldsymbol{w}} \right\|^2} $ |
为了构造功能更加强大的非线性回归函数, 可以采用核技巧。核技巧通过使用合适的基函数, 将非线性模型映射到新的空间, 进而可以在新的空间使用线性模型。回归方程的解表示为样本的线性组合形式:
$ \mathit{\boldsymbol{w}} = \sum \mathit{\boldsymbol{\alpha }}\varphi \left( \mathit{\boldsymbol{x}} \right) $ |
那么, 回归方程可以写为
$ f\left( \mathit{\boldsymbol{z}} \right) = {\mathit{\boldsymbol{w}}^{\text{T}}}\mathit{\boldsymbol{z}} = \sum \mathit{\boldsymbol{\alpha }}\kappa \left( {\mathit{\boldsymbol{z}}, \mathit{\boldsymbol{x}}} \right) $ | (1) |
式中:κ为核函数, κ(x, x′)=φT(x)φ(x′)。通过引入核技巧, 构造了非线性回归函数, 并可以发现求解最优目标的问题仍然是线性的。
此时回归方程(1)的解为
$ \mathit{\boldsymbol{\alpha }} = {\left( {\mathit{\boldsymbol{K}} + \lambda \mathit{\boldsymbol{I}}} \right)^{-1}}\mathit{\boldsymbol{y}} $ | (2) |
式中:K为核矩阵, Kij=κ(xi, xj)。虽然存在确定的映射函数:x→φ(x), 但是使用核函数矩阵比计算基函数更加简单高效。
采用核技巧可以有效实现非线性回归, 但是随着样本数量的增加, 回归函数将变得越来越复杂。循环矩阵可以有效解决这一问题。根据Henriques等给出的定义, 当核函数满足κ(x, x′)=κ(Mx, Mx′)时, 由目标样本特征得到的核矩阵是循环矩阵。此时, 可以将式(2)进行对角化:
$ {\mathit{\boldsymbol{\alpha }}_f} = \frac{{{\mathit{\boldsymbol{y}}_f}}}{{{\mathit{\boldsymbol{k}}_f}^{xx\prime } + \mathit{\boldsymbol{\lambda }}}} $ |
式中:下标f表示离散傅里叶变换后的形式; kxx′是样本向量的核自相关形式, 即为核矩阵K的第一行元素所构成。这样, 通过离散傅里叶变换将核矩阵的计算转化为向量内积计算, 节省了计算成本。当训练跟踪器时, 需要对原始目标周围进行采样。利用循环矩阵平移, 可以很方便地选取候选目标, 即z。计算回归函数, 可以评估这些候选目标, 进而确定当前帧真实目标:
$ {f_f}\left( \mathit{\boldsymbol{z}} \right) = {\mathit{\boldsymbol{k}}^{\mathit{\boldsymbol{xz}}}}_f{\mathit{\boldsymbol{\alpha }}_f} $ |
全景视觉成像模型如图 1所示。
Download:
|
|
设反射镜坐标系原点与双曲面反射镜内部焦点重合, 二次曲面反射镜的三维成像计算公式为
$ \frac{{{{\left( {z + e} \right)}^2}}}{{{a^2}}}-\frac{{({x^2} + {y^2})}}{{{b^2}}} = 1 $ |
式中:a和b为双曲面反射镜长短轴, e=d/2。图 1中, F、F′分别为双曲线的两个焦点; x为反射镜坐标系下任意一点; xm为入射光线域反射镜交点; m为反射光线在像平面上的成像点; f为摄像机焦距。假设空间中一点在反射镜坐标系下三维坐标为[x, y, z], 在二维平面坐标系下可表示为[t, z], 其中
双曲线反射镜的二维成像公式可表示为
$ \frac{{{{\left( {z + e} \right)}^2}}}{{{a^2}}}-\frac{{{t^2}}}{{{b^2}}} = 1 $ | (3) |
使用球坐标表示:
$ \left\{ \begin{gathered} t = R{\text{cos}}\;\theta \hfill \\ z = R{\text{sin}}\;\theta \hfill \\ \end{gathered} \right. $ | (4) |
式中:θ为入射光线与T轴的夹角, R为球面的半径, 可表示为
$ R = \frac{{a-e{\text{sin}}\theta }}{{{\text{si}}{{\text{n}}^2}\theta-{a^2}{\text{co}}{{\text{s}}^2}\theta /{b^2}}} $ | (5) |
点x对应的入射光线与T轴的夹角为θ=arctan(z/t), 则可由式(5)计算得到R值, 代入式(4)可得入射光线与反射镜交点xm坐标[t′, z′]。透视摄像机投影中心F′的坐标为[0, -2e], 设反射光线与Z轴的夹角为β, 则
$ {\text{tan}}\beta = \frac{{t'}}{{2e + z'}} = \frac{{R{\text{cos}}\theta }}{{2e + R{\text{sin}}\theta }} $ | (6) |
将式(5)代入式(6)得:
$ {\text{tan}}\beta = \frac{{{b^2}{\text{cos}}\theta (e{\text{sin}}\theta-a)}}{{e{b^2}{\text{si}}{{\text{n}}^2}\theta-2e{a^2}{\text{co}}{{\text{s}}^2}\theta + a{b^2}{\text{sin}}\theta }} $ | (7) |
设在实际像平面内该空间点的成像半径为r, 可表示为
$ r = f\tan \beta $ | (8) |
假设入射光线方位角为γ, 像点m的坐标[u, v]可表示:
$ \gamma = {\text{arctan}}\left( {y/x} \right) $ | (9) |
$ u = r{\text{cos}}\gamma $ | (10) |
$ v = r{\text{sin}}\gamma $ | (11) |
已知当空间中任意一点X在全景摄像机坐标系的坐标, 则可由式(3) ~ (11)计算出其成像点m坐标。根据全景视觉成像原理可以发现, 全景图像是以全景系统为中心, 将周围360°范围内场景一次性投影到二维成像平面内。所以, 相对于普通针孔相机采集的二维图像, 实际空间中物体的水平移动在全景图像中是绕图像中心旋转的, 实际空间中物体的垂直地面移动在全景图像中是沿半径方向移动。而且全景图像存在着非常大的畸变, 离图像中心越近畸变越大。这些问题都是全景视觉目标跟踪中特有的问题, 下面需要针对这些问题设计合理的目标跟踪算法, 实现有效的全景目标跟踪。
2.2 旋转不变HOG特征本文所采用的旋转不变特征描述子, 以极坐标表示方法和傅里叶表现形式进行分析, 在傅里叶空间提取HOG特征。该方法提取的HOG特征具有良好的旋转不变性的同时, 还保留了一般HOG特征的优点[9]。本文将这种提取HOG特征的方法用于全景目标跟踪技术中, 以克服全景成像特殊的目标旋转特性, 实现有效目标跟踪。
二维平面图像的一点, 可以在Cartesian坐标系中表示为a=[a0, b0], 也可以在极坐标系中表示为[r, φ]:r=‖a‖, φ=Φ(a)=arctan(y/x)。根据图像的极坐标系下描述, 可以得到复数基地函数:
$ B\left( {r, \varphi } \right) = R\left( r \right){e^{{\text{i}}m\varphi }} $ | (12) |
式中m为整数。R(r)是半径r的函数, 可以通过在半径上取样得到, 式(12)可以表示为
$ {B_{j, k}}\left( {r, \varphi } \right) = \delta (r-{r_j}){e^{{\text{i}}k\varphi }} $ |
对于图像中某个像素点的梯度可以表示为d, 方向为Φ(d), 则该点处的分布函数为
$ g\left( \varphi \right) = \left\| \mathit{\boldsymbol{d}} \right\|\delta \left( {\varphi-\mathit{\Phi }\left( \mathit{\boldsymbol{d}} \right)} \right) $ |
式中δ(·)为Dirac函数。构造g的傅里叶表达形式为
$ {{\hat h}_m} = \left\langle {g, {{\text{e}}^{{\text{i}}m\varphi }}} \right\rangle = \left\| \mathit{\boldsymbol{d}} \right\|{{\text{e}}^{-{\text{i}}m\mathit{\Phi }(d)}} $ | (13) |
因为需要求取跟踪目标区域的特征, 所以用D表示区域梯度。根据式(13)得到区域紧致表达式
$ {{\tilde H}_m} = \frac{{{{\hat H}^m}}}{{\sqrt {{{\left\| D \right\|}^2}*{K_1}} }} $ | (14) |
式中K1为局部正规化卷积核。
根据式(12)和(14), 可以计算出
$ \overline {({B_{{j_1},{k_1}}}*{{\tilde H}_{{m_1}}})} {\text{ }}({B_{{j_2},{k_2}}}*{{\tilde H}_{{m_2}}}) $ | (15) |
通过文献[10]可知, 当k1-m1=k2-m2时, 式(15)所得即为目标区域的旋转不变HOG特征。以OTB100中, MotorRolling视频序列为例。j=1, 2, 3;k=0, 1, 2, 3, 4;m=4时, 目标区域的旋转不变HOG特征可以表示为如图 2所示。
Download:
|
|
此方法提取的旋转不变性的HOG特征, 实现了目标的旋转不变描述, 而且因为其极坐标系下构造而成的性质, 也为下文的目标搜索检测提供了基础。
2.3 自适应核相关滤波为了更好地应对成像畸变的影响, 本文构造了核函数相关滤波器的自适应机制, 以适应全景成像中心与边缘不同的畸变所带来的成像变化。
本文采用的旋转不变HOG特征样本x=[x1, …, xc], 通过式(14)、(15)得到的多维向量组。对于多通道信号, 本文采用的高斯核自相关算子为
$ {\mathit{\boldsymbol{k}}^{\mathit{\boldsymbol{xx}}\prime }} = {\text{exp}} \left( { - {{\left\| \mathit{\boldsymbol{x}} \right\|}^2} - {{\left\| {\mathit{\boldsymbol{x'}}} \right\|}^2} + {\text{ }}2{{\text{F}}^{ - 1}}\left( {\sum\limits_c {\mathit{\boldsymbol{x}}_{cf}^*} {{\mathit{\boldsymbol{x'}}}_{cf}}} \right)/{\sigma ^2}} \right) $ |
取样本和回归目标的核函数kfxz和kfxx′的差值为参考量, 并进行归一化:
$ \Delta {\mathit{\boldsymbol{k}}_f} = \frac{{{\mathit{\boldsymbol{k}}_f}^{\mathit{\boldsymbol{xz}}} - {\mathit{\boldsymbol{k}}_f}^{\mathit{\boldsymbol{xx}}\prime }}}{{\sqrt {{{\left| {{\mathit{\boldsymbol{k}}^{\mathit{\boldsymbol{xz}}}}_f - {\mathit{\boldsymbol{k}}_f}^{\mathit{\boldsymbol{xx}}\prime }} \right|}^2}} + c}} $ | (16) |
式中c为一个较小的实数。式(16)保留核函数差值的幅值和相角信息。令
$ \begin{gathered} \Delta \mathit{\boldsymbol{k}} = {\left\| {\Delta {\mathit{\boldsymbol{k}}_f}\left( t \right) - \frac{{\Delta {\mathit{\boldsymbol{k}}_f}\left( {t - 1} \right) + \ldots + \Delta {\mathit{\boldsymbol{k}}_f}\left( {t - n} \right)}}{n}} \right\|_{{l_2}}} \hfill \\ s = {\left\| {\Delta {\mathit{\boldsymbol{k}}_f}\left( t \right)} \right\|_2} - {\left\| {\frac{{\Delta {\mathit{\boldsymbol{k}}_f}\left( {t - 1} \right) + \ldots + \Delta {\mathit{\boldsymbol{k}}_f}\left( {t - n} \right)}}{n}} \right\|_2} \hfill \\ \end{gathered} $ |
式中:‖·‖l2是l2范数, ‖·‖2是诱导二范数, n为选取的观测时间步长。那么
$ \sigma \left( t \right) = \sigma \left( {t - 1} \right) + \eta {\text{sign}}\left( s \right)\Delta k $ |
式中:η为常数, t为当前帧。
2.4 全景视觉目标搜索与检测原方法跟踪器通过构造循环矩阵使目标区域沿水平和垂直方向移动, 实现目标搜索。该方法所确定的目标区域边框与数字图像在Cartesian坐标系表示下x轴和y轴平行, 当目标在平面内旋转时, 目标将超出预定目标区域从而导致跟踪失败。若扩大目标区域以使旋转目标时刻在目标区域内, 会引入更多的背景信息对目标信息造成干扰, 影响跟踪效果。为了保证循环矩阵快速计算的同时, 实现有效目标跟踪, 本文采用全景视觉目标跟踪的目标搜索方法, 如图 3所示。
Download:
|
|
图 3中, O为图像中心, O′为目标中心位置, 实线框为实际目标。选取目标区域中心正方形区域, 并以正方形区域向四周扩充形成目标搜索区域。在该区域内构造循环矩阵, 进行目标搜索和跟踪。当确定了目标中心位置后, 通过极坐标系表达形式, 计算旋转的角度和目标位置半径, 最终确定真实目标。极坐标系下的旋转不变HOG特征与极坐标系下目标定位方法的契合, 更好地实现了目标的旋转不变性表示。无论目标如何旋转, 目标中心区域都在选定正方形边框内。这保证了循环矩阵表示目标、搜索目标的有效性的同时, 避免了引入过多的背景信息。
3 实验结果与分析OTB50是Wu等[11]构建的能够公平验证现有目标跟踪算法的视频库。原始KCF方法, 通过在OTB50视频库上进行实验, 跟踪精度高于其他跟踪算法[8]。并且考察了多种情况下目标跟踪效果, 但是没有考虑平面内旋转情况的跟踪效果。在全景图像中, 目标平面内旋转是目标跟踪面临的主要问题。所以为了验证平面内旋转情况的跟踪效果, 本文将旋转不变HOG特征应用于非线性核相关滤波方法中, 构成新跟踪器, 以OURS1表示。并在OTB50视频库的升级版视频库OTB100中, 仅存在平面内旋转情况的视频上进行对比实验。部分跟踪结果如图 4所示, 实线矩形为OURS1目标跟踪结果, 虚线表示KCF跟踪结果。通过比较发现, OURS1跟踪效果要好于KCF算法。本文跟踪精度计算方法与原方法一致, 得到跟踪精度曲线如图 5所示。OURS1跟踪算法跟踪精度较KCF明显提高, 说明了旋转不变HOG的有效性。但是由于采用的旋转不变HOG较原HOG特征复杂, 所以提取特征耗时相对较多。本文在CPU为2.30 GHz, 内存为8 GB的机器上进行实验。KCF平均帧频85帧/s, OURS1为60帧/s, 略有下降。但是相比于文献[8]中其他算法效果较好。
Download:
|
|
Download:
|
|
为了验证全景视觉目标跟踪, 以如图 6所示移动机器人为载体, 选取最上方的单目全景采集全景图像。将本文提出的全景目标跟踪算法称为OURS2, 用于全景视觉目标跟踪。
Download:
|
|
该机器人设定最大线速度为0.8 m/s, 最大角速度1 rad/s。采集的全景图像分辨率为1 800×1 800, 帧频为25帧/s。选取人脸和身体作为目标进行跟踪, 分别命名为Omini1和Omini2。为了验证机器人旋转和直线运动状态下, 相机抖动和目标尺度变化等因素对目标跟踪的影响, 以Omini3进行试验。跟踪效果如图 7所示, 实线矩形为OURS2目标跟踪结果, 虚线表示KCF跟踪结果。可以发现, 全景系统成像畸变很大。在Omini3中, 当目标距离图像中心越近时, 畸变越大, 但OURS2跟踪效果良好。得到跟踪精度曲线如图 8、9、10所示, 本文全景目标跟踪算法能有效的实现目标跟踪。KCF、OURS1和OURS2具体跟踪精度数值如表 1所示, 通过对比KCF与OURS1可以得出结论, 旋转不变HOG能够作为有效的全景视觉旋转不变目标描述子; 通过对比KCF与OURS2可以得出结论, 本文提出的算法, 能够实现有效的全景视觉下目标跟踪。
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
1) 全景视觉目标跟踪存在着畸变较大, 目标平面内旋转, 变尺度等问题。
2) 原核相关滤波方法不能很好地解决平面内旋转情况下的目标跟踪, 但是因为其快速性的优点, 并在一定程度能够应对畸变的影响, 所以可以作为全景目标跟踪方法。
3) 本文在原方法基础上引入的旋转不变HOG和根据全景成像特点设计的目标搜索机制能够解决目标的旋转不变性。设计的自适应机制, 提高了应对畸变的能力。
今后的研究重点是利用本文算法实现全景视觉机器人的视觉伺服控制, 充分实现全景视觉机器人导航。
[1] |
BONIN F, ORTIZ A, OLIVER G. Visual navigation for mobile robots:a survey[J]. Journal of intelligent and robotic systems, 2008, 53(3): 263-296. DOI:10.1007/s10846-008-9235-4 (0)
|
[2] |
CHEN Chusong, HSIEH W T, CHEN J H. Panoramic appearance-based recognition of video contents using matching graphs[J]. IEEE transactions on systems, man, and cybernetics, Part B (Cybernetics), 2004, 34(1): 179-199. DOI:10.1109/TSMCB.2003.811770 (0)
|
[3] |
朱齐丹, 徐从营, 蔡成涛, 等. 全景图像海天线提取及舰船目标自动检测[J]. 计算机测量与控制, 2014, 22(8): 2350-2352. ZHU Qidan, XU Congying, CAI Chengtao, et al. Sea-sky line extraction and ship target automatic detection of panoramic image[J]. Computer measurement & control, 2014, 22(8): 2350-2352. (0) |
[4] |
谢洪乐, 朱齐丹, 刘鹏. 基于极大似然估计的全景立体视觉机器人自定位方法[J]. 应用科技, 2017, 44(5): 40-45, 51. XIE Hongle, ZHU Qidan, LIU Peng. Self-localization of a robot with omnidirectional stereoscopic vision based on maximum likelihood estimation algorithm[J]. Applied science and technology, 2017, 44(5): 40-45, 51. (0) |
[5] |
SMEULDERS A W M, CHU D M, CUCCHIARA R, et al. Visual tracking:an experimental survey[J]. IEEE transactions on pattern analysis and machine intelligence, 2014, 36(7): 1442-1468. DOI:10.1109/TPAMI.2013.230 (0)
|
[6] |
FURGAL P, BARFOOT T D. Visual teach and repeat for long-range rover autonomy[J]. Journal of field robotics, 2010, 27(5): 534-560. DOI:10.1002/rob.v27:5 (0)
|
[7] |
LI Xi, HU Weiming, SHEN Chunhua, et al. A survey of appearance models in visual object tracking[J]. ACM transactions on intelligent systems and technology, 2013, 4(4): 58. (0)
|
[8] |
HENRIQUES J F, CASEIRO R, MARTINS P, et al. High-speed tracking with kernelized correlation filters[J]. IEEE transactions on pattern analysis and machine intelligence, 2015, 37(3): 583-596. DOI:10.1109/TPAMI.2014.2345390 (0)
|
[9] |
DALAL N, TRIGGS B. Histograms of oriented gradients for human detection[C]//Proceedings of 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. San Diego, CA, USA, 2005: 886-893.
(0)
|
[10] |
LIU Kun, SKIBBE H, SCHMIDT T, et al. Rotation-invariant HOG descriptors using fourier analysis in polar and spherical coordinates[J]. International journal of computer vision, 2014, 106(3): 342-364. DOI:10.1007/s11263-013-0634-z (0)
|
[11] |
WU Yi, LIM J, YANG M H. Object tracking benchmark[J]. IEEE transactions on pattern analysis and machine intelligence, 2015, 37(9): 1834-1848. DOI:10.1109/TPAMI.2014.2388226 (0)
|