使用运动传感器融合来进行运动识别的方法及装置.pdf

上传人:e1 文档编号:6181023 上传时间:2019-05-17 格式:PDF 页数:57 大小:8.90MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410043619.0

申请日:

2014.01.29

公开号:

CN103984407A

公开日:

2014.08.13

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||专利申请权的转移IPC(主分类):G06F 3/01登记生效日:20170502变更事项:申请人变更前权利人:香港商曦恩体感科技股份有限公司变更后权利人:曦恩体感科技股份有限公司变更事项:地址变更前权利人:中国香港中环德辅道中一三六号中银集团人寿保险大厦十五楼变更后权利人:中国香港炮台山英皇道101号24楼2401室|||专利申请权的转移IPC(主分类):G06F 3/01登记生效日:20160413变更事项:申请人变更前权利人:英属维京群岛商速位互动股份有限公司变更后权利人:香港商曦恩体感科技股份有限公司变更事项:地址变更前权利人:英属维京群岛托尔托拉罗德成帕姆格罗韦楼邮政四三八信箱变更后权利人:中国香港中环德辅道中一三六号中银集团人寿保险大厦十五楼|||实质审查的生效IPC(主分类):G06F 3/01申请日:20140129|||公开

IPC分类号:

G06F3/01

主分类号:

G06F3/01

申请人:

英属维京群岛商速位互动股份有限公司

发明人:

叶舟; 刘顺男; 吕英阁; 李金龙

地址:

维尔京群岛托尔托拉

优先权:

2013.02.08 US 13/762,405

专利代理机构:

深圳新创友知识产权代理有限公司 44223

代理人:

江耀纯

PDF下载: PDF下载
内容摘要

本发明公开了一种使用运动传感器融合来进行运动识别的方法和装置,其中该方法是应用在一电子装置,且该方法包含以下步骤:使用该电子装置中多个运动传感器来分别得到对应到该多个运动传感器的感测数据,该感测数据是基于该电子装置的一装置坐标系统所量测的,其中该多个运动传感器包含多个惯性运动传感器;以及基于该电子装置的一使用者的一全域坐标系统来转换至少一部分的感测数据与感测数据的衍生数据以产生一转换后数据来进行一传感器融合,并基于该全域坐标系统来进行运动感测来识别使用者的运动。本发明可以方便使用者控制电子产品以获得正确的运动识别结果。

权利要求书

权利要求书
1.  一种使用运动传感器融合来进行运动识别的方法,应用在一电子装置,其特征在于,包含有:
使用该电子装置中多个运动传感器来分别得到对应到该多个运动传感器的感测数据,该感测数据是基于该电子装置的一装置坐标系统所量测的,其中该多个运动传感器包含多个惯性运动传感器;以及
基于该电子装置的一使用者的一全域坐标系统来转换至少一部分的感测数据与感测数据的衍生数据以产生一转换后数据来进行一传感器融合,并基于该全域坐标系统来进行运动感测来识别使用者的运动。

2.  如权利要求1所述的方法,其特征在于,该多个运动传感器包含至少一加速度传感器及至少一转动传感器,且该传感器融合包含使用该至少一加速度传感器及该至少一转动传感器所完成的六轴传感器融合,或该多个运动传感器包含至少一加速度传感器、至少一转动传感器、及至少一磁力仪,且该传感器融合包含使用该至少一加速度传感器、该至少一转动传感器及该至少一磁力仪所完成的九轴传感器融合。

3.  如权利要求1所述的方法,其特征在于,根据该感测数据来进行该传感器融合的步骤包含有:
根据该感测数据来进行该传感器融合以得到基于该装置坐标系统的运动数据,且得到该电子装置基于该全域坐标系统的一方向,其中基于装该置坐标系统的该感测数据包含基于该装置坐标系统的线性加速度;以及
根据基于该全域坐标系统的该方向来转换基于该装置坐标系统的该感测数据以产生至少一部分的该转换后数据,其中该至少一部分的该转换后数据包含基于该全域坐标系统的线性加速度;
其中基于该全域坐标系统的线性加速度以及基于该全域坐标系统的该方向被用来感测该电子装置在三轴空间的线性移动与转动运动。

4.  如权利要求3所述的方法,其特征在于,还包含:
根据基于该全域坐标系统的该转换后数据,进行运动识别以识别使用者在三轴空间的运动,以及识别使用者在三轴空间所画的至少一符号;以及
通过映射转换后数据至三轴空间中的至少一预定平面来获得该至少一预定平面上的多个轨迹以进行符号识别,其中该至少一预定平面平行于该全域坐标系统中三个轴中的两个轴,且该全域坐标系统中的三个轴彼此垂直。

5.  如权利要求4所述的方法,其特征在于,还包含:
在该电子装置中提供一预设数据库以被用来进行符号识别,且允许使用者使用可识别且有意义符号的画线规则,而不需要使用者先建立数据库。

6.  如权利要求4所述的方法,其特征在于,还包含:
将使用者在三轴空间所画出的该至少一符号加载到一符号识别模块,以进行符号识别。

7.  如权利要求4所述的方法,其特征在于,基于该全域坐标系统的该方向包含该电子装置的一转动角、一俯仰角、及一偏航角,且该方法还包含:
当开始进行符号识别时,通过重新设定该电子装置的该偏航角为一预定值,来将该偏航角与使用者对齐;以及
当侦测到该电子装置的一按钮被按压时或当侦测到对应到运动开始的力量存在时,触发重新设定该电子装置的该偏航角为该预定值。

8.  如权利要求4所述的方法,其特征在于,基于该全域坐标系统的该方向包含该电子装置的一转动角、一俯仰角、及一偏航角,且该方法还包含:
根据一个或多个俯仰角及偏航角的改变来进行球坐标与直角坐标的转换以产生三轴空间中的多个点的数据;
根据一个或多个俯仰角及转动角的改变来进行球坐标与直角坐标的转换以产生三轴空间中的多个点的数据;以及
根据一个或多个转动角及偏航角的改变来进行球坐标与直角坐标的转换以产生三轴空间中的多个点的数据。

9.  如权利要求3所述的方法,其特征在于,还包含:
根据基于该全域坐标系统的该转换后数据来进行运动识别以得到用来表示使用者在三轴空间的运动的至少一运动识别结果。

10.  一种使用运动传感器融合来进行运动识别的装置,该装置包含一电子装置的至少一部分可用来执行上述权利要求1~9任一权利要求所述的方法。

说明书

说明书使用运动传感器融合来进行运动识别的方法及装置
技术领域
本发明涉及一种可携式电子装置的运动识别,尤其是一种使用运动传感器融合来进行运动识别的方法和装置。
背景技术
在先前技术中,传统的运动识别方法似乎并无法具有足够的执行细节,因此,当使用这些传统运动识别方法会有许多问题产生。举例来说,参考图1与图2所示的运动,图1描述了往右侧的晃动具有移动以及绕着“-z”轴的转动,图2描述了往右侧的晃动具有移动、绕着“-z”轴的转动以及绕着“+y”轴的翻转,当只有使用重力传感器(G-sensor)来进行运动识别时,线性加速度与重力加速度之间的改变并无法被解耦合。具体来说,参考图3所示为对应图1及图2的重力传感器的数据曲线(加速度数据ax、ay、az分别对应到三个轴),在图3的上半图与下半图中,虽然这两个运动具有相同的方法以及相同的移动量,但是这两个运动都没有办法根据重力传感器来识别。在另外一个例子中,关于图2所示的运动,当只有使用陀螺仪传感器来进行运动识别时,移动的部分并无法被侦测到,而只能侦测到相对角度。在另外一个例子中,关于图2所示的运动,当只有使用磁传感器来进行运动识别时,移动的部分并无法被侦测到,且也无法量测到全域坐标系统(global coordinate)的任何角度改变。如上所述,需要提供一种新的方法来提供运动识别中足够的执行细节。
发明内容
因此,本发明的目的之一在于公开一种使用运动传感器融合来进行运动识别的方法和装置,以解决上述的问题。
本发明的另一个目的在于公开一种使用运动传感器融合用来进行运动识 别的方法和装置,来方便使用者控制电子产品以获得正确的运动识别结果。
根据本发明一实施例,公开一种使用运动传感器融合来进行运动识别的方法,该方法应用在一电子装置,且该方法包含以下步骤:使用该电子装置中多个运动传感器来分别得到对应到该多个运动传感器的感测数据,该感测数据是基于该电子装置的一装置坐标系统所量测的,其中该多个运动传感器包含多个惯性运动传感器;以及基于该电子装置的一使用者的一全域坐标系统来转换至少一部分的感测数据与感测数据的衍生数据以产生一转换后数据来进行一传感器融合,并基于该全域坐标系统来进行运动感测来识别使用者的运动。
根据本发明一实施例,公开一种使用运动传感器融合来进行运动识别的装置,该装置包含一电子装置的至少一部分且可用来执行上述的方法。
本发明的上述方法、装置的一个优点在于可以达到高准确性的运动识别,因此在可以获得高准确性的运动识别结果的情形下,使用者可以更简单的使用及控制该电子产品。此外,上述方法、装置可以允许使用者使用预设手势或是使用者定义手势来移动该电子装置,而不需要使用多个手指滑动步骤来致能一特定应用程序(例如导航应用程序)。
附图说明
图1描述了往右侧的晃动具有移动以及绕着“-z”轴的转动。
图2描述了往右侧的晃动具有移动、绕着“-z”轴的转动以及绕着“+y”轴的翻转。
图3所示为对应图1及图2的重力传感器的数据曲线,其中图3的上半图与下半图分别对应到图1及图2所示的运动。
图4为本发明第一实施例使用运动传感器融合来进行运动识别的装置示意图。
图5是图4中装置的一控制方案的示意图。
图6描述了有关于图4所述实施例的方法中该电子装置的使用者的全域坐标系统及装置坐标系统的示意图。
图7描述了在使用者作出相同运动的情形下重力传感器输出的一些数据曲线,这些数据曲线分别对应图6所述实施例中该电子装置的不同倾斜角度。
图8根据本发明一实施例描述了图4所述的实施例的方法的流程图。
图9为使用全域坐标系统的坐标定义来描述图6的实施例的示意图,且图9描述了相关的转动角、俯仰角、及偏航角。
图10根据本发明一实施例描述了图4所述的实施例的使用传感器融合算法来获得线性加速度以及转动角度的示意图。
图11根据本发明一实施例描述了使用者的运动及物体坐标系统与全域坐标系统之间的关系的示意图。
图12根据本发明一实施例描述了本发明在全域坐标系统下实现运动侦测的示意图。
图13根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动的示意图。
图14描述了与图13在不同的情形下所作出的相同的动作的示意图。
图15根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动的示意图。
图16描述了与图15在不同的情形下所作出的相同的动作的示意图。
图17根据本发明一实施例描述了图4所述的实施例的方法的流程图。
图18根据本发明一实施例描述了图4所述的实施例的方法的流程图。
图19根据本发明一实施例描述了本发明中关于多个运动与一使用者定义运动识别数据库中的运动数据的示意图。
图20描述了图19实施例中所提及的运动所对应的运动数据与图4所示的至少一数据库中相关的宏函数之间的关系。
图21根据本发明另一实施例描述了图4所述的实施例的方法的流程图。
图22根据本发明另一实施例描述了图4所述的实施例的方法的流程图。
图23根据本发明一实施例描述了图21中一步骤的细节操作。
图24根据图23的实施例描述了图21中一步骤的细节操作。
图25根据图23的实施例描述了图21中一步骤的一些细节操作。
图26根据本发明一实施例描述了图22所示的流程图中的一些细节操作。
图27根据本发明的一实施例描述了多个手指触碰以致能一特定应用程序的示意图。
图28根据本发明的一实施例描述了包含致能全球定位系统功能的多步骤功能的操作细节。
图29根据本发明的另一实施例描述了图4所述的实施例的方法的流程图。
图30根据本发明的另一实施例描述了图4所述的实施例的方法的流程图。
图31根据本发明的另一实施例描述了图4所述的实施例的方法的流程图。
图32根据本发明的另一实施例描述了图4所述的实施例的方法的流程图。
图33根据本发明的一实施例描述了图4所述的实施例的方法中关于通过单一/多个笔画的符号的运动识别来侦测轨迹的示意图。
图34根据图33所示的实施例描述了一个具有俯仰角及偏航角改变的手写运动,其中具有俯仰角及偏航角改变的手写运动关联于时间且投影在全域坐标系统中的XZ平面。
图35根据图33所示的实施例描述了球坐标与直角坐标的转换的示意图。
图36根据本发明一实施例描述了图33所示实施例的单一/多个笔画运动识别中对应于投影在全域坐标系统的XZ平面上的轨迹资料撷取的示意图。
图37根据本发明一实施例描述了图33所示实施例的单一/多个笔画运动识别中对应于投影在全域坐标系统的XY平面上的轨迹资料撷取的示意图。
图38根据本发明一实施例描述了图33所示实施例的单一/多个笔画运动识别中使用者所书写的一些符号及的这些符号的笔画数量的示意图。
图39根据本发明一实施例描述了图33所示实施例的单一/多个笔画运动识别的流程图。
图40根据本发明一实施例描述了图33所示实施例的单一/多个笔画运动识别的流程图。
其中,附图标记说明如下:
100             装置
110             处理模块
120             识别模块
130             运动感测模块
140             内存模块
150             非运动感测模块
160             键盘模块
170             显示模块
200、300、400、500A、500B、610、  流程图
620、630、640、700、800
210、220、230、240、310、320、  步骤
330、340、350、360、410、420、
430、440、450、460、470、510、
520、530、560、570、580、511、512、
513、514、515、516、517、518、
521、522、523、524、525、560-1、
581、582、583、584、585、611、612、
613、614、615、616、617、618、
619、621、622、623、624、625、
631、632、633、634、635、636、
637、638、641、642、643、644、
645、710、720、730、740、750、
760、770、810、820、830、840、
850、860、870
具体实施方式
请参考图4,图4为根据本发明第一实施例的使用运动传感器融合用来进行运动识别的装置100的示意图,其中装置100包含了一电子装置的至少一部分。举例来说,装置100可以是上述电子装置的全部,即图4的装置100可以视为一手提装置,但这只是作为说明之用,而并非是本发明的限制条件。在另一个例子中,装置100可以包含上述电子装置的一部分,特别是装置100可以是电子装置中的一控制电路,例如一集成电路。电子装置可以是一移动电话(例如多功能移动电话)、一移动计算机(例如一平板计算机)、或是一个人数字助理(Personal Digital Assistant,PDA)。
如图4所示,装置100可包含一处理模块110及一识别模块120,这两者可以经由包含一处理器(例如至少一中央处理器(Central Processing Unit,CPU))的处理电路分别执行程序模块(例如软件模块)中的多个程序指令来实现。举例来说,程序模块可以经由包含多个程序指令的一计算机程序产品来提供,其中该计算机程序产品在实作上可以是储存有多个程序指令的非暂存性的计算机可读媒体(例如一软盘或是一光盘(Compact Disk-Read Only Memory,CD-ROM))。装置100另外可以包含一运动感测模块130、作为一储存模块的一内存模块140、一非运动感测模块150、一键盘模块160、以及一显示模块170,此外,运动感测模块130可以包含设置于电子装置中的多个运动传感器(例如加速度传感器、陀螺仪传感器、及/或磁传感器),其中该多个运动传感器典型上包含多个惯性运动传感器;内存模块140包含至少一个用来储存在进行运动识别操作时的任何型式的最终数据、原始数据及中间数据的一数据库,特别地,内存模块140可以由一非挥发性内存(例如一闪存)来实现,其中上述作为该储存模块的内存模块140被安排来储存该数据库中用来进行运动识别的信息;此外,非运动感测模块150可包含至少一射频(Radio Frequency(RF))传感器、一相机传感器、及一麦克风传感器,其中键盘模块160可包含用来控制该电子装置的一些按键及/或按钮,且显示模块170可以是一触碰感应式显示屏幕(亦即触控式屏幕)。
在本实施例中,该处理器用来执行上述的多个程序指令以进行使用运动传感器融合用来进行运动识别的方法,其中该方法可包含以下步骤:使用设 置于该电子装置中的多个运动传感器来获得分别对应至该多个运动传感器的感测数据,该些感测数据是基于该电子装置中的一装置坐标系统(device coordinate system)或是物体坐标系统(body coordinate system)所量测的;以及基于该电子装置的一使用者的一全域坐标系统来转换至少一部分的感测数据与感测数据的衍生数据以产生一转换后数据,并通过上述的数据库的帮助,以基于该全域坐标系统来进行运动感测来识别使用者的运动。
举例来说,该多个运动传感器包含至少一加速度传感器(亦即至少一重力传感器)及至少一转动传感器(例如一陀螺仪传感器),例如三个加速度传感器及三个转动传感器,且该传感器融合可包含使用上述的至少一加速度传感器及至少一转动传感器所完成的六轴传感器融合。针对上述的六轴传感器融合的实现细节,请参考美国专利申请案号12/943,934的相关说明内容。
举另一个例子来说,该多个运动传感器包含至少一加速度传感器(亦即至少一重力传感器)、至少一转动传感器(例如一陀螺仪传感器)及至少一磁力仪(例如一磁传感器),且该传感器融合可包含使用上述的至少一加速度传感器、至少一转动传感器及至少一磁力仪所完成的九轴传感器融合。针对上述的九轴传感器融合的实现细节,请参考美国专利申请案号13/072,794的相关说明内容。
实作上,上述执行该数据库中至少一部分数据的方法有许多种,举例来说,该数据库的实现细节可参考美国专利申请案号13/164,790的相关说明内容。
根据图1所示范例的一变化,该处理器根据基于装置坐标系统的感测数据来进行感测融合以得到运动数据,并获得该电子装置的方向,例如获得该电子装置基于全域坐标系统的方向,其中基于装置坐标系统的感测数据包含基于装置坐标系统的线性加速度。此外,该处理器可根据全域坐标系统的方向来转换基于装置坐标系统的感测数据来产生至少一部分的转换后数据,其中上述至少一部分的转换后数据包含基于全域坐标系统的线性加速度,且基于全域坐标系统的线性加速度以及基于全域坐标系统的方向分别被使用来感测该电子装置在三轴空间(three-dimensional(3D)space)的线性移动与转动运动。特别地,根据基于全域坐标系统的转换后数据,该处理器可进行运动识别以及识别使用者在三轴空间的运动,以及识别使用者在三轴空间所画的 至少一符号。举例来说,该处理器可通过映射(map)转换后数据至三轴空间中的至少一预定平面(predetermined plane)以获得该至少一预定平面上的多个轨迹,其中该至少一预定平面平行于全域坐标系统中三个轴中的两个轴,且全域坐标系统中的三个轴是互相垂直的。当该数据库是一预设(pre-built)数据库的情形下,该预设数据库可以被用来进行符号识别,且允许使用者使用可识别且有意义符号的画线规则,而不需要使用者先建立数据库。上述内容仅用来作为一范例说明,而并非是本发明的限制,在本实施例的其它变化中,该处理器可上述使用者在三轴空间所画的至少一符号加载至一符号识别软件模块,以供进行符号识别。
根据本实施例的一些变化,上述基于全域坐标系统的方向包含该电子装置的一转动角(roll angle)、一俯仰角(pitch angle)及一偏航角(yaw angle),且当开始进行符号识别的时候,该处理器可通过重新设定该电子装置的该偏航角为一预定值,例如零或是任何固定值,来将该偏航角与使用者对齐。举例来说,当侦测到该电子装置的一按钮被按压时,该处理器触发以重新设定该该电子装置的该偏航角为该预定值;于另一个例子中,当侦测到对应到运动开始的力量存在时,该处理器触发以重新设定该该电子装置的该偏航角为该预定值。
根据图1所示范例的一些变化,该数据库包含一使用者定义的手势数据库,允许使用者训练该使用者定义的手势数据库以定义使用者在移动该电子装置时的多种不同的手势,且该使用者定义的手势数据库被用来进行运动识别及触发对应于从进行运动识别所得到的识别结果的一操作。举例来说,根据基于全域坐标系统的转换后数据,该该处理器可进行运动识别以获得用来表示使用者在三轴空间的运动的至少一运动识别结果,其中当获得至少一运动识别结果时,该处理器触发对应于至少一运动识别结果的至少一使用者定义宏程序。特别地,在具有该使用者定义的手势数据库的情形下,该处理器允许使用者训练该使用者定义的手势数据库以定义使用者在移动该电子装置时的多种不同的手势,其中该使用者定义的手势数据库被用来进行运动识别及触发对应于至少一运动识别结果的使用者定义宏程序。
图5是图4中有关于装置100的一控制方案的一个实施例的示意图,其中该控制方案是基于上述手提装置上的安卓平台(Android’s platform)所作 的例子。在本范例中,上述包含多个用来被中央处理器执行的程序指令的程序模块可包含一些应用程序、一些中间程序、及至少一核心驱动程序,其中该些应用程序可包含至少一浏览器、至少一电子邮件应用程序、至少一通话应用程序、一地图应用程序、一回家应用程序;此外,该些中间程序可包含至少一应用程序架构,其中至少一应用程序架构可以包含用来进行六轴感测融合以及/或是九轴感测融合的至少一六轴或是九轴感测融合模块,且也可以包含一运动识别模块(特别可以为图4的识别模块120),其中运动识别中的一些算法可以由该些应用程序所呼叫的应用程序接口(Application Programming Interface,API)来提供。实作上,除了该处理器,该手提装置(特别可以是装置100)可包含其它型式的硬件,例如重力传感器、陀螺仪传感器、磁传感器、至少一触控屏幕、至少一相机、一无线网络(Wireless Fidelity(Wi-Fi))模块、一全球定位系统(Global Positioning System(GPS)、一蓝牙(Bluetooth)模块,及其它的模块。
运动识别应用中基于六轴/九轴感测融合的移动与转动参数
图6描述了有关于图4所述的方法中该电子装置的使用者的全域坐标系统及装置坐标系统(或是物体坐标系统)的示意图。如图6所示,全域坐标系统(亦即x-y-z坐标系统,其中三个轴x、y、z是互相垂直的)在三轴空间中是维持固定的,而装置坐标系统(亦即xa-ya-za坐标系统,其中三个轴xa、ya、za是互相垂直的)则是在该电子装置上是维持固定的。
图7描述了在使用者作出相同运动的情形下重力传感器输出的一些数据曲线,这些数据曲线对应图6中向右移动的运动,且分别对应图6中该电子装置的不同倾斜角度,其中图7中左侧、中间、右侧的三个数据曲线分别对应图6左侧、中间、右侧的三个具有不同倾斜角度的电子装置。图7中左侧、中间、右侧的三个数据曲线中的任何一个都包含有分别对应于装置坐标系统中三个轴xa、ya、za的三个加速度资料az、ay、az的曲线,如图7所示,图6所示的三个连续状态的运动会分别导致感测讯号响应,举例来说,参考图7左侧的的数据曲线,加速度数据ax可为非零的值、加速度资料ay维持在零、而加速度资料az则维持在一固定值;在另外一个例子中,参考图7中间的数据曲线,加速度数据ax与az可为非零的值,且加速度资料ay维持在零;在 另外一个例子中,参考图7右侧的数据曲线,加速度数据az可为非零的值、加速度资料ay维持在零、而加速度资料ax则维持在一固定值。因此,重力传感器所感测到的加速度(特别是只根据装置坐标系统)会随着不同的倾斜角度而改变,而为了得到三轴空间中物体移动的完整移动量测,需要获得物体的移动参数以及转动参数。通过进行六轴感测融合以及/或是九轴感测融合,便可以得到这些信息。
请参考图8,图8根据本发明一实施例描述了图4所述的实施例的方法的流程图200。
在步骤210中,该处理器从该多个运动传感器中侦测多个运动输入,其中该些运动输入可包含运动的加速度数据ax、ay、az。
在步骤220中,该处理器使用传感器融合(例如六轴感测融合以及/或是九轴感测融合)来获得基于物体坐标(特别是物体坐标系统)的移动与转动参数。
在步骤230中,该处理器将移动与转动参数转换为基于全域坐标系统的移动与转动参数。
在步骤240中,该处理器使用基于全域坐标系统的移动与转动参数进行运动识别操作。
在本实施例中,移动参数可以通过使用传感器融合以根据该些运动传感器的资料输出来计算出来,因此,可以获得基于全域坐标系统的线性加速度;此外,转动参数可以通过使用传感器融合以根据该些运动传感器的资料输出来计算出来,因此可以获得该电子装置在方向上的转动角、俯仰角及偏航角。需要注意的是,这两组参数(亦即移动参数与转动参数)可以合并作为基本运动输入,以供运动识别。
图9为使用全域坐标系统的坐标定义来描述图6的实施例的示意图,其中图9描述了转动角(Φ)、俯仰角(θ)、及偏航角(Ψ)。图4的实施例中所描述的使用传感器融合算法来获得的方向信息可以使用转动角(Φ)、俯仰角(θ)、及偏航角(Ψ)来表示,其中全域坐标系统中“+x”轴、“+y”轴、及“+z”轴的方向的定义可以参考图9,且可以用来定义关于全域坐标系统的转动角(Φ)、俯仰角(θ)、及偏航角(Ψ)。
图10根据本发明一实施例描述了图4所述的实施例的使用传感器融合算法来获得线性加速度以及转动角度的示意图。Xg-Yg-Zg坐标系统可以是图6所示的实施例中的全域坐标系统,需注意的是,图10左侧的重力向量g的三个分量gx、gy、gz可以被表示为时间t的函数,例如图10左下方的函数gx(t)、gy(t)、gz(t)。参考图10的右侧所示,运动感测模块130基于装置坐标系统所量测到的加速度可以被表示为函数ax(t)、ay(t)、az(t)(亦即向量[ax(t),ay(t),az(t)]),且该电子装置基于装置坐标系统的线性加速度可以被表示为函数aLx(t)、aLy(t)、aLz(t)(亦即向量[aLx(t),aLy(t),aLz(t)])。在本实施例中,该处理器根据图10左下方的函数gx(t)、gy(t)、gz(t)来将运动感测模块130基于装置坐标系统所量测到的加速度(亦即向量[ax(t),ay(t),az(t)])转换为该电子装置基于装置坐标系统的线性加速度(亦即向量[aLx(t),aLy(t),aLz(t)])。
特别地,该电子装置的方向信息中的转动角、俯仰角、及偏航角是基于全域坐标系统来计算的,且方向信息中的转动角、俯仰角、及偏航角中的至少一部分可以被用来计算该电子装置(例如上述提及的移动电话)基于装置坐标系统(或是物体坐标系统)的线性加速度,其中在图10左下方的函数gx(t)、gy(t)、gz(t)中,函数gy(t)、gz(t)是取决于转动角,而函数gx(t)、gy(t)、gz(t)则取决于俯仰角。
实作上,基于全域坐标系统的线性加速度可以通过坐标转换关系来计算出来,其中坐标转换关系可以使用一转换矩阵[R]3x3来表示,且基于全域坐标系统的线性加速度,例如具有三个分量aGLOBALx(t)、aGLOBALy(t)、aGLOBALz(t)的向量(亦即向量[aGLOBALx(t),aGLOBALy(t),aGLOBALz(t)]),会等于该电子装置基于装置坐标系统的线性加速度(例如具有三个分量aLx(t)、aLy(t)、aLz(t)的向量(亦即向量[aLx(t),aLy(t),aLz(t)])乘上转换矩阵[R]3x3。亦即线性加速度的转换可以经由以下的公式来进行:
aGLOBAL(t)=aL(t)*[R]3x3;
其中转换矩阵[R]3x3可以是转动角(Φ)、俯仰角(θ)、及偏航角(Ψ)的函数f(Φ,θ,Ψ),特别地,转换矩阵[R]3x3可以被表示如下:
[R]3×3=cosθcosψ-cosφsinψsinθcosθsinψ+cosφcosψsinθsinθsinφ-sinθcosψ-cosφsinψcosθ-sinθsinψ+cosφcosψcosθcosθsinφsinφsinψ-sinφcosψcosφ;]]>
其中Φ是转动角,θ是俯仰角,且Ψ是偏航角。
图11根据本发明一实施例描述了使用者的运动及物体坐标系统与全域坐标系统之间的关系的示意图,描述了物体坐标与与全域坐标之间的映射关系。在本实施例中,使用者产生一个运动,且参考全域坐标的运动输出(例如线性加速度以及方向信息)全部都位于使用者的相同坐标系统(亦即全域坐标系统)中。此外,整个运动可基于与使用者相同的坐标系统而被正确地分析与识别。
图12根据本发明一实施例描述了本发明在全域坐标系统下实现运动侦测的示意图。如图12所示,为了进行基于全域坐标系统的运动识别,该处理器被用来侦测转动角、俯仰角、及偏航角的改变。举例来说,该处理器侦测图12所示的其中一个导致转动角改变的运动,侦测图12所示的其中一个导致俯仰角改变的运动,且侦测图12所示的其中一个导致偏航角改变的运动。
图13根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动的示意图。如图13所示,考虑一个向下的运动,且根据基于全域坐标系统的运动识别,该处理器侦测投影到全域坐标系统的一预定平面(例如在x-y-z坐标系统中,平行于包含x轴与z轴的x-z平面上的一第一平面)上的一轨迹,并侦测该轨迹的起始点与结束点。请参考图14,图14描述了与图13在不同的情形下所作出的相同的动作的示意图,使用者可能在不同的位置A、B(使用者朝向不同的方向)使用与图13相同运动来移动该电子装置。举例来说,使用者使用与图13相同运动来移动该电子装置,使用者可以朝向另外一个平面(例如在x-y-z坐标系统中,平行于包含y轴与z轴的y-z平面上的一第二平面),而非图13所示的平面(例如平行于x-z平面的该第一平面)。需注意的是,针对在不同位置A、B所作出的相同运动(例如,在具有不同偏航角的方向),基于全域坐标系统,俯仰角的改变都是相同的。举例来说,在位置A的情形下,偏航角的改变导致了该第一平面上的轨迹由“+z”方向移往“-z”方向。在另一个例子中,在位置B的情形下,偏航角的改变导致了该第二平面上的轨迹由“+z”方向移往“-z”方向。
在本实施例的一个变化中,当使用者的运动导致一个相同的的转动运动(亦即将图14例子中相同的俯仰角改变替换为相同的转动量改变),针对在不同位置A、B所作出的相同的转动运动(例如,在具有不同偏航角的方向),基于全域坐标系统,转动角的改变都是相同的。
图15根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动的示意图。如图15所示,考虑一个向左的运动,且根据基于全域坐标系统的运动识别,该处理器侦测投影到全域坐标系统的一预定平面(例如上述平行于x-z平面上的该第一平面)上的一轨迹,并侦测该轨迹的起始点与结束点。请参考图16,图16描述了与图15在不同的情形下所作出的相同的动作的示意图。,使用者可能在不同的位置A、B(使用者朝向不同的方向)使用与图15相同运动来移动该电子装置。举例来说,使用者使用与图15相同运动来移动该电子装置,使用者可以朝向另外一个平面(例如平行于y-z平面的该第二平面)而非图15所示的平面(例如平形于x-z平面的该第一平面)。需注意的是,针对在不同位置A、B所作出的相同运动(例如,在具有不同偏航角的方向),基于全域坐标系统,偏航角的改变都是相同的。举例来说,在位置A的情形下,偏航角的改变导致了该第一平面上的轨迹由“+x”方向移往“-x”方向。在另一个例子中,在位置B的情形下,偏航角的改变导致了该第二平面上的轨迹由“+y”方向移往“-y”方向。
图17描述了图4所述的实施例的方法的流程图300的一个实施例,其中流程图300是描述通过重新设定偏航为一个预定值,例如或是任何固定值,以进行偏航角校正。
在步骤310中,该处理器侦测到使用者按压住一个按钮,因此,该处理器准备记录运动以及进行运动识别,其中「按压住一个按钮」是用来作为一个命令以开始记录运动以及进行运动识别。
在步骤320中,该处理器将参考全域坐标系统的目前的偏航角设为零,因此,可以避免在不同情形下(例如,不同的情形下可能会有不同的偏航角初始值)相同的运动会有不同偏航角改变量的问题。
在步骤330中,该处理器允许使用者开始进行运动。
在步骤340中,该处理器记录此运动。
在步骤350中,该处理器将运动数据储存到一运动数据库中,该运动数据库可以作为数据库的一个例子,且用来进行运动识别。
在步骤360中,该处理器侦测到使用者已经放开在步骤310中所按压住的按钮,并因此停止记录要进行要识别的运动,其中「放开在步骤310中所按压住的按钮」是用来作为一个命令以停止记录要进行要识别的运动。
图18描述了图4所述的实施例的方法的流程图400的另一个实施例。
在步骤410中,该处理器侦测到使用者按压住一个按钮(例如上述的步骤310),因此,该处理器准备记录运动以及进行运动识别,其中「按压住一个按钮」是用来作为一个命令以开始记录运动以及进行运动识别。
在步骤420中,该处理器将参考全域坐标系统的目前的偏航角设为零,因此,可以避免在不同情形下(例如,不同的情形下可能会有不同的偏航角初始值)相同的运动会有不同偏航角改变量的问题。
在步骤430中,在该处理器的控制下,产生一个振动(例如当等待一预定时间后,该处理器控制该电子装置中的一个振动器产生振动),其中该振动是用来通知使用者可以开始进行运动。
在步骤440中,该处理器通知使用者可以开始进行运动,举例来说,在该处理器的控制下,显示模块170可以显示一个讯息以通知使用者可以开始进行运动。
在步骤450中,该处理器记录此运动。
在步骤460中,该处理器将运动数据储存到一运动数据库中(例如上述的步骤350),且用来进行运动识别。
在步骤470中,该处理器侦测到使用者已经放开在步骤410中所按压住的按钮,并因此停止记录要进行要识别的运动,其中「放开在步骤410中所按压住的按钮」是用来作为一个命令以停止记录要进行要识别的运动。
运动识别设计流程
图19根据本发明一实施例描述了本发明中关于多个运动与一使用者定义运动识别数据库(例如上述提及的使用者定义手势数据库)中的运动数据 的示意图。如图19所示,使用者可以分别作出多种不同型式/轨迹的运动(例如图19左侧的运动1、运动2、…、运动N)。在该处理器的控制下,该使用者定义运动识别数据库用来储存这些运动的运动数据,举例来说,这些运动的运动轨迹可包含移动信息以及转动信息,例如线性加速度以及方向角度(例如,该电子装置在方向上的转动角、俯仰角、及偏航角),因此,使用这可以分别定义该使用者定义运动识别数据库中的这些运动。
为了方便理解,对应于图19左侧中关于“运动1”、“运动2”、…、“运动N”的运动数据在图19右侧的该使用者定义运动识别数据库中也被标示为“运动1”、“运动2”、…、“运动N”。实作上,图19左侧中关于“运动1”、“运动2”、…、“运动N”的运动是一些使用者定义手势,且图19右侧的该使用者定义运动识别数据库中所记录的对应于“运动1”、“运动2”、…、“运动N”的运动数据可以视为对应于这些使用者定义手势的手势资料,因此,也可以采用“手势1”、“手势2”、…、“手势N”的编号。
图20描述了图19实施例中所提及的运动所对应的运动数据与数据库中相关的宏函数(例如图20中的“宏函数1”、“宏函数2”、“宏函数3”、…、“宏函数N”)之间的关系,其中该处理器允许使用者预先定义这些关系,且也可以更新这些关系。如图20所示,当例如图20左侧所示的一个运动(“运动1”)被识别为多个运动中的一个特定运动时,该处理器会触发相关的宏函数(例如“宏函数1”)。
图21根据本发明另一实施例描述了图4所述的实施例的方法的流程图500A,其中流程图500A可以被用来建立该电子装置(例如移动电话)中的基于运动的宏函数。
在步骤510中,该处理器进行运动数据库的建立,以建立图19的实施例中所提及的该使用者定义运动识别数据库。
在步骤520,该处理器进行运动数据库训练(例如图19中的实施例),举例来说,运动数据库训练可具有一权重参数调整操作,以学习这些运动。
在步骤530中,该处理器设定该电子装置的一系列的宏函数,这些宏函数分别对应到多个运动识别结果,因此,基于运动输入,经由该权重参数调 整操作所产生的权重参数可以被用来决定识别结果。
根据本发明的另一个实施例,图22根据本发明另一实施例描述了图4所述的实施例的方法的流程图500B,其中流程图500B可以被用来执行该电子装置(例如移动电话)中的基于运动的宏函数。
在步骤560中,该处理器侦测到运动输入。
在步骤570中,在该处理器的控制下,根据图19所提及的该使用者定义运动识别数据库,产生运动识别结果。
在步骤580中,该处理器执行该电子装置(例如移动电话)的至少一宏函数(特别是一组宏函数)。
根据本发明一实施例,图23根据本发明一实施例描述了图21中步骤510的细节。
在步骤511中,该处理器侦测运动k产生(特别是其感测数据),其中“运动k”可以是图19左侧所描述的“运动1”、“运动2”、…、“运动N”中的其中一个运动。
在步骤512中,该处理器计算相关的线性加速度以及相关的方向角。
在步骤513中,该处理器进行前置操作,例如标准化(normalization)及特征撷取(feature extraction)。
在步骤514中,该处理器将前置操作结果储存到数据库(例如图19中提及的该使用者定义运动识别数据库)中,举例来说,该使用者定义运动识别数据库中的“手势k”被关连到上述步骤511中的“运动k”。
在步骤515中,该处理器控制索引值k,以将索引值k加上1。
在步骤516中,该处理器检查是否存在下一个运动输入。
在步骤517中,在该处理器的控制下,便完成了例如图19中所提及的该使用者定义运动识别数据库的运动数据库。
在步骤518中,该处理器将训练旗标FLAG_train设定为“启动”(例如,指出训练操作已经启动的一个状态,或是指出需要进行训练的一个状态),以允许运动数据库被训练。
根据图23的实施例,图24描述了图21中步骤520的细节。
在步骤521中,该处理器检查训练旗标FLAG_train是否已经被设定为“启动”。
在步骤522中,该处理器列出使用者所定义的运动的目前编号。
在步骤523中,该处理器根据使用者预先定义的运动的编号,以执行训练算法来产生训练参数(例如上述的权重参数)。
在步骤524中,在该处理器的控制下,完成运动数据库的训练。
在步骤525中,该处理器将训练旗标FLAG_train设定为“关闭”,其中“关闭”与518的“启动”为相反的状态。
根据图23的实施例,图25描述了图21中步骤530的一些细节操作。如图25所示,该处理器设定该电子装置(例如移动电话)的一系列宏函数,这些宏函数分别对应到多个运动识别结果,其中多个运动识别结果表示多个被识别的手势,亦即使用者所作出的被识别手势。因此,这些被识别的手势(例如,图25左侧的“手势1”、“手势2”、“手势3”、…)可以分别被用来触发相关的宏函数,举例来说,“手势1”可用来被触发一组宏函数,例如图25所示的函数a;在另外一个例子中,“手势2”可用来被触发另一组宏函数,例如图25所示的函数b、函数c、函数d;在另外一个例子中,“手势3”可用来被触发另一组宏函数,例如图25所示的函数e、函数f、函数g、函数h。
根据本发明的另一实施例,图26描述了图22所示的流程图中的一些细节操作。需注意的是,该使用者定义运动识别数据库中对应于至少一运动识别结果的宏函数的编号可以被视为一宏函数计数值MFC,典型来说,宏函数计数值MFC是一个正整数。举例来说,对于一被识别的运动来说,例如图25左侧中被标示为“手势2”的一特定手势,宏函数计数值MFC会等于3,然而,这只是作为范例说明,而并不是本发明的限制;在本实施例的一个变化中,对于一被识别的运动来说,例如图25左侧中被标示为“手势1”的一特定手势,宏函数计数值MFC会等于1;在本实施例的一个变化中,对于一被识别的运动来说,例如图25左侧中被标示为“手势3”的一特定手势,宏函数计数值MFC会等于4。
在步骤560-1中,该处理器侦测运动输入,并将一索引值FLAG_MFC设 为一初始值,例如零,以开始计算在图26的流程中所执行的宏函数的数量。
在步骤570中,在该处理器的控制下,根据运动数据库(例如图19所提及的该使用者定义运动识别数据库)来产生运动识别结果。
在步骤581中,该处理器执行对应的宏函数NOT(FLAG_MFC),其中函数NOT(FLAG_MFC)表示在包含步骤581的一外部回路(亦即步骤581到步骤584所形成的回路)中所执行的宏函数与索引值FLAG_MFC之间的映像关系,且函数NOT(FLAG_MFC)可以使用一对照表来实现。实作上,该处理器可以预先将图20所提及的宏函数的定义储存在该对照表中(特别地,宏函数的定义可以是图25的右侧所描述的内容)。
举例来说,当所识别的手势为图25左侧所示标示为“手势2”的手势,宏函数NOT(0)、NOT(1)、NOT(2)分别表示宏函数“函数b”、“函数c”、“函数d”,亦即在步骤581中,该处理器可以在FLAG_MFC等于0的时候执行宏函数“函数b”,在FLAG_MFC等于1的时候执行宏函数“函数c”,或是在FLAG_MFC等于2的时候执行宏函数“函数d”。
在步骤582中,该处理器检查宏函数NOT(FLAG_MFC)的操作是否结束。
在步骤583中,该处理器将索引值FLAG_MFC的数值加1。
在步骤584中,该处理器检查索引值FLAG_MFC是否已经到达宏函数计数值MFC。
在步骤585中,在该处理器的控制下,结束基于运动的宏函数的操作。
根据本发明的一实施例,图27描述了多个手指触碰以致能(enable)一特定应用程序(例如一导航应用程序)的示意图。如图27所示,该处理器侦测使用者按压一个硬件起始按钮,并侦测使用者在触控屏幕上滑动以进行解锁;接着,该处理器允许使用者输入密码,并侦测密码是否正确;接着,该处理器触发并在屏幕上显示首页信息,并侦测使用者开启上述的全球定位系统模块中的全球定位系统功能;最后,使用者开启并使用导航系统。
根据本发明的一实施例,图28描述了包含上述致能全球定位系统功能的多步骤功能的操作细节。如图28所示,图25所示的的一组宏函数被替换为一组操作,而这一组操作可以包含在触控屏幕上滑动以进行解锁(虚拟地或是自动地),输入密码(虚拟地或是自动地),开启全球定位系统功能(自动 地),及开启导航系统(自动地)。亦即,针对标示为“手势3”的一特定手势,该处理器会自动地准备需要使用导航系统的所有步骤,因此,使用者不需要使用多个手指滑动步骤来致能一特定应用程序(例如上述的导航应用程序)。
根据本发明的另一实施例,图29描述了图4所述的实施例的方法的流程图610,其中流程图610可被用来在目前的运动数据库(例如在上述流程图500A所获得的运动数据库)加入新的运动。因此,一旦使用者结束了在图21所示的运动数据库设定,使用者仍然可以在运动数据库中加入新的运动。
在步骤611中,该处理器检查使用者是否有要求加入新的运动。
在步骤612中,该处理器侦测一个新的运动k产生,举例来说,该处理器可控制将流程图610中的运动编号的索引值k的初始值设定为图23的实施例中的运动编号的索引值k的最终值,就如同图23所示的流程图与流程图610的第一个新运动是连续的,以更新目前的运动数据库。在另外一个例子中,该处理器可控制将流程图610中的运动编号的索引值k的初始值设定为前一次执行流程图610时运动编号的索引值k的最终值。
在步骤613中,该处理器计算相关的线性加速度与相关的方向角度。
在步骤614中,该处理器进行前置操作,例如标准化(normalization)及特征撷取(feature extraction)。
在步骤615中,该处理器将前置操作结果储存到数据库(例如图19中提及的该使用者定义运动识别数据库)中,举例来说,该使用者定义运动识别数据库中的“手势k”(亦即该使用者定义运动识别数据库的第k个手势)被关连到上述步骤612中的运动k。
在步骤616中,该处理器控制索引值k,以将索引值k加上1。
在步骤617中,该处理器检查是否存在下一个运动输入。
在步骤618中,在该处理器的控制下,完成了运动数据库。
在步骤619中,该处理器将训练旗标FLAG_train设定为“启动”,以允许运动数据库被训练。
根据本发明的另一实施例,图30描述了图4所述的实施例的方法的流程 图620,其中当一个新的运动被加入时,流程图620可被用来重新训练以及更新在图29中实施例所提到的数据库。
在步骤621中,该处理器检查训练旗标FLAG_train是否已经被设定为“启动”。
在步骤622中,该处理器列出使用者所定义的运动的目前编号。
在步骤623中,该处理器根据使用者预先定义的运动的编号,以执行训练算法来产生训练参数(例如上述的权重参数)。
在步骤624中,在该处理器的控制下,完成运动数据库的训练。
在步骤625中,该处理器将训练旗标FLAG_train设定为“关闭”。
根据本发明的另一实施例,图31描述了图4所述的实施例的方法的流程图630,其中流程图630可被用来删除图29中实施例所提到的数据库中的运动。
在步骤631中,该处理器检查使用者是否有要求删除目前数据库中的一个运动。
在步骤632中,该处理器侦测使用者所选择要删除的运动的索引值。
在步骤633中,该处理器清除这个运动的所有数据。
在步骤634中,该处理器重新编排运动数据库中运动的索引值的顺序,因此,运动数据库中至少一部分的剩余数据的顺序会被调整,也因此运动数据库中的剩余数据可以被更简单且更正确地被存取。
在步骤635中,该处理器控制索引值k,以将索引值k减1。
在步骤636中,该处理器检查是否存在下一个要删除的运动。
在步骤637中,在该处理器的控制下,完成了运动数据库。
在步骤638中,该处理器将训练旗标FLAG_train设定为“启动”,以允许运动数据库被训练。
根据本发明的另一实施例,图32描述了图4所述的实施例的方法的流程图640,其中当任何运动被删除时,流程图640可被用来重新训练以及更新在图31中实施例所提到的数据库。
在步骤641中,该处理器检查训练旗标FLAG_train是否已经被设定为 “启动”。
在步骤642中,该处理器列出使用者所定义的运动的目前编号。
在步骤643中,该处理器根据使用者预先定义的运动的编号,以执行训练算法来产生训练参数(例如上述的权重参数)。
在步骤644中,在该处理器的控制下,完成运动数据库的训练。
在步骤645中,该处理器将训练旗标FLAG_train设定为“关闭”。
单一/多个笔画的符号的运动识别
根据本发明的一实施例,图33描述了图4所述的实施例的方法中关于通过单一/多个笔画的符号的运动识别来侦测轨迹的示意图。如图33所示,该处理器可将使用者所作出的轨迹识别为数据库中所预设的一个符号,举例来说,图33右侧的符号“d”、“m”、“4”可以被识别。请参考图34,图34根据图33所示的实施例描述了一个具有俯仰角及偏航角改变的手写运动,其中具有俯仰角及偏航角改变的手写运动关联于时间且投影在全域坐标系统中的XZ平面(亦即,上述平行于x-z平面的该第一平面)。举例来说,当使用者朝向XZ平面时,使用者所作出的单一/多个笔画的符号运动可以被视为一个关联于时间且在XZ平面上具有俯仰角及偏航角改变的手写运动。
图35根据图33所示的实施例描述了球坐标(Spherical coordinate)与直角坐标(Cartesian coordinate)的转换的示意图。举例来说,该处理器可以根据一个或多个俯仰角及偏航角的改变(例如,俯仰角的改变以及偏航角的改变)来进行球坐标与直角坐标的转换,以产生在三轴空间中多个点的数据。因此,通过图35所示的球坐标与直角坐标的转换,关联于时间上的俯仰角及偏航角的改变可以被转换为三轴空间中多个点,因此手写运动(或是移动)的轨迹便可以被储存在上述的数据库中,而之后的手写运动也因此可以被识别。上述内容仅为本发明的一范例说明,而并非是作为本发明的限制,在本实施例的一个变化中,该处理器可以根据一个或多个俯仰角及转动角的改变(例如,俯仰角的改变以及转动角的改变)来进行球坐标与直角坐标的转换,以产生在三轴空间中多个点的数据;以及在本实施例的另一个变化中,该处理器可以根据一个或多个转动角及偏航角的改变(例如,转动角的改变以及 偏航角的改变)来进行球坐标与直角坐标的转换,以产生在三轴空间中多个点的数据。
根据本发明一实施例,图36描述了图33所示实施例的单一/多个笔画运动识别中对应于投影在全域坐标系统的XZ平面(亦即,上述平行于x-z平面的该第一平面)上的轨迹资料撷取的示意图。当使用者站立且朝向XZ平面的时候,他/她可作出如同他/她在XZ平面上书写的手写运动,且该处理器可记录轨迹在三轴空间中多个点的数据,并从三轴空间中多个点的数据取出二轴空间的多个点的数据,而并不需要去记录y轴的数据,其中这些二轴空间的多个点的数据具有可用来进行运动是识别的剩余坐标数据{(x,z)}。
根据本发明一实施例,图37描述了图33所示实施例的单一/多个笔画运动识别中对应于投影在全域坐标系统的XY平面(例如在x-y-z坐标系统中,平行于包含x轴与y轴的x-y平面上的一第三平面)上的轨迹资料撷取的示意图。当使用者躺下且朝向XY平面的时候,他/她可作出如同他/她在XY平面上书写的手写运动,且该处理器可记录轨迹在三轴空间中多个点的数据,并从三轴空间中多个点的数据取出二轴空间的多个点的数据,而并不需要去记录z轴的数据,其中这些二轴空间的多个点的数据具有可用来进行运动是识别的剩余坐标数据{(x,y)}。
根据图36及图37所示的实施例,通过将从三轴空间中多个点的数据取出投影在XY平面、XZ平面、及YZ平面上的二轴空间的多个点的数据,在不同情形下运动识别(特别是符号识别)都可以被正确的进行,而无论使用者是站立、坐下、或是躺卧。实作上,无论使用者是站立或是躺卧,该电子装置的俯仰角可以被用来决定目前的状态(例如,使用者是站立或是躺卧),且该处理器可以根据目前状态的侦测结果(例如,使用者是站立或是躺卧)来正确地选择一个预定平面。
根据本发明一实施例,图38描述了图33所示实施例的单一/多个笔画运动识别中使用者所书写的一些符号及的这些符号的笔画数量。这些符号有时候会包含多个笔画,亦即需要提中一种方法供使用者在三轴空间中书写出这些包含多个笔画的轨迹。在本实施例中,可以使用一个按钮(可供使用者按住及放开的按钮)来区别不同的笔画。举例来说,使用者可以通过笔画的书写规则来得到图38所示的第三个符号,因此,使用者可以在运动识别过后得 到符号“4”,而不需要多使用一个笔画。
根据本发明一实施例,图39描述了图33所示实施例的单一/多个笔画运动识别的流程图700。
在步骤710中,该处理器侦测到使用者按压住如步骤310所提到的一按钮,且该处理器准备记录运动且进行运动识别,其中「按压住一个按钮」是用来作为一个命令以开始记录运动以及进行运动识别。
在步骤720中,该处理器将参考全域坐标系统的目前的偏航角设为零。
在步骤730中,该处理器允许使用者开始在三轴空间进行手写运动。
在步骤740中,该处理器将手写运动的轨迹数据储存为在二轴空间的多个点的数据{(xn(tn),yn(tn)),(xn(tn),zn(tn)),(yn(tn),zn(tn))},其分别为对应坐标轴组合(x(t),y(t)),(x(t),z(t)),(y(t),z(t))的数据,其中符号“t”代表时间,而符号“n”则是一个正整数,且用来表示全域直角坐标系统上轨迹的第n个点,因此,“tn”表示在时间轴上多个离散时间点的一个时间点。因此,“xn”、“yn”、“zn”用来表示对应到时间点“tn”的数据(例如全域直角坐标系统的数据),举例来说,{xn(tn)}可包含xn(tn)、xn-1(tn-1)、xn-2(tn-2)、…、xm(tm),其中m小于n。
实作上,(xn(tn),yn(tn))、(xn(tn),zn(tn))、(yn(tn),zn(tn))可以被用来表示一组在二轴空间的点,尤其是轨迹上不同位置的坐标点。然而,上述内容仅为本发明的一范例说明,而并非是作为本发明的限制,根据本实施例的一个变化,(xn(tn),yn(tn))、(xn(tn),zn(tn))、(yn(tn),zn(tn))中的任何一个可以用来表示一组从目前时间点n到前一个二轴空间的点的在二轴空间中的点。
在步骤750中,该处理器撷取这些二轴空间中的点的特征,并开始进行符号识别,举例来说,这些特征会与数据库中的数据进行比对。
在步骤760中,在该处理器的控制下,产生符号识别结果。
在步骤770中,该处理器执行该电子装置(例如移动电话)的至少一个宏函数(特别是一组宏函数)。
根据本发明另一实施例,图40描述了图33所示实施例的单一/多个笔画运动识别的流程图800。
在步骤810中,该处理器侦测到使用者按压住如步骤310所提到的一按钮,,且该处理器准备记录运动且进行运动识别,其中「按压住一个按钮」是用来作为一个命令以开始记录运动以及进行运动识别。
在步骤820中,该处理器将参考全域坐标系统的目前的偏航角设为零。
在步骤830中,该处理器允许使用者开始在三轴空间进行手写运动。
在步骤840中,该处理器将手写运动的轨迹数据储存为如上所述的在二轴空间的多个点的数据{(xn(tn),yn(tn)),(xn(tn),zn(tn)),(yn(tn),zn(tn))}。
在步骤850中,在该处理器的控制下,这些二轴空间的多个点的数据被加载到一符号识别软件,以进行符号识别。
在步骤860中,在该处理器的控制下,产生符号识别结果。
在步骤870中,该处理器执行该电子装置(例如移动电话)的至少一个宏函数(特别是一组宏函数)。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

使用运动传感器融合来进行运动识别的方法及装置.pdf_第1页
第1页 / 共57页
使用运动传感器融合来进行运动识别的方法及装置.pdf_第2页
第2页 / 共57页
使用运动传感器融合来进行运动识别的方法及装置.pdf_第3页
第3页 / 共57页
点击查看更多>>
资源描述

《使用运动传感器融合来进行运动识别的方法及装置.pdf》由会员分享,可在线阅读,更多相关《使用运动传感器融合来进行运动识别的方法及装置.pdf(57页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103984407 A (43)申请公布日 2014.08.13 CN 103984407 A (21)申请号 201410043619.0 (22)申请日 2014.01.29 13/762,405 2013.02.08 US G06F 3/01(2006.01) (71)申请人 英属维京群岛商速位互动股份有限 公司 地址 维尔京群岛托尔托拉 (72)发明人 叶舟 刘顺男 吕英阁 李金龙 (74)专利代理机构 深圳新创友知识产权代理有 限公司 44223 代理人 江耀纯 (54) 发明名称 使用运动传感器融合来进行运动识别的方法 及装置 (57) 摘要 本发明公开了。

2、一种使用运动传感器融合来进 行运动识别的方法和装置, 其中该方法是应用在 一电子装置, 且该方法包含以下步骤 : 使用该电 子装置中多个运动传感器来分别得到对应到该多 个运动传感器的感测数据, 该感测数据是基于该 电子装置的一装置坐标系统所量测的, 其中该多 个运动传感器包含多个惯性运动传感器 ; 以及基 于该电子装置的一使用者的一全域坐标系统来转 换至少一部分的感测数据与感测数据的衍生数据 以产生一转换后数据来进行一传感器融合, 并基 于该全域坐标系统来进行运动感测来识别使用者 的运动。本发明可以方便使用者控制电子产品以 获得正确的运动识别结果。 (30)优先权数据 (51)Int.Cl. 。

3、权利要求书 2 页 说明书 16 页 附图 38 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书16页 附图38页 (10)申请公布号 CN 103984407 A CN 103984407 A 1/2 页 2 1. 一种使用运动传感器融合来进行运动识别的方法, 应用在一电子装置, 其特征在于, 包含有 : 使用该电子装置中多个运动传感器来分别得到对应到该多个运动传感器的感测数据, 该感测数据是基于该电子装置的一装置坐标系统所量测的, 其中该多个运动传感器包含多 个惯性运动传感器 ; 以及 基于该电子装置的一使用者的一全域坐标系统来转换至少一部分的感测数。

4、据与感测 数据的衍生数据以产生一转换后数据来进行一传感器融合, 并基于该全域坐标系统来进行 运动感测来识别使用者的运动。 2. 如权利要求 1 所述的方法, 其特征在于, 该多个运动传感器包含至少一加速度传感 器及至少一转动传感器, 且该传感器融合包含使用该至少一加速度传感器及该至少一转动 传感器所完成的六轴传感器融合, 或该多个运动传感器包含至少一加速度传感器、 至少一 转动传感器、 及至少一磁力仪, 且该传感器融合包含使用该至少一加速度传感器、 该至少一 转动传感器及该至少一磁力仪所完成的九轴传感器融合。 3. 如权利要求 1 所述的方法, 其特征在于, 根据该感测数据来进行该传感器融合的。

5、步 骤包含有 : 根据该感测数据来进行该传感器融合以得到基于该装置坐标系统的运动数据, 且得到 该电子装置基于该全域坐标系统的一方向, 其中基于装该置坐标系统的该感测数据包含基 于该装置坐标系统的线性加速度 ; 以及 根据基于该全域坐标系统的该方向来转换基于该装置坐标系统的该感测数据以产生 至少一部分的该转换后数据, 其中该至少一部分的该转换后数据包含基于该全域坐标系统 的线性加速度 ; 其中基于该全域坐标系统的线性加速度以及基于该全域坐标系统的该方向被用来感 测该电子装置在三轴空间的线性移动与转动运动。 4. 如权利要求 3 所述的方法, 其特征在于, 还包含 : 根据基于该全域坐标系统的该。

6、转换后数据, 进行运动识别以识别使用者在三轴空间的 运动, 以及识别使用者在三轴空间所画的至少一符号 ; 以及 通过映射转换后数据至三轴空间中的至少一预定平面来获得该至少一预定平面上的 多个轨迹以进行符号识别, 其中该至少一预定平面平行于该全域坐标系统中三个轴中的两 个轴, 且该全域坐标系统中的三个轴彼此垂直。 5. 如权利要求 4 所述的方法, 其特征在于, 还包含 : 在该电子装置中提供一预设数据库以被用来进行符号识别, 且允许使用者使用可识别 且有意义符号的画线规则, 而不需要使用者先建立数据库。 6. 如权利要求 4 所述的方法, 其特征在于, 还包含 : 将使用者在三轴空间所画出的该。

7、至少一符号加载到一符号识别模块, 以进行符号识 别。 7. 如权利要求 4 所述的方法, 其特征在于, 基于该全域坐标系统的该方向包含该电子 装置的一转动角、 一俯仰角、 及一偏航角, 且该方法还包含 : 当开始进行符号识别时, 通过重新设定该电子装置的该偏航角为一预定值, 来将该偏 航角与使用者对齐 ; 以及 权 利 要 求 书 CN 103984407 A 2 2/2 页 3 当侦测到该电子装置的一按钮被按压时或当侦测到对应到运动开始的力量存在时, 触 发重新设定该电子装置的该偏航角为该预定值。 8. 如权利要求 4 所述的方法, 其特征在于, 基于该全域坐标系统的该方向包含该电子 装置的。

8、一转动角、 一俯仰角、 及一偏航角, 且该方法还包含 : 根据一个或多个俯仰角及偏航角的改变来进行球坐标与直角坐标的转换以产生三轴 空间中的多个点的数据 ; 根据一个或多个俯仰角及转动角的改变来进行球坐标与直角坐标的转换以产生三轴 空间中的多个点的数据 ; 以及 根据一个或多个转动角及偏航角的改变来进行球坐标与直角坐标的转换以产生三轴 空间中的多个点的数据。 9. 如权利要求 3 所述的方法, 其特征在于, 还包含 : 根据基于该全域坐标系统的该转换后数据来进行运动识别以得到用来表示使用者在 三轴空间的运动的至少一运动识别结果。 10. 一种使用运动传感器融合来进行运动识别的装置, 该装置包含。

9、一电子装置的至少 一部分可用来执行上述权利要求 1 9 任一权利要求所述的方法。 权 利 要 求 书 CN 103984407 A 3 1/16 页 4 使用运动传感器融合来进行运动识别的方法及装置 技术领域 0001 本发明涉及一种可携式电子装置的运动识别, 尤其是一种使用运动传感器融合来 进行运动识别的方法和装置。 背景技术 0002 在先前技术中, 传统的运动识别方法似乎并无法具有足够的执行细节, 因此, 当使 用这些传统运动识别方法会有许多问题产生。举例来说, 参考图 1 与图 2 所示的运动, 图 1 描述了往右侧的晃动具有移动以及绕着 “-z” 轴的转动, 图 2 描述了往右侧的晃。

10、动具有移 动、 绕着 “-z” 轴的转动以及绕着 “+y” 轴的翻转, 当只有使用重力传感器 (G-sensor) 来进 行运动识别时, 线性加速度与重力加速度之间的改变并无法被解耦合。具体来说, 参考图 3 所示为对应图 1 及图 2 的重力传感器的数据曲线 (加速度数据 ax、 ay、 az 分别对应到三个 轴) , 在图3的上半图与下半图中, 虽然这两个运动具有相同的方法以及相同的移动量, 但是 这两个运动都没有办法根据重力传感器来识别。在另外一个例子中, 关于图 2 所示的运动, 当只有使用陀螺仪传感器来进行运动识别时, 移动的部分并无法被侦测到, 而只能侦测到 相对角度。在另外一个例。

11、子中, 关于图 2 所示的运动, 当只有使用磁传感器来进行运动识别 时, 移动的部分并无法被侦测到, 且也无法量测到全域坐标系统 (global coordinate) 的任 何角度改变。如上所述, 需要提供一种新的方法来提供运动识别中足够的执行细节。 发明内容 0003 因此, 本发明的目的之一在于公开一种使用运动传感器融合来进行运动识别的方 法和装置, 以解决上述的问题。 0004 本发明的另一个目的在于公开一种使用运动传感器融合用来进行运动识别的方 法和装置, 来方便使用者控制电子产品以获得正确的运动识别结果。 0005 根据本发明一实施例, 公开一种使用运动传感器融合来进行运动识别的方。

12、法, 该 方法应用在一电子装置, 且该方法包含以下步骤 : 使用该电子装置中多个运动传感器来分 别得到对应到该多个运动传感器的感测数据, 该感测数据是基于该电子装置的一装置坐标 系统所量测的, 其中该多个运动传感器包含多个惯性运动传感器 ; 以及基于该电子装置的 一使用者的一全域坐标系统来转换至少一部分的感测数据与感测数据的衍生数据以产生 一转换后数据来进行一传感器融合, 并基于该全域坐标系统来进行运动感测来识别使用者 的运动。 0006 根据本发明一实施例, 公开一种使用运动传感器融合来进行运动识别的装置, 该 装置包含一电子装置的至少一部分且可用来执行上述的方法。 0007 本发明的上述方。

13、法、 装置的一个优点在于可以达到高准确性的运动识别, 因此在 可以获得高准确性的运动识别结果的情形下, 使用者可以更简单的使用及控制该电子产 品。 此外, 上述方法、 装置可以允许使用者使用预设手势或是使用者定义手势来移动该电子 装置, 而不需要使用多个手指滑动步骤来致能一特定应用程序 (例如导航应用程序) 。 说 明 书 CN 103984407 A 4 2/16 页 5 附图说明 0008 图 1 描述了往右侧的晃动具有移动以及绕着 “-z” 轴的转动。 0009 图 2 描述了往右侧的晃动具有移动、 绕着 “-z” 轴的转动以及绕着 “+y” 轴的翻转。 0010 图 3 所示为对应图 。

14、1 及图 2 的重力传感器的数据曲线, 其中图 3 的上半图与下半 图分别对应到图 1 及图 2 所示的运动。 0011 图 4 为本发明第一实施例使用运动传感器融合来进行运动识别的装置示意图。 0012 图 5 是图 4 中装置的一控制方案的示意图。 0013 图6描述了有关于图4所述实施例的方法中该电子装置的使用者的全域坐标系统 及装置坐标系统的示意图。 0014 图 7 描述了在使用者作出相同运动的情形下重力传感器输出的一些数据曲线, 这 些数据曲线分别对应图 6 所述实施例中该电子装置的不同倾斜角度。 0015 图 8 根据本发明一实施例描述了图 4 所述的实施例的方法的流程图。 00。

15、16 图 9 为使用全域坐标系统的坐标定义来描述图 6 的实施例的示意图, 且图 9 描述 了相关的转动角、 俯仰角、 及偏航角。 0017 图 10 根据本发明一实施例描述了图 4 所述的实施例的使用传感器融合算法来获 得线性加速度以及转动角度的示意图。 0018 图 11 根据本发明一实施例描述了使用者的运动及物体坐标系统与全域坐标系统 之间的关系的示意图。 0019 图 12 根据本发明一实施例描述了本发明在全域坐标系统下实现运动侦测的示意 图。 0020 图 13 根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动 的示意图。 0021 图 14 描述了与图 13 在不同。

16、的情形下所作出的相同的动作的示意图。 0022 图 15 根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动 的示意图。 0023 图 16 描述了与图 15 在不同的情形下所作出的相同的动作的示意图。 0024 图 17 根据本发明一实施例描述了图 4 所述的实施例的方法的流程图。 0025 图 18 根据本发明一实施例描述了图 4 所述的实施例的方法的流程图。 0026 图 19 根据本发明一实施例描述了本发明中关于多个运动与一使用者定义运动识 别数据库中的运动数据的示意图。 0027 图 20 描述了图 19 实施例中所提及的运动所对应的运动数据与图 4 所示的至少一 数据。

17、库中相关的宏函数之间的关系。 0028 图 21 根据本发明另一实施例描述了图 4 所述的实施例的方法的流程图。 0029 图 22 根据本发明另一实施例描述了图 4 所述的实施例的方法的流程图。 0030 图 23 根据本发明一实施例描述了图 21 中一步骤的细节操作。 0031 图 24 根据图 23 的实施例描述了图 21 中一步骤的细节操作。 0032 图 25 根据图 23 的实施例描述了图 21 中一步骤的一些细节操作。 0033 图 26 根据本发明一实施例描述了图 22 所示的流程图中的一些细节操作。 说 明 书 CN 103984407 A 5 3/16 页 6 0034 图。

18、 27 根据本发明的一实施例描述了多个手指触碰以致能一特定应用程序的示意 图。 0035 图 28 根据本发明的一实施例描述了包含致能全球定位系统功能的多步骤功能的 操作细节。 0036 图 29 根据本发明的另一实施例描述了图 4 所述的实施例的方法的流程图。 0037 图 30 根据本发明的另一实施例描述了图 4 所述的实施例的方法的流程图。 0038 图 31 根据本发明的另一实施例描述了图 4 所述的实施例的方法的流程图。 0039 图 32 根据本发明的另一实施例描述了图 4 所述的实施例的方法的流程图。 0040 图 33 根据本发明的一实施例描述了图 4 所述的实施例的方法中关于。

19、通过单一 / 多个笔画的符号的运动识别来侦测轨迹的示意图。 0041 图 34 根据图 33 所示的实施例描述了一个具有俯仰角及偏航角改变的手写运动, 其中具有俯仰角及偏航角改变的手写运动关联于时间且投影在全域坐标系统中的 XZ 平 面。 0042 图 35 根据图 33 所示的实施例描述了球坐标与直角坐标的转换的示意图。 0043 图 36 根据本发明一实施例描述了图 33 所示实施例的单一 / 多个笔画运动识别中 对应于投影在全域坐标系统的 XZ 平面上的轨迹资料撷取的示意图。 0044 图 37 根据本发明一实施例描述了图 33 所示实施例的单一 / 多个笔画运动识别中 对应于投影在全域。

20、坐标系统的 XY 平面上的轨迹资料撷取的示意图。 0045 图 38 根据本发明一实施例描述了图 33 所示实施例的单一 / 多个笔画运动识别中 使用者所书写的一些符号及的这些符号的笔画数量的示意图。 0046 图 39 根据本发明一实施例描述了图 33 所示实施例的单一 / 多个笔画运动识别的 流程图。 0047 图 40 根据本发明一实施例描述了图 33 所示实施例的单一 / 多个笔画运动识别的 流程图。 0048 其中, 附图标记说明如下 : 0049 100 装置 0050 110 处理模块 0051 120 识别模块 0052 130 运动感测模块 0053 140 内存模块 005。

21、4 150 非运动感测模块 0055 160 键盘模块 0056 170 显示模块 0057 200、 300、 400、 500A、 500B、 610、 流程图 0058 620、 630、 640、 700、 800 0059 210、 220、 230、 240、 310、 320、 步骤 0060 330、 340、 350、 360、 410、 420、 0061 430、 440、 450、 460、 470、 510、 0062 520、 530、 560、 570、 580、 511、 512、 说 明 书 CN 103984407 A 6 4/16 页 7 0063 513。

22、、 514、 515、 516、 517、 518、 0064 521、 522、 523、 524、 525、 560-1、 0065 581、 582、 583、 584、 585、 611、 612、 0066 613、 614、 615、 616、 617、 618、 0067 619、 621、 622、 623、 624、 625、 0068 631、 632、 633、 634、 635、 636、 0069 637、 638、 641、 642、 643、 644、 0070 645、 710、 720、 730、 740、 750、 0071 760、 770、 810、 8。

23、20、 830、 840、 0072 850、 860、 870 具体实施方式 0073 请参考图 4, 图 4 为根据本发明第一实施例的使用运动传感器融合用来进行运动 识别的装置 100 的示意图, 其中装置 100 包含了一电子装置的至少一部分。举例来说, 装置 100 可以是上述电子装置的全部, 即图 4 的装置 100 可以视为一手提装置, 但这只是作为说 明之用, 而并非是本发明的限制条件。在另一个例子中, 装置 100 可以包含上述电子装置的 一部分, 特别是装置 100 可以是电子装置中的一控制电路, 例如一集成电路。电子装置可以 是一移动电话 (例如多功能移动电话) 、 一移动。

24、计算机 (例如一平板计算机) 、 或是一个人数 字助理 (Personal Digital Assistant, PDA) 。 0074 如图 4 所示, 装置 100 可包含一处理模块 110 及一识别模块 120, 这两者可以经 由包含一处理器 (例如至少一中央处理器 (Central Processing Unit, CPU) ) 的处理电路 分别执行程序模块 (例如软件模块) 中的多个程序指令来实现。举例来说, 程序模块可以 经由包含多个程序指令的一计算机程序产品来提供, 其中该计算机程序产品在实作上可以 是储存有多个程序指令的非暂存性的计算机可读媒体 (例如一软盘或是一光盘 (Com。

25、pact Disk-Read Only Memory, CD-ROM) ) 。 装置100另外可以包含一运动感测模块130、 作为一储 存模块的一内存模块140、 一非运动感测模块150、 一键盘模块160、 以及一显示模块170, 此 外, 运动感测模块 130 可以包含设置于电子装置中的多个运动传感器 (例如加速度传感器、 陀螺仪传感器、 及/或磁传感器) , 其中该多个运动传感器典型上包含多个惯性运动传感器 ; 内存模块 140 包含至少一个用来储存在进行运动识别操作时的任何型式的最终数据、 原始 数据及中间数据的一数据库, 特别地, 内存模块140可以由一非挥发性内存 (例如一闪存) 。

26、来 实现, 其中上述作为该储存模块的内存模块 140 被安排来储存该数据库中用来进行运动识 别的信息 ; 此外, 非运动感测模块 150 可包含至少一射频 (Radio Frequency(RF)) 传感器、 一相机传感器、 及一麦克风传感器, 其中键盘模块 160 可包含用来控制该电子装置的一些 按键及 / 或按钮, 且显示模块 170 可以是一触碰感应式显示屏幕 (亦即触控式屏幕) 。 0075 在本实施例中, 该处理器用来执行上述的多个程序指令以进行使用运动传感器 融合用来进行运动识别的方法, 其中该方法可包含以下步骤 : 使用设置于该电子装置中的 多个运动传感器来获得分别对应至该多个运。

27、动传感器的感测数据, 该些感测数据是基于 该电子装置中的一装置坐标系统 (device coordinate system) 或是物体坐标系统 (body coordinate system) 所量测的 ; 以及基于该电子装置的一使用者的一全域坐标系统来转换 说 明 书 CN 103984407 A 7 5/16 页 8 至少一部分的感测数据与感测数据的衍生数据以产生一转换后数据, 并通过上述的数据库 的帮助, 以基于该全域坐标系统来进行运动感测来识别使用者的运动。 0076 举例来说, 该多个运动传感器包含至少一加速度传感器 (亦即至少一重力传感 器) 及至少一转动传感器 (例如一陀螺仪传感。

28、器) , 例如三个加速度传感器及三个转动传感 器, 且该传感器融合可包含使用上述的至少一加速度传感器及至少一转动传感器所完成 的六轴传感器融合。针对上述的六轴传感器融合的实现细节, 请参考美国专利申请案号 12/943,934 的相关说明内容。 0077 举另一个例子来说, 该多个运动传感器包含至少一加速度传感器 (亦即至少一重 力传感器) 、 至少一转动传感器 (例如一陀螺仪传感器) 及至少一磁力仪 (例如一磁传感器) , 且该传感器融合可包含使用上述的至少一加速度传感器、 至少一转动传感器及至少一磁力 仪所完成的九轴传感器融合。针对上述的九轴传感器融合的实现细节, 请参考美国专利申 请案号。

29、 13/072,794 的相关说明内容。 0078 实作上, 上述执行该数据库中至少一部分数据的方法有许多种, 举例来说, 该数据 库的实现细节可参考美国专利申请案号 13/164,790 的相关说明内容。 0079 根据图 1 所示范例的一变化, 该处理器根据基于装置坐标系统的感测数据来进行 感测融合以得到运动数据, 并获得该电子装置的方向, 例如获得该电子装置基于全域坐标 系统的方向, 其中基于装置坐标系统的感测数据包含基于装置坐标系统的线性加速度。此 外, 该处理器可根据全域坐标系统的方向来转换基于装置坐标系统的感测数据来产生至少 一部分的转换后数据, 其中上述至少一部分的转换后数据包含。

30、基于全域坐标系统的线性加 速度, 且基于全域坐标系统的线性加速度以及基于全域坐标系统的方向分别被使用来感测 该电子装置在三轴空间 (three-dimensional(3D)space) 的线性移动与转动运动。特别地, 根据基于全域坐标系统的转换后数据, 该处理器可进行运动识别以及识别使用者在三轴空 间的运动, 以及识别使用者在三轴空间所画的至少一符号。 举例来说, 该处理器可通过映射 (map) 转换后数据至三轴空间中的至少一预定平面 (predetermined plane) 以获得该至少 一预定平面上的多个轨迹, 其中该至少一预定平面平行于全域坐标系统中三个轴中的两个 轴, 且全域坐标系。

31、统中的三个轴是互相垂直的。当该数据库是一预设 (pre-built) 数据库 的情形下, 该预设数据库可以被用来进行符号识别, 且允许使用者使用可识别且有意义符 号的画线规则, 而不需要使用者先建立数据库。 上述内容仅用来作为一范例说明, 而并非是 本发明的限制, 在本实施例的其它变化中, 该处理器可上述使用者在三轴空间所画的至少 一符号加载至一符号识别软件模块, 以供进行符号识别。 0080 根据本实施例的一些变化, 上述基于全域坐标系统的方向包含该电子装置的一转 动角 (roll angle) 、 一俯仰角 (pitch angle) 及一偏航角 (yaw angle) , 且当开始进行符。

32、号 识别的时候, 该处理器可通过重新设定该电子装置的该偏航角为一预定值, 例如零或是任 何固定值, 来将该偏航角与使用者对齐。举例来说, 当侦测到该电子装置的一按钮被按压 时, 该处理器触发以重新设定该该电子装置的该偏航角为该预定值 ; 于另一个例子中, 当侦 测到对应到运动开始的力量存在时, 该处理器触发以重新设定该该电子装置的该偏航角为 该预定值。 0081 根据图 1 所示范例的一些变化, 该数据库包含一使用者定义的手势数据库, 允许 使用者训练该使用者定义的手势数据库以定义使用者在移动该电子装置时的多种不同的 说 明 书 CN 103984407 A 8 6/16 页 9 手势, 且该。

33、使用者定义的手势数据库被用来进行运动识别及触发对应于从进行运动识别所 得到的识别结果的一操作。 举例来说, 根据基于全域坐标系统的转换后数据, 该该处理器可 进行运动识别以获得用来表示使用者在三轴空间的运动的至少一运动识别结果, 其中当获 得至少一运动识别结果时, 该处理器触发对应于至少一运动识别结果的至少一使用者定义 宏程序。 特别地, 在具有该使用者定义的手势数据库的情形下, 该处理器允许使用者训练该 使用者定义的手势数据库以定义使用者在移动该电子装置时的多种不同的手势, 其中该使 用者定义的手势数据库被用来进行运动识别及触发对应于至少一运动识别结果的使用者 定义宏程序。 0082 图 5。

34、 是图 4 中有关于装置 100 的一控制方案的一个实施例的示意图, 其中该控制 方案是基于上述手提装置上的安卓平台 (Android s platform) 所作的例子。在本范例 中, 上述包含多个用来被中央处理器执行的程序指令的程序模块可包含一些应用程序、 一 些中间程序、 及至少一核心驱动程序, 其中该些应用程序可包含至少一浏览器、 至少一电子 邮件应用程序、 至少一通话应用程序、 一地图应用程序、 一回家应用程序 ; 此外, 该些中间 程序可包含至少一应用程序架构, 其中至少一应用程序架构可以包含用来进行六轴感测 融合以及 / 或是九轴感测融合的至少一六轴或是九轴感测融合模块, 且也可。

35、以包含一运 动识别模块 (特别可以为图 4 的识别模块 120) , 其中运动识别中的一些算法可以由该些应 用程序所呼叫的应用程序接口 (Application Programming Interface, API) 来提供。实 作上, 除了该处理器, 该手提装置 (特别可以是装置 100) 可包含其它型式的硬件, 例如重 力传感器、 陀螺仪传感器、 磁传感器、 至少一触控屏幕、 至少一相机、 一无线网络 (Wireless Fidelity(Wi-Fi))模块、 一全球定位系统 (Global Positioning System(GPS) 、 一蓝牙 (Bluetooth) 模块, 及其它。

36、的模块。 0083 运动识别应用中基于六轴 / 九轴感测融合的移动与转动参数 0084 图6描述了有关于图4所述的方法中该电子装置的使用者的全域坐标系统及装置 坐标系统 (或是物体坐标系统) 的示意图。如图 6 所示, 全域坐标系统 (亦即 x-y-z 坐标系 统, 其中三个轴 x、 y、 z 是互相垂直的) 在三轴空间中是维持固定的, 而装置坐标系统 (亦即 xa-ya-za 坐标系统, 其中三个轴 xa、 ya、 za 是互相垂直的) 则是在该电子装置上是维持固定 的。 0085 图 7 描述了在使用者作出相同运动的情形下重力传感器输出的一些数据曲线, 这 些数据曲线对应图6中向右移动的运。

37、动, 且分别对应图6中该电子装置的不同倾斜角度, 其 中图7中左侧、 中间、 右侧的三个数据曲线分别对应图6左侧、 中间、 右侧的三个具有不同倾 斜角度的电子装置。图 7 中左侧、 中间、 右侧的三个数据曲线中的任何一个都包含有分别对 应于装置坐标系统中三个轴 xa、 ya、 za 的三个加速度资料 az、 ay、 az 的曲线, 如图 7 所示, 图 6 所示的三个连续状态的运动会分别导致感测讯号响应, 举例来说, 参考图 7 左侧的的数据 曲线, 加速度数据 ax 可为非零的值、 加速度资料 ay 维持在零、 而加速度资料 az 则维持在一 固定值 ; 在另外一个例子中, 参考图7中间的数。

38、据曲线, 加速度数据ax与az可为非零的值, 且加速度资料 ay 维持在零 ; 在另外一个例子中, 参考图 7 右侧的数据曲线, 加速度数据 az 可为非零的值、 加速度资料ay维持在零、 而加速度资料ax则维持在一固定值。 因此, 重力传 感器所感测到的加速度 (特别是只根据装置坐标系统) 会随着不同的倾斜角度而改变, 而为 了得到三轴空间中物体移动的完整移动量测, 需要获得物体的移动参数以及转动参数。通 说 明 书 CN 103984407 A 9 7/16 页 10 过进行六轴感测融合以及 / 或是九轴感测融合, 便可以得到这些信息。 0086 请参考图 8, 图 8 根据本发明一实施例。

39、描述了图 4 所述的实施例的方法的流程图 200。 0087 在步骤 210 中, 该处理器从该多个运动传感器中侦测多个运动输入, 其中该些运 动输入可包含运动的加速度数据 ax、 ay、 az。 0088 在步骤220中, 该处理器使用传感器融合 (例如六轴感测融合以及/或是九轴感测 融合) 来获得基于物体坐标 (特别是物体坐标系统) 的移动与转动参数。 0089 在步骤 230 中, 该处理器将移动与转动参数转换为基于全域坐标系统的移动与转 动参数。 0090 在步骤 240 中, 该处理器使用基于全域坐标系统的移动与转动参数进行运动识别 操作。 0091 在本实施例中, 移动参数可以通过。

40、使用传感器融合以根据该些运动传感器的资料 输出来计算出来, 因此, 可以获得基于全域坐标系统的线性加速度 ; 此外, 转动参数可以通 过使用传感器融合以根据该些运动传感器的资料输出来计算出来, 因此可以获得该电子装 置在方向上的转动角、 俯仰角及偏航角。需要注意的是, 这两组参数 (亦即移动参数与转动 参数) 可以合并作为基本运动输入, 以供运动识别。 0092 图 9 为使用全域坐标系统的坐标定义来描述图 6 的实施例的示意图, 其中图 9 描 述了转动角 ()、 俯仰角 ()、 及偏航角 ()。图 4 的实施例中所描述的使用传感器融合 算法来获得的方向信息可以使用转动角 ()、 俯仰角 (。

41、)、 及偏航角 () 来表示, 其中全 域坐标系统中 “+x” 轴、“+y” 轴、 及 “+z” 轴的方向的定义可以参考图 9, 且可以用来定义关 于全域坐标系统的转动角 ()、 俯仰角 ()、 及偏航角 ()。 0093 图 10 根据本发明一实施例描述了图 4 所述的实施例的使用传感器融合算法来获 得线性加速度以及转动角度的示意图。 Xg-Yg-Zg坐标系统可以是图6所示的实施例中的全 域坐标系统, 需注意的是, 图 10 左侧的重力向量 g 的三个分量 gx、 gy、 gz可以被表示为时间 t 的函数, 例如图 10 左下方的函数 gx(t)、 gy(t)、 gz(t)。参考图 10 的。

42、右侧所示, 运动感测模 块 130 基于装置坐标系统所量测到的加速度可以被表示为函数 ax(t)、 ay(t)、 az(t) (亦即向 量 ax(t),ay(t),az(t)) , 且该电子装置基于装置坐标系统的线性加速度可以被表示为函 数 aLx(t)、 aLy(t)、 aLz(t)(亦即向量 aLx(t),aLy(t),aLz(t)) 。在本实施例中, 该处理器根据 图 10 左下方的函数 gx(t)、 gy(t)、 gz(t) 来将运动感测模块 130 基于装置坐标系统所量测到 的加速度 (亦即向量 ax(t),ay(t),az(t)) 转换为该电子装置基于装置坐标系统的线性加 速度 (。

43、亦即向量 aLx(t),aLy(t),aLz(t)) 。 0094 特别地, 该电子装置的方向信息中的转动角、 俯仰角、 及偏航角是基于全域坐标系 统来计算的, 且方向信息中的转动角、 俯仰角、 及偏航角中的至少一部分可以被用来计算该 电子装置 (例如上述提及的移动电话) 基于装置坐标系统 (或是物体坐标系统) 的线性加速 度, 其中在图 10 左下方的函数 gx(t)、 gy(t)、 gz(t) 中, 函数 gy(t)、 gz(t) 是取决于转动角, 而函数 gx(t)、 gy(t)、 gz(t) 则取决于俯仰角。 0095 实作上, 基于全域坐标系统的线性加速度可以通过坐标转换关系来计算出。

44、来, 其 中坐标转换关系可以使用一转换矩阵R3x3来表示, 且基于全域坐标系统的线性加速度, 例 如具有三个分量 aGLOBALx(t)、 aGLOBALy(t)、 aGLOBALz(t) 的向量 (亦即向量 aGLOBALx(t),aGLOBALy(t),aG 说 明 书 CN 103984407 A 10 8/16 页 11 LOBALz(t)) , 会等于该电子装置基于装置坐标系统的线性加速度 (例如具有三个分量 aLx(t)、 aLy(t)、 aLz(t) 的向量 (亦即向量 aLx(t),aLy(t),aLz(t)) 乘上转换矩阵 R3x3。亦即线性加 速度的转换可以经由以下的公式来。

45、进行 : 0096 aGLOBAL(t)=aL(t)*R3x3; 0097 其中转换矩阵 R3x3可以是转动角 ()、 俯仰角 ()、 及偏航角 () 的函数 f(,), 特别地, 转换矩阵 R3x3可以被表示如下 : 0098 0099 其中 是转动角, 是俯仰角, 且 是偏航角。 0100 图 11 根据本发明一实施例描述了使用者的运动及物体坐标系统与全域坐标系统 之间的关系的示意图, 描述了物体坐标与与全域坐标之间的映射关系。 在本实施例中, 使用 者产生一个运动, 且参考全域坐标的运动输出 ( 例如线性加速度以及方向信息 ) 全部都位 于使用者的相同坐标系统 ( 亦即全域坐标系统 ) 。

46、中。此外, 整个运动可基于与使用者相同 的坐标系统而被正确地分析与识别。 0101 图 12 根据本发明一实施例描述了本发明在全域坐标系统下实现运动侦测的示意 图。如图 12 所示, 为了进行基于全域坐标系统的运动识别, 该处理器被用来侦测转动角、 俯 仰角、 及偏航角的改变。举例来说, 该处理器侦测图 12 所示的其中一个导致转动角改变的 运动, 侦测图12所示的其中一个导致俯仰角改变的运动, 且侦测图12所示的其中一个导致 偏航角改变的运动。 0102 图 13 根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动 的示意图。如图 13 所示, 考虑一个向下的运动, 且根据基于。

47、全域坐标系统的运动识别, 该处 理器侦测投影到全域坐标系统的一预定平面 (例如在 x-y-z 坐标系统中, 平行于包含 x 轴 与 z 轴的 x-z 平面上的一第一平面) 上的一轨迹, 并侦测该轨迹的起始点与结束点。请参考 图 14, 图 14 描述了与图 13 在不同的情形下所作出的相同的动作的示意图, 使用者可能在 不同的位置 A、 B(使用者朝向不同的方向) 使用与图 13 相同运动来移动该电子装置。举例 来说, 使用者使用与图 13 相同运动来移动该电子装置, 使用者可以朝向另外一个平面 (例 如在 x-y-z 坐标系统中, 平行于包含 y 轴与 z 轴的 y-z 平面上的一第二平面)。

48、 , 而非图 13 所 示的平面 (例如平行于 x-z 平面的该第一平面) 。需注意的是, 针对在不同位置 A、 B 所作出 的相同运动 (例如, 在具有不同偏航角的方向) , 基于全域坐标系统, 俯仰角的改变都是相同 的。举例来说, 在位置 A 的情形下, 偏航角的改变导致了该第一平面上的轨迹由 “+z” 方向 移往 “-z” 方向。在另一个例子中, 在位置 B 的情形下, 偏航角的改变导致了该第二平面上 的轨迹由 “+z” 方向移往 “-z” 方向。 0103 在本实施例的一个变化中, 当使用者的运动导致一个相同的的转动运动 (亦即将 图 14 例子中相同的俯仰角改变替换为相同的转动量改变) , 针对在不同位置 A、 B 所作出的 相同的转动运动 (例如, 在具有不同偏航角的方向) , 基于全域坐标系统, 转动角的改变都是 相同的。 说 明 书 CN 103984407 A 11 9/16 页 12 0104 图 15 根据本发明另一实施例描述了本发明参考全域坐标系统所产生的一些运动 的示意图。如图 15 所示, 考虑一个向左的运动, 且根据基于全域坐标系统的运动识别, 该处 理器侦测投影到全域坐标系统的一预定平面 (例如上述平行于x-z平面上的该第一平面) 上 的一轨迹, 并侦测该轨迹的起始点与结束点。 请参考图16, 图16描述了与图15在不同的情 形下所作出的相。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1