CN103116411B - 定位指针位置的方法及系统 - Google Patents
定位指针位置的方法及系统 Download PDFInfo
- Publication number
- CN103116411B CN103116411B CN201310045729.6A CN201310045729A CN103116411B CN 103116411 B CN103116411 B CN 103116411B CN 201310045729 A CN201310045729 A CN 201310045729A CN 103116411 B CN103116411 B CN 103116411B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- factor
- coordinate system
- control device
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000001133 acceleration Effects 0.000 claims abstract description 87
- 230000008859 change Effects 0.000 claims abstract description 16
- 230000005484 gravity Effects 0.000 claims description 10
- 230000004927 fusion Effects 0.000 description 12
- 241000699666 Mus <mouse, genus> Species 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 6
- 210000000707 wrist Anatomy 0.000 description 6
- 230000008569 process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 206010034719 Personality change Diseases 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Position Input By Displaying (AREA)
Abstract
本发明提供一种定位指针位置的方法及系统。根据本发明的方法,先基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来估计所述手控装置在第二坐标系下的姿态;随后再基于所估计的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息,由此可实现对由脱离桌面的手控装置所控制的指针进行精确定位。
Description
技术领域
本发明涉及电子领域,特别是涉及一种定位指针位置的方法及系统。
背景技术
目前,市场上绝大部分鼠标都依靠光学传感器或激光传感器实现光标定位,这种鼠标需要放置在桌面或其他平面上,再由操作者移动鼠标,由此来操控指针。而随着大屏幕显示设备的普及,电视机、机顶盒等产品的三网融合,电视机和机顶盒等将搭载更多的互动内容,此时用户对操控指针的方式提出了更高的要求,希望操控方式能更便捷更自由,常要求不再借助桌面或其他平面,而是直接在三维空间中自由移动控制器来定位鼠标光标。如在三维空间中上下移动控制器实现光标的上下移动、左右移动控制器实现光标的左右移动,如此使得对鼠标所控制的指针的定位也提出了更新的要求。
为此,诸多研究人员开始研究出一些惯性传感器光标控制装置,例如,专利号为5898421的美国专利文献“Gyroscopicpointerandmethod”提出了用X、Y两轴陀螺仪来构建空间指示器,但该装置仅采用陀螺仪,无法侦测用户手持装置时该装置在用户手中发生的偏转,而且也容易产生累计误差。又例如,专利号为2008291163A1的美国专利文献“3DPointingDeviceswithOrientationCompensationandImprovedUsability”及专利号为2009326857A1的美国专利文献“HandHeldPointingDeviceWithRollCompensation”都提出了用陀螺仪和加速度计的架构来构建空中指向定位器。其中X、Y、Z三轴加速度计用于测量定位器沿3个轴向的重力加速度值,并通过上述加速度值计算定位器的姿态。由陀螺仪测量到的角速度计算定位器在自身坐标系下的转动并根据姿态对定位器的转动进行倾斜补偿。然而,前述两专利文献对于倾斜校正单纯采用加速度计,在定位器静止或者小幅度运动时效果良好,但如果用户手持定位器时发生较大幅度的运动,尤其当用户手持此装置进行游戏互动过程中,此时,手部运动将产生运动加速度,使得由三轴加速度传感器测量到的加速度值引入除重力加速度以外的运动加速度信号,且此加速度幅度比重力加速度幅度更大,采用前述两种专利文献所述的校正方式就会产生较大的偏差,从而造成光标偏移不受控制。另一方面,利用姿态倾斜角来补偿定位器转动的方式,也容易使得指针在移动定位的过程中造成一定的累积误差,使得光标与定位器的指向发生偏离。
对于此类惯性传感器光标控制装置来说,由于用户在空中而非桌面上来移动控制装置进行光标定位,光标控制装置的自身坐标系相对于显示光标的屏幕所在的坐标系有偏差,因此,如何实时准确地估计出光标控制装置在空间中的姿态,并将姿态变化准确地转换成光标指针位置的移动信息,使用户对该类惯性传感器定位的输入装置有良好的体验,是本领域技术人员迫切需要解决的课题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种定位指针位置的方法及系统,以实现对指针的精确定位。
为实现上述目的及其他相关目的,本发明提供一种定位指针位置的方法,其至少包括步骤:
1)基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来估计所述手控装置在第二坐标系下的姿态;
2)基于所估计的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
本发明还提供一种定位指针位置的定位系统,其至少包括:
姿态确定模块,用于基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来确定所述手控装置在第二坐标系下的姿态;
指针位置计算模块,用于基于所确定的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
如上所述,本发明的定位指针位置的方法及系统,具有以下有益效果:可实现对由脱离桌面的手控装置所控制的指针进行精确定位。
附图说明
图1显示为本发明的定位指针位置的方法的一种优选流程图。
图2显示为手控装置及第一坐标系的示意图。
图3显示为第二坐标系及姿态角θ、γ示意图。
图4显示为本发明的定位指针位置的方法的另一种优选流程图。
图5显示为本发明的定位指针位置的定位系统的一种优选示意图。
图6显示为本发明的定位指针位置的定位系统的另一种优选示意图。
元件标号说明
1定位系统
11姿态确定模块
111第一确定模块
112第二确定模块
113第三确定模块
114第四确定模块
12指针位置计算模块
S1、S2、S11-S14步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
请参阅图1至图6。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
如图1所示,本发明提供一种定位指针位置的方法。其中,根据本发明的方法,主要通过定位系统来完成,该定位系统包括但不限于安装在智能设备中、且能够实现本发明方案的诸如应用模块、操作系统、处理控制器等的系统。其中,该智能设备包括但不限于:定位指针的手控装置或计算机设备等。所述手控装置包括基于操作者的操控来控制所述指针的显示位置的装置,优选地,包括但不限于:鼠标、遥控器、游戏手柄等。该计算机设备包括但不限于:个人计算机、智能电视、机顶盒等。其中,所述指针包括显示于诸如计算机的显示屏或电视机等显示设备上的指针或光标等。
在步骤S1中,所述定位系统基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来估计所述手控装置在第二坐标系下的姿态。
其中,所述第一坐标系是根据手控装置自身上下左右前后方向所建立的坐标系。例如,如图2所示,以图示的手控装置的操控面的左右方向为第一坐标系的X轴、操控面的前后方向为第一坐标系的Y轴、手控装置的上下高度方向为Z轴,其中,右方向为X轴正方向、左方向为X轴负方向、前方向为Y轴正方向、后方向为Y轴负方向、上方向为Z轴正方向、下方向为Z轴负方向。
其中,所述第二坐标系是根据显示设备所放置的地球系统建立的坐标系,例如,如图3所示,以显示指针的显示设备120的显示屏122垂直于地球表面放置时,所述显示设备的宽度方向为第二坐标系的X轴、高度方向为Y轴。
其中,所述手控装置在第一坐标系下的三轴加速度由设置在所述手控装置内的三轴加速度计感测自身所属的第一坐标系的X方向、Y方向、Z方向的加速度获得,所述手控装置在第一坐标系下的角速度由设置在所述手控装置内的三轴陀螺仪感测自身所属的第一坐标系的X方向、Y方向、Z方向的角速度获得。
其中,基于手控装置进行指向操作的运动特点,可以预先对所述手控装置的转动半径r建立特定的操作模型。例如,一种操作模型为:转动半径为感测三轴加速度的感测模块至操作手控装置的手腕之间的距离。
所述定位系统确定所述转动半径r的确定方式基于预定操作模型来确定,例如,若预定操作模型为:转动半径为感测三轴加速的感测模块至操作手控装置的手腕之间的距离,则所述定位系统将用户输入或其他设备提供的感测三轴加速度的感测模块至操作手控装置的手腕之间的距离作为转动半径r;又例如,若预定操作模型为转动半径r与相关参数的函数,则所述定位系统基于用户输入的相关参数值来计算转动半径r。
其中,所述手控装置的姿态通常以角度,例如,俯仰角θ、滚动角及偏航角γ,来表示,如图3所示。
优选地,所述定位系统直接基于控制指针的手控装置当前时刻在第一坐标系下的三轴加速度、三轴角速度、以及转动半径来估计所述手控装置当前时刻在第二坐标系下的姿态。
接着,在步骤S12中,所述定位系统基于所估计的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
具体地,所述定位系统基于当前时刻及当前时刻之前的预定时间内的姿态来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
例如,所述定位系统基于当前时刻所估计的姿态以及当前时刻之前一时刻所估计的姿态按照下述公式计算当前时刻所述手控装置在第二坐标系下的旋转角度(Rex,Rey):
Rex(t)=γ(t)-γ(t-1);Rey(t)=θ(t)-θ(t-1);
随后,再基于所述旋转角度(Rex,Rey)按照以下公式来输出所述指针的位置移动信息Wx(t)、Wy(t):
Wx(t)=Rex(t)×m;
Wy(t)=Rey(t)×m;
其中,Rex(t)是当前时刻所述手控装置在第二坐标系下沿X轴的旋转角度,Rey(t)是当前时刻所述手控装置在第二坐标系下沿Y轴的旋转角度;Wx(t)表示所述指针当前时刻在屏幕X轴方向的相对移动值;Wy(t)表示所述指针当前时刻在屏幕y轴方向的相对移动值,m为预定比例因子,其基于将旋转角度转换成屏幕移动的像素点的转换关系来确定。
图4示出了本发明的定位指针位置的方法的另一种优选流程图。
在步骤S11中,所述定位系统基于所述手控装置当前时刻的三轴加速度、三轴角速度及转动半径来估计所述手控装置在所述第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的观测因子。
其中,所述姿态因子包括任何能用来确定手控装置在第二坐标系下的姿态的相关参数。
优选地,所述定位系统先基于所述手控装置在当前时刻及当前时刻的之前的预定时间段内的三轴角速度和转动半径,来计算手控装置由于自身运动引入的运动加速度;随后,再基于控制指针的手控装置在第一坐标系下的三轴加速度和所述运动加速度,来计算手控装置的由于受到重力影响而获得的重力加速度;接着,再基于控制指针的手控装置的重力加速度来估计所述手控装置在第二坐标系下的姿态因子,并将所获得的姿态因子作为当前时刻的观测因子。
例如,所述定位系统基于所述手控装置在当前时刻的三轴角速度(ωx(t),ωy(t),ωz(t))、当前时刻的前一时刻的三轴角速度(ωx(t-1),ωy(t-1),ωz(t-1)),手控装置当前时刻的转动半径r,按照以下公式来估计所述手控装置当前时刻的运动加速度:
随后,所述定位系统再基于该运动加速度(Gx_fix(t),Gy_fix(t),Gz_fix(t))按照以下公式来估计当前时刻的重力加速度(G′x(t),G′y(t),G′z(t)):
随后,所述定位系统再基于重力加速度(G′x(t),G′y(t),G′z(t))按照以下公式来估计姿态因子,并将所获得的姿态因子作为当前时刻的观测因子Pob(t):
其中,
需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于所述手控装置在当前时刻的三轴加速度、三轴角速度及转动半径来估计姿态因子的方式,均包含在本发明的范围内。
在步骤S12中,所述定位系统基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度,来估计所述手控装置当前时刻的姿态因子,并将所获得的姿态因子作为当前时刻的先验估计因子。
具体地,所述定位系统基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子P(t-1)、以及当前时刻所述手控装置的三轴角速度ω(t),采用预测函数L(P(t-1),ω(t))来估计所述手控装置当前时刻的姿态因子,并将所获的姿态因子作为当前时刻的先验估计因子Pes(t)。
其中,预测函数L(P(t-1),ω(t))为任何一种能基于后验估计因子P(t-1)及三轴角速度ω(t)来估计姿态因子的先验估计因子Pes(t)的函数,优选地,预测函数L(P(t-1),ω(t))可以采用如下形式:
其中,Px(t-1)、Py(t-1)、Pz(t-1)表示当前时刻之前的前一时刻所确定的所述手控装置的后验估计因子;ωx(t)表示当前时刻所述手控装置在第一坐标系的第一方向轴方向的角速度,ωy(t)表示当前时刻所述手控装置在第一坐标系的第二方向轴方向的角速度,ωz(t)表示当前时刻所述手控装置在第一坐标系的第三方向轴方向的角速度;M(α)是旋转变化矩阵,
由于αx表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕X轴的旋转角度,其值等于当前时刻由角速度计测得的沿手控装置的左或右方向的角速度ωx(t)乘以单位时间T,αy表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕Y轴的旋转角度,其值等于当前时刻由角速度计测得的沿手控装置的前或后方向的角速度ωy(t)乘以单位时间T,αz表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕Z轴的旋转角度,其值等于当前时刻角速度计测得的沿手控装置的上或下方向的角速度ωz(t)乘以单位时间T,故,
需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度来估计姿态因子的方式,均包含在本发明的范围内。
接着,在步骤S13中,所述定位系统基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来估计所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的后验估计因子。
其中,所述相关信息包括除了当前时刻的观测因子与先验估计因子之外、且与估计当前时刻的手控装置的姿态相关的信息,优选地,包括但不限于以下至少一项:i)当前时刻及当前时刻之前的预定时间内的三轴加速度;ii)当前时刻及当前时刻之前的预定时间内的三轴角速度;iii)当前时刻之前的预定时间内的观测因子;iv)当前时刻之前的预定时间内的先验估计因子等。
具体地,所述定位系统基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,采用融合函数来确定所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的后验估计因子P(t)。
其中,融合函数包括任何一种以当前时刻的观测因子Pob(t)、先验估计因子Pes(t)及相关信息作为自变量、以当前时刻的后验估计因子P(t)作为因变量的函数。
例如,当相关信息包括当前时刻及当前时刻之前的预定时间内的三轴加速度值、及三轴角速度值时,一种优选的融合函数如下:
P(t)=Pes(t)+β(t)(Pob(t)-Pes(t));其中,β(t)为比例因子,其可采用符合使后验估计因子均方差最小原则的迭代运算来确定。例如,Qes(t)=Q(t-1)+Z(t),β(t)=Qes(t)/(Qes(t)+N(t)),Q(t)=(I-β(t))*Qes(t),其中Q(t)是后验估计因子P(t)的均方差;Qes(t)是先验估计因子Pes(t)的均方差;Z(t)是角速度传感器的测量值的均方差,该值与角速度传感器选型有关,可以按照经验预先计算得到取值模型,该取值模型可以是以三轴加速度值和三轴角速度值为因变量的函数;N(t)是加速度传感器的测量值的均方差,该值与加速度传感器选型有关,可以按照经验预先计算得到取值模型,该取值模型也可以是以三轴加速度值和三轴角速度值为因变量的函数。
又例如,当相关信息包括当前时刻之前的各观测因子Pob(t-1),Pob(t-2),…,Pob(t-n)、及各先验估计因子Pes(t-1),Pes(t-2),…,Pes(t-n)时,一种优选的融合函数如下:
又例如,当相关信息包括当前时刻及当前时刻之前的预定时间内的三轴加速度时,一种优选的融合函数如下:
P(t)=Pes(t)+μ(t)(Pob(t)-Pes(t));其中,μ(t)为比例因子,可根据当前时刻以及当前时刻之前的预定时间内三轴加速度的变化幅度来取值,μ(t)的确定原则为:三轴加速度的变化幅度越大μ(t)越接近0,三轴加速度的变化幅度越小μ(t)越接近1,例如,μ(t)=A*max(E(Gx),E(Gy),E(Gz)),其中E(Gx),E(Gy),E(Gz)分别是第一坐标系的第一方向轴方向、第二方向轴方向及第三方向轴方向的加速度在当前时刻以及当前时刻之前的预定时间内的均方差值,A是预定常数。
需要说明的是,基于上述列示,本领域技术人员应该理解,相关信息包括当前时刻及当前时刻之前的预定时间内的三轴角速度、当前时刻之前的预定时间内的观测因子、当前时刻之前的预定时间内的先验估计因子中的一种、或者包括两种或两种以上的信息时的融合函数,故在此不再一一详述。此外,还需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来确定所述手控装置当前时刻在第二坐标系下的姿态因子的方式,均包含在本发明的范围内。
接着,在步骤S14中,所述定位系统基于当前时刻在第二坐标系下的后验估计因子及三轴角速度来确定所述手控装置在第二坐标系下的姿态。
例如,所述定位系统基于当前时刻在第二坐标系下的后验估计因子P(t)及三轴角速度(ωx(t),ωy(t),ωz(t)),采用如下方式来确定所述手控装置在第二坐标系下的俯仰角θ、滚动角及偏航角γ:
接着,所述定位系统执行步骤S2,由于步骤S2已在图1所示的实施例中予以详述,并以引用的方式包含于此,在此不再详述。
需要说明的是,前述步骤S11及S12并无先后顺序,例如,步骤S12在步骤S11之前进行,又例如,步骤S11与S12同时进行等。
如图5所示,本发明提供一种定位指针位置的定位系统。其中,该定位系统1包括:姿态确定模块11及指针位置计算模块12。
所述姿态确定模块11基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度及转动半径来估计所述手控装置在第二坐标系下的姿态。
其中,所述指针包括显示于诸如计算机的显示屏或电视机等显示设备上的指针或光标等;所述手控装置包括基于操作者的操控来控制所述指针的显示位置的装置,优选地,包括但不限于:鼠标、遥控器、游戏手柄等。
其中,所述第一坐标系是根据手控装置自身上下左右前后方向所建立的坐标系。例如,如图2所示,以图2所示的手控装置的操控面的左右方向为第一坐标系的X轴、操控面的前后方向为第一坐标系的Y轴、手控装置的上下高度方向为Z轴,其中,右方向为X轴正方向、左方向为X轴负方向、前方向为Y轴正方向、后方向为Y轴负方向、上方向为Z轴正方向、下方向为Z轴负方向。
其中,所述第二坐标系是根据显示设备所放置的地球系统建立的坐标系,例如,如图3所示,以显示指针的显示设备120的显示屏122垂直于地球表面放置时,所述显示设备的宽度方向为第二坐标系的X轴、高度方向为Y轴。
其中,所述手控装置在第一坐标系下的三轴加速度由设置在所述手控装置内的三轴加速度计感测自身所属的第一坐标系的X方向、Y方向、Z方向的加速度获得,所述手控装置在第一坐标系下的角速度由设置在所述手控装置内的三轴陀螺仪感测自身所属的第一坐标系的X方向、Y方向、Z方向的角速度获得。
其中,基于手控装置进行指向操作的运动特点,可以预先对所述手控装置的转动半径r建立特定的操作模型。例如,一种操作模型为:转动半径为感测三轴加速的感测模块至操作手控装置的手腕之间的距离。
所述姿态确定模块11确定所述转动半径r的确定方式基于预定操作模型来确定,例如,若预定操作模型为:转动半径为感测三轴加速的感测模块至操作手控装置的手腕之间的距离,则所述姿态确定模块11将用户输入或其他设备提供的感测三轴加速的感测模块至操作手控装置的手腕之间的距离l作为转动半径r;又例如,若预定操作模型为转动半径r与相关参数的函数,则所述姿态确定模块11基于用户输入的相关参数值来计算转动半径r。
其中,所述手控装置的姿态通常以角度,例如,俯仰角θ、滚动角及偏航角γ,来表示,如图3所示。
优选地,所述姿态确定模块11直接基于控制指针的手控装置当前时刻在第一坐标系下的三轴加速度、三轴角速度、以及转动半径来估计所述手控装置当前时刻在第二坐标系下的姿态。
接着,所述指针位置计算模块12基于所估计的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
具体地,所述指针位置计算模块12基于当前时刻及当前时刻之前的预定时间内的姿态来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息。
例如,所述指针位置计算模块12基于当前时刻所估计的姿态以及当前时刻之前一时刻所估计的姿态按照下述公式计算当前时刻所述手控装置在第二坐标系下的旋转角度(Rex,Rey):
Rex(t)=γ(t)-γ(t-1);Rey(t)=θ(t)-θ(t-1);
随后,再基于所述旋转角度(Rex,Rey)按照以下公式来输出所述指针的位置移动信息Wx(t)、Wy(t):
Wx(t)=Rex(t)×m;
Wy(t)=Rey(t)×m;
其中,Rex(t)是当前时刻所述手控装置在第二坐标系下沿X轴的旋转角度,Rey(t)是当前时刻所述手控装置在第二坐标系下沿Y轴的旋转角度;Wx(t)表示所述指针当前时刻在屏幕X轴方向的相对移动值;Wy(t)表示所述指针当前时刻在屏幕y轴方向的相对移动值,m为预定比例因子,其基于将旋转角度转换成屏幕移动的像素点的转换关系来确定。
图6示出了本发明的定位指针位置的定位系统的另一种优选示意图。所述定位系统1包括:姿态确定模块11及指针位置计算模块12;所述姿态确定模块11还包括:第一确定模块111、第二确定模块112、第三确定模块113、及第四确定模块114。
所述第一确定模块111基于所述手控装置当前时刻的三轴加速度、三轴角速度及转动半径来估计所述手控装置在所述第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的观测因子。
其中,所述姿态因子包括任何能用来确定手控装置在第二坐标系下的姿态的相关参数。
优选地,所述第一确定模块111包括第一计算单元、第二计算单元及第三计算单元。所述第一计算单元先基于所述手控装置在当前时刻的三轴角速度和转动半径,来计算手控装置由于自身运动引入的运动加速度,所述第二计算单元再基于控制指针的手控装置在第一坐标系下三轴加速度和所述运动加速度,来计算手控装置的由于受到重力影响而获得的重力加速度,随后所述第三计算单元再基于控制指针的手控装置的重力加速度来估计所述手控装置在第二坐标系下的姿态因子,并将所获得的姿态因子作为当前时刻的观测因子。
例如,所述第一计算单元基于所述手控装置在当前时刻的三轴角速度(ωx(t),ωy(t),ωz(t))、当前时刻的前一时刻的姿态手控装置当前时刻的转动半径r,按照以下公式来估计所述手控装置当前时刻的运动加速度:
随后,所述第二计算单元基于该运动加速度(Gx_fix(t),Gy_fix(t),Gz_fix(t))按照以下公式来估计当前时刻的重力加速度(G′x(t),G′y(t),G′z(t)):
随后,所述第三计算单元基于重力加速度(G′x(t),G′y(t),G′z(t))按照以下公式来估计姿态因子,并将所获得姿态因子作为当前时刻的观测因子Pob(t):
其中,
需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于所述手控装置在当前时刻的三轴加速度、三轴角速度及转动半径来估计姿态因子的方式,均包含在本发明的范围内。
所述第二确定模块112基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度,来估计所述手控装置当前时刻的姿态因子,并将所获得姿态因子作为当前时刻的先验估计因子。
具体地,所述第二确定模块112基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子P(t-1)、以及当前时刻所述手控装置的三轴角速度ω(t),采用预测函数L(P(t-1),ω(t))来估计所述手控装置当前时刻的姿态因子,并将所获得姿态因子作为当前时刻的先验估计因子Pes(t)。
其中,预测函数L(P(t-1),ω(t))为任何一种能基于姿态因子的后验估计因子P(t-1)及三轴角速度ω(t)来估计先验估计因子Pes(t)的函数,优选地,预测函数L(P(t-1),ω(t))可以采用如下形式:
其中,Px(t-1)、Py(t-1)、Pz(t-1)表示当前时刻之前的前一时刻所确定的所述手控装置的后验估计因子;ωx(t)表示当前时刻所述手控装置在第一坐标系的第一方向轴方向的角速度,ωy(t)表示当前时刻所述手控装置在第一坐标系的第二方向轴方向的角速度,ωz(t)表示当前时刻所述手控装置在第一坐标系的第三方向轴方向的角速度;M(α)是旋转变化矩阵,
由于αx表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕X轴的旋转角度,其值等于当前时刻由角速度计测得的沿手控装置的左或右方向的角速度ωx(t)乘以单位时间T,αy表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕Y轴的旋转角度,其值等于当前时刻由角速度计测得的沿手控装置的前或后方向的角速度ωy(t)乘以单位时间T,αz表示由前一时刻到当前时刻所述手控装置在第一坐标系下绕Z轴的旋转角度,其值等于当前时刻角速度计测得的沿手控装置的上或下方向的角速度ωz(t)乘以单位时间T,故,
需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度来估计姿态因子的方式,均包含在本发明的范围内。
接着,所述第三确定模块113基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来确定所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的后验估计因子。
其中,所述相关信息包括除了当前时刻的观测因子与先验估计因子之外、且与估计当前时刻的手控装置的姿态相关的信息,优选地,包括但不限于以下至少一项:i)当前时刻及当前时刻之前的预定时间内的三轴加速度;ii)当前时刻及当前时刻之前的预定时间内的三轴角速度;iii)当前时刻之前的预定时间内的观测因子;iv)当前时刻之前的预定时间内的先验估计因子等。
具体地,所述第三确定模块113基于所述手控装置当前时刻的观测因子、先验估计因子、及相关信息,采用融合函数来确定所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的后验估计因子P(t)。
其中,融合函数包括任何一种以当前时刻的观测因子Pob(t)、先验估计因子Pes(t)及相关信息作为自变量、以当前时刻的后验估计因子P(t)作为因变量的函数。
例如,当相关信息包括当前时刻及当前时刻之前的预定时间内的三轴加速度值、及三轴角速度值时,一种优选的融合函数如下:
P(t)=Pes(t)+β(t)(Pob(t)-Pes(t));其中,β(t)为比例因子,其可采用符合使后验估计因子均方差最小原则的迭代运算来确定。例如,Qes(t)=Q(t-1)+Z),β(t)=Qes(t)/(Qes(t)+N(t)),Q(t)=(I-β(t))*Qes(t),其中Q(t)是后验估计因子P(t)的均方差;Qes(t)是先验估计因子Pes(t)的均方差;Z(t)是角速度传感器的测量值的均方差,该值与角速度传感器选型有关,可以按照经验预先计算得到取值模型,该取值模型可以是以三轴加速度值和三轴角速度值为因变量的函数;N(t)是加速度传感器的测量值的均方差,该值与加速度传感器选型有关,可以按照经验预先计算得到取值模型,该取值模型也可以是以三轴加速度值和三轴角速度值为因变量的函数。
又例如,当相关信息包括当前时刻之前的各观测因子Pob(t-1),Pob(t-2),…,Pob(t-n)、及各先验估计因子Pes(t-1),Pes(t-2),…,Pes(t-n)时,一种优选的融合函数如下:
又例如,当相关信息包括当前时刻及当前时刻之前的预定时间内的三轴加速度时,一种优选的融合函数如下:
P(t)=Pes(t)+μ(t)(Pob(t)-Pes(t));其中,μ(t)为比例因子,可根据当前时刻以及当前时刻之前的预定时间内三轴加速度的变化幅度来取值,μ(t)的确定原则为:三轴加速度的变化幅度越大μ(t)越接近0,三轴加速度的变化幅度越小μ(t)越接近1,例如,μ(t)=A*max(E(Gx),E(Gy),E(Gz)),其中E(Gx),E(Gy),E(Gz)分别是第一坐标系的第一方向轴方向、第二方向轴方向及第三方向轴方向的加速度在当前时刻以及当前时刻之前的预定时间内的均方差值,A是预定常数。
需要说明的是,基于上述列示,本领域技术人员应该理解,相关信息包括当前时刻及当前时刻之前的预定时间内的三轴角速度、当前时刻之前的预定时间内的观测因子、当前时刻之前的预定时间内的先验估计因子中的一种、或者包括两种或两种以上的信息时的融合函数,故在此不再一一详述。此外,还需要说明的是,本领域技术人员应该理解,上述所示仅仅只是列示,而非对本发明的限制,事实上,任何基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来确定所述手控装置当前时刻在第二坐标系下的姿态因子的方式,均包含在本发明的范围内。
接着,所述第四确定模块114基于当前时刻在第二坐标系下的后验估计因子及三轴角速度来确定所述手控装置在第二坐标系下的姿态。
例如,所述第四确定模块114基于当前时刻在第二坐标系下的后验估计因子P(t)及三轴角速度(ωx(t),ωy(t),ωz(t)),采用如下方式来确定所述手控装置在第二坐标系下的俯仰角θ、滚动角及偏航角γ:
接着,所述指针位置计算模块12执行操作,由于指针位置计算模块12已在图5所示的实施例中予以详述,并以引用的方式包含于此,在此不再详述。
需要说明的是,前述第一确定模块111所执行的操作及第二确定模块112所执行的操作并无先后顺序,例如,第二确定模块112所执行的操作在第一确定模块111所执行的操作之前进行,又例如,第一确定模块111所执行的操作与第二确定模块112所执行的操作同时进行等。
综上所述,本发明的定位指针位置的方法及系统基于手控装置在各个方向运动的加速度、角速度和转动半径来精确估算手控装置的姿态,其中根据转动半径和角速度来估算手控装置的运动加速度和重力加速度,使得对手控装置姿态的估计更为精确;再将姿态变化准确地转换成光标指针位置的移动信息。不管在操作过程中,手控装置在用户手中的姿态相对静止还是发生大幅度的变化,本发明的方法都能精确地将手控装置在三维空间中的姿态变化映射成光标的移动,实现对由脱离桌面的手控装置所控制的指针的精确定位。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (6)
1.一种定位指针位置的方法,其特征在于,所述定位指针位置的方法至少包括步骤:
1)基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来估计所述手控装置在第二坐标系下的姿态;
2)基于所估计的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息;所述步骤1)还包括:
1-1)基于所述手控装置的三轴加速度、三轴角速度及转动半径来估计所述手控装置在所述第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的观测因子;
1-2)基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度,来估计所述手控装置当前时刻的姿态因子,并将所获得姿态因子作为当前时刻的先验估计因子;
1-3)基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来估计所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得姿态因子作为当前时刻的后验估计因子;
1-4)基于当前时刻在第二坐标系下的后验估计因子及三轴角速度来确定所述手控装置在第二坐标系下的姿态;
所述相关信息包括以下至少一项:
当前时刻及当前时刻之前的预定时间内的三轴加速度;
当前时刻及当前时刻之前的预定时间内的三轴角速度;
当前时刻之前的预定时间内的观测因子;
当前时刻之前的预定时间内的先验估计因子。
2.根据权利要求1所述的定位指针位置的方法,其特征在于,所述转动半径基于预定的转动半径模型来确定。
3.根据权利要求2所述的定位指针位置的方法,其特征在于,所述步骤1-1)还包括:
-基于所述手控装置当前时刻以及当前时刻之前预定时刻内的三轴角速度和转动半径来计算手控装置的运动加速度;
-基于所述手控装置在第一坐标系下三轴加速度和所述运动加速度,来确定所述手控装置的重力加速度;
-基于所述重力加速度来估计所述手控装置在第二坐标系下的姿态因子,并将所获得的姿态因子作为当前时刻的观测因子。
4.一种定位指针位置的定位系统,其特征在于,所述定位指针位置的定位系统至少包括:
姿态确定模块,用于基于控制指针的手控装置在第一坐标系下的三轴加速度、三轴角速度和转动半径来确定所述手控装置在第二坐标系下的姿态;
指针位置计算模块,用于基于所确定的姿态的变化来确定所述手控装置在第二坐标系下的旋转角度,并基于所述旋转角度来确定所述指针的位置移动信息;
所述姿态确定模块还包括:
第一确定模块,用于基于所述手控装置当前时刻的三轴加速度、三轴角速度及转动半径来估计所述手控装置在所述第二坐标系下的姿态因子,并将所获得的姿态因子作为当前时刻的观测因子;
第二确定模块,用于基于当前时刻的前一时刻所述手控装置在第二坐标系下的后验估计因子、以及当前时刻所述手控装置的三轴角速度,来估计所述手控装置当前时刻的姿态因子,并将所获得的姿态因子作为当前时刻的先验估计因子;
第三确定模块,用于基于所述手控装置当前时刻的观测因子与先验估计因子、以及相关信息,来估计所述手控装置当前时刻在第二坐标系下的姿态因子,并将所获得的结果作为当前时刻的后验估计因子;
第四确定模块,用于基于当前时刻在第二坐标系下的后验估计因子及三轴角速度来确定所述手控装置在第二坐标系下的姿态;
所述相关信息包括以下至少一项:
当前时刻及当前时刻之前的预定时间内的三轴加速度;
当前时刻及当前时刻之前的预定时间内的三轴角速度;
当前时刻之前的预定时间内的观测因子;
当前时刻之前的预定时间内的先验估计因子。
5.根据权利要求4所述的定位指针位置的定位系统,其特征在于,所述转动半径基于预定的转动半径模型来确定。
6.根据权利要求5所述的定位指针位置的定位系统,其特征在于,所述第一确定模块还包括:
第一计算单元,用于基于所述手控装置当前时刻的三轴角速度和转动半径,来计算手控装置的运动加速度;
第二计算单元,用于基于所述手控装置在第一坐标系下三轴加速度和所述运动加速度,来计算手控装置的重力加速度;
第三计算单元,用于基于所述重力加速度来估计所述手控装置在第二坐标系下的姿态因子,并将所获得的姿态因子作为当前时刻的观测因子。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310045729.6A CN103116411B (zh) | 2013-02-05 | 2013-02-05 | 定位指针位置的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310045729.6A CN103116411B (zh) | 2013-02-05 | 2013-02-05 | 定位指针位置的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103116411A CN103116411A (zh) | 2013-05-22 |
CN103116411B true CN103116411B (zh) | 2015-12-09 |
Family
ID=48414811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310045729.6A Active CN103116411B (zh) | 2013-02-05 | 2013-02-05 | 定位指针位置的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103116411B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103389808B (zh) * | 2013-07-18 | 2016-06-15 | 华南师范大学 | 一种空间鼠标及获取空间鼠标位移的方法 |
CN104679284A (zh) * | 2013-11-29 | 2015-06-03 | 名硕电脑(苏州)有限公司 | 具有输入输出功能的容器 |
CN103902015A (zh) * | 2014-04-08 | 2014-07-02 | 苏州本控电子科技有限公司 | 一种具有节电功能手持式遥控器及其节电方法 |
CN107209483A (zh) * | 2015-03-20 | 2017-09-26 | 华为技术有限公司 | 智能交互方法、设备及系统 |
CN109724594A (zh) * | 2017-10-30 | 2019-05-07 | 罗伯特·博世有限公司 | 装置的自身运动姿态识别方法和采用该方法的装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101078957A (zh) * | 2006-05-23 | 2007-11-28 | 三星电子株式会社 | 指示装置、指针移动方法和介质以及显示指针的显示装置 |
CN101324819A (zh) * | 2008-07-24 | 2008-12-17 | 杨永泉 | 利用加速度传感器实现的定位方法及鼠标笔 |
CN102141845A (zh) * | 2010-02-02 | 2011-08-03 | 旺玖科技股份有限公司 | 三维空间运动感测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5293603B2 (ja) * | 2007-07-06 | 2013-09-18 | ソニー株式会社 | 入力装置、制御装置、制御システム、制御方法及びハンドヘルド装置 |
-
2013
- 2013-02-05 CN CN201310045729.6A patent/CN103116411B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101078957A (zh) * | 2006-05-23 | 2007-11-28 | 三星电子株式会社 | 指示装置、指针移动方法和介质以及显示指针的显示装置 |
CN101324819A (zh) * | 2008-07-24 | 2008-12-17 | 杨永泉 | 利用加速度传感器实现的定位方法及鼠标笔 |
CN102141845A (zh) * | 2010-02-02 | 2011-08-03 | 旺玖科技股份有限公司 | 三维空间运动感测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103116411A (zh) | 2013-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8957909B2 (en) | System and method for compensating for drift in a display of a user interface state | |
US20080042973A1 (en) | System for sensing yaw rate using a magnetic field sensor and portable electronic devices using the same | |
CN101339471B (zh) | 输入设备、控制设备、控制系统以及控制方法 | |
US10093280B2 (en) | Method of controlling a cursor by measurements of the attitude of a pointer and pointer implementing said method | |
CN101568896B (zh) | 信息处理装置、系统、方法和输入装置 | |
US9086724B2 (en) | Display control system, display control method, computer-readable storage medium having stored thereon display control program, and display control apparatus | |
CN103116411B (zh) | 定位指针位置的方法及系统 | |
US20110307213A1 (en) | System and method of sensing attitude and angular rate using a magnetic field sensor and accelerometer for portable electronic devices | |
CN102289306A (zh) | 姿态感知设备及其定位、鼠标指针的控制方法和装置 | |
CN103940442B (zh) | 一种采用加速收敛算法的定位方法及装置 | |
CN102997913B (zh) | 用于确定物体姿态的方法及装置 | |
JP2009301531A (ja) | 空間操作型入力装置、制御装置、制御システム、制御方法、空間操作型入力装置の製造方法及びハンドヘルド装置 | |
JPH11288356A (ja) | 手書き入力方法及び手書き入力装置 | |
CN101178615A (zh) | 姿态及运动感应系统及使用该系统的便携式电子设备 | |
JP5561092B2 (ja) | 入力装置、入力制御システム、情報処理方法及びプログラム | |
CN103389808B (zh) | 一种空间鼠标及获取空间鼠标位移的方法 | |
JP2013029512A (ja) | 携帯型電子デバイスのための、磁場センサおよび加速度計を使用して姿勢および角速度を検知するシステムおよび方法 | |
US8797262B2 (en) | Method of sensing motion in three-dimensional space | |
CN112328099A (zh) | 低功率指向方法以及实现该指向方法的电子设备 | |
CN112306261A (zh) | 低功耗倾斜补偿指点方法及相应的指点电子设备 | |
US8708818B2 (en) | Display control system, display control method, computer-readable storage medium having stored thereon display control program, and display control apparatus | |
US20170199585A1 (en) | Processing unit, computer program amd method to control a cursor on a screen according to an orientation of a pointing device | |
KR20090106767A (ko) | 3차원 공간상의 포인팅 장치 및 방법 | |
CN103049101B (zh) | 定位指针位置的方法、系统及设备 | |
CN103488312B (zh) | 定位指针位置的方法、系统及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: Room 511, No. 259 Guoxia Road, Yangpu District, Shanghai, 200433 Patentee after: SHANGHAI FLYDIGI ELECTRONICS TECHNOLOGY Co.,Ltd. Address before: Room 12013-6, 335 Guoding Road, Yangpu District, Shanghai 200433 Patentee before: SHANGHAI FLYDIGI ELECTRONICS TECHNOLOGY Co.,Ltd. |
|
CP02 | Change in the address of a patent holder |