双目视觉下三维人体运动跟踪算法概要文档格式.docx
《双目视觉下三维人体运动跟踪算法概要文档格式.docx》由会员分享,可在线阅读,更多相关《双目视觉下三维人体运动跟踪算法概要文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
实验结果表明,该算法能有效地对复杂人体动作进行跟踪并能从跟踪错误中正确恢复。
关键词:
外极线约束;
三维Kaiman滤波器;
三维人体运动跟踪;
人体约束
中图分类号:
TP391文献标志码:
A文章编号:
100123695(2009
0421279203
3DhumanmotiontrackingalgorithminbinocuiarcaCAIJie,ZHENGJ2bin
(SchoolofComputer,NorthwesternPolytechnicalUXi
Abstractsisverydifficulttotrackhumanmotion2rapidchangeintrajectoryofhumanmo2
tionduetothecomplexityofhumanmotirusing3DKaimanfilterandhumanconstraintstotrytosolvetheseproblemsinasomemarkerstothehumanbodyatkeyjoints,andinitialized3DKalman.to3Dmarkers,matchedthecorresponding2Dmarkersofeachbin2ocularimageon.Thirdly,tracked3Dmarkersby3DKalmanfilter.Finally,usedhumanconstraintstofthetrackingresults,andrevisethetrackingerrors.Experimentalresultsdemonstratetheproposedtracklexhumanmotionaccuratelyandalsocanrevisethetrackingerrors.Keywords:
eprestriction;
3DKalmanfilter;
3Dhumanmotiontracking;
humanconstraints
引言
近年人体运动跟踪技术被广泛应用到虚拟现实、视频压缩、体育运动分析、人机交互、运动捕捉等领域之中,成为计算机视觉领域中研究的热点之一。
由于人体运动是非刚性的,人体运动轨迹的快速改变和人体自遮挡现象经常发生,对人体运动进行准确有效的跟踪是十分困难的。
目前国内外学者已经研究出许多人体运动跟踪算法,它们大致可分为基于模型
的和非基于模型的[1]两类。
基于模型的跟踪方法常需要建立人体运动模型库,来存放人体运动的各种姿势模型及对应的特征参数和运动参数。
在跟踪过程中需要在模型库中为跟踪目标选择一个最匹配的模型,当匹配完成之后,人体的各种运动参数就可以从库中得到。
Huang等人[2]提出了一种基于模型的人体跟踪算法。
首先利用模型估计人体在空间中的姿势,然后使用遗传算法估计关节点的位置。
Sigal等人[3]提出了一种基于松散连接的人体模型的跟踪算法,并得到了较好的跟踪结果。
Kim
等人[4]提出了一种基于三维人体模型的跟踪算法。
他们使用有着17个关节的三维
人体模型和粒子滤波器对人体进行跟踪,也得到了不错的跟踪结果。
而非基于模型的算法常利用图像的一些辅助特征进行跟踪。
Ukida等人
[5]
利用提取的人体轮廓和安置在人体关节上的彩
色标记点对人体进行跟踪。
Chen等人[6]通过提取人体轮廓和人体约束来对人体进行跟踪。
Zhuang等人[7]利用贴在人体身上的色块对人体进行跟踪。
Silaghi等
人[8]通过安置在人体关节的光学标记点进行跟踪。
Shen等人[9]把整个跟踪过程分
为宏运动分析和微运动分析,前者通过分析投影面获得人体姿势;
后者基于不同姿势之间的转换并使用Kaiman滤波器预测得到运动参数。
目前大多数的跟踪算法在特定条件下有着较好的结果,但由于人体运动所固有的复杂性,仍存在一些问题。
基于模型的跟踪算法不能为所有类型的动作建立模型所以应进行跟踪。
由于这些特征极易受人体自遮挡和环境的影响,算法的鲁棒性较
差。
本文提出一种基于三维Kaiman滤波器和人体约束的平行双目人体运动跟踪算法。
该算法将基于模型的方法和非基于模型的方法相结合,能有效地对复杂人体动作进行跟踪并能从跟踪错误中恢复。
三维人体运动跟踪算法
1立体匹配构建三维标记点
外极线约束方法能有效缩小图像中标记点在另一幅图像
中的搜索范围(从二维降到一维,在此基础上,再使用灰度互
第26卷第4期2009年4月
计算机应用研究
ApplicationResearchofComputersVol.26No.4Apr.2009
相关法对标记点进行匹配,可得到准确的匹配结果。
11灰度互相关法
假设I和I为待匹配图像,I为左视图,I为右视图,(x,y
为I中一标记点的位置,(x'
表示'
I中一标记点的位置。
对
图像I和I中的每个标记点建立一个以该标记点为中心的匹配模板。
然后选择
I中的一个标记点,将其模板与图像I中的候选标记点(满足外极线约束关系的模板进行比较,利用式
(1计算两个模板的相关程度。
corrij=Ek
u=-kEk
v=-k[g(xi+u,yi+v-g-
(xi,yi][g'
(x'
j+u,y'
j+v-g-
j,y'
j]/Ekk=Ekv二k
v=-k
[g'
(x'
j+u,y-g-'
'
j+v
j]
2
(1
其中:
(xi,yi、(x'
i,y'
分别为图像I
、I中标记点的坐标;
g表示图像I中一点的灰度;
g表示图像I中一点的灰度;
g和g-
分别表示模板中所有像素灰度的平均值。
计算标记点(x,y与图像I中候选标记点的相关程度,由式(2得到I中与(x,y对应的标记点。
corri=maxj=1,…,n'
(corrij
(2
11匹配准则
假设P1(x1,y1和P2(x2,y2是对应匹配点,P2线为a?
u+b?
v+c=0,当已知P1时,P:
x2b|b2(3
其中:
油式(31的候选匹配点集Q,然后再使用式(1选择与P1互相关程度最高的标记点作为P2的对应匹配点。
1三维
滤波器
在之前已经得到所有三维候选标记点(候选标记点的三维位置,在此要使用某种策略为标记点选择三维候选点。
本文使用扩展Kaiman滤波器对标记点的三维位置进行预测,并在此预测范围内寻找候选标记点。
11扩展滤波器的组成
三维Kaiman滤波器用于对三维标记点进行跟踪,并由以
下参数组成:
Mn=(pk,pc
k,△pk,vk
k,△vk,akoa
k,△ak
n
(4
Mn表示三维标记点n;
pk表示Mn在第k时刻测量得到的三维中心位置
Po
k表示Mn在第k时刻预测得到的三维中心位置;
△p表示Mn在第k时刻预测位置的误差,也即候选标记点的搜索范围;
vk表示Mn在第k时刻测量得到的速度;
vc
示Mn在第k时刻预测得到的速度;
△v表示Mn在第k时刻预测速度的误差ak表示Mn在第k时刻测量得到的加速度;
ak表示Mn在第k时刻预测得到的加速度;
△a表示Mn在第k时刻预测加速度的误差。
11使用扩展
滤波器进行位置预测
P
k+1=pk+vkx
△t+1/2akXAt2
(5Apk+1=Apk+AvkXAt+1/2AakXAt
(6
p-
k+1表示标记点在第k+1时刻预测的三维位置;
Apk+表示标记点三维坐标位置预测的误差,为搜索Mn提供了搜索
范围。
鉴于人体运动的复杂性,通常要在Apk+1
Qpiusyc^qciDic
Vjjir&
pp
[orrm町pjccfiouic^npjizpru^]4ojtks*Idd^SOlO
©
上加一个正
常数v。
11候选标记点的选择策略
在标记点Mn的搜索范围(△pk+1+<内搜索候选点,若此范围内只有一个,则直接作为候选点;
若有多个则选择距离预测中最近的点作为候选点;
没有则可能丢失或发生异常,将会在1.3节中进行处理。
另外扩展Kaiman参数的修正也在1.3节中进行。
1使用人体约束处理跟踪结果
在人体运动跟踪过程中,人体运动经常被看做是由多个关节组成的刚体运动。
在图1中,实线表示的关节点之间的长度是相对不变的,在运动过程中只会发生微小的变化;
虚线表示的关节点间的长度则会发生较大的变化,但由于运动的连续性,相邻帧间的关节点间的距离只会发生较小的变化。
可以利。
假设Q代表得到的三维标记点集合;
Q代表三维Kaiman
滤波器的跟踪结果;
Mn代表在Q中的一个三维标记点n;
M'
代表Mn的跟踪结果并且在集合Q中;
Mrn表示Mn距离本帧最近且未发生异常情况的那一帧的三维位置;
dis(Mi,Mj表示本帧Mi和Mj之间的距离;
last_dis(Mi,Mj表示距离本帧最近且未发生异常情况的那一帧的Mi和Mj之间的距离;
表示预设的阈
值(很小的正数,并且能够在跟踪期间调整。
具体算法如下:
a检验M'
n(n=0,…,从(1.2节获得的存在情况。
只要存在相邻点有跟踪结果,执行b;
否则转到e。
b确定相邻标记点跟踪结果的正确性。
如果相邻点Mn-1
和Mn(n=1,…,5or7,…的跟踪结果M'
n1和M'
n满足式
(7,则置Mn-1和Mn跟踪正确。
判断此时是否所有标记点(除了丢失和遮挡的都跟踪正确。
如果是,则结束此帧跟踪;
否则继续处理。
|dis(M-1,M'
n-last_dis(Mn-1,Mn|<
S
(7
c正确跟踪的相邻标记点对其中间标记点跟踪结