手势控制系统及方法与流程

文档序号:11153787阅读:693来源:国知局
手势控制系统及方法与制造工艺

本发明涉及一种电子装置控制系统及方法,特别是关于一种通过手势控制电子装置的系统及方法。



背景技术:

目前许多电子装置都可通过手势、声控等非接触式的指令进行控制。当同一空间出现多个可接受手势控制的电子装置存在时,例如,客厅中的电视,空调系统或影音播放设备等,而为了贴近使用者手势操控习惯,可能该多种电子装置都采用相同的手势控制,例如顺时针画圆可调高空调温度,也可调高影音播放设备音量,为避免误操作,需要提供一种确定被控对象的方法。



技术实现要素:

鉴于以上内容,有必要提供一种手势控制系统及方法,能够在多个可接收手势控制的电子装置存在时确定手势控制对象。

一种手势控制系统,运行于一手势控制装置中,该手势控制装置与至少两个电子装置相连,每一电子装置装设有一摄像机,所述的手势控制系统包括:获取模块,用于从每一摄像机获取具有深度信息的包括手势的图像;坐标确定模块,用于根据所获取的包括手势的图像确定三维坐标系,并确定该三维坐标系中手势的起始端坐标、手势的结束端坐标;计算模块,用于根据所确定的手势起始端坐标值、手势结束端坐标值、各摄像机中心点坐标值计算手势结束端所在垂直轴到手势起始端与手势 结束端连线的第一角度的角度值与方向,计算各摄像机中心点所在垂直轴到各摄像机中心点与手势起始端之间的连线的第二角度的角度值与方向;及确定模块,用于根据该第二角度与第一角度的角度值与方向确定手势控制对象,具体为:确定与第一角度同向的第二角度与第一角度的绝对差值,与第一角度的绝对差值最小的第二角度对应的电子装置为被手势控制对象。

一种手势控制方法,包括:获取步骤:从分别设置在一电子装置上的至少两摄像装置所拍摄的包括手势的影像;坐标确定步骤:根据所获取的包括手势的图像确定三维坐标系,并确定该三维坐标系中手势的起始端坐标、手势的结束端坐标;计算步骤:根据所确定的手势起始端坐标值、手势结束端坐标值、各摄像机中心点坐标值计算手势结束端所在垂直轴到手势起始端与手势结束端连线的第一角度的角度值与方向,计算各摄像机中心点所在垂直轴到各摄像机中心点与手势起始端之间的连线的第二角度的角度值与方向;及确定步骤:根据该第二角度与第一角度的角度值与方向确定手势控制对象,具体为:确定与第一角度同向的第二角度与第一角度的绝对差值,与第一角度的绝对差值最小的第二角度对应的电子装置为被手势控制对象。

相较于现有技术,本发明所述的手势控制系统及方法能够在多个可接收手势控制的电子装置存在时确定手势控制对象,以免造成误操作。

附图说明

图1是本发明较佳实施例的手势控制装置运行环境示意图。

图2是本发明手势控制装置的较佳实施例的模块图。

图3是本发明确定手势控制对象的一较佳实施例的示意图。

图4是本发明确定手势控制对象的另一较佳实施方式的示意图。

图5是本发明手势控制方法的较佳实施例的流程图。

主要元件符号说明

电子装置 2,3,4,5

手势控制装置 1,13

摄像机 20,30,40,50

摄像机中心 O1,O2,O3,O4

摄像机拍摄范围 R1,R2

手势控制系统 10

获取模块 101

坐标确定模块 102

计算模块 103

确定模块 104

存储器 11

处理器 12

第一角度 θ111

第二角度 θ2345

手势起始端 S,S1

手势结束端 E,E1

具体实施方式

图1示出了本发明的手势控制装置的较佳实施例的运行环境示意图。多个电子装置(如图中电子装置2与电子装置3),例如电视、空调、影音播放设备、监视器、电脑等,与一手势控制装置1通过因特网或广域网(Wide Area Network, WAN)或局域网或有线等方式进行连接。所 述电子装置2、3分别包括一摄像装置20、30。所述摄像装置20、30为深度摄像机,用于拍摄有效范围(如图中第一拍摄范围R1、第二拍摄范围R2)内的手势图像,所述电子装置2、3根据该拍摄所得的手势图像控制其自身运作。该手势控制装置1可为一服务器,也可内嵌在所述电子装置2或电子装置3内。当内嵌在所述电子装置2或电子装置3内时,所述控制装置可为所述电子装置2或电子装置3内的一芯片或控制系统,也可为独立于所述电子装置2或电子装置3且与所述电子装置2或电子装置3通信连接的装置,譬如:电视机的机顶盒。

图2示出了本发明手势控制装置的较佳实施例的示意图。在该实施例中,所述手势控制装置1可包括,但不限于,存储器11和处理器12。存储器11可为所述手势控制装置1的内部存储单元,例如,硬盘或内存,也可为插接式存储装置,例如:插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)。所述存储器11也可既包括内部存储单元也包括插接式存储装置。所述处理器12可为一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片。

手势控制系统10安装并运行于所述电子装置1中。在本实施例中,所述的手势控制系统10包括,但不仅限于,获取模块101、计算模块102,判断模块103,及确定模块104。本发明所称的功能模块是指一种能够被手势控制装置1的处理器12所执行并且能够完成固定功能的一系列程序指令段,其存储于手势控制装置1的存储器11中。

所述获取模块101可用于从电子装置2或电子装置3各自的深度摄像机20、30获取所拍摄的具有深度信息的影像。在至少一实施例中,所述深度摄像机20、30仅在其拍摄范围内出现手势操作时才将所拍摄影像传送至所述获取模块101。所拍摄的手势影像包括多幅,根据多幅图像 中手势的不同位置确定手势的运动。

所述坐标确定模块102用于根据所获取的影像建立坐标系,计算摄像机垂直轴坐标,摄像机中心点坐标、手势起始端与手势结束端坐标。其中所获取的影像的深度信息作为Z轴,所获取影像的平面坐标作为X轴和Y轴。所述手势起始端和手势结束端是指影像中手上某一特定点在手势开始时的位置及手势结束时的位置。手势结束通常以某一特定时长范围内手停止动作作为判断标准。

所述计算模块103用于计算从手势结束端所在垂直轴到手势起始端与手势结束端之间连线的第一角度,如图3、4中的角度θ1、θ11,从摄像机中心点垂直轴到手势起始端与摄像机中心点之间连线的第二角度。当存在多个摄像机时,从多个摄像机中心点分别到手势起始端与各摄像机中心点的连线的第二角度包括多个,如图3、4中的角度θ2与θ3

所述确定模块104用于根据所计算的第一角度与第二角度确定手势控制对象。如下结合图3和图4具体说明所述所述计算模块103及确定模块104的工作原理。

参图3所示,所述控制装置1与第一电子装置2和第二电子装置3通信连接。所述第一电子装置2和第二电子装置3分别包括一第一摄像机20和第二摄像机30。所述第一摄像机20具有中心点O1,所述第二摄像机具有中心点O2。当手势出现在图中所示区域时,所述摄像机20、30拍摄所述手势的影像。所述手势控制装置1的坐标确定模块102根据所拍摄的影像确定摄像机坐标系。在本实施例中,所述坐标确定模块102针对每一摄像机拍摄的图像分别建立坐标系,即第一摄像机20和第二摄像机分别具有一坐标系,并根据各摄像机的坐标系来计算各摄像机中心点所在垂直轴到各摄像机中心点与所述手势起始端之间的连线的第二角度θ2与θ3

为计算所述第一角度与第二角度的角度值,所述计算模块可先根据两点的坐标确定两点之间的连线的方向向量,再根据两个线条的方向向量确定两个线条之间的角度。根据两点的坐标确定两点之间的连线的方向向量以手势开始端S与手势结束端E为例说明如下:假设手势起始端S点坐标为(x1,y1,z1),手势结束端E点坐标为(x2,y2,z2),则根据坐标计算S、E连线的方向向量为:((x2-x1),(y2-y1),(z2-z1))。同样地,假设第一摄像机20的摄像机中心点O1坐标为(x0,y0,0),则O1与S之间连线的方向向量为可表示为:((x1-x0),(y1-y0),z1)。所述摄像机中心点O1所在的垂直轴的方向向量可为(0,0,1),所述手势结束点E点所在的垂直轴的方向向量为(0,0,1)。

根据两个线条的方向向量确定两个线条之间的角度,可参照三维空间中两线条之间的角度A的计算公式:CosA=V1·V2/(V1|*|V2|),其中V1与V2分别为两线条的方向向量,V1=(a1,b1,c1),V2=(a2,b2,c2),V1·V2=(a1,b1,c1)·(a2,b2,c2)=a1*a2+b1*b2+c1*c2

由此可得:cosθ1=((x2-x1),(y2-y1),(z2-z1))·(0,0,1)/(|((x2-x1),(y2-y1),(z2-z1))|*|(0,0,1)|),其中

cosθ2=((x1-x0),(y1-y0),(z1-z0))·(0,0,1)/(|((x1-x0),(y1-y0),(z1-z0))|*|(0,0,1)|),其中

θ3的计算方式与θ2的计算方式类同,不再赘述。

所述计算模块103根据点的坐标来确定角度方向。参图3所示,从E所在的垂直轴到S、E之间的连线的角度,由于E点所在的垂直轴的坐 标在X轴与Y轴的坐标值不变,即都为(x2,y2),且x2>x1,故从E点所在的垂直轴到S、E之间的连线的角度θ1的方向为逆时针方向。同理,由于S点X轴坐标值大于第一摄像机垂直轴中心点O1的X轴坐标值,故从第一摄像机垂直轴到S点与第一摄像机垂直轴中心点O1的连线之间的角度θ2的方向为逆时针;由于S点X轴坐标值小于第二摄像机垂直轴中心点O2的X轴坐标值,故从第二摄像机垂直轴到S点与第二摄像机垂直轴中心点O2的连线之间的角度θ3的方向为顺时针方向。

参图4所示,由于E1点X轴坐标值大于S1点X轴坐标值,故E1点所在的垂直轴到S1、E1之间的连线的角度θ11的方向为逆时针方向;由于S1点X轴坐标值大于第一摄像机垂直轴中心点O3的X轴坐标值,故从第一摄像机垂直轴到S1点与第一摄像机垂直轴中心点O3的连线之间的角度θ4的方向为逆时针;由于S1点X轴坐标值大于第二摄像机垂直轴中心点O4的X轴坐标值,故从第二摄像机垂直轴到S1点与第二摄像机垂直轴中心点O4之间的连线之间的角度θ5的方向为逆时针方向。

参阅图5所示,是本发明手势控制方法的较佳实施例的流程图。该手势控制方法可被图1中的手势控制装置所执行。根据不同需求,该流程图中步骤的顺序可以改变,某些步骤可以省略或合并。

步骤502,所述手势控制装置的获取模块101从各深度摄像机获取具有深度信息的影像。所述影像包括多幅,分别包括有手势起始点与手势结束点的影像。

步骤503,所述手势控制装置的坐标确定模块102根据所获取的影像建立坐标系统,计算深度摄像机垂直轴。具体地,所述摄像机所拍摄的图像中,深度信息作为Z轴,其中摄像机中心点Z轴值为0。所述摄像机中心点坐标可设为(x0,y0,z0),摄像机中心点的垂直轴的方向向量可表示為(0,0,1)。

步骤506,所述坐标确定模块102确定所述手势起始端S与手势结束端E的坐标。确定手势起始端与结束端时,可以是手上的某一特定点,譬如手指指尖或手掌心或手的中心点等来确定手势起始端与手势结束端。当图像中第一次出现手势时手上该特定点的位置为手势起始端,手势停顿超过预定时长时该手上特定点的位置即为手势结束端。根据确定的坐标系来计算手势起始端与手势结束端的坐标值。

步骤508,所述计算模块103根据上述坐标值计算从手势结束端E所在的垂直轴到手势起始端S与手势结束端E之间的连线的第一角度的角度值与角度方向,如图3中的θ1与图4中的θ11。具体地,所述计算模块103根据所述手势起始端S与所述手势结束端E的X轴坐标值确定该第一角度的方向,如果所述手势结束端E的X轴坐标值大于所述手势起始端的X轴坐标值,则所述第一角度的方向为逆时针方向;反之,如果如果所述手势结束端E的X轴坐标值小于所述手势起始端的X轴坐标值,则所述第一角度的方向为顺时针方向。

步骤510,所述计算模块103根据上述坐标值计算各各摄像机中心点与手势起始端S的连线的方向向量。所述连线的方向向量的计算参上所述。

步骤512,所述计算模块103根据所计算得到的连线的方向向量计算各摄像机中心点垂直轴到各连线的第二角度的角度值与方向。具体地,所述计算模块103根据各摄像机中心点的X轴坐标值与手势起始端S点的X轴坐标值的大小判断第二角度的方向。如图3所示,当摄像机中心点的X轴坐标值大于手势起始端S点坐标值时,所述第二角度方向为顺时针方向,如图3中的角度θ2、θ3,图4中的角度θ21;反之,如果摄像机中心点的X轴坐标值小于手势起始端S点坐标值时,所述第二角度方向为逆时针方向,如图4中的角度θ31,所述计算模块103根据各摄像机 中心点的坐标与手势起始端S点的坐标确定各摄像机中心点与手势起始端S点之间连线的方向向量,再根据该方向向量确定所述第二角度的角度值。具体计算方法参上述说明。

步骤514,所述确定模块104判断所有第二角度中是否有至少两个第二角度与第一角度方向相同,即同为逆时针或顺时针方向。如果至少有两个第二角度与第一角度方向相同,则进入步骤516,否则进入步骤522。

步骤516,所述确定模块104确定与第一角度的绝对差值最小的第二角度。具体地,先计算各第二角度与第一角度的绝对差值,然后比较各绝对差值的大小,确定最小的绝对差值及其对应的第二角度。

步骤518,所述确定模块104判断该最小的绝对差值是否小于一预定误差值δ,如果该最小的绝对差值小于该预定误差值δ,则进入步骤520,否则流程结束。

步骤520,所述确定模块104确定该最小的绝对差值对应的第二角度对应的电子装置为被手势控制对象。

步骤522,所述确定模块104判断是否有一个第二角度与第一角度同向,如果有,则进入步骤524,否则流程结束。

步骤524,所述确定模块104判断所述与第一角度同向的第二角度与第一角度的绝对差值是否小于所述预定误差值δ,如果与第一角度同向的第二角度与第一角度的绝对差值小于所述预定误差值δ,流程进入步骤526,否则流程结束。

步骤526,所述确定模块104判断所述与第一角度同向的第二角度对应的电子装置为被手势控制对象。

本发明的手势控制系统及方法,通过对手势的具有深度信息的影像。

以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上 较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换都不应脱离本发明技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1