具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,本发明实施例提供的一种交互控制方法,应用于交互控制装置,所述交互控制装置包括陀螺仪,所述方法包括:
步骤S101,陀螺仪感应到所述交互控制装置的运动后生成加速度感应信号;
步骤S102,交互控制装置根据预设的算法计算所述加速度感应信号对应的操作手势;
步骤S103,根据预设的操作手势对应关系表生成与所述操作手势对应的控制指令;
步骤S104,发送所述控制指令到需要控制的外部设备。
用户控制交互控制装置进行运动时,包括用手握住交互控制装置挥动,或者将交互控制装置抛起再接住等方式,陀螺仪感应到所述交互控制装置的运动,生成加速度感应信号。加速度感应信号中包括有交互控制装置运动的加速度大小、方向等信息。根据这些信息,交互控制装置采用预设的算法可以计算出用户做出了怎样的手势,才能使得陀螺仪能够生成这些加速度感应信号。判断出用户的操作手势之后,交互控制装置根据预设的操作手势对应关系表,将操作手势转换为对外部设备的操作指令,并将操作指令发送到外部设备上,实现对外部设备的控制。采用这样的方式,用户只需要在交互控制装置建立连接之后,通过一些手势动作,控制交互控制装置进行运动,就能对外部设备进行控制,不同的手势动作对应不同的操作,用户操作起来非常简单,同时也能实现较为复杂的操作。同时,对于不同的外部设备,不同的运动状态对应的操作也是不同的。其中,作为被控制对象的外部设备,可以是智能终端,如电脑、手机、游戏机等,也可以是家用电器,如电视、空调、冰箱等。
本发明提供的交互控制方法,通过设置于交互控制装置的陀螺仪捕捉其运动状态,进而生成不同的控制指令,实现对用户设备的控制。用户只需要控制交互控制装置进行不同方式的运动,就能向用户设备发出多种不同的控制指令,实现较为复杂的操作,非常的方便。
参阅图2,本发明实施例提供的另一种交互控制方法,应用于交互控制装置,所述交互控制装置包括陀螺仪,所述方法包括:
步骤S201,陀螺仪感应到所述交互控制装置的运动后生成加速度感应信号;
步骤S202,根据所述加速度感应信号计算运动轨迹的俯仰角;
用户控制交互控制装置运动时,有对应的运动轨迹。通常情况下,运动轨迹并不是一条标准的直线,但是在计算时,可以将运动轨迹近似的看做直线,这样运动轨迹和水平面之间就会有一定的角度,根据加速度感应信号的内容,可以计算出俯仰角的角度。
步骤S203,根据所述俯仰角和所述陀螺仪生成的角速度信号计算所述交互控制装置的运动时间;
步骤S204,判断所述运动时间是否小于预设的时间阀值,如果否,将计算得到的所述俯仰角舍去,如果是,保留所述俯仰角;
为了保证对用户操作手势的有效识别,采取对比运动时间的方式对计算出的俯仰角进行取舍。用户做出操作手势时,通常是在一个较短的时间范围内完成的,如零点几秒或者几秒的时间。如果用户只是携带交互控制装置进行走动等等,陀螺仪检就会测到的持续时间较长的加速度变化。陀螺仪除了可以感应到加速度以外,还可以感应角速度的变化,根据俯仰角的角度和角速度值,可以得到角度变化的时间,即交互控制装置的运动时间。如果运动时间小于预设的时间阀值,则可认为捕捉到的是用户的操作手势,如果大于,则可能是由其他因素导致的交互控制装置的运动,不对其进行识别。
步骤S205,根据所述俯仰角判断运动轨迹的手势方向;
对于保留俯仰角,再进行运动轨迹的手势方向的判断,已经舍去的,就不再进行后续的步骤了。
步骤S206,综合所述俯仰角和所述手势方向得到所述操作手势;
对于用户而言,操作手势可以大致分为两类,即向左的手势和向右的手势。根据具体的俯仰角的角度值,进行更具体的划分,如左上、左中、左下等等。
步骤S207,根据预设的操作手势对应关系表生成与所述操作手势对应的控制指令;
步骤S208,发送所述控制指令到需要控制的外部设备。
用户使用手部握住交互控制装置做出操作手势时,其运动轨迹会被交互控制装置捕捉,同时还可以对俯仰角的角度进行计算,然后估计出用户实际做出的操作手势,实现对手势的有效识别。
其中,执行步骤S202时,根据所述加速度感应信号计算运动轨迹的俯仰角的方法如图3所示,包括:
步骤S301,根据所述加速度感应信号计算在三维坐标系的各个坐标轴上的加速度增量,所述三维坐标系是参照所述交互控制装置的结构建立的;
交互控制装置的形状通常设置为便于用户用手抓握的形状,优选方式为椭球形,根据交互控制装置的形状,选择交互控制装置的中心为原点,沿着交互控制装置形状延伸的方向分别作为X、Y、Z轴,建立三维坐标系。将交互控制装置上下平分的横向切面为XOY面,将交互控制装置左右平分的纵向切面为XOZ面,将交互控制装置前后平分的纵向切面为YOZ面。
三维坐标系建立之后,可以分别计算出陀螺仪感应到的交互控制装置的加速度增量投影到各个坐标轴上的值。
步骤S302,判断所述陀螺仪受到的重力在所述三维坐标系中的哪一个坐标轴上的分量发生变化;
当某一个坐标轴上的分量发生变化时,表明了交互控制装置的运动方向。
步骤S303,对重力分量发生变化的坐标轴上的加速度增量进行积分,得到对应运动轨迹的运动轨迹向量;
加速度增量包括了方向和数值两个参数,对重力分量发生变化的坐标轴上的加速度增量进行一次积分后,可以得到加速度值,对加速度值再次积分,就能计算出对应运动轨迹的运动轨迹向量,运动轨迹向量可近似的表示用户手部的实际运动方向和距离。
步骤S304,根据所述运动轨迹向量计算所述俯仰角的角度值。
得到运动轨迹向量后,就能计算出交互控制装置运动后相对初始位置的俯仰角的角度值了。
在计算出俯仰角的角度值之后,就可以根据俯仰角的角度值判断用户的操作手势了。执行步骤S205时,根据俯仰角判断运动轨迹的手势方向的方法如图4所示,包括:
步骤S401,判断所述俯仰角的角度值是否属于预设的左手势区间或者右手势区间;
步骤S402,如果属于所述左手势区间,则判定手势方向为向左,如果属于所述右手势区间,则判定手势方向为向右。
左手势区间和右手势区间的数值区域可以根据用户的操作习惯、操作的外部设备或者其他相关因素进行预先设置。左手势区间和右手势区间的数值区域的总和可以设置为覆盖整个360°的区间,也可以是设置为较小的数值区间。当俯仰角的角度值属于所述左手势区间,则判定手势方向为向左,如果属于所述右手势区间,则判定手势方向为向右。而如果俯仰角的角度值既不属于左手势区间也不属于右手势区间时,可以认为该次捕捉到的用户手势属于无效操作,不进行识别。
进一步地,在左手势区间或右手势区间内,可以进行更为复杂的划分,细分为多个范围更小的子手势区间,方便做更为准确的手势判断,以对应更多更为复杂的操作指令。
操作手势判定之后,交互控制装置根据预设的操作手势对应关系表,将操作手势转换为对外部设备的操作指令,并将操作指令发送到外部设备上,实现对外部设备的控制。
本发明提供的交互控制方法,通过设置于交互控制装置的陀螺仪捕捉其运动状态,进而生成不同的控制指令,实现对用户设备的控制。用户只需要控制交互控制装置进行不同方式的运动,就能向用户设备发出多种不同的控制指令,实现较为复杂的操作,非常的方便。
参阅图5,本发明实施例提供的一种交互控制装置,所述装置包括:
陀螺仪501,用于感应到所述交互控制装置的运动后生成加速度感应信号;
操作手势计算单元502,用于根据预设的算法计算所述加速度感应信号对应的操作手势;
控制指令生成单元503,用于根据预设的操作手势对应关系表生成与所述操作手势对应的控制指令;
控制指令发送单元504,用于发送所述控制指令到需要控制的外部设备。
参阅图6,本发明实施例提供的另一种交互控制装置,所述装置包括:
陀螺仪601,用于感应到所述交互控制装置的运动后生成加速度感应信号;
操作手势计算单元602,用于根据预设的算法计算所述加速度感应信号对应的操作手势;
控制指令生成单元608,用于根据预设的操作手势对应关系表生成与所述操作手势对应的控制指令;
控制指令发送单元609,用于发送所述控制指令到需要控制的外部设备。
其中,所述操作手势计算单元602具体包括:
俯仰角计算子单元603,用于根据所述加速度感应信号计算运动轨迹的俯仰角;
运动时间计算子单元604,用于根据所述俯仰角和所述陀螺仪生成的角速度信号计算所述交互控制装置的运动时间;
运动时间判断子单元605,用于判断所述运动时间是否小于预设的时间阀值,如果否,将计算得到所述俯仰角舍去,如果是,保留所述俯仰角;
手势方向判断子单元606,用于根据所述俯仰角判断运动轨迹的手势方向;
操作手势生成子单元607,用于综合所述俯仰角和所述手势方向得到所述操作手势;
俯仰角计算子单元603具体包括:
加速度增量计算子单元701,用于根据所述加速度感应信号计算在三维坐标系的各个坐标轴上的加速度增量,所述三维坐标系是参照所述交互控制装置的结构建立的;
重力分量变化判断子单元702,用于判断所述陀螺仪受到的重力在所述三维坐标系中的哪一个坐标轴上的分量发生变化;
运动轨迹向量计算子单元703,用于对重力分量发生变化的坐标轴上的加速度增量进行积分,得到对应运动轨迹的运动轨迹向量;
角度值计算子单元704,用于根据所述运动轨迹向量计算所述俯仰角的角度值。
手势方向判断子单元606具体包括:
角度值判断子单元801,用于判断所述俯仰角的角度值是否属于预设的左手势区间或者右手势区间;
手势方向判定子单元802,用于如果属于所述左手势区间,则判定手势方向为左方向,如果属于所述右手势区间,则判定手势方向为右方向。
本发明实施例所提供的交互控制装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明提供的交互控制装置,通过设置于交互控制装置的陀螺仪捕捉其运动状态,进而生成不同的控制指令,实现对用户设备的控制。用户只需要控制交互控制装置进行不同方式的运动,就能向用户设备发出多种不同的控制指令,实现较为复杂的操作,非常的方便。
本发明实施例还提供了一种交互控制装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。