CN112527119A - 一种手势位姿数据处理方法及存储介质 - Google Patents

一种手势位姿数据处理方法及存储介质 Download PDF

Info

Publication number
CN112527119A
CN112527119A CN202011527638.2A CN202011527638A CN112527119A CN 112527119 A CN112527119 A CN 112527119A CN 202011527638 A CN202011527638 A CN 202011527638A CN 112527119 A CN112527119 A CN 112527119A
Authority
CN
China
Prior art keywords
estimation
gesture
state
matrix
prediction
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.)
Granted
Application number
CN202011527638.2A
Other languages
English (en)
Other versions
CN112527119B (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.)
Nanjing Changkong Technology Co ltd
Nanjing Pukou High-Tech Industrial Development Zone Management Committee
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing Changkong Technology Co ltd
Nanjing Pukou High-Tech Industrial Development Zone Management Committee
Nanjing University of Aeronautics and Astronautics
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 Nanjing Changkong Technology Co ltd, Nanjing Pukou High-Tech Industrial Development Zone Management Committee, Nanjing University of Aeronautics and Astronautics filed Critical Nanjing Changkong Technology Co ltd
Priority to CN202011527638.2A priority Critical patent/CN112527119B/zh
Publication of CN112527119A publication Critical patent/CN112527119A/zh
Application granted granted Critical
Publication of CN112527119B publication Critical patent/CN112527119B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种手势位姿数据处理方法,包括获取手部关键点的三维信息作为观测信息;采用容积卡尔曼滤波器CKF对所述手势姿态变换模型进行滤波估计获得系统手势姿态预测值,采用卡尔曼滤波器KF对位置运动模型进行滤波估计获得系统位置状态预测值;根据Huber M估计过程的原理修正利用CKF预测估计误差的协方差矩阵;通过自适应系数加权过程修正器KF获得的估计误差的协方差矩阵;使用Huber M估计方法对卡尔曼滤波器KF和容积卡尔曼滤波器CKF方法中的观测更新过程进行修正;将修正后的滤波估计值通过设定的数值关系转换为所需的数据。本发明方法能减小未知工作条件的影响,有更好的自适应性和鲁棒性。

Description

一种手势位姿数据处理方法及存储介质
技术领域
本发明涉及人机交互技术领域,具体涉及一种手势位姿数据处理方法及存储介质。
背景技术
人机交互技术是连接人和计算机之间的纽带,提高人机之间协作效率的关键技术,随着大部分人与计算机系统联系,交互系统必须更接近于完成物理世界中相同的交互过程,这种方法被称为自然交互,有助于产生这种体验的设备被称为自然交互设备,它们为所谓自然交互界面奠定了基础,自然交互界面允许用户以类似于通过肢体运动、手甚至声音与现实世界互动的方式与机器互动,语言、触摸或身体动作被用来控制设备,人与计算机之间用一个现实的方式处理虚拟或真实的对象。
手势是人与外界常用的交流方式之一,是一种非常直观的非接触型交互方式,有三种能够感应手势的传感器类型:基于安装的传感器,多点触摸屏传感器和基于视觉的传感器。与第一种情况比,基于视觉的传感器由于非接触,使用时显得不麻烦和不舒服,且能捕获更多的信息;与第二种情况比,基于视觉的传感器提供了更大的工作距离。随着相机技术的发展,已经出现了精确的身体运动传感输入设备,如Microsoft Kinect,Leap motion和Intel RealSense。Leap Motion是一个小型的USB驱动设备,使用两个单色红外摄像机和三个红外led灯,在大约一米的半球形3D空间中跟踪手和手指的运动。Leap Motion一直是手势识别中使用最广泛的相机之一,因为它允许用户像在现实生活中一样自由行动.它的低成本和深度传感器可以在任何环境光线下实时捕获视频并输出骨骼数据,对于LeapMotion来说,手势可以是任何简单的手部运动,也可以是复杂的形状。
在Leap Motion数据采集过程中,跟踪手部动作姿态时难以避免传感器存在的测量识别误差,同时周围环境存在的干扰,以及人手在操作过程产生的不必要的抖动都会导致测量数据往往会存在随机误差,目前关于Leap Motion数据尤其是手部姿态和三维位置数据的处理方法主要使用常见的卡尔曼滤波,扩展卡尔曼滤波,无迹卡尔曼滤波以及粒子滤波等方法,然而在这些方法的使用过程中没有关于过程噪声协方差矩阵和观测噪声协方差矩阵设定的讨论,即没有考虑未知噪声分布特性和模型不准确可能导致的滤波发散的可能性。
发明内容
本发明的目的在于公开预测准确度高,抗干扰能力强和降噪能力强的一种手势位姿数据处理方法。
为实现上述技术目的。本发明采用以下技术方案。
提供一种手势位姿数据处理方法,包括:获取手部关键点的三维信息作为观测矩阵;构建系统状态模型,所述系统状态模型包括手势姿态变换模型和位置运动模型;
采用容积卡尔曼滤波器CKF对所述手势姿态变换模型进行滤波估计获得系统手势姿态预测值,采用卡尔曼滤波器KF对位置运动模型进行滤波估计获得系统位置状态预测值;
根据Huber M估计过程的原理修正利用中容积卡尔曼滤波器CKF获得的所述手势姿态变换模型预测估计误差的协方差矩阵;通过自适应系数加权过程修正利用卡尔曼滤波器KF获得的所述位置运动模型预测估计误差的协方差矩阵;
使用Huber M估计方法对卡尔曼滤波器KF和容积卡尔曼滤波器CKF方法中的观测更新过程进行修正,获得修正后的手势姿态状态量和位置状态量的滤波估计值;将修正后的滤波估计值通过设定的数值关系转换为所需的数据。
进一步地,获取手部关键点的三维信息具体为:获取利用Leap Motion控制器采集的人手的位姿数据,包括数据帧对应的时间戳,手掌方向向量D,手掌法向量N,掌心位置P,掌心瞬时速度V,在Leap Motion坐标系下的手掌三维姿态角数据。
进一步地,设xp(k),zp(k)分别为k时刻位置估计方程的状态量和观测量,所述位置运动模型预测方程和观测方程表示为:
xp(k)=Fp(k)xp(k-1)+Gpw(k)
zp(k)=Hp(k)xp(k)+vp(k)
其中w(k)为加速度的过程噪声,Gp=[Γ,Γ,Γ]T为噪声分别矩阵扩展形式,Γ=[0.5T2,T,1]T;vp(k)为观测噪声向量;状态转移矩阵Fp
Figure BDA0002851099030000041
t表示相邻采样点的时间间隔,
Figure BDA0002851099030000042
Figure BDA0002851099030000043
表示手掌坐标系中的i轴和传感器坐标系中的j轴之间的夹角,i,j∈(X,Y,Z);观测矩阵Hp表示为:
Figure BDA0002851099030000044
进一步地,设xa(k),za(k)分别为k时刻姿态估计方程的状态量和观测量,所述手势姿态变换模型预测方程和观测方程表示为:
xa(k)=Fa(k)·xa(k-1)+wa(k-1)
Za(k)=h(xa(k))+va(k)
其中Fa(k)和h(·)分别是姿态状态转移矩阵和非线性观测函数,wa(k-1)和va(k)为过程噪声和观测噪声。
进一步地,根据Huber M估计过程的原理修正利用中容积卡尔曼滤波器CKF获得的所述手势姿态变换模型预测估计误差的协方差矩阵如下:其中Pk|k-1
Figure BDA0002851099030000045
分别原始状态预测矩阵和修正后的预测协方差矩阵,ex,k为状态预测误差,w(·)为修正函数,对角矩阵Θx,k是根据Huber M估计过程的原理通过状态预测误差构造的判断矩阵:
Figure BDA0002851099030000051
Θx,k=diag[w(ex,k,i)],
进一步地,通过自适应系数加权过程修正利用卡尔曼滤波器KF获得的所述位置运动模型预测估计误差的协方差矩阵具体为:构造加权系数函数修正预测协方差矩阵中的速度和加速度分量:
Figure BDA0002851099030000052
γ为调节系数,具体实施例中可设为0.1,将k时刻相对于上一时刻的速度和加速度的绝对差各分量分别代入上式中的x,得到三维向量gv(k),ga(k),设Pp(k|k-1),P′p(k|k-1)位置估计中的原始状态预测协方差矩阵和修正后的预测协方差矩阵,修正过程形如:
P′p(k|k-1)=Pp(k|k-1)·[1,gv(k),ga(k)]。
进一步地,使用Huber M估计方法对卡尔曼滤波器KF和容积卡尔曼滤波器CKF方法中的观测更新过程进行修正,具体为:在经过滤波方法的时间更新后,得到预测状态和协方差矩阵,结合当前采样点时刻传感器提供的观测向量作为Huber M算法的输入,对观测方程进行线性化,转化为线性最小二乘问题并微分求解,系统状态迭代公式和迭代结束后方差为:
Figure BDA0002851099030000053
Figure BDA0002851099030000054
其中,上标j为迭代次数,y(k)和M(k)分别为Huber M估计过程中重构观测方程的输出和系数矩阵,Θ为判断矩阵,xk和Pk为修正后的状态滤波估计值和状态协方差矩阵,修正后可代入下一时刻滤波算法的更新过程中。
进一步地,将修正后的滤波估计值通过设定的数值关系转换为所需的数据的具体包括:对于所述手势姿态变换模型,根据对应数值关系将姿态状态量中的四元数转换为算法处理后的三维姿态角,k时刻姿态状态量[q0,k,q1,k,q2,k,q3,k]T与姿态角向量ψk对应数值关系为:
Figure BDA0002851099030000061
本发明所取得的有益技术效果:本发明公开了手部位置和姿态数据的相关处理方法,解决传统数据处理算法没有考虑数据观测环境和系统状态过程的不确定性和模型偏差等方面的局限性,对于位置数据,以CA模型和KF方法为基础建模处理;对于姿态数据,以四元数变换和CKF方法为基础建模处理;同时使用Huber M方法将KF和CKF方法中的测量方程等价变换,并在CKF中设计了迭代算法来构造加权矩阵,重置状态预测协方差矩阵;而在KF中则利用手掌速度和加速度通过映射函数用于生成调整KF增益的自适应因子;结果表明相比于传统算法,所提出的方法能减小未知工作条件的影响,有更好的自适应性和鲁棒性。
附图说明
图1是本发明具体实施例的Leap Motion位姿数据处理算法流程图;
图2是本发明具体实施例Leap Motion坐标系图;
图3是本发明具体实施例绕x轴三维位置数据处理误差对比图;
图4是本发明具体实施例绕y轴三维位置数据处理误差对比图;
图5是本发明具体实施例绕z轴三维位置数据处理误差对比图。
图6是本发明具体实施例绕x轴姿态角数据处理误差对比图;
图7是本发明具体实施例绕y轴姿态角数据处理误差对比图;
图8是本发明具体实施例绕z轴姿态角数据处理误差对比图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本方法将鲁棒性估计与自适应算法结合起来进行状态估计,将基于Huber技术的CKF和KF方法与利用残差序列和相关参数序列实时估计、调整的自适应噪声统计特性估计两种思想结合起来,提出了一种手势位姿数据处理方法。
如图1所示,一种基于改进马尔可夫决策过程的多无人机协同航路规划方法,包括如下步骤:
步骤(1)数据采集:用Leap Motion传感器采集手势的手部关键点的三维信息,通过Leap Motion官方提供的SDK中API函数获取人手的位姿数据,在Hand类对象获取对应的手部位姿信息,主要包括数据帧对应的时间戳,手掌方向向量,手掌法向量,掌心位置,掌心瞬时速度,在Leap Motion坐标系下的手掌三维姿态角(pitch,yaw,roll)等数据。LeapMotion以数据帧的形式返回手势数据,在PC机中安装好对应版本驱动程序Leap Motion即可通过USB与PC机通信。数据帧中封装了人手的位姿数据和工作空间内所检测到的笔形工具端点的坐标信息,本实施例通过Leap Motion官方C#版本的SDK提供的API获取这些数据,Frame类代表一个数据帧,Frame类成员函数返回容器Hands,容器包含了若干个Hand类对象,每个Hand类对象代表传感器检测到的一只手,Hand类对象提供以下接口用于获取对应的手部位姿信息:
1.Hand::Direction():手掌的方向向量,即手心到中指指尖的向量,传感器返回的该向量经过了单位化的处理,记为D=[Dx,Dy,Dz]T
2.Hand::PalmNormal():手掌的法向量,方向是从掌心向下,同样也经过了单位化的处理,记为N=[Nx,Ny,Nz]T
3.Hand::PalmPosition():手心在传感器局部坐标系下的三维坐标,返回值是一个三维向量,记为(px,,py,pz)。
4.Hand::PalmVelocity():手的瞬时速度,返回值同样是一个三维向量,每个分量分别是瞬时速度在三个坐标轴上的分量,记为(Vx,Vy,Vz)。
5.手掌在传感器坐标系下三维姿态角,在SDK函数方法定义中,由手掌方向向量和法向量获得,记为ψ=[ψxyz]T,分别对应姿态欧拉角描述中的pitch,yaw,roll三个元素,pitch和yaw由Direction导出,roll由PalmNormal导出。
步骤(2)状态预测:在位置估计模型中,以传感器坐标系三轴的位置分量、速度分量和加速度分量;在姿态估计模型中以四元数作为状态量;在估计模型中估计状态转移方程和状态转移矩阵完成系统状态值的时间更新过程。
A.位置估计状态预测部分
Leap Motion相邻采样点的时间间隔足够小,因此将相邻采样点之间手掌在三维空间的运动可视为恒力运动,即在三维空间内沿某个方向加速度是常值,通过方向矩阵计算将加速度值分解到传感器坐标系的三个轴上,构建方向余弦矩阵MH2L,将手掌坐标系的加速度分量转换到传感器坐标系中各个坐标轴上:
Figure BDA0002851099030000091
其中
Figure BDA0002851099030000092
Figure BDA0002851099030000093
表示手掌坐标系中的i轴和传感器坐标系中的j轴之间的夹角。令(Ax,Ay,Az)为手掌坐标系下加速度值,传感器坐标系下各坐标轴的加速度可以表示为:
Figure BDA0002851099030000094
Figure BDA0002851099030000095
Figure BDA0002851099030000096
定义(px,,py,pz)为手掌掌心位置在传感器坐标系下的三维坐标,(Vx,Vy,Vz)为手的瞬时速度,设k时刻的系统状态量为xp(k)=[px,k,Vx,k,Ax,k,py,k,Vy,k,Ay,k,pz,k,Vz,k,Az,k],状态转换矩阵Fp如下:
Figure BDA0002851099030000101
m表示手掌坐标系和传感器坐标系下的坐标夹角的余弦,
Figure BDA0002851099030000102
Figure BDA0002851099030000103
表示手掌坐标系中的i轴和传感器坐标系中的j轴之间的夹角。
位置运动模型中状态预测的表达示为:
xp(k)=Fp(k)xp(k-1)+Gpw(k)
其中w(k)为加速度的过程噪声,Gp=[Γ,Γ,Γ]T为噪声分别矩阵扩展形式,Γ=[0.5T2,T,1]T
B.姿态估计状态预测部分
用四元数表示手掌姿态并将其作为系统状态量,利用数据帧提供姿态角计算表示手掌坐标系和传感器坐标系关系的方向余弦矩阵,通过相邻时刻的方向余弦矩阵计算局部偏转角,从而计算更新四元数,估计下一时刻采样点的四元数状态值具体包括以下步骤;如图2所示,规定的手掌坐标系与传感器坐标系设为xyz和xhyhzh,手掌坐标系到传感器坐标系的旋转矩阵RH2L
Figure BDA0002851099030000111
四元数的向量形式定义为Q=[q0,q]T,给定旋转轴和旋转角(大小为
Figure BDA0002851099030000116
),设u代表沿旋转轴的单位矢量,四元数矢量的计算关系可以表示为下列关系式:
Figure BDA0002851099030000112
u=[ux,uy,uz]T
Figure BDA0002851099030000113
在相当短的采样时间间隔内,利用角速率测量值的积分表示旋量,设θk表示采样时间间隔内手掌坐标轴的角速率测量值的积分,四元数的更新过程可以由下式表示:
Figure BDA0002851099030000114
根据旋转矩阵的性质,θk由相邻采样时刻的手掌坐标系和传感器坐标系之间的旋转矩阵计算得到:
Figure BDA0002851099030000115
设系统状态量xa(k)=Qk=[q0,k,q1,k,q2,k,q3,k]T,可得姿态运动模型中状态预测方程为xa(k)=Fa(k)·xa(k-1)+wa(k-1),wa(k-1)为过程噪声,Fa(k)表达式为:
Figure BDA0002851099030000121
步骤(3)计算自适应系数并修正预测估计误差的协方差矩阵:
A.位置估计计算部分
根据Leap Motion数据帧中的三维瞬时速度向量,并计算相邻采样点间的加速度,用掌心速度重构位置状态协方差矩阵,自适应函数的构造函数定义如下:
Figure BDA0002851099030000122
在图2中设k时刻XLYLZL坐标系下速度测量值向量为vo,k,则加速度测量值向量为:ao,k=(vo,k-vo,k-1)/t,t为数据帧时间间隔,令γ=0.1,k时刻Δvp,k=|vp,k-vp,k-1|,Δap,k=|ap,k-ap,k-1|,将上述三维向量的各分量分别代入构造函数中的x,结果整理为三维向量gv(k),ga(k);所以在位置估计模型(也就是位置运动模型)中的状态预测协方差矩阵的表示速度和加速度的分量结合上式得出的系数可以重新标定预测协方差矩阵。
在位置估计模型中使用卡尔曼滤波方法(KF)的过程中,预测协方差由状态估计协方差矩阵和状态转移矩阵计算得到:
Pp,k+1|k=Fp,kPp,k|k+Qp,k
状态预测协方差矩阵在位置估计模型中保留了状态向量的维度信息,因此可以根据速度变化量自适应调整预测协方差矩阵中关于速度和加速度分量,例如在传感器坐标轴下x轴的分量可以重新标定为:
[Pp,k+1|k]22=[Fp,kPp,k|k+Qp,k]22·gv,x(k)
[Pp,k+1|k]33=[Fp,kPp,k|k+Qp,k]33·ga,x(k)
B.姿态估计计算部分
如图1所示,在姿态估计部分使用容积卡尔曼滤波(CKF)方法,这是由在姿态估计的观测方程非线性的条件决定的,对于未知的过程噪声和模型偏差,通过基于状态残差序列重构状态协方差矩阵,抑制过程不确定性.。在CKF中对于抑制异常状态预测和量测值,状态估计应最小化式:
Figure BDA0002851099030000131
Figure BDA0002851099030000132
使用CKF方法的姿态估计模型,根据最小二乘估计原理,由预测状态协方差矩阵和观测协方差矩阵R计算得目标函数,结合上式得:
Figure BDA0002851099030000133
通过微分计算重新标度的预测状态协方差矩阵,对角矩阵的定义可由Huber M方法得出,c赋值为1.345:
Figure BDA0002851099030000134
Figure BDA0002851099030000135
Θx,k=diag[w(ex,k,i)]
步骤(4)系统状态观测和Huber M方法修正:
Huber提出的M估计是解决测量不确定问题的有效方法,M估计的本质是基于Huber目标函数修改Kalman滤波器中的二次成本函数,该函数仅对受干扰的测量值进行加权,并且在其余测量值上的行为类似于最小二乘滤波器。
A.位置估计观测更新计算部分
位置估计以传感器坐标系下三维位置分量作为观测量,观测矩阵位置分量部分为单位矩阵(1*1)
Figure BDA0002851099030000141
本文将传感器API提供的掌心坐标作为量测值输入到卡尔曼滤波器中与状态预测值进行比较,记为zp,位置运动模型的观测方程为:
zp(k)=Hp(k)xp(k)+vp(k)
vp(k)为观测噪声向量。
传统卡尔曼滤波方法(KF)在进行状态变量和协方差矩阵进行时间更新过程:
Figure BDA0002851099030000142
Pp(k+1|k)=Fp(k)Pp(k|k)+Qp(k)
观测更新过程:
Figure BDA0002851099030000143
Figure BDA0002851099030000144
Figure BDA0002851099030000145
对于KF量测方程zp,k=Hpxp,kp,k,量测更新实际上是与式(38)类似的标准线性最小二乘的解,令rp,k表示KF过程中真实状态与预测值的差值,将KF过程中的相关参数代入(37-41)可改写为:
yp(k)=Mp(k)xp(k)+εp(k)
Figure BDA0002851099030000151
Figure BDA0002851099030000152
Figure BDA0002851099030000153
Figure BDA0002851099030000154
B.姿态估计观测更新计算部分
为了确保滤波器能收敛到正确的结果,需要利用更多的量测信息,将Leap Motion中API函数提供的手掌方向向量,法向量以及提供的三维姿态角作为观察量。令手掌法向量N=[Nx,Ny,Nz]T,手掌方向向量D=[Dx,Dy,Dz]T,根据四元数与旋转矩阵的关系,可得k时刻两向量与四元数关系式如下:
Figure BDA0002851099030000155
三维姿态角与四元数的关系:
Figure BDA0002851099030000156
将观测量表示为Za=[N,D,ψ]T的形式,此时根据式(3.40)和式(3.41)的数值关系,可以列出姿态估计的观测方程Za(k)=h(xa(k))+va(k),va(k)为观测噪声。
传统容积卡尔曼滤波方法(CKF)在进行状态变量和协方差矩阵进行时间更新过程:
Figure BDA0002851099030000161
Figure BDA0002851099030000162
Figure BDA0002851099030000163
Figure BDA0002851099030000164
Figure BDA0002851099030000165
Figure BDA0002851099030000166
Figure BDA0002851099030000167
观测更新过程:
Zi,k+1|k=h(Xi,k+1|k)
Figure BDA0002851099030000168
Figure BDA0002851099030000169
Figure BDA00028510990300001610
Figure BDA00028510990300001611
Kk+1=Pxz,k+1|k/Pzz,k+1|k
Figure BDA00028510990300001612
在CKF方法的过程中,将原始的测量更新过程转换化线性回归过程:
Figure BDA0002851099030000171
定义:
Figure BDA0002851099030000172
Ra(k)和Pa(k|k-1)分别为姿态估计模型中观测噪声协方差矩阵和预测协方差矩阵,简化线性回归问题,重构表达式为:
ya(k)=Ma(k)xa(k)+εa(k)
Figure BDA0002851099030000173
Figure BDA0002851099030000174
Figure BDA0002851099030000175
对于上述位置估计和姿态估计部分确定线性回归方程后,用代价函数增强对异常测量值的鲁棒性的测量更新:
Figure BDA0002851099030000176
Δi代表(Mkxk-yk)的第i个分量,n和p表示xk和zk的维度,ρ(·)表示调节参数c的评分函数:
Figure BDA0002851099030000177
对于超出边界c的错误,评分函数可以通过限制评分限制其作为错误值的增加,为了实现代价函数的约束能力,修改后的测量更新应满足J’(xk)=0,令
Figure BDA0002851099030000178
定义
Figure BDA0002851099030000181
有:
Figure BDA0002851099030000182
定义Θ=diag[w(Δi)],最小成本函数的解改写为:
Figure BDA0002851099030000183
采用迭代法求解(j为迭代次数,一般迭代一次),在经过滤波方法的时间更新后,得到预测状态和协方差矩阵,结合当前采样点时刻传感器提供的观测向量作为Huber M算法的输入,对观测方程进行线性化,转化为线性最小二乘问题并微分求解,系统状态迭代公式和迭代结束后关于估计状态以及对应的估计误差协方差可以更新为:
Figure BDA0002851099030000184
Figure BDA0002851099030000185
Figure BDA0002851099030000186
将修正后的滤波估计值通过设定的数值关系转换为所需的数据的具体包括:对于所述手势姿态变换模型,根据对应数值关系将姿态状态量中的四元数转换为算法处理后的三维姿态角,k时刻姿态状态量[q0,k,q1,k,q2,k,q3,k]T与姿态角向量ψk(俯仰pitch,偏航yaw,滚转roll)对应数值关系为:
Figure BDA0002851099030000191
数据实验:
实验条件设为:手掌法向量和方向向量的测量标准差0.1mm,俯仰,滚转,偏转角测量标准差为3°,四元数分量变换过程标准差设为0.01;掌心位置测量标准差为0.5mm,掌心加速度过程标准差为100mm/s2,参数c取1.345。如图3-8为本发明对KF和CKF算法的改进与两个标准算法滤波性能的对比效果。
其中图3传感器x轴方向位置数据误差分析,图4传感器y轴方向位置数据误差析,图5传感器z轴方向位置数据误差分析,图6 Leap Motion坐标系下绕x轴欧拉角(pitch)均方根误差曲线,图7 Leap Motion坐标系下绕y轴欧拉角(yaw)均方根误差曲线,图8 LeapMotion坐标系下绕z轴欧拉角(roll)均方根误差曲线。
在蒙特卡洛仿真验证中,设仿真次数为10次,使用混合高斯概率密度表示观测噪声概率密度,以表示传感器测量噪声服从某种非高斯分布的情况,形如pk(yk)=(1-α)N(0,σ1)+αN(0,σ2),α为混合百分比,在本次实验中设为0.5。
在姿态数据仿真验证中,测量噪声方差矩阵分布设置为:R1=diag[0.01·I6×6,I3×3]和R2=diag[0.09·I6×6,9·I3×3]两种情况,均方根误差(单位:度)计算结果对比见表1和表2:
表1标准CKF姿态滤波误差统计特性(单位:度)
姿态角 最大误差绝对值 均方根误差
Pitch 7.2627 1.4415
Yaw 6.1680 1.0836
Roll 10.7573 1.7573
表2鲁棒自适应CKF姿态滤波误差统计特性(单位:度)
姿态角 最大误差绝对值 均方根误差
Pitch 3.0238 1.0023
Yaw 2.3992 0.7858
Roll 8.2623 0.2623
在位置数据仿真验证中,设为手掌在三维空间中匀速直线运动,初始位置为传感器坐标系原点(0mm,0mm,0mm),手掌初始时刻的速度设为(10mm/s,4mm/s,-10mm/s),设手掌在空间运动时方向始终与传感器坐标系中的xz平面保持平行,且手掌绕传感器y轴旋转30°,测量噪声方差矩阵分布设置为:R1=diag[1·I3×3]和R2=diag[5·I3×3]两种情况,算法均方根误差(单位:mm)结果对比见表3:
表3算法均方根误差结果对比表
位置方向 KF算法 鲁棒KF算法 鲁棒自适应KF算法
x 2.3290 1.8507 1.7859
y 2.3818 1.6556 1.6178
z 3.3217 1.8588 1.7956
本发明公开了基于Leap Motion控制器的手部位置和姿态数据的相关处理方法,解决传统数据处理算法没有考虑数据观测环境和系统状态过程的不确定性和模型偏差等方面的局限性,对于位置数据,以CA模型和KF方法为基础建模处理;对于姿态数据,以四元数变换和CKF方法为基础建模处理;同时使用Huber M方法将KF和CKF方法中的测量方程等价变换,并在CKF中设计了迭代算法来构造加权矩阵,重置状态预测协方差矩阵;而在KF中则利用手掌速度和加速度通过映射函数用于生成调整KF增益的自适应因子;结果表明相比于传统算法,所提出的方法能减小未知工作条件的影响,有更好的自适应性和鲁棒性。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (9)

1.一种手势位姿数据处理方法,其特征在于,包括如下步骤:
获取手部关键点的三维信息作为观测信息;构建系统状态模型,所述系统状态模型包括手势姿态变换模型和位置运动模型;
采用容积卡尔曼滤波器CKF对所述手势姿态变换模型进行滤波估计获得系统手势姿态预测值,采用卡尔曼滤波器KF对位置运动模型进行滤波估计获得系统位置状态预测值;
根据Huber M估计过程的原理修正利用容积卡尔曼滤波器CKF获得的所述手势姿态变换模型预测估计误差的协方差矩阵;通过自适应系数加权过程修正利用卡尔曼滤波器KF获得的所述位置运动模型预测估计误差的协方差矩阵;
使用Huber M估计方法对卡尔曼滤波器KF和容积卡尔曼滤波器CKF方法中的观测更新过程进行修正,获得修正后的手势姿态状态量和位置状态量的滤波估计值;将修正后的滤波估计值通过设定的数值关系转换为所需的数据。
2.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,获取手部关键点的三维信息具体为:获取利用Leap Motion控制器采集的人手的位姿数据,包括数据帧对应的时间戳,手掌方向向量D,手掌法向量N,掌心位置P,掌心瞬时速度V,在Leap Motion坐标系下的手掌三维姿态角数据。
3.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,设xp(k),zp(k)分别为k时刻位置估计方程的状态量和观测量,所述位置运动模型预测方程和观测方程表示为:
xp(k)=Fp(k)xp(k-1)+Gpw(k)
zp(k)=Hp(k)xp(k)+vp(k)
其中w(k)为加速度的过程噪声,Gp=[Γ,Γ,Γ]T为噪声分别矩阵扩展形式,Γ=[0.5T2,T,1]T;vp(k)为观测噪声向量;状态转移矩阵Fp
Figure FDA0002851099020000021
t表示相邻采样点的时间间隔,
Figure FDA0002851099020000022
Figure FDA0002851099020000023
表示手掌坐标系中的i轴和传感器坐标系中的j轴之间的夹角,i,j∈(X,Y,Z);观测矩阵Hp表示为:
Figure FDA0002851099020000024
4.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,设xa(k),za(k)分别为k时刻姿态估计方程的状态量和观测量,所述手势姿态变换模型中的预测方程和观测方程表示为:
xa(k)=Fa(k)·xa(k-1)+wa(k-1)
Za(k)=h(xa(k))+va(k)
其中Fa(k)和h(·)分别是姿态状态转移矩阵和非线性观测函数,wa(k-1)和va(k)为过程噪声和观测噪声。
5.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,根据Huber M估计过程的原理修正利用中容积卡尔曼滤波器CKF获得的所述手势姿态变换模型预测估计误差的协方差矩阵的表达式如下:
Figure FDA0002851099020000031
Θx,k=diag[w(ex,k,i)],
其中Pk|k-1
Figure FDA0002851099020000032
分别原始状态预测矩阵和修正后的预测协方差矩阵,ex,k为状态预测误差,w(·)为修正函数,对角矩阵Θx,k是根据Huber M估计过程的原理通过状态预测误差构造的判断矩阵,diag()表示对角矩阵,T是矩阵转置。
6.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,通过自适应系数加权过程修正利用卡尔曼滤波器KF获得的所述位置运动模型预测估计误差的协方差矩阵具体为:构造加权系数函数修正预测协方差矩阵中的速度和加速度分量:
Figure FDA0002851099020000033
γ为调节系数,将k时刻相对于上一时刻的速度和加速度的绝对差各分量分别代入上式中的x,得到三维向量gv(k),ga(k),设Pp(k|k-1),P′p(k|k-1)位置估计中的原始状态预测协方差矩阵和修正后的预测协方差矩阵,修正过程形如:
P′p(k|k-1)=Pp(k|k-1)·[1,gv(k),ga(k)]。
7.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,使用Huber M估计方法对卡尔曼滤波器KF和容积卡尔曼滤波器CKF方法中的观测更新过程进行修正,具体为:在经过滤波方法的时间更新后,得到预测状态和协方差矩阵,结合当前采样点时刻传感器提供的观测向量作为Huber M算法的输入,对观测方程进行线性化,转化为线性最小二乘问题并微分求解,系统状态迭代公式和迭代结束后方差为:
Figure FDA0002851099020000041
Figure FDA0002851099020000042
其中,上标j为迭代次数,y(k)和M(k)分别为Huber M估计过程中重构观测方程的输出和系数矩阵,Θ为判断矩阵,xk和Pk为修正后的状态滤波估计值和状态协方差矩阵,修正后可代入下一时刻滤波算法的更新过程中。
8.根据权利要求1所述的一种手势位姿数据处理方法,其特征在于,将修正后的滤波估计值通过设定的数值关系转换为所需的数据的具体包括:对于所述手势姿态变换模型,根据对应数值关系将姿态状态量中的四元数转换为算法处理后的三维姿态角,k时刻姿态状态量[q0,k,q1,k,q2,k,q3,k]T与姿态角向量ψk对应数值关系为:
Figure FDA0002851099020000043
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~8任意一项权利要求所述方法的步骤。
CN202011527638.2A 2020-12-22 2020-12-22 一种手势位姿数据处理方法及存储介质 Active CN112527119B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011527638.2A CN112527119B (zh) 2020-12-22 2020-12-22 一种手势位姿数据处理方法及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011527638.2A CN112527119B (zh) 2020-12-22 2020-12-22 一种手势位姿数据处理方法及存储介质

Publications (2)

Publication Number Publication Date
CN112527119A true CN112527119A (zh) 2021-03-19
CN112527119B CN112527119B (zh) 2022-05-27

Family

ID=75002395

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011527638.2A Active CN112527119B (zh) 2020-12-22 2020-12-22 一种手势位姿数据处理方法及存储介质

Country Status (1)

Country Link
CN (1) CN112527119B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112986977A (zh) * 2021-04-27 2021-06-18 南京雷电信息技术有限公司 一种克服雷达扩展卡尔曼航迹滤波发散的方法
CN113074739A (zh) * 2021-04-09 2021-07-06 重庆邮电大学 基于动态鲁棒容积卡尔曼的uwb/ins融合定位方法
CN113189041A (zh) * 2021-04-28 2021-07-30 江南大学 一种基于影响力值的近红外光谱降噪方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040176881A1 (en) * 2001-04-25 2004-09-09 Toru Shiho Apparatus and method for estimating attitude using inertial measurement equipment
CN105973238A (zh) * 2016-05-09 2016-09-28 郑州轻工业学院 一种基于范数约束容积卡尔曼滤波的飞行器姿态估计方法
CN106500695A (zh) * 2017-01-05 2017-03-15 大连理工大学 一种基于自适应扩展卡尔曼滤波的人体姿态识别方法
US20180095159A1 (en) * 2015-04-01 2018-04-05 Safran Electronics & Defense Method for tracking the navigation of a mobile carrier with an extended kalman filter
CN109631913A (zh) * 2019-01-30 2019-04-16 西安电子科技大学 基于非线性预测强跟踪无迹卡尔曼滤波的x射线脉冲星导航定位方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040176881A1 (en) * 2001-04-25 2004-09-09 Toru Shiho Apparatus and method for estimating attitude using inertial measurement equipment
US20180095159A1 (en) * 2015-04-01 2018-04-05 Safran Electronics & Defense Method for tracking the navigation of a mobile carrier with an extended kalman filter
CN105973238A (zh) * 2016-05-09 2016-09-28 郑州轻工业学院 一种基于范数约束容积卡尔曼滤波的飞行器姿态估计方法
CN106500695A (zh) * 2017-01-05 2017-03-15 大连理工大学 一种基于自适应扩展卡尔曼滤波的人体姿态识别方法
CN109631913A (zh) * 2019-01-30 2019-04-16 西安电子科技大学 基于非线性预测强跟踪无迹卡尔曼滤波的x射线脉冲星导航定位方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
桑农,王佳龙,李逢: ""基于实例化相关滤波器的鲁棒人手跟踪"", 《华中科技大学学报(自然科学版)》 *
赵美荣: ""基于虚拟手交互技术的研究"", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113074739A (zh) * 2021-04-09 2021-07-06 重庆邮电大学 基于动态鲁棒容积卡尔曼的uwb/ins融合定位方法
CN112986977A (zh) * 2021-04-27 2021-06-18 南京雷电信息技术有限公司 一种克服雷达扩展卡尔曼航迹滤波发散的方法
CN113189041A (zh) * 2021-04-28 2021-07-30 江南大学 一种基于影响力值的近红外光谱降噪方法

Also Published As

Publication number Publication date
CN112527119B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
CN112527119B (zh) 一种手势位姿数据处理方法及存储介质
Jin et al. RNN for solving time-variant generalized Sylvester equation with applications to robots and acoustic source localization
Liao et al. Taylor $ O (h^{3}) $ discretization of ZNN models for dynamic equality-constrained quadratic programming with application to manipulators
CN108015763B (zh) 一种抗噪声干扰的冗余度机械臂路径规划方法
Du et al. Markerless human–manipulator interface using leap motion with interval Kalman filter and improved particle filter
Huang et al. Improvement of maximum variance weight partitioning particle filter in urban computing and intelligence
Huang et al. Robust student’s t-based stochastic cubature filter for nonlinear systems with heavy-tailed process and measurement noises
Gultekin et al. Nonlinear Kalman filtering with divergence minimization
Zhang et al. Research on modification algorithm of Cubic B-spline curve interpolation technology
CN103940433B (zh) 一种基于改进的自适应平方根ukf算法的卫星姿态确定方法
CN108693958B (zh) 一种手势识别方法、装置及系统
CN106406518A (zh) 手势控制装置及手势识别方法
Admiraal et al. Improved formulation of the IMU and MARG orientation gradient descent algorithm for motion tracking in human-machine interfaces
Liu et al. Adaptive Gaussian sum squared-root cubature Kalman filter with split-merge scheme for state estimation
de La Gorce et al. A variational approach to monocular hand-pose estimation
Hauberg et al. Natural metrics and least-committed priors for articulated tracking
Liu et al. Robust adaptive smooth variable structure Kalman filter for spacecraft attitude estimation
Xiao et al. A multiple model particle filter for maneuvering target tracking based on composite sampling
Wei et al. Research on robotic arm movement grasping system based on MYO
Fungtammasan et al. Grasp input optimization taking contact position and object information uncertainties into consideration
Lien A scalable model-based hand posture analysis system
CN113240044B (zh) 一种基于多Kinect的人体骨骼数据融合评价方法
CN109388063A (zh) 自适应卡尔曼滤波复合控制方法
CN108762528B (zh) 适用于空中飞鼠的姿态解算方法
Guo et al. ELSS-DZN and ELSS-IFDHGZN Algorithms Solving Future Quadratic Programming Applied to Robot Manipulator

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