发明内容
本发明的目的在于针对上述问题,提供一种基于惯性传感但又结合环境因素的人机交互方法。
本发明采用的技术方案为:一种移动终端浏览的人机交互方法,
移动终端的系统以固定的采样频率采集惯性传感器输出的表征移动终端的动作变化量的第一类惯性参量q(q
1,q
2,…q
n)或表征移动终端的动作变化率的第二类惯性参量
其中,n为惯性参量的维度,n为大于等于3的自然数;
在系统采集的是第一类惯性参量的情况下,系统对第一类惯性参量进行求导获得对应各次采样的第二类惯性参量;在系统采集的是第二类惯性参量的情况下,系统按照公式1分别计算移动终端在一次动作触发事件中的第i次与第i-1次采样期间对应各维的表征移动终端的动作变化量的第一类惯性参量q
i(q
1,q
2…q
n),其中,q
j为第j维的动作变化量,
为第j维的动作变化率,j为大于等于1小于等于n的自然数;
公式1:
其中,
和时间戳(i)分别表示在一次动作触发事件中,系统第i次采集到的
和系统标识的进行第i次采集的时间戳,时间戳(0)表示进行作为开始一次动作触发事件的采样的上一次采样的时间戳;
根据采样得到或者求导得到的第二类惯性参量判断是否存在从静止状态到运动状态再到静止状态的一次动作触发事件,其中,当
分别对应大于预设的各维的最小动作开始特征值
时判定为移动终端从静止状态到运动状态,当
分别对应小于预设的各维的最大静止特征值
时判定为移动终端从运动状态到静止状态,所述
分别对应小于
及预设的各维的最大动作结束特征值
系统将在一次动作触发事件中获得的q
i(q
1,q
2…q
n)及
按时间顺序对应地存放至动作变化量和动作变化率数组中,并在存放之前将动作变化量和动作变化率数组清零,具体为将根据代表一次动作触发事件开始的第一次采样至出现中间事件的采样计算获得的q
i(q
1,q
2…q
n)存放至动作变化量数组中,其中,中间事件为
开始对应小于
如果出现中间事件的
对应大于
则将出现中间事件后的第一次采样至一次动作触发事件结束的前一次采样获得的
存放至动作变化率数组,并将根据代表一次动作触发事件结束的最后一次采样计算获得的q
i(q
1,q
2…q
n)存放至动作变化量数组的最后;
系统根据在一次动作触发事件中获得的动作变化量数组和动作变化率数组或者经数学变换处理后的动作变化量数组和动作变化率数组内存入的数据的变化情况响应人机交互操作的变化,其中变换后的动作变化量数组和动作变化率数组分别通过对动作变化量数组和动作变化率数组内存储的各维数据序列进行数学变换获得。
优选的是,所述人机交互操作的变化及对应的动作变化量和动作变化率数组或者经数学变换处理后的动作变化量和动作变化率数组的数据需要满足的条件如下,其中,对应每个动作的各执行条件间为与的关系:
(4)动作1:浏览对象或元素向前翻一页或一项;
执行条件1:当前动作触发事件对应的动作变化量或者经数学变换处理后的动作变化量数组的各维数据序列的波峰均在对应维度数据序列的中间位置;
执行条件2:不满足执行动作3和4的条件;
(5)动作2:浏览对象或元素向后翻一页或一项;
执行条件1:当前动作触发事件对应的动作变化量或者经数学变换处理后的动作变化量数组的各维数据序列的波谷均在对应维度数据序列的中间位置;
执行条件2:不满足执行动作3和4的条件;
(6)动作3:浏览对象或元素向前连续翻页或移项;
执行条件1:当前动作触发事件对应的动作变化量或者经数学变换处理后的动作变化量数组的各维数据序列中的开始第m1位的各维数据与结尾第n1位的各维数据的对应维度的差值大于对应维度数据序列中的数据的最小值,其中,m1和n1均为大于等于1小于P/2的自然数,其中,P为动作变化量或者经数学变换处理后的动作变化量数组的各维数据序列中数据的总数;
执行条件2:当前动作触发事件对应的动作变化量或者经数学变换处理后的动作变化量数组的各维数据序列的结尾第m2位的各维数据与结尾第n2位的各维数据的对应维度的差值小于对应维度数据序列中的数据的最小值,其中,n2为大于等于1小于P/2的自然数,m2为小于n2的自然数;
执行条件3:动作变化率或者经数学变换处理后的动作变化率数组的各维数据序列的变化均是从大到小,再从小到大;
(4)动作4:浏览对象或元素向后连续翻页或移项;
执行条件1:当前动作触发事件对应的动作变化量或者已变化动作变化量数组的各维数据序列中的结尾第n1位的各维数据与开始第m1位的各维动数据的对应维度的差值大于对应维度数据序列中的数据的最小值;
执行条件2:当前动作触发事件对应的动作变化量或者已变化动作变化量数组的各维数据序列中的结尾第n2位的各维数据与结尾第m2位的各维数据的对应维度的差值小于对应维度数据序列中的数据的最小值;
执行条件3:不满足动作3的执行条件3。
优选的是,所述人机交互操作的变化包括作为动作5的浏览对象或元素某一属性正向改变一次,执行动作5的执行条件为:
执行条件1:满足执行动作1的执行条件;
执行条件2:有融合的其他传感器输入事件。
优选的是,所述人机交互操作的变化包括作为动作6的浏览对象或元素某一属性负向改变一次,执行动作6的执行条件为:
执行条件1:满足执行动作2的执行条件;
执行条件2:有融合的其他传感器输入事件。
优选的是,所述人机交互操作的变化包括作为动作7的浏览对象或元素某一属性正向连续改变,执行动作7的执行条件为:
执行条件1:满足执行动作3的执行条件;
执行条件2:有融合的其他传感器输入事件。
优选的是,所述人机交互操作的变化包括作为动作8的浏览对象或元素某一属性负向连续改变,执行动作8的执行条件为:
执行条件1:满足执行动作4的执行条件;
执行条件2:有融合的其他传感器输入事件。
优选的是,所述第一类惯性参量为角度、位移或姿态变化量,对应的第二类惯性参量为角速度、线速度或姿态变化率。
优选的是,所述数学变化为线性滤波,限幅与消抖滤波,加权与递推平均滤波,中值与算术平均滤波或者上述至少两种复合的滤波方式。
优选的是,所述数学变化为非线性与自适应滤波算法,最小均方误差LMS自适应滤波,递推最小二乘RLS自适应滤波,基于神经网络、遗传算法、粒子群算法、小波变换的自适应滤波算法,卡尔曼滤波或者上述至少两种复合的滤波算法。
优选的是,所述数学变化为统计模式识别,模糊模式识别,或者两者复合的识别算法本发明的有益效果为:本发明的移动终端浏览的人机交互方法采样动作或动作结合其他传感器输入的形式,具有易于操作、灵敏度高、不受环境因素影响等优势。
本发明的有益效果为:本发明的移动终端浏览的人机交互方法采样动作或动作结合其他传感器输入的形式,具有易于操作、灵敏度高、不受环境因素影响等优势。
具体实施方式
以下以第一类惯性参量为角度、第二类惯性参量为角速度为实施例,重点对本发明的移动终端浏览的人机交互方法进行说明。
本发明的移动终端浏览的人机交互方法为:移动终端的系统以固定的采样频率采集例如是陀螺仪输出的x、y、z轴角速度ω(x、y、z)(对应ω(ω1、ω2、ω3),其中的ω1、ω2、ω3对应x、y、z三轴的角速度),根据采样得到的ω(x、y、z)判断是否存在从静止状态到运动状态再到静止状态的一次动作触发事件,其中,当ω(x、y、z)分别对应大于预设的x、y、z轴最小动作开始角速度ωbmin(x、y、z)时(其中的“对应”表示:ω(x)>ωbmin(x),ω(y)>ωbmin(y),且ω(z)>ωbmin(z),以下出现的“对应”参照其进行解释)判定为移动终端从静止状态到运动状态,当ω(x、y、z)分别对应小于预设的x、y、z轴最大静止角速度ωsmax(x、y、z)时判定为移动终端从运动状态到静止状态,ωsmax(x、y、z)分别对应小于ωbmin(x、y、z)及预设的x、y、z轴最大动作结束角速度ωemin(x、y、z),系统按照公式1分别计算陀螺仪在一次动作触发事件中的第i次与第i-1次采样期间绕x、y、z轴转过的相对角度Ai(x、y、z):
公式1:Ai(x、y、z)=ωi(x、y、z)×[时间戳(i)-时间戳(i-1)],其中,ωi(x、y、z)和时间戳(i)分别表示在一次动作触发事件中,系统第i次采集到的ω(x、y、z)和系统标识的进行第i次采集的时间戳,时间戳(0)表示进行作为开始一次动作触发事件的采样的上一次采样的时间戳。
系统将在一次动作触发事件中获得的Ai(x、y、z)及ωi(x、y、z)按时间顺序对应地存放至角度和角速度数组中,并在存放之前将角度和角速度数组清零,具体为将根据代表一次动作触发事件开始的第一次采样(包括第一次采样)至出现中间事件的采样(包括出现中间事件的采样)计算获得的Ai(x、y、z)存放至角度数组中,其中,中间事件为ω(x、y、z)开始对应小于ωemin(x、y、z),如果出现中间事件的ω(x、y、z)对应大于ωsmax(x、y、z),则将出现中间事件后的第一次采样至一次动作触发事件结束的前一次采样获得的ωi(x、y、z)存放至角速度数组,并将根据代表一次动作触发事件结束的最后一次采样计算获得的Ai(x、y、z)存放至角度数组的最后。
以上动作触发事件代表用户操作移动终端的动作,不同的动作会使陀螺仪有不同的输出形式,即不同的动作对应不同的角度数组及角速度数组,这样,系统就可以根据在一次动作触发事件中获得的角度数组和角速度数组内存入的数据的变化情况响应浏览等交互操作的变化。
以上的ωsmax(x、y、z)可以根据设备静止放置时芯片的噪音来设定。比如,某厂家的芯片静止放置时的输出值理论上是0,但是输出值因为噪音的影响,大概在-2至+2之间。那么就可以设置ωsmax(x、y、z)均为2。ωbmin(x、y、z)和ωemin(x、y、z)的确定可以通过与用户的交互来完成相关设置,包括但不限于以下内容:游戏或应用中,用户根据不同游戏、应用的特点,适应性地调整合适的第一类ωbmin(x、y、z)和ωemin(x、y、z)值并保存;文字、图像、地图等媒体的浏览中,用户根据其习惯和个性需求适应性地调整第二类ωbmin(x、y、z)和ωemin(x、y、z)值并保存;音频、视频等流媒体播放中,用户根据媒体内容和使用场景,适应性地调整合适的第三类ωbmin(x、y、z)和ωemin(x、y、z)值并保存。
举例说明:以上浏览等交互操作的变化及对应的角度和角速度数组的数据需要满足的条件如下,其中,对应每个动作的各执行条件间为与的关系,即要求同时满足。
(1)动作1:浏览对象或元素向前翻一页或一项;
执行条件1:当前动作触发事件对应的角度数组的三维数据序列的波峰均在对应维度数据序列的中间位置,即对应x轴的数据序列的波峰在对应x轴的数据序列的中间位置,对应y轴的数据序列的波峰在对应y轴的数据序列的中间位置,对应z轴的数据序列的波峰在对应z轴的数据序列的中间位置,另外,如果角度数组的数据的个数是偶数,则中间位置为位于中间的两个数据,对此,只要位于中间的一个数据为对应维度数据序列的波谷即可,以下中间位置参照其进行解释;
执行条件2:不满足执行动作3和4的条件;
在此,满足执行条件1和2对应的动作为朝正方向(手持移动终端朝向用户转动)转动移动终端一下,并返回。
(2)动作2:浏览对象或元素向后翻一页或一项;
执行条件1:当前动作触发事件对应的角度数组的三维数据序列的波谷均在对应维度数据序列的中间位置;
执行条件2:不满足执行动作3和4的条件;
在此,满足执行条件1和2对应的动作为朝反方向(手持移动终端远离用户转动)转动移动终端一下,并返回。
(3)动作3:浏览对象或元素向前连续翻页或移项;
执行条件1:当前动作触发事件对应的角度数组的三维数据序列中的第一位的三个角度对应与倒数第二位的三个角度的差值大于对应维度数据序列中的最小角度;
执行条件2:当前动作触发事件对应的角度数组的三维数据序列中的倒数第一位的三个角度对应与倒数第二位的三个角度的差值小于对应维度数据序列中的最小角度;
执行条件3:角速度数组的三维数据序列的变化均是从大到小,再从小到大;
在此,满足执行条件1、2和3对应的动作为朝正方向转动移动终端一下,不返回。
(4)动作4:浏览对象或元素向后连续翻页或移项;
执行条件1:当前动作触发事件对应的角度数组的三维数据序列中的倒数第二位的三个角度对应与第一位的三个角度的差值大于对应维度数据序列中的最小角度;
执行条件2:当前动作触发事件对应的角度数组的三维数据序列中的倒数第二位的三个角度对应与倒数第一位的三个角度的差值小于对应维度数据序列中的最小角度;
执行条件3:不满足动作3的执行条件3;
在此,满足执行条件1、2和3对应的动作为朝反方向转动移动终端一下,不返回。
另外,为了使响应的方式多样化,本发明的人机交互方法可在以上动作的基础上结合其他传感器的输入进行对应的响应,例如:
(5)所述浏览等交互操作的变化包括作为动作5的浏览对象或元素某一属性正向改变一次,其中,属性正向改变包括但不局限于浏览对象或元素的图像呈现尺寸放大等,音视频等流媒体的音量变大,亮度、对比度、进度、时间序列属性等的正向改变等,执行动作5的执行条件为:
执行条件1:满足执行动作1的执行条件;
执行条件2:有融合的其他传感器输入事件。
在此,满足执行条件1和2对应的动作为触发其他传感器有效输入的同时,朝正方向转动移动终端一下,并返回。
在此,有融合的其他传感器输入事件可以是用户或系统缺省值时默认指定给“浏览对象或元素某一属性正向改变”的动作所对应的操作。例如,用户指定点击触摸屏作为执行条件2,同时配合执行条件1,完成对播放视频流时画面亮度的正向改变一个单位,所述正向改变一个单位,等同于视频播放器传统控件增大画面亮度一个单位。以下的有融合的其他传感器输入事件参照其进行解释。
(6)所述浏览等交互操作的变化包括作为动作6的浏览对象或元素某一属性负向改变一次,其中,属性负向改变包括但不局限于浏览对象或元素的图像呈现尺寸缩小等,音视频等流媒体的音量变小,亮度、对比度、进度、时间序列属性等的负向改变等,执行动作6的执行条件为:
执行条件1:满足执行动作2的执行条件;
执行条件2:有融合的其他传感器输入事件。
在此,满足执行条件1和2对应的动作为触发其他传感器有效输入的同时,朝反方向转动移动终端一下,并返回。
(7)所述浏览等交互操作的变化包括作为动作7的浏览对象或元素某一属性正向连续改变,执行动作7的执行条件为:
执行条件1:满足执行动作3的执行条件;
执行条件2:有融合的其他传感器输入事件。
在此,满足执行条件1和2对应的动作为触发其他传感器有效输入的同时,朝正方向转动移动终端一下,不返回。
(8)所述浏览等交互操作的变化包括作为动作8的浏览对象或元素某一属性负向连续改变,执行动作8的执行条件为:
执行条件1:满足执行动作3的执行条件;
执行条件2:有融合的其他传感器输入事件。
在此,满足执行条件1和2对应的动作为触发其他传感器有效输入的同时,朝反方向转动移动终端一下,不返回。
对于浏览对象或元素某一属性的恢复,用户可以选择通过逆向操作进行,也可以通过相应的动作使系统将浏览对象或元素某一属性准确地恢复至未执行操作前的状态,对于后者,系统先要根据之前的操作判断出相应的浏览对象或元素某一属性先前进行过正向或负向的改变,如果存在则将一个标志置为“真”,在标志为“真”的情况下,再对惯性传感单元的某一参数进行分析,如果该参数出现了预定义的变化(该变化与要求用户执行的动作相对应)则说明用户执行了恢复动作,该参数例如但不局限于陀螺仪的角速度参数,例如可定义如果出现两个及两个以上的波峰或者波谷的则执行恢复动作。
以上所述仅为本发明较佳的实施方式,并非用来限定本发明的实施范围,但凡在本发明的保护范围内所做的等效变化及修饰,皆应认为落入了本发明的保护范围内。