CN110706252B - 运动模型引导下的机器人核相关滤波跟踪算法 - Google Patents

运动模型引导下的机器人核相关滤波跟踪算法 Download PDF

Info

Publication number
CN110706252B
CN110706252B CN201910866076.5A CN201910866076A CN110706252B CN 110706252 B CN110706252 B CN 110706252B CN 201910866076 A CN201910866076 A CN 201910866076A CN 110706252 B CN110706252 B CN 110706252B
Authority
CN
China
Prior art keywords
frame
target
foot
feet
tracking
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.)
Active
Application number
CN201910866076.5A
Other languages
English (en)
Other versions
CN110706252A (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.)
Xian University of Technology
Original Assignee
Xian University of Technology
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 Xian University of Technology filed Critical Xian University of Technology
Priority to CN201910866076.5A priority Critical patent/CN110706252B/zh
Publication of CN110706252A publication Critical patent/CN110706252A/zh
Application granted granted Critical
Publication of CN110706252B publication Critical patent/CN110706252B/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
    • 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
    • G06T7/251Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • G06T2207/20056Discrete and fast Fourier transform, [DFT, FFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

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

Abstract

本发明所采用的技术方案是一种人体足部运动模型引导下的机器人核相关滤波跟踪算法。该算法首先由第一帧图像选取目标区域,采用KCF跟踪算法对该区域内的图像特征进行分类器训练,确定目标模板,其次建立人体足部的局部运动模型和全局运动模型,再根据运动模型获得第二帧双脚位置区域坐标的估计值,在估计位置区域内找到最大响应后更新目标位置,之后对使用更新后的目标位置区域内的图像重新训练分类器,更新目标模板,在后续帧的处理重复第二帧步骤,最终实现人体目标的实时跟踪。

Description

运动模型引导下的机器人核相关滤波跟踪算法
技术领域
本发明属于机器人视觉跟踪技术领域,涉及一种运动模型引导下的机器人核相关滤波跟踪算法。
背景技术
在人工智能技术和机器人技术的推动下,智能服务机器人越来越多地被应用在生产和生活当中,人机交互已成为机器人学的新兴领域之一。以智能控制、目标跟踪为核心技术的新一代机器人代表了智能机器人的发展方向。
智能机器人能够通过自身的摄像头获取视频信息,识别周围环境,进而发现并找到目标。小型机器人在近距离跟踪整个人身体目标具有一定的难度,对上半身跟踪通常要求安装一个高位置的摄像头,或者摄像头相对于水平线具有较大的视角,所以在这种情况下,小型机器人的跟踪范围十分有限。与上半身的跟踪相比,将足部作为跟踪目标更为合适,因为摄像头可以安装在一个较低的位置,使低高度的机器人在更大的范围内跟踪人体目标。
市场上现有的跟踪智能机器人常用核相关(Kernelized Correlation Filter,KCF)滤波跟踪算法对目标进行跟踪,现有的KCF算法对一些特殊场景如光照变化以及目标快速运动下的跟踪精度较低甚至导致跟踪失败。
发明内容
本发明的目的是提供一种运动模型引导下的机器人核相关滤波跟踪算法,解决了现有核相关滤波跟踪算法在目标快速运动时跟踪失败的问题。
本发明所采用的技术方案是一种人体足部运动模型引导下的机器人核相关滤波跟踪算法。该算法首先由第一帧图像选取目标区域,采用KCF跟踪算法对该区域内的图像特征进行分类器训练,确定目标模板。其次建立人体足部的局部运动模型和全局运动模型,再根据全局运动模型获得第二帧双脚位置区域坐标的估计值,在估计位置区域内找到最大响应后更新目标位置,之后对使用更新后的目标位置区域内的图像重新训练分类器,更新目标模板,在后续帧的处理重复第二帧步骤,最终实现人体目标的实时跟踪。
本发明的技术特征还在于,
具体包括以下步骤:
步骤1,输入视频序列
步骤2,判断是否为第一帧,若是第一帧,读取第一帧双脚位置图片,获取目标位置,训练分类器,确定目标模板,之后对双脚的两脚垂直方向位移dt和水平方向位移
Figure BDA0002201307000000022
进行建模,建立足部局部运动模型,其中t是时间指数;
步骤3,根据足部局部运动模型,采用前一帧双脚位置对当前帧双脚中间点位置
Figure BDA0002201307000000021
进行预测,建立全局运动模型;
步骤4,根据全局运动模型预测除第一帧外其余帧的双脚位置;
步骤5,判断是否为第一帧,若不是第一帧,读取图片,根据运动模型获取预测的双脚位置,找到最大响应后更新目标位置,重新训练分类器,更新目标模板;
步骤6,保存目标位置,显示本帧跟踪结果,判断是否为最后一帧,若是,结束目标跟踪,若不是,继续所述步骤4,进行目标跟踪。
步骤2中,每一帧图像中采用像素点的坐标位置描述双脚的位置,
Figure BDA0002201307000000031
表示当前帧左脚的位置坐标,
Figure BDA0002201307000000032
表示当前帧右脚的位置坐标,则两脚垂直方向位移
Figure BDA0002201307000000033
两脚水平方向位移
Figure BDA0002201307000000034
lt-1为前一帧两脚水平方向位移。
采用余弦函数对两脚垂直方向位移dt进行建模,
Figure BDA0002201307000000035
式中,At为所述余弦函数的幅值,At=|ylmax-yrmin|,ylmax为左脚垂直坐标的最大值,yrmin为右脚垂直坐标的最小值;
Tt为所述余弦函数的周期,
Figure BDA0002201307000000036
Figure BDA0002201307000000037
表示第k个过零点的时间,
Figure BDA0002201307000000038
Figure BDA0002201307000000039
为余弦函数的相位,
Figure BDA00022013070000000310
步骤3中,当前帧双脚中间点的预测位置
Figure BDA0002201307000000041
为:
Figure BDA0002201307000000042
其中,左脚预测位置
Figure BDA0002201307000000043
为:
Figure BDA0002201307000000044
右脚预测位置
Figure BDA0002201307000000045
为:
Figure BDA0002201307000000046
步骤4中,双脚位置包括左脚位置图片和右脚位置,第一帧左脚位置是以左脚的脚后跟水平方向中点位置(xl,yl)为中心的方形区域,第一帧右脚位置图片是以右脚的脚后跟水平方向中点位置(xr,yr)为中心的方形区域;其余帧的左脚位置是以左脚预测位置
Figure BDA0002201307000000047
为中心的方形区域,右脚位置图片是以左脚预测位置
Figure BDA0002201307000000048
为中心的方形区域。
步骤2中,计算训练样本权值,确定目标模板的具体包括以下步骤:
步骤2.1,确定第一帧的训练样本X,训练样本X是由训练正样本x和训练负样本x(i)组成的集合,训练正样本x为第一帧窗口内的子图像,即x=[x1 x2 ...... xn]T,训练负样本x(i)=Pix,i=1,2,……,n,P为n×n阶循环矩阵,
Figure BDA0002201307000000051
则训练样本X为:
Figure BDA0002201307000000052
步骤2.2,训练分类器,即确定训练样本权值
假设图像的采样数据与下一帧真实目标位置的最小距离为F:
F=min||Xω-y||2+λ||ω||2
式中,X为本帧图像的训练样本,y是训练样本的回归值矩阵,λ为正则化参数,ω为权重系数;
训练样本权值,即F为最小值时的权重系数ω,对F进行求导,可得:
Figure BDA0002201307000000053
变换到复数域:
ω=(XHX+λI)-1XHy
式中,I为n×n阶单位矩阵;
步骤2.3,确定目标模板
设定权重系数
Figure BDA0002201307000000054
其中
Figure BDA0002201307000000055
为核函数,即训练样本X从低维空间到高维空间的映射,根据F=min||Xω-y||2+λ||ω||2可得:
α=(K+λI)-1y
变换到傅里叶域,
Figure BDA0002201307000000061
式中,K为核矩阵,
Figure BDA0002201307000000062
Figure BDA0002201307000000063
为核矩阵K第一行的傅里叶变换;
Figure BDA0002201307000000064
为分类器系数,也是α的傅里叶变换;
Figure BDA0002201307000000065
为y的傅里叶变换;确定目标模板,即求解分类器系数
Figure BDA0002201307000000066
步骤5中,找到最大响应的过程即为模板匹配的过程,用kz表示测试样本和训练样本在核空间的核矩阵,则测试样本的响应
Figure BDA0002201307000000067
为:
Figure BDA0002201307000000068
式中
Figure BDA0002201307000000069
为核矩阵kz第一行的傅里叶变换,也为第二帧及后续各帧图像的测试样本,
Figure BDA00022013070000000610
为分类器系数,e为核矩阵kz第一行对应元素与α的点乘。
模板匹配在每一帧目标搜索区域内进行,搜索区域是以全局运动模型预测的双脚位置为中点扩大2.5倍的区域。
步骤5中,更新目标模板,即更新分类器系数
Figure BDA00022013070000000611
和目标观测模型
Figure BDA00022013070000000612
Figure BDA00022013070000000613
Figure BDA00022013070000000614
上式中m为学习率。
本发明的有益效果是,通过人体足部局部运动模型来构建机器人核相关滤波跟踪算法,提高了机器人对在光照场景以及快速运动下目标的跟踪准确度,降低了跟踪失败的次数,提高了机器人对目标的跟踪精度,也提高了机器人跟踪过程中的抗干扰能力;整合双脚位置信息来进行人体跟踪,避免了在狭小空间或者多障碍物场景下,机器人与周围物体发生碰撞,提高了机器人的通过性。
附图说明
图1是本发明运动模型引导下的机器人核相关滤波跟踪算法的程序流程示意图;
图2是本发明实施例中跟踪目标慢速步行时足部局部运动模型曲线图;
图3是实施例中跟踪目标中等步速步行时足部局部运动模型曲线图;
图4是本发明实施例中跟踪目标快速步行时足部局部运动模型曲线图;
图5是本发明实施例中视频1的足部跟踪准确率曲线图;
图6是本发明实施例中视频2的足部跟踪准确率曲线图;
图7是本发明实施例中视频3的足部跟踪准确率曲线图;
图8是本发明实施例中视频4的足部跟踪准确率曲线图;
图9是本发明实施例中视频1的足部跟踪位置误差曲线图;
图10是本发明实施例中视频2的足部跟踪位置误差曲线图;
图11是本发明实施例中视频3的足部跟踪位置误差曲线图;
图12是本发明实施例中视频4的足部跟踪位置误差曲线图;
图13是实施例中视频2采用KCF算法在第10帧的足部跟踪结果图;
图14是实施例中视频2采用KCF算法在第40帧的足部跟踪结果图;
图15是实施例中视频2采用KCF算法在第70帧的足部跟踪结果图;
图16是实施例中视频2采用KCF算法在第100帧的足部跟踪结果图;
图17是实施例中视频2采用MMKCF算法在第10帧的足部跟踪结果图;
图18是实施例中视频2采用MMKCF算法在第40帧的足部跟踪结果图;
图19是实施例中视频2采用MMKCF算法在第70帧的足部跟踪结果图;
图20是实施例中视频2采用MMKCF算法在第100帧的足部跟踪结果图;
图21是实施例中视频3采用KCF算法在第10帧的足部跟踪结果图;
图22是实施例中视频3采用KCF算法在第40帧的足部跟踪结果图;
图23是实施例中视频3采用KCF算法在第70帧的足部跟踪结果图;
图24是实施例中视频3采用KCF算法在第100帧的足部跟踪结果图;
图25是实施例中视频3采用MMKCF算法在第10帧的足部跟踪结果图;
图26是实施例中视频3采用MMKCF算法在第40帧的足部跟踪结果图;
图27是实施例中视频3采用MMKCF算法在第70帧的足部跟踪结果图;
图28是实施例中视频3采用MMKCF算法在第100帧的足部跟踪结果图;
图29是实施例中视频4采用KCF算法在第10帧的足部跟踪结果图;
图30是实施例中视频4采用KCF算法在第40帧的足部跟踪结果图;
图31是实施例中视频4采用KCF算法在第70帧的足部跟踪结果图;
图32是实施例中视频4采用KCF算法在第100帧的足部跟踪结果图;
图33是实施例中视频4采用MMKCF算法在第10帧的足部跟踪结果图;
图34是实施例中视频4采用MMKCF算法在第40帧的足部跟踪结果图;
图35是实施例中视频4采用MMKCF算法在第70帧的足部跟踪结果图;
图36是实施例中视频4采用MMKCF算法在第100帧的足部跟踪结果图;
图37是采用本发明算法用Turtlebot机器人跟踪人体足部试验示意图A;
图38是采用本发明算法用Turtlebot机器人跟踪人体足部试验示意图B;
图39是采用本发明算法用ROS机器人跟踪人体足部试验示意图A;
图40是采用本发明算法用ROS机器人跟踪人体足部试验示意图B。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种运动模型引导下的机器人核相关滤波跟踪算法,参照图1,包括建立足部局部运动模型,采用前一帧双脚位置对当前帧双脚位置进行估计,建立全局运动模型,根据全局运动模型估计双脚位置,若是第一帧,读取第一帧双脚位置图片,获取目标位置,训练分类器,确定目标模板,保持目标位置;若不是第一帧,读取图片,获取所估计的双脚位置,找到最大响应后更新目标位置,重新训练分类器,更新目标模板,保持目标位置,显示本帧跟踪结果;视频序列的图像是否为最后一帧,若是,结束跟踪,若不是,继续目标跟踪。
实施例
一种运动模型引导下的机器人核相关滤波跟踪算法,具体包括以下步骤:
步骤1,输入视频序列。
步骤2,判断是否为第一帧,若是第一帧,读取第一帧双脚位置图片,获取目标位置,训练分类器,确定目标模板,其次建立人体足部的局部运动模型和全局运动模型,
步骤2.1,确定第一帧的训练样本X
训练样本X是由训练正样本x和训练负样本x(i)组成的集合,在当前图像中,选取左脚的脚后跟水平方向中点位置(xl,yl)和右脚的脚后跟水平方向中点位置(xr,yr)作为特征点,以它为中心选取大小为55×55像素的正方形窗口,将该窗口内的子图像作为本帧的训练正样本x,x为n×1维向量,使用n×n阶循环矩阵P与训练正样本相乘进行循环移位获得负样本xi,x(i)=Pix,其中,i=1,2,……,n;
Figure BDA0002201307000000111
例如x(1)=Px=[xn x1 ... xn-1]T,x(2)=P2x=[xn-1 xn ... xn-2]T
确定第一帧的训练样本X,训练样本X是由训练正样本x和训练负样本x(i)组成的集合,则训练样本X为:
Figure BDA0002201307000000121
步骤2.2,训练分类器,即确定训练样本权值
假设图像的采样数据与下一帧真实目标位置的最小距离为F:
F=min||Xω-y||2+λ||ω||2
式中,X为本帧图像的训练样本;y是训练样本的回归值矩阵,为列向量,具体表示每个元素对应的样本标签,正样本用1表示,负样本用0表示;λ为正则化参数,取值为1×10-4;ω为权重系数;
训练样本权值,即F为最小值时的权重系数ω,对F进行求导,可得:
Figure BDA0002201307000000122
变换到复数域:
ω=(XHX+λI)-1XHy
式中,I为n×n阶单位矩阵;
步骤2.3,确定目标模板
设定权重系数
Figure BDA0002201307000000123
其中
Figure BDA0002201307000000124
为核函数,即训练样本X从低维空间到高维空间的映射,根据F=min||Xω-y||2+λ||ω||2可得:
α=(K+λI)-1y
变换到傅里叶域,
Figure BDA0002201307000000125
式中,K为核矩阵,
Figure BDA0002201307000000131
Figure BDA00022013070000001311
为核矩阵K第一行的傅里叶变换;
Figure BDA0002201307000000132
为分类器系数,也是α的傅里叶变换;
Figure BDA0002201307000000133
为y的傅里叶变换;确定目标模板,即求解分类器系数
Figure BDA0002201307000000134
核矩阵是样本之间通过核函数映射之后得到的。
步骤2.4,局部运动建模
在每一帧图像中采用像素点的坐标位置描述双脚的位置,定义当前帧左脚的位置为
Figure BDA0002201307000000135
右脚的位置为
Figure BDA0002201307000000136
则两只脚在垂直方向上的相对距离为
Figure BDA0002201307000000137
其中t是时间指数,描述不同时刻的位置坐标。
采用余弦函数对脚局部运动中垂直方向位移进行建模:
假设一个人匀速步行,则余弦函数的周期和幅度变化很小,较大的周期对应于较低的速度,较小的周期对应于较高的速度。我们使用幅度和相位调制余弦函数来对图像中两只脚在垂直方向上的相对距离dt进行建模:
Figure BDA0002201307000000138
式中,At为所述余弦函数的幅值,振幅是与机器人和目标之间的相对距离以及行走过程中抬脚的高度有关,At=|ylmax-yrmin|,ylmax为左脚垂直坐标的最大值,yrmin为右脚垂直坐标的最小值;
Tt为所述余弦函数的周期,由两个连续过零点之间的差决定,即
Figure BDA0002201307000000139
选取dt和dt-1符号相异的点作为过零点,则第k个过零点的时间
Figure BDA00022013070000001310
为:
Figure BDA0002201307000000141
Figure BDA0002201307000000142
为所述余弦函数的相位,
Figure BDA0002201307000000143
一般情况下,目标距离机器人的相对位置基本保持不变,因此两只脚之间的水平位移就基本不发生变化,t帧中两脚水平位移可以用前一帧进行过估计:
Figure BDA0002201307000000144
行人以不同的速度行走,因此人与相机之间的距离也会发生变化,测量人体两只脚之间的垂直位移曲线,如图2-4,图2为慢速行走,图3为中等步速行走,图4为快速行走。从这些图中可以看出,人体行走时两脚间垂直位移曲线近似为余弦曲线,因此可采用余弦函数对脚局部运动中垂直方向位移进行建模。
步骤2.5,建立全局运动模型
根据足部局部运动模型,采用前一帧双脚位置对当前帧双脚中间点位置
Figure BDA0002201307000000145
进行预测,建立全局运动模型。大多数情况下,人脚在两个连续帧之间的变化也不会很快,假设连续帧之间的行走速度保持不变,当前帧双脚中间点的预测位置
Figure BDA0002201307000000146
为:
Figure BDA0002201307000000147
其中,左脚预测位置
Figure BDA0002201307000000148
为:
Figure BDA0002201307000000151
右脚预测位置
Figure BDA0002201307000000152
为:
Figure BDA0002201307000000153
步骤3,若不是第一帧,即第n(n≥2)帧:
读取图片,根据全局运动模型预估出当前帧的窗口位置,找到最大响应,更新目标位置,重新训练分类器,更新目标模板;
步骤3.1,模板匹配
找到最大响应的过程即为模板匹配的过程,模板匹配在每一帧目标搜索区域内进行,搜索区域是以全局运动模型预测的双脚位置为中点,边长为137.5像素的正方形区域,即以预测的左脚脚后跟水平方向中点位置
Figure BDA0002201307000000154
和预测的右脚脚后跟水平方向中点位置
Figure BDA0002201307000000155
为中点扩大2.5倍的区域作为搜索区域,在该区域内进行模板匹配。
用kz表示测试样本和训练样本在核空间的核矩阵,则测试样本的响应
Figure BDA0002201307000000156
为:
Figure BDA0002201307000000157
式中
Figure BDA0002201307000000158
为核矩阵kz第一行的傅里叶变换,即为第二帧及后续各帧图像的测试样本,
Figure BDA0002201307000000159
为分类器系数,e为核矩阵kz第一行对应元素与α的点乘。模板匹配的过程即为求取函数
Figure BDA00022013070000001510
最大值对应位置的过程。
步骤3.2,模板更新
更新目标模板,即更新分类器系数
Figure BDA0002201307000000161
和目标观测模型
Figure BDA0002201307000000162
将线性插值法引入到模板的更新中,
Figure BDA0002201307000000163
Figure BDA0002201307000000164
上式中m为学习率,取0.02。
步骤4,保存目标位置,显示本帧跟踪结果,判断视频序列图像是否为最后一帧,若是,结束跟踪,若不是,继续步骤3,进行目标跟踪。即连续不断地使用运动模型对搜索位置进行预先估计,然后根据预测双脚位置生成训练样本,接着完成分类器训练、模板匹配、模板更新的步骤,进行跟踪计算。
采用本发明算法对四种不同情况下的行人步行测试视频进行了跟踪仿真研究,四个视频情况见表1所示。
表1实际拍摄四种行人步行视频描述
序号 视频名称 行人行走情况和背景情况
1 passageway 较慢速度行走在室内走廊,无光照变化
2 shade 中等速度行走在树荫和阳光下,有明显光照变化
3 garden 中等步速行走在室外花园,有少量光照变化
4 zoom 快速行走在阴天室外
普通KCF算法和本发明MMKCF(Motion Model to guide Kernel CorrelationFilter:运动模型引导的KCF)算法下的跟踪准确率曲线如图5-8所示,图中,横坐标为跟踪目标位置中心与实际标注的目标中心的误差阈值(单位为像素),是两个中心坐标的欧氏距离,纵坐标为跟踪准确率,取阈值为20像素的准确率作为评估标准。
从图5-8中可看出,在视频1情况下,KCF跟踪效果较好,准确率为76%,MMKCF算法准确率略高于KCF,达到了81%。在视频2情况下,KCF准确率为76%,而MMKCF准确率升高到93%。在视频3情况下,KCF算法丢失目标,准确率仅为14%,MMKCF准确率为72%,提高了58%,视频3跟踪准确率低于视频2主要是因为花园地板图像和鞋的图像近似导致。在视频4情况下,KCF算法丢失目标,准确率仅为19%,而MMKCF跟踪效果较好,准确率为79%,相比于KCF,提高了60%。
图9-12是对四个视频跟踪的位置误差进行了分析,图中纵轴表示的跟踪误差是指不同跟踪算法运行时,每帧图片中跟踪框的中心与真值框的中心位置之差,单位为像素,横轴为视频帧数。图中,曲线②为KCF算法的跟踪误差曲线,曲线①为本发明MMKCF算法的跟踪误差曲线。从这些图中可看出,在四个视频中,曲线的大幅度波动主要原因是,在行走过程中鞋子的抬起产生了一定的形变,由于HOG特征描述的是局部物体的形状,所以使跟踪框发生了漂移。
在视频1中,因为步行速度慢,两种算法的跟踪误差差别很小。在视频2中,从第45到第55帧处由于抬脚改变了足部目标特征而使跟踪误差增大,曲线发生较大波动,KCF算法在第90帧后丢失了足部目标。在视频3和视频4中,KCF算法分别在第25帧和第20帧丢失了目标,而MMKCF算法虽然也存在着误差波动较大的情况,但仍成功跟踪了足部目标。
基于表1中视频2-视频4的两种算法跟踪效果如图13-36所示,选取了KCF和MMKCF对视频2、视频3和视频4的处理结果中第10、40、70和100帧的跟踪结果图片作为对比,图中,白色框代表KCF算法的跟踪结果,黑色框代表MMKCF算法的跟踪结果。
对于视频Shade,即视频2,参照图13-20,由于KCF算法采用了HOG特征,所以光照对跟踪结果没有产生太大影响,KCF算法在第10、40、70帧中,左右脚的跟踪结果差异不大,但是在第92帧时,左脚跟踪框发生了漂移,跟踪失败;MMKCF算法在70帧时,虽然跟踪框有微小的漂移,但始终成功跟随双脚。对应视频Garden,即视频3,对比图21-24和图25-28,KCF算法在第16帧时,左脚抬起之后,鞋底完全遮挡住了鞋跟,改变了目标的特征,同时左右脚距离较近,左脚的目标框在此时漂移到了右脚附近,导致了左脚目标的丢失;右脚在第95帧时被左脚遮挡,导致了右脚目标的丢失。对于视频Zoom,即视频4,参照图29-32和图33-36所示,存在目标形变和快速运动两种影响因素,KCF算法在第32帧时丢失左脚目标,32到33帧时,左脚抬起迈步,目标的在垂直方向上的位移为57个像素,目标26%的区域超出了搜索区域,导致跟踪失败,同样在第20帧时丢失右脚目标是由于在20到21帧时,右脚的部分区域也超出了搜索区域,导致跟踪失败。但采用MMKCF算法,利用运动模型首先预测下一帧的搜索区域位置,再完成模板匹配,始终成功跟随目标。
使用Turtlebot机器人和ROS(robot operating system)机器人操作系统进行了本发明所提算法试验验证。机器人上搭载了微软Kinect V1视觉传感器和处理设备间数据通信的联想酷睿i5处理器、频率2.4GHz笔记本。安装Ubuntu 16.04版本的操作系统和ROSKinetic版本。根据RGB相机传输的实时视频进行目标跟踪,通过深度相机判断双脚两个目标的距离,对双脚的距离进行整合之后运算得到跟随目标所需的线速度与角速度,完成对机器人运动的控制。在实验楼走廊进行真实场景下的跟踪试验,行人以较快步速步行了超过10米的距离,跟踪效果较好,图37-40为机器人跟随示意图。

Claims (4)

1.一种运动模型引导下的机器人核相关滤波跟踪算法,其特征在于,包括建立足部局部运动模型,采用前一帧双脚位置对当前帧双脚位置进行预测,建立全局运动模型,根据全局运动模型预测双脚位置,若是第一帧,读取第一帧双脚位置图片,获取目标位置,训练分类器,确定目标模板,保持目标位置,显示本帧跟踪结果;若不是第一帧,读取图片,获取预测的双脚位置,找到最大响应后更新目标位置,重新训练分类器,更新目标模板,保持目标位置,显示本帧跟踪结果;根据跟踪结果判断是否为最后一帧,若是,结束跟踪,若不是,继续目标跟踪;
具体包括以下步骤:
步骤1,输入视频序列
步骤2,判断是否为第一帧,若是第一帧,读取第一帧双脚位置图片,获取目标位置,训练分类器,确定目标模板,之后对脚局部运动中两脚垂直方向位移dt和水平方向位移
Figure FDA0002627201630000011
进行建模,建立足部局部运动模型,其中t是时间指数;
步骤3,根据足部局部运动模型,采用前一帧双脚位置对当前帧双脚中间点位置
Figure FDA0002627201630000012
进行预测,建立全局运动模型;
步骤4,判断是否为第一帧,若不是第一帧,读取图片,获取运动模型预测的双脚位置,找到最大响应后更新目标位置,重新训练分类器,更新目标模板;
步骤5,保存目标位置,显示本帧跟踪结果,判断视频序列图像是否为最后一帧,若是,结束目标跟踪,若不是,继续所述步骤4,进行目标跟踪;
所述步骤1中,每一帧图像中采用像素点的坐标位置描述双脚的位置,
Figure FDA0002627201630000021
表示当前帧左脚的位置坐标,
Figure FDA0002627201630000022
表示当前帧右脚的位置坐标,则两脚垂直方向位移
Figure FDA0002627201630000023
两脚水平方向位移
Figure FDA0002627201630000024
lt-1为前一帧两脚水平方向位移;
采用余弦函数对两脚垂直方向位移dt进行建模,
Figure FDA0002627201630000025
式中,At为所述余弦函数的幅值,At=|ylmax-yrmin|,ylmax为左脚垂直坐标的最大值,yrmin为右脚垂直坐标的最小值;
Tt为所述余弦函数的周期,
Figure FDA0002627201630000026
Figure FDA0002627201630000027
表示第k个过零点的时间,
Figure FDA0002627201630000028
Figure FDA0002627201630000029
为所述余弦函数的相位,
Figure FDA00026272016300000210
所述步骤3中,当前帧双脚中间点的预测位置
Figure FDA00026272016300000211
为:
Figure FDA00026272016300000212
其中,左脚预测位置
Figure FDA00026272016300000213
为:
Figure FDA00026272016300000214
右脚预测位置
Figure FDA0002627201630000031
为:
Figure FDA0002627201630000032
所述步骤4中,双脚位置包括左脚位置和右脚位置,第一帧左脚位置是以左脚的脚后跟水平方向中点位置(xl,yl)为中心的方形区域,第一帧右脚位置是以右脚的脚后跟水平方向中点位置(xr,yr)为中心的方形区域;其余帧的左脚位置是以左脚预测位置
Figure FDA0002627201630000033
为中心的方形区域,右脚位置是以左脚预测位置
Figure FDA0002627201630000034
为中心的方形区域;
所述步骤2中,训练分类器,确定目标模板具体包括以下步骤:
步骤2.1,确定第一帧的训练样本X,训练样本X是由训练正样本x和训练负样本x(i)组成的集合,训练正样本x为第一帧窗口内的子图像,即x=[x1 x2 ...... xn]T,训练负样本x(i)=Pix,i=1,2,……,n,P为n×n阶循环矩阵,
Figure FDA0002627201630000035
则训练样本X为:
Figure FDA0002627201630000036
步骤2.2,训练分类器,即确定训练样本权值
假设图像的采样数据与下一帧真实目标位置的最小距离为F:
F=min||Xω-y||2+λ||ω||2
式中,X为本帧图像的训练样本,y是训练样本的回归值矩阵,λ为正则化参数,ω为权重系数;
训练样本权值,即F为最小值时的权重系数ω,对F进行求导,可得:
Figure FDA0002627201630000041
变换到复数域:
ω=(XHX+λI)-1XHy
式中,I为n×n阶单位矩阵;
步骤2.3,确定目标模板
设定权重系数
Figure FDA0002627201630000042
其中
Figure FDA0002627201630000043
为核函数,即训练样本X从低维空间到高维空间的映射,根据F=min||Xω-y||2+λ||ω||2可得:
α=(K+λI)-1y
变换到傅里叶域,
Figure FDA0002627201630000044
式中,K为核矩阵,
Figure FDA0002627201630000045
Figure FDA0002627201630000046
为核矩阵K第一行的傅里叶变换;
Figure FDA0002627201630000047
为分类器系数,也是α的傅里叶变换;
Figure FDA0002627201630000048
为y的傅里叶变换;确定目标模板,即求解分类器系数
Figure FDA0002627201630000049
2.根据权利要求1所述的运动模型引导下的机器人核相关滤波跟踪算法,其特征在于,所述步骤4中,找到最大响应的过程即为模板匹配的过程,用kz表示测试样本和训练样本在核空间的核矩阵,则测试样本的响应
Figure FDA00026272016300000410
为:
Figure FDA0002627201630000051
式中
Figure FDA0002627201630000052
为核矩阵kz第一行的傅里叶变换,也为第二帧及后续各帧图像的测试样本,
Figure FDA0002627201630000053
为分类器系数,☉为核矩阵kz第一行对应元素与
Figure FDA0002627201630000054
的点乘。
3.根据权利要求2所述的运动模型引导下的机器人核相关滤波跟踪算法,其特征在于,所述模板匹配在每一帧目标搜索区域内进行,搜索区域是以全局运动模型预测的双脚位置为中点扩大后的区域。
4.根据权利要求3所述的运动模型引导下的机器人核相关滤波跟踪算法,其特征在于,所述步骤4中,更新目标模板,即更新分类器系数
Figure FDA0002627201630000055
和目标观测模型
Figure FDA0002627201630000056
Figure FDA0002627201630000057
Figure FDA0002627201630000058
上式中m为学习率。
CN201910866076.5A 2019-09-09 2019-09-09 运动模型引导下的机器人核相关滤波跟踪算法 Active CN110706252B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910866076.5A CN110706252B (zh) 2019-09-09 2019-09-09 运动模型引导下的机器人核相关滤波跟踪算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910866076.5A CN110706252B (zh) 2019-09-09 2019-09-09 运动模型引导下的机器人核相关滤波跟踪算法

Publications (2)

Publication Number Publication Date
CN110706252A CN110706252A (zh) 2020-01-17
CN110706252B true CN110706252B (zh) 2020-10-23

Family

ID=69195188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910866076.5A Active CN110706252B (zh) 2019-09-09 2019-09-09 运动模型引导下的机器人核相关滤波跟踪算法

Country Status (1)

Country Link
CN (1) CN110706252B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563919B (zh) * 2020-04-03 2023-12-29 深圳市优必选科技股份有限公司 目标跟踪方法、装置、计算机可读存储介质及机器人
CN112223278B (zh) * 2020-09-09 2021-12-21 山东省科学院自动化研究所 一种基于深度视觉信息的探测机器人跟随方法及系统
US20220309767A1 (en) * 2021-03-26 2022-09-29 Teledyne Flir Detection, Inc. Object tracking in local and global maps systems and methods
CN113392721B (zh) * 2021-05-24 2023-02-10 中国科学院西安光学精密机械研究所 一种遥感卫星视频目标跟踪方法
CN114663462A (zh) * 2022-04-07 2022-06-24 北京远度互联科技有限公司 目标跟踪方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106557774A (zh) * 2015-09-29 2017-04-05 南京信息工程大学 多通道核相关滤波的实时跟踪方法
CN107862705A (zh) * 2017-11-21 2018-03-30 重庆邮电大学 一种基于运动特征和深度学习特征的无人机小目标检测方法
CN108921879A (zh) * 2018-05-16 2018-11-30 中国地质大学(武汉) 基于区域选择的CNN和Kalman滤波的运动目标跟踪方法及系统
CN109033955A (zh) * 2018-06-15 2018-12-18 中国科学院半导体研究所 一种人脸跟踪方法和系统
CN109064491A (zh) * 2018-04-12 2018-12-21 江苏省基础地理信息中心 一种自适应分块的核相关滤波跟踪方法
CN109242883A (zh) * 2018-08-14 2019-01-18 西安电子科技大学 基于深度sr-kcf滤波的光学遥感视频目标跟踪方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9684928B2 (en) * 2014-01-15 2017-06-20 Holition Limited Foot tracking
CN109753846A (zh) * 2017-11-03 2019-05-14 北京深鉴智能科技有限公司 目标跟踪硬件实现系统和方法
CN109579848B (zh) * 2018-12-27 2020-03-10 武汉大学 一种保持全局路径下机器人的中间规划方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106557774A (zh) * 2015-09-29 2017-04-05 南京信息工程大学 多通道核相关滤波的实时跟踪方法
CN107862705A (zh) * 2017-11-21 2018-03-30 重庆邮电大学 一种基于运动特征和深度学习特征的无人机小目标检测方法
CN109064491A (zh) * 2018-04-12 2018-12-21 江苏省基础地理信息中心 一种自适应分块的核相关滤波跟踪方法
CN108921879A (zh) * 2018-05-16 2018-11-30 中国地质大学(武汉) 基于区域选择的CNN和Kalman滤波的运动目标跟踪方法及系统
CN109033955A (zh) * 2018-06-15 2018-12-18 中国科学院半导体研究所 一种人脸跟踪方法和系统
CN109242883A (zh) * 2018-08-14 2019-01-18 西安电子科技大学 基于深度sr-kcf滤波的光学遥感视频目标跟踪方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Anti-occlusion tracking method based on kernel correlation filter;Weichuang Jiang et al;《Advances in Intelligent Systems Research》;20180630;492-495 *
Multi-kernel correlation filter for visual tracking;Ming Tang et al;《2015IEEE International Conference on Computer Vision》;20151231;3038-3046 *
一种快速精准的核相关滤波器跟踪算法;施伟等;《计算机应用与软件》;20170731;第34卷(第7期);125-129 *
基于核化相关滤波器的视觉标跟踪算法研究与改进;莫博瑞;《中国优秀硕士学位论文全文数据库信息科技辑》;20180315;第2018年卷(第3期);I138-1874 *
融合运动模型与联合置信度量的改进核相关跟踪算法;陈婧等;《红外技术》;20181130;第40卷(第11期);1106-1111 *

Also Published As

Publication number Publication date
CN110706252A (zh) 2020-01-17

Similar Documents

Publication Publication Date Title
CN110706252B (zh) 运动模型引导下的机器人核相关滤波跟踪算法
CN108416840B (zh) 一种基于单目相机的三维场景稠密重建方法
CN109800689B (zh) 一种基于时空特征融合学习的目标跟踪方法
CN109800864B (zh) 一种基于图像输入的机器人主动学习方法
Steder et al. Visual SLAM for flying vehicles
CN109102525B (zh) 一种基于自适应位姿估计的移动机器人跟随控制方法
CN111105439B (zh) 一种使用残差注意力机制网络的同步定位与建图方法
CN109448025B (zh) 视频中短道速滑运动员的自动跟踪与轨迹建模方法
CN109977971A (zh) 基于均值偏移与核相关滤波的尺度自适应目标跟踪系统
CN110009060B (zh) 一种基于相关滤波与目标检测的鲁棒性长期跟踪方法
CN111368759B (zh) 基于单目视觉的移动机器人语义地图构建系统
CN112949452B (zh) 一种基于多任务共享网络的机器人弱光环境抓取检测方法
CN109887029A (zh) 一种基于图像颜色特征的单目视觉里程测量方法
CN115063447A (zh) 一种基于视频序列的目标动物运动追踪方法及相关设备
CN113033555B (zh) 基于度量学习的视觉slam闭环检测方法
CN114677323A (zh) 一种室内动态场景下基于目标检测的语义视觉slam定位方法
CN111998862A (zh) 一种基于bnn的稠密双目slam方法
CN110472577A (zh) 一种基于自适应相关滤波的长时视频跟踪方法
CN114689038A (zh) 基于机器视觉的果实检测定位与果园地图构建方法
CN103593639A (zh) 嘴唇检测和跟踪方法及设备
CN111897333B (zh) 一种机器人行走路径规划方法
CN115482252A (zh) 基于运动约束的slam闭环检测和位姿图优化方法
CN116958595A (zh) 一种基于图像块区域特征点的视觉slam回环检测改进方法
CN109658436B (zh) 一种混合goa和tlbo搜索的快速运动目标跟踪方法
CN111160300A (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