专利名称: | 操作识别方法及装置 | ||
专利名称(英文): | Method and device for recognizing operation | ||
专利号: | CN201510526258.X | 申请时间: | 20150825 |
公开号: | CN105120090A | 公开时间: | 20151202 |
申请人: | 腾讯科技(深圳)有限公司 | ||
申请地址: | 518000 广东省深圳市福田区振兴路赛格科技园2栋东403室 | ||
发明人: | 周世龙; 冉蓉; 罗程; 李斌; 赵禹 | ||
分类号: | H04M1/725 | 主分类号: | H04M1/725 |
代理机构: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 刘映东 |
摘要: | 本发明公开了一种操作识别方法及装置,属于移动终端领域。所述方法包括:获取移动终端中的传感器所采集的数据序列,所述数据序列包括按照预定时间间隔采集的n个数据;对所述数据序列进行高通滤波处理,得到n个滤波后的数据;对于每个所述滤波后的数据,检测所述滤波后的数据是否超过预设阈值;在所述滤波后的数据超过所述预设阈值时,生成用于表示所述移动终端发生摇动操作的识别结果。本发明解决了由于重力加速度、乘坐汽车时产生的恒定加速度等因素对识别过程的干扰,导致摇动操作的误识别率较高的问题;达到了使用高通滤波处理去除恒定加速度类干扰,增强摇动操作的识别准确性的效果。 | ||
摘要(英文): | The invention discloses a method and device for recognizing operation, which belongs to the field of mobile terminal. The method includes : obtaining mobile terminal in the sequence of the data collected by the sensors, the data sequence includes collecting of a predetermined time interval in accordance with the data n; to the data sequence is subjected to the high-pass filtering processing, to obtain the data after filtering n a; for each of the filtered data, the data after filtering detecting the preset threshold is exceeded; the data after filtering in the more than the preset threshold value, the produce and is used for representing the mobile terminal an identification result of shaking operations. The invention solves the problem that because the gravity acceleration, maximum constant acceleration of the automobile when the factors such as the interference of the identification process, leading to the rocking operation of the problem of a high recognition rate; the use of high-pass filtering process to remove the constant acceleration of such interference, the recognition reliability of the enhanced effect of operation. |
1.一种操作识别方法,其特征在于,所述方法包括: 获取移动终端中的传感器所采集的数据序列,所述数据序列包括按照预定 时间间隔采集的n个数据; 对所述数据序列进行高通滤波处理,得到n个滤波后的数据; 对于每个所述滤波后的数据,检测所述滤波后的数据是否超过预设阈值; 在所述滤波后的数据超过所述预设阈值时,生成用于表示所述移动终端发 生摇动操作的识别结果。
2.根据权利要求1所述的方法,其特征在于,所述对所述数据序列进行高 通滤波处理,包括: 按照如下公式计算得到所述n个滤波后的数据; y[i]=α*y[i-1]+α*(x[i]-x[i-1]) 其中,设x[i]是所述数据序列中的第i个数据,y[i]是第i个滤波后的数据; α是根据所述预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
3.根据权利要求1所述的方法,其特征在于,所述生成用于表示所述移动 终端发生摇动操作的识别结果之后,还包括: 检测在最近一个第一时间片内,是否已经生成用于表示所述移动终端发生 摇动操作的识别结果;所述第一时间片是根据第一预定时长周期性划分得到的 时间片段; 若在最近一个第一时间片内已经生成所述识别结果,则删除本次生成的所 述识别结果。
4.根据权利要求1所述的方法,其特征在于, 所述传感器包括三轴加速度传感器,所述数据序列包括对应于x轴的加速 度数据序列,或,所述数据序列包括对应于y轴的加速度数据序列; 和/或, 所述传感器包括陀螺仪传感器,所述数据序列包括以y轴为旋转轴所采集 的角速度数据序列; 其中,所述x轴与所述移动终端正面的水平方向平行,所述y轴与所述移 动终端正面的垂直方向平行。
5.根据权利要求1至4任一所述的方法,其特征在于,所述生成用于表示 所述移动终端发生摇动操作的识别结果之后,还包括: 根据所述识别结果生成控制指令包; 将所述控制指令包发送给对侧终端,以便所述对侧终端根据所述控制指令 包进行预定操作,所述预定操作包括振动操作、闪光操作和显示预定内容中的 至少一种操作。
6.根据权利要求5所述的方法,其特征在于,所述获取移动终端中的传感 器所采集的数据序列之前,还包括: 与所述对侧终端建立通话连接; 所述将所述控制指令包发送给对侧终端,包括: 将所述控制指令包通过所述通话连接发送给所述对侧终端。
7.根据权利要求5所述的方法,其特征在于,所述将所述控制指令包通过 所述通话连接发送给对侧终端之前,还包括: 检测在最近一个第二时间片内,向所述对侧终端发送的所述控制指令包个 数是否超过预定阈值;所述第二时间片是根据第二预定时长周期性划分得到的 时间片段; 若超过所述预定阈值,则删除本次生成的所述控制指令包。
8.一种操作识别装置,其特征在于,所述装置包括: 序列获取模块,用于获取移动终端中的传感器所采集的数据序列,所述数 据序列包括按照预定时间间隔采集的n个数据; 数据滤波模块,用于对所述数据序列进行高通滤波处理,得到n个滤波后 的数据; 数据检测模块,用于对于每个所述滤波后的数据,检测所述滤波后的数据 是否超过预设阈值; 结果生成模块,用于在所述滤波后的数据超过所述预设阈值时,生成用于 表示所述移动终端发生摇动操作的识别结果。
9.根据权利要求8所述的装置,其特征在于,所述数据滤波模块,具体用 于按照如下公式计算得到所述n个滤波后的数据; y[i]=α*y[i-1]+α*(x[i]-x[i-1]) 其中,设x[i]是所述数据序列中的第i个数据,y[i]是第i个滤波后的数据; α是根据所述预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
10.根据权利要求8所述的装置,其特征在于,所述装置,还包括: 结果检测模块,用于检测在最近一个第一时间片内,是否已经生成用于表 示所述移动终端发生摇动操作的识别结果;所述第一时间片是根据第一预定时 长周期性划分得到的时间片段; 结果忽略模块,用于若在最近一个第一时间片内已经生成所述识别结果, 则删除本次生成的所述识别结果。
11.根据权利要求8所述的装置,其特征在于, 所述传感器包括三轴加速度传感器,所述数据序列包括对应于x轴的加速 度数据序列,或,所述数据序列包括对应于y轴的加速度数据序列; 和/或; 所述传感器包括陀螺仪传感器,所述数据序列包括以y轴为旋转轴所采集 的角速度数据序列; 其中,所述x轴与所述移动终端正面的水平方向平行,所述y轴与所述移 动终端正面的垂直方向平行。
12.根据权利要求8至11任一所述的装置,其特征在于,所述装置,还包 括: 指令生成模块,用于根据所述识别结果生成控制指令包; 指令发送模块,用于将所述控制指令包发送给对侧终端,以便所述对侧终 端根据所述控制指令包进行预定操作,所述预定操作包括振动操作、闪光操作 和显示预定内容中的至少一种操作。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括: 连接建立模块,用于与所述对侧终端建立通话连接; 所述指令发送模块,用于将所述控制指令包通过所述通话连接发送给所述 对侧终端。
14.根据权利要求12所述的装置,其特征在于,所述装置,还包括: 个数检测模块,用于检测在最近一个第二时间片内,向所述对侧终端发送 的所述控制指令包个数是否超过预定阈值;所述第二时间片是根据第二预定时 长周期性划分得到的时间片段; 所述指令发送模块,用于若超过所述预定阈值,则删除本次生成的所述控 制指令包。
1.一种操作识别方法,其特征在于,所述方法包括: 获取移动终端中的传感器所采集的数据序列,所述数据序列包括按照预定 时间间隔采集的n个数据; 对所述数据序列进行高通滤波处理,得到n个滤波后的数据; 对于每个所述滤波后的数据,检测所述滤波后的数据是否超过预设阈值; 在所述滤波后的数据超过所述预设阈值时,生成用于表示所述移动终端发 生摇动操作的识别结果。
2.根据权利要求1所述的方法,其特征在于,所述对所述数据序列进行高 通滤波处理,包括: 按照如下公式计算得到所述n个滤波后的数据; y[i]=α*y[i-1]+α*(x[i]-x[i-1]) 其中,设x[i]是所述数据序列中的第i个数据,y[i]是第i个滤波后的数据; α是根据所述预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
3.根据权利要求1所述的方法,其特征在于,所述生成用于表示所述移动 终端发生摇动操作的识别结果之后,还包括: 检测在最近一个第一时间片内,是否已经生成用于表示所述移动终端发生 摇动操作的识别结果;所述第一时间片是根据第一预定时长周期性划分得到的 时间片段; 若在最近一个第一时间片内已经生成所述识别结果,则删除本次生成的所 述识别结果。
4.根据权利要求1所述的方法,其特征在于, 所述传感器包括三轴加速度传感器,所述数据序列包括对应于x轴的加速 度数据序列,或,所述数据序列包括对应于y轴的加速度数据序列; 和/或, 所述传感器包括陀螺仪传感器,所述数据序列包括以y轴为旋转轴所采集 的角速度数据序列; 其中,所述x轴与所述移动终端正面的水平方向平行,所述y轴与所述移 动终端正面的垂直方向平行。
5.根据权利要求1至4任一所述的方法,其特征在于,所述生成用于表示 所述移动终端发生摇动操作的识别结果之后,还包括: 根据所述识别结果生成控制指令包; 将所述控制指令包发送给对侧终端,以便所述对侧终端根据所述控制指令 包进行预定操作,所述预定操作包括振动操作、闪光操作和显示预定内容中的 至少一种操作。
6.根据权利要求5所述的方法,其特征在于,所述获取移动终端中的传感 器所采集的数据序列之前,还包括: 与所述对侧终端建立通话连接; 所述将所述控制指令包发送给对侧终端,包括: 将所述控制指令包通过所述通话连接发送给所述对侧终端。
7.根据权利要求5所述的方法,其特征在于,所述将所述控制指令包通过 所述通话连接发送给对侧终端之前,还包括: 检测在最近一个第二时间片内,向所述对侧终端发送的所述控制指令包个 数是否超过预定阈值;所述第二时间片是根据第二预定时长周期性划分得到的 时间片段; 若超过所述预定阈值,则删除本次生成的所述控制指令包。
8.一种操作识别装置,其特征在于,所述装置包括: 序列获取模块,用于获取移动终端中的传感器所采集的数据序列,所述数 据序列包括按照预定时间间隔采集的n个数据; 数据滤波模块,用于对所述数据序列进行高通滤波处理,得到n个滤波后 的数据; 数据检测模块,用于对于每个所述滤波后的数据,检测所述滤波后的数据 是否超过预设阈值; 结果生成模块,用于在所述滤波后的数据超过所述预设阈值时,生成用于 表示所述移动终端发生摇动操作的识别结果。
9.根据权利要求8所述的装置,其特征在于,所述数据滤波模块,具体用 于按照如下公式计算得到所述n个滤波后的数据; y[i]=α*y[i-1]+α*(x[i]-x[i-1]) 其中,设x[i]是所述数据序列中的第i个数据,y[i]是第i个滤波后的数据; α是根据所述预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
10.根据权利要求8所述的装置,其特征在于,所述装置,还包括: 结果检测模块,用于检测在最近一个第一时间片内,是否已经生成用于表 示所述移动终端发生摇动操作的识别结果;所述第一时间片是根据第一预定时 长周期性划分得到的时间片段; 结果忽略模块,用于若在最近一个第一时间片内已经生成所述识别结果, 则删除本次生成的所述识别结果。
11.根据权利要求8所述的装置,其特征在于, 所述传感器包括三轴加速度传感器,所述数据序列包括对应于x轴的加速 度数据序列,或,所述数据序列包括对应于y轴的加速度数据序列; 和/或; 所述传感器包括陀螺仪传感器,所述数据序列包括以y轴为旋转轴所采集 的角速度数据序列; 其中,所述x轴与所述移动终端正面的水平方向平行,所述y轴与所述移 动终端正面的垂直方向平行。
12.根据权利要求8至11任一所述的装置,其特征在于,所述装置,还包 括: 指令生成模块,用于根据所述识别结果生成控制指令包; 指令发送模块,用于将所述控制指令包发送给对侧终端,以便所述对侧终 端根据所述控制指令包进行预定操作,所述预定操作包括振动操作、闪光操作 和显示预定内容中的至少一种操作。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括: 连接建立模块,用于与所述对侧终端建立通话连接; 所述指令发送模块,用于将所述控制指令包通过所述通话连接发送给所述 对侧终端。
14.根据权利要求12所述的装置,其特征在于,所述装置,还包括: 个数检测模块,用于检测在最近一个第二时间片内,向所述对侧终端发送 的所述控制指令包个数是否超过预定阈值;所述第二时间片是根据第二预定时 长周期性划分得到的时间片段; 所述指令发送模块,用于若超过所述预定阈值,则删除本次生成的所述控 制指令包。
翻译:技术领域
本发明涉及移动终端领域,特别涉及一种操作识别方法及装置。
背景技术
摇动操作是移动终端上使用的常见触发操作,也称“摇一摇”操作。移动终端 可以是智能手机、平板电脑以及电子书等。
摇动操作可以通过移动终端内置的三轴加速度传感器来识别。具体地,三 轴加速度传感器采集x轴、y轴和z轴三个坐标轴上的加速度,在某一方向上的 加速度在预定间隔内由正向加速度改变为负向加速度,或者,由负向加速度改 变为正向加速度时,移动终端将该次加速度的正负改变识别为一次摇一摇操作。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:由于用 户在使用移动终端时,存在重力加速度、乘坐汽车时产生的恒定加速度等因素 的干扰,导致摇动操作的误识别率较高。
发明内容
为了解决存在重力加速度、乘坐汽车时产生的恒定加速度等因素的干扰, 导致摇动操作的误识别率较高的问题,本发明实施例提供了一种操作识别方法 及装置。所述技术方案如下:
第一方面,提供了一种操作识别方法,所述方法包括:
获取移动终端中的传感器所采集的数据序列,所述数据序列包括按照预定 时间间隔采集的n个数据;
对所述数据序列进行高通滤波处理,得到n个滤波后的数据;
对于每个所述滤波后的数据,检测所述滤波后的数据是否超过预设阈值;
在所述滤波后的数据超过所述预设阈值时,生成用于表示所述移动终端发 生摇动操作的识别结果。
第二方面,提供了一种操作识别装置,所述装置包括:
序列获取模块,用于获取移动终端中的传感器所采集的数据序列,所述数 据序列包括按照预定时间间隔采集的n个数据;
数据滤波模块,用于对所述数据序列进行高通滤波处理,得到n个滤波后 的数据;
数据检测模块,用于对于每个所述滤波后的数据,检测所述滤波后的数据 是否超过预设阈值;
结果生成模块,用于在所述滤波后的数据超过所述预设阈值时,生成用于 表示所述移动终端发生摇动操作的识别结果。
本发明实施例提供的技术方案带来的有益效果是:
通过先对数据序列进行高通滤波处理,得到n个滤波后的数据;再对每个 滤波后的数据,检测滤波后的数据是否超过预设阈值;在滤波后的数据超过预 设阈值时,生成用于表示移动终端发生摇动操作的识别结果;解决了重力加速 度、乘坐汽车时产生的恒定加速度等因素的干扰,导致摇动操作的误识别率较 高的问题;达到了使用高通滤波处理去除恒定加速度类干扰,增强摇动操作的 识别准确性的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的移动终端的结构示意图;
图2是本发明一个实施例提供的操作识别方法的方法流程图;
图3是本发明一个实施例提供的两种摇动方式的示意图;
图4是本发明另一个实施例提供的操作识别方法的方法流程图;
图5是本发明另一个实施例提供的操作识别方法的方法流程图;
图6是本发明另一个实施例提供的操作识别方法的方法流程图;
图7是图6所示实施例提供的操作识别方法在实施时的实施示意图;
图8是本发明一个实施例提供的操作识别装置的结构方框图;
图9是本发明另一个实施例提供的操作识别装置的结构方框图;
图10是本发明一个实施例提供的移动终端的结构方框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明 实施方式作进一步地详细描述。
请参考图1,其示出了本发明一个实施例提供的移动终端的结构示意图。该 移动终端可以是手机、平板电脑、电子书阅读器、MP3(MovingPictureExperts GroupAudioLayerIII,动态影像专家压缩标准音频层面3)播放器、MP4(Moving PictureExpertsGroupAudioLayerIV,动态影像专家压缩标准音频层面4)播放 器、膝上型便携计算机等等。
该移动终端中设置有用于采集动作数据的传感器(图中未示出),比如:三 轴加速度传感器和/或陀螺仪传感器。
传感器在移动终端中建立的坐标轴包括:x轴、y轴和z轴。x轴、y轴和z 轴所对应的原点为移动终端的中心。x轴与移动终端正面的水平方向平行,在正 视移动终端正面时,水平方向的左侧是x轴的正半轴方向,水平方向的右侧是x 轴的右半轴方向。y轴与移动终端正面的垂直方向平行,在正视移动终端正面时, 垂直方向的上侧是y轴的正半轴方向,垂直方向的下侧是y轴的负半轴方向。z 轴垂直于移动终端正面,移动终端正面朝外的方向是z轴的正半轴方向,移动 终端负面朝外的方向是z轴的负半轴方向。
请参考图2,其示出了本发明一个实施例提供的操作识别方法的方法流程 图。本实施例以该操作识别方法应用于设置有传感器的移动终端中来举例说明。 该操作识别方法包括:
步骤202,获取移动终端中的传感器所采集的数据序列,数据序列包括按照 预定时间间隔采集的n个数据;
移动终端中的传感器按照预定时间间隔采集数据,得到数据序列。该数据 序列包括n个数据。
用户摇动移动终端时,通常有两种方式:
第一,在移动终端正面所在平面内,沿弧线来回摇动移动终端。如图3左 侧所示,这种摇动方式主要靠用户的肘部动作来完成。这种摇动方式会触发三 轴加速度传感器上有关x轴和y轴的加速度数据发生明显改变。
第二,以旋转方式摇动移动终端。如图3右侧所示,这种摇动方式主要靠 用户的腕部动作来完成。这种摇动方式会触发陀螺仪传感器的y轴角速度数据 发生明显改变。
在传感器包括三轴加速度传感器时,移动终端获取三轴加速度传感器采集 的对应于x轴的加速度数据序列和对应于y轴的加速度数据序列。其中,对应 于x轴的加速度数据序列包括n个x轴加速度数据,对应于y轴的加速度数据 序列包括n个y轴加速度数据。
在传感器包括陀螺仪传感器时,移动终端获取陀螺仪传感器采集的对应于y 轴的角速度数据。也即,数据序列包括以y轴为旋转轴所采集的角速度数据序 列。
步骤204,对数据序列进行高通滤波处理,得到n个滤波后的数据;
高通滤波处理能够去除恒定加速度或恒定角速度对传感器数据的影响。比 如,地球引力即为恒定加速度,乘坐定时巡航的汽车也会产生恒定加速度等。
移动终端对数据序列中的各个数据进行高通滤波处理,得到n个滤波后的 数据。
步骤206,对于每个滤波后的数据,检测滤波后的数据是否超过预设阈值;
由于用户在正常使用移动终端过程中,还可能会行走、上下楼、放置手机 和拿起手机等操作。
为了区分用户的常规动作和摇动操作,移动终端还检测滤波后的数据是否 超过预设阈值。
步骤208,在滤波后的数据超过预设阈值时,生成用于表示移动终端发生摇 动操作的识别结果。
综上所述,本实施例提供的操作识别方法,通过先对数据序列进行高通滤 波处理,得到n个滤波后的数据;再对每个滤波后的数据,检测滤波后的数据 是否超过预设阈值;在滤波后的数据超过预设阈值时,生成用于表示移动终端 发生摇动操作的识别结果;解决了重力加速度、乘坐汽车时产生的恒定加速度 等因素的干扰,导致摇动操作的误识别率较高的问题;达到了使用高通滤波处 理去除恒定加速度类干扰,增强摇动操作的识别准确性的效果。
在一个可能的实施例中,上述步骤204可替代实现为步骤204a,如图4所 示。
步骤204a,按照如下公式计算得到n个滤波后的数据;
y[i]=α*y[i-1]+α*(x[i]-x[i-1])
其中,设x[i]是数据序列中的第i个数据,y[i]是第i个滤波后的数据;α 是根据预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
通常,α=RC/(RC+dt),其中,RC是根据经验值设定的常数,dt是传感器 采集数据时的时间间隔,比如:dt=0.05s。
当数据序列包括对应于x轴的加速度数据序列时,x[i]是每隔dt时长采集到 的x轴的加速度数据;
当数据序列包括对应于y轴的加速度数据序列时,x[i]是每隔dt时长采集到 的y轴的加速度数据;
当数据序列包括对应于y轴的角速度数据序列时,x[i]是每隔dt时长采集到 的y轴的角速度数据。
上述步骤204a的伪代码为:
functionhighpass(real[0...n]x,realdt,realRC)
varreal[0..n]y
varrealα=RC/(RC+dt)
y[0]:=x[0]
forifrom1ton
y[i]:=α*y[i-1]+α*(x[i]-x[i-1])
returny。
综上所述,上述公式能够将x[i]中的恒定加速度或恒定角速度,在y[i]中逐 渐淡化为0,从而去除重力加速度、乘坐汽车时产生的恒定加速度等因素对识别 过程的干扰。
在另一个可能的实施例中,由于个体之间的生理差别,不仅不同用户对移 动终端的摇动方式不同,对单次摇动的定义也会有区别。例如:手机从A点摇 晃到B点再返回A点,有些用户认为A-B算作一次摇动,而有些用户认为A-B-A 算作一次摇动。
因此,用户自己认为的一次摇动,可能会被移动终端识别为多次摇动。为 了避免该问题,上述步骤208之后,还可选包括步骤209a和步骤209b,如图5 所示。
步骤209a,检测在最近一个第一时间片内,是否已经生成用于表示移动终 端发生摇动操作的识别结果;第一时间片是根据第一预定时长周期性划分得到 的时间片段;
该第一预定时长可以是180ms。
步骤209b,若在最近一个第一时间片内已经生成识别结果,则删除生成的 识别结果。
也即,若180ms内已经生成过一次用于表示移动终端发生摇动操作的识别 结果,则在180ms内的生成的其它识别结果将会被删除。换句话说,即便用户 在180ms内进行了多次摇动,移动终端也仅仅识别为一次摇动。
综上所述,本实施例还能够在识别出较多摇动操作时,忽略一部分识别结 果,使得不需要对太多的识别结果进行处理,节省了移动终端的计算资源。
作为再一个可能的实施例,上述操作识别方法能够应用于两个移动终端之 间的通话过程中,当一个移动终端被用户摇动时,移动终端根据识别结果生成 控制指令包;将控制指令包发送给对侧终端,以便对侧终端根据控制指令包进 行预定操作,预定操作包括振动操作、闪光操作和显示预定内容中的至少一种 操作。该控制方式可以在通话过程中或者即时通信聊天过程中,在两个移动终 端之间传递用户的情绪。
请参考图6,其示出了本发明另一个实施例提供的操作识别方法的方法流程 图。本实施例以该操作识别方法应用于设置有传感器的移动终端中来举例说明。 该操作识别方法包括:
步骤601,移动终端与对侧终端建立通话连接。
移动终端与对侧终端建立VoIP(VoiceoverInternetProtocol,网络语音)电 话连接。
可选地,在移动终端与对侧终端建立通话连接之后,移动终端启用内置的 传感器,该传感器用于在通话过程中,采集用户对移动终端操作时的数据。
步骤602,移动终端获取传感器所采集的数据序列,数据序列包括按照预定 时间间隔采集的n个数据;
在通话过程中,移动终端中的传感器按照预定时间间隔采集数据,得到数 据序列,
在传感器包括三轴加速度传感器时,移动终端获取三轴加速度传感器采集 的对应于x轴的加速度数据序列和对应于y轴的加速度数据序列。其中,对应 于x轴的加速度数据序列包括n个x轴加速度数据,对应于y轴的加速度数据 序列包括n个y轴加速度数据。
在传感器包括陀螺仪传感器时,移动终端获取陀螺仪传感器采集的对应于y 轴的角速度数据。
步骤603,移动终端对数据序列进行高通滤波处理,得到n个滤波后的数据;
具体地,移动终端按照如下公式计算得到n个滤波后的数据;
y[i]=α*y[i-1]+α*(x[i]-x[i-1])
其中,设x[i]是数据序列中的第i个数据,y[i]是第i个滤波后的数据;α 是根据预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。x[0]也可以是常数,比 如重力角速度值。
通常,α=RC/(RC+dt),其中,RC是根据经验值设定的常数,dt是传感器 采集数据时的时间间隔,比如:dt=0.05s。
步骤604,对于每个滤波后的数据,移动终端检测滤波后的数据是否超过预 设阈值;
由于用户在正常使用移动终端过程中,还可能会行走、上下楼、放置手机 和拿起手机等操作。
为了区分用户的常规动作和摇动操作,移动终端还检测滤波后的数据是否 超过预设阈值。需要说明的是,移动终端中预先设置多个不同类型的预设阈值。
也即,移动终端中预先对应于x轴的加速度数据设置第一阈值、对应于y 轴的加速度数据设置第二阈值、对应于y轴的角速度数据设置第三阈值。
若在对应于x轴的加速度数据序列中,存在一个加速度数据大于第一阈值, 则移动终端进入步骤605;
若在对应于y轴的加速度数据序列中,存在一个加速度数据大于第二阈值, 则移动终端进入步骤605;
若在对应于y轴的角速度数据序列中,存在一个角速度数据大于第三阈值, 则移动终端进入步骤605。
步骤605,在滤波后的数据超过预设阈值时,移动终端生成用于表示移动终 端发生摇动操作的识别结果;
对于第i个滤波后的数据,若第i个滤波后的数据超过预设阈值时,移动终 端生成用于表示移动终端发生摇动操作的识别结果。
对于第i个滤波后的数据,若第i个滤波后的数据不超过预设阈值时,移动 终端继续检测第i+1个滤波后的数据。
步骤606,移动终端检测在最近一个第一时间片内,是否已经生成用于表示 移动终端发生摇动操作的识别结果;第一时间片是根据第一预定时长周期性划 分得到的时间片段;
该第一预定时长可以是180ms。为了避免短时间内生成大量的识别结果,移 动终端在180s内只提取一次有效的识别结果,在180s内生成的其它识别结果会 忽略。
步骤607,若在最近一个第一时间片内已经生成该识别结果,则移动终端删 除本次生成的识别结果。
步骤608,移动终端根据识别结果生成控制指令包;
对于每个第一时间片内的识别结果,若该识别结果是该第一时间片内第一 次生成的有效识别结果,则移动终端根据该识别结果生成控制指令包。该控制 指令包用于控制对侧终端根据控制指令包进行预定操作,预定操作包括振动操 作、闪光操作和显示预定内容中的至少一种操作。
可选地,移动终端生成控制指令包时采用ProtocolBuffers协议。
可选地,移动终端根据预定时长内的识别结果的个数来生成控制指令包, 比如,1s内的识别结果为一个时,生成用于表示提醒的控制指令包;1s内的识 别结果为两个时,生成用于表示高兴的控制指令包;1s内的识别结果为三个时, 生成用于表示气愤的控制指令包。
步骤609,移动终端将控制指令包发送给对侧终端;
移动终端将控制指令包通过通话连接发送给对侧终端。也即,通过VoIP连 接将控制指令包发送给对侧终端。
可选地,为了避免移动终端频繁地向对侧终端发送控制指令包,移动终端 还检测在最近一个第二时间片内,向对侧终端发送的控制指令包个数是否超过 预定阈值;第二时间片是根据第二预定时长周期性划分得到的时间片段,且第 二预定时长大于第一预定时长;若超过预定阈值,则移动终端删除本次生成的 控制指令包。
比如,即5秒内最多允许用户摇动20次。当5s内移动终端发送的控制指令 包超过20个时,停止向对侧终端发送控制指令包,并在本机界面提示用户的摇 动操作过于频繁。
步骤610,对侧终端根据控制指令包进行预定操作,预定操作包括振动操作、 闪光操作和显示预定内容中的至少一种操作。
比如,对侧终端根据控制指令包进行机身振动操作、指示灯闪烁操作和显 示预定动画中的至少一种。如图7所示,该控制指令包是用于表示高兴的控制 指令包,对侧终端显示表示开心的特效动画,同时还振动机身一次。
可选地,由于网络延迟的存在,对侧终端可能会在短时间内接收到很多个 控制指令包。为了避免对太多的控制指令包进行处理,在没接收到一个控制指 令包时,对侧终端还检测在最近一个第三时间片内,接收到的控制指令包个数 是否超过预定阈值;第三时间片是根据第三预定时长周期性划分得到的时间片 段,且第三预定时长通常等于第一预定时长;若超过预定阈值,则对侧终端删 除本次接收的控制指令包,不予处理。
综上所述,本实施例提供的操作识别方法,通过先对数据序列进行高通滤 波处理,得到n个滤波后的数据;再对每个滤波后的数据,检测滤波后的数据 是否超过预设阈值;在滤波后的数据超过预设阈值时,生成用于表示移动终端 发生摇动操作的识别结果;解决了重力加速度、乘坐汽车时产生的恒定加速度 等因素的干扰,导致摇动操作的误识别率较高的问题;达到了使用高通滤波处 理去除恒定加速度类干扰,增强摇动操作的识别准确性的效果。
本实施例提供的操作识别方法,还通过在网络通话过程中由一个移动终端 根据识别结果生成控制指令包;将控制指令包发送给对侧终端,以便对侧终端 根据控制指令包进行预定操作,实现了在通话过程中或者即时通信聊天过程中, 两个移动终端之间能够传递用户的情绪,增加了一种沟通方式的效果。
请参考图8,其示出了本发明一个实施例提供的操作识别装置的结构方框 图。该操作识别装置可以通过软件、硬件或者两者的结合实现成为内置有传感 器的移动终端的全部或一部分。所述装置包括:
序列获取模块820,用于获取移动终端中的传感器所采集的数据序列,所述 数据序列包括按照预定时间间隔采集的n个数据;
数据滤波模块840,用于对所述数据序列进行高通滤波处理,得到n个滤波 后的数据;
数据检测模块860,用于对于每个所述滤波后的数据,检测所述滤波后的数 据是否超过预设阈值;
结果生成模块880,用于在所述滤波后的数据超过所述预设阈值时,生成用 于表示所述移动终端发生摇动操作的识别结果。
综上所述,本实施例提供的操作识别装置,通过先对数据序列进行高通滤 波处理,得到n个滤波后的数据;再对每个滤波后的数据,检测滤波后的数据 是否超过预设阈值;在滤波后的数据超过预设阈值时,生成用于表示移动终端 发生摇动操作的识别结果;解决了重力加速度、乘坐汽车时产生的恒定加速度 等因素的干扰,导致摇动操作的误识别率较高的问题;达到了使用高通滤波处 理去除恒定加速度类干扰,增强摇动操作的识别准确性的效果。
请参考图9,其示出了本发明另一个实施例提供的操作识别装置的结构方框 图。该操作识别装置可以通过软件、硬件或者两者的结合实现成为内置有传感 器的移动终端的全部或一部分。所述装置包括:
序列获取模块820,用于获取移动终端中的传感器所采集的数据序列,所述 数据序列包括按照预定时间间隔采集的n个数据;
数据滤波模块840,用于对所述数据序列进行高通滤波处理,得到n个滤波 后的数据;
数据检测模块860,用于对于每个所述滤波后的数据,检测所述滤波后的数 据是否超过预设阈值;
结果生成模块880,用于在所述滤波后的数据超过所述预设阈值时,生成用 于表示所述移动终端发生摇动操作的识别结果。
可选地,所述数据滤波模块840,具体用于按照如下公式计算得到所述n个 滤波后的数据;
y[i]=α*y[i-1]+α*(x[i]-x[i-1])
其中,设x[i]是所述数据序列中的第i个数据,y[i]是第i个滤波后的数据; α是根据所述预定时间间隔设置的常数,x[0]=y[0],1≤i≤n。
可选地,所述装置,还包括:
结果检测模块892,用于检测在最近一个第一时间片内,是否已经生成用于 表示所述移动终端发生摇动操作的识别结果;所述第一时间片是根据第一预定 时长周期性划分得到的时间片段;
结果忽略模块894,用于若在最近一个第一时间片内已经生成所述识别结 果,则删除本次生成的所述识别结果。
可选地,所述传感器包括三轴加速度传感器,所述数据序列包括对应于x 轴的加速度数据序列,或,所述数据序列包括对应于y轴的加速度数据序列;
和/或,
所述传感器包括陀螺仪传感器,所述数据序列包括以y轴为旋转轴所采集 的角速度数据序列;
其中,所述x轴与所述移动终端正面的水平方向平行,所述y轴与所述移 动终端正面的垂直方向平行。
可选地,所述装置,还包括:
指令生成模块896,用于根据所述识别结果生成控制指令包;
指令发送模块898,用于将所述控制指令包发送给对侧终端,以便所述对侧 终端根据所述控制指令包进行预定操作,所述预定操作包括振动操作、闪光操 作和显示预定内容中的至少一种操作。
可选地,所述装置还包括:
连接建立模块810,用于与所述对侧终端建立通话连接;
所述指令发送模块898,用于将所述控制指令包通过所述通话连接发送给所 述对侧终端。
可选地,所述装置,还包括:
个数检测模块897,用于检测在最近一个第二时间片内,向所述对侧终端发 送的所述控制指令包个数是否超过预定阈值;所述第二时间片是根据第二预定 时长周期性划分得到的时间片段;
所述指令发送模块898,用于若超过所述预定阈值,则忽略发送本次生成的 所述控制指令包。
请参考图10,其示出了本发明其示出了本发明一个实施例提供的移动终端 的结构示意图。该移动终端用于实施上述实施例中提供的操作识别方法。具体 来讲:
移动终端1000可以包括RF(RadioFrequency,射频)电路1010、包括有 一个或一个以上计算机可读存储介质的存储器1020、输入单元1030、显示单元 1040、传感器1050、音频电路1060、WiFi(wirelessfidelity,无线保真)模块1070、 包括有一个或者一个以上处理核心的处理器1080、以及电源1090等部件。本领 域技术人员可以理解,图10中示出的移动终端结构并不构成对移动终端的限定, 可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。 其中:
RF电路1010可用于收发信息或通话过程中,信号的接收和发送,特别地, 将基站的下行信息接收后,交由一个或者一个以上处理器1080处理;另外,将 涉及上行的数据发送给基站。通常,RF电路1010包括但不限于天线、至少一 个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、 耦合器、LNA(LowNoiseAmplifier,低噪声放大器)、双工器等。此外,RF电 路1010还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任 一通信标准或协议,包括但不限于GSM(GlobalSystemofMobilecommunication, 全球移动通讯系统)、GPRS(GeneralPacketRadioService,通用分组无线服务)、 CDMA(CodeDivisionMultipleAccess,码分多址)、WCDMA(WidebandCode DivisionMultipleAccess,宽带码分多址)、LTE(LongTermEvolution,长期演进)、 电子邮件、SMS(ShortMessagingService,短消息服务)等。
存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在 存储器1020的软件程序以及模块,从而执行各种功能应用以及数据处理。存储 器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系 统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等; 存储数据区可存储根据移动终端1000的使用所创建的数据(比如音频数据、电 话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非 易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存 储器件。相应地,存储器1020还可以包括存储器控制器,以提供处理器1080 和输入单元1030对存储器1020的访问。
输入单元1030可用于接收输入的数字或字符信息,以及产生与用户设置以 及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地, 输入单元1030可包括图像输入设备1031以及其他输入设备1032。图像输入设 备1031可以是摄像头,也可以是光电扫描设备。除了图像输入设备1031,输入 单元1030还可以包括其他输入设备1032。具体地,其他输入设备1032可以包 括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠 标、操作杆等中的一种或多种。
显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及移动 终端1000的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、 视频和其任意组合来构成。显示单元1040可包括显示面板1041,可选的,可以 采用LCD(LiquidCrystalDisplay,液晶显示器)、OLED(OrganicLight-Emitting Diode,有机发光二极管)等形式来配置显示面板1041。
移动终端1000还可包括至少一种传感器1050,比如光传感器、运动传感器 以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中, 环境光传感器可根据环境光线的明暗来调节显示面板1041的亮度,接近传感器 可在移动终端1000移动到耳边时,关闭显示面板1041和/或背光。作为运动传 感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大 小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横 竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲 击)等;至于移动终端1000还可配置的陀螺仪、气压计、湿度计、温度计、红 外线传感器等其他传感器,在此不再赘述。
音频电路1060、扬声器1061,传声器1062可提供用户与移动终端1000之 间的音频接口。音频电路1060可将接收到的音频数据转换后的电信号,传输到 扬声器1061,由扬声器1061转换为声音信号输出;另一方面,传声器1062将 收集的声音信号转换为电信号,由音频电路1060接收后转换为音频数据,再将 音频数据输出处理器1080处理后,经RF电路1010以发送给比如另一移动终端, 或者将音频数据输出至存储器1020以便进一步处理。音频电路1060还可能包 括耳塞插孔,以提供外设耳机与移动终端1000的通信。
WiFi属于短距离无线传输技术,移动终端1000通过WiFi模块1070可以帮 助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽 带互联网访问。虽然图10示出了WiFi模块1070,但是可以理解的是,其并不 属于移动终端1000的必须构成,完全可以根据需要在不改变发明的本质的范围 内而省略。
处理器1080是移动终端1000的控制中心,利用各种接口和线路连接整个 手机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块, 以及调用存储在存储器1020内的数据,执行移动终端1000的各种功能和处理 数据,从而对手机进行整体监控。可选的,处理器1080可包括一个或多个处理 核心;优选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用 处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理 无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
移动终端1000还包括给各个部件供电的电源1090(比如电池),优选的, 电源可以通过电源管理系统与处理器1080逻辑相连,从而通过电源管理系统实 现管理充电、放电、以及功耗管理等功能。电源1090还可以包括一个或一个以 上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变 器、电源状态指示器等任意组件。
尽管未示出,移动终端1000还可以包括蓝牙模块等,在此不再赘述。
具体在本实施例中,移动终端1000还包括有存储器,以及一个或者一个以 上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或 者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述操作识 别方法。
需要说明的是:上述实施例提供的操作识别装置在识别摇动操作时,仅以 上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功 能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块, 以完成以上描述的全部或者部分功能。另外,上述实施例提供的操作识别装置 与操作识别方法实施例属于同一构思,其具体实现过程详见方法实施例,这里 不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过 硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于 一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或 光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的 精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的 保护范围之内。