实现手势操作的方法和装置与流程

文档序号:14991324发布日期:2018-07-20 22:17阅读:115来源:国知局

本发明涉及电子技术领域,特别是涉及到一种实现手势操作的方法和装置。



背景技术:

随着图像识别技术的发展,手势操作方式已开始应用于终端设备。手势操作的大致流程为:用户在终端设备面前做出预设的手势动作,终端设备识别出人体的手势动作,将手势动作翻译为对应的操作指令并执行。通过手势操作,用户无需靠近和触摸终端设备,远距离就能操控终端设备,给用户带来了新奇的操作体验。

然而,现有的终端设备在同一时间内只能识别一个人的手势动作,当有多个人同时做出手势动作,终端设备则无法识别多人的手势,进而不能同时响应多人的手势操作,因此无法应用于多人操作的应用场景,使得手势操作的应用范围受限。



技术实现要素:

本发明的主要目的为提供一种实现手势操作的方法和装置,旨在解决现有的终端设备不能同时响应多人的手势操作的技术问题,扩展手势操作的应用范围。

为达以上目的,本发明实施例提出一种实现手势操作的方法,所述方法包括以下步骤:

进行人体检测;

当检测到至少两个人体时,分别识别各个人体的手势动作;

根据各个人体的手势动作执行相应的操作指令。

可选地,所述分别识别各个人体的手势动作的步骤包括:

将检测到的不同的人体划分为不同的区域;

分别对各个区域进行手势识别,将识别出的各个区域的手势动作作为各个人体的手势动作。

可选地,所述进行人体检测的步骤包括:基于梯度方向直方图进行人体检测。

可选地,所述基于梯度方向直方图进行人体检测的步骤包括:

对检测窗口内的图像进行一阶梯度计算;

计算所述图像中各个单元格的梯度方向直方图;

对所述图像中每个块内的所有单元格进行归一化处理,得到所述块的梯度方向直方图;

对所述图像内的所有块进行归一化处理,得到所述检测窗口的梯度方向直方图,并将所述检测窗口的梯度方向直方图作为人体特征向量。

可选地,所述基于梯度方向直方图进行人体检测的步骤包括:

将检测窗口划分为n个子窗口,n≥2;

对各个子窗口内的图像进行一阶梯度计算;

计算每个子窗口内的图像中各个单元格的梯度方向直方图;

对每个子窗口内的图像中每个块内的所有单元格进行归一化处理,得到所述块的梯度方向直方图;

对每个子窗口内的图像中的所有块进行归一化处理,得到所述子窗口的梯度方向直方图;

将各子窗口的梯度方向直方图组成为人体特征向量。

可选地,所述计算所述图像内各个单元格的梯度方向直方图的步骤包括:

计算所述图像内每个像素的梯度;

统计出所述图像内每个单元格中所有像素的梯度方向直方图。

可选地,所述统计出所述图像内每个单元格中所有像素的梯度方向直方图的步骤包括:

针对每个单元格,将[0~π]划分为多个区间;

根据所述单元格内各像素的梯度方向进行加权投票计算,得到所述单元格中所有像素的梯度方向直方图。

可选地,加权投票计算时,每个像素的权重为所述像素的梯度幅度。

可选地,所述根据所述单元格内各像素的梯度方向进行加权投票计算的步骤包括:

采用三线性差值进行加权投票计算。

可选地,n=4。

本发明实施例同时提出一种实现手势操作的装置,所述装置包括:

检测模块,用于进行人体检测;

识别模块,用于当检测到至少两个人体时,分别识别各个人体的手势动作;

执行模块,用于根据各个人体的手势动作执行相应的操作指令。

可选地,所述识别模块包括:

第一划分单元,用于将检测到的不同的人体划分为不同的区域;

手势识别单元,用于分别对各个区域进行手势识别,将识别出的各个区域的手势动作作为各个人体的手势动作。

可选地,所述检测模块用于:基于梯度方向直方图进行人体检测。

可选地,所述检测模块包括:

第一计算单元,用于对检测窗口内的图像进行一阶梯度计算;

第二计算单元,用于计算所述图像中各个单元格的梯度方向直方图;

第一处理单元,用于对所述图像中每个块内的所有单元格进行归一化处理,得到所述块的梯度方向直方图;

第二处理单元,用于对所述图像内的所有块进行归一化处理,得到所述检测窗口的梯度方向直方图,并将所述检测窗口的梯度方向直方图作为人体特征向量。

可选地,所述检测模块包括:

第二划分单元,用于将检测窗口划分为n个子窗口,n≥2;

第三计算单元,用于对各个子窗口内的图像进行一阶梯度计算;

第四计算单元,用于计算每个子窗口内的图像中各个单元格的梯度方向直方图;

第三处理单元,用于对每个子窗口内的图像中每个块内的所有单元格进行归一化处理,得到所述块的梯度方向直方图;

第四处理单元,用于对每个子窗口内的图像中的所有块进行归一化处理,得到所述子窗口的梯度方向直方图;

组合单元,用于将各子窗口的梯度方向直方图组成为人体特征向量。

可选地,所述第二计算单元包括:

计算子单元,用于计算所述图像内每个像素的梯度;

统计子单元,用于统计出所述图像内每个单元格中所有像素的梯度方向直方图。

可选地,所述统计子单元包括:

划分子单元,用于针对每个单元格,将[0~π]划分为多个区间;

加权计算子单元,用于根据所述单元格内各像素的梯度方向进行加权投票计算,得到所述单元格中所有像素的梯度方向直方图。

可选地,所述加权计算子单元采用三线性差值进行加权投票计算。

本发明实施例还提出一种实现手势操作的装置,其包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,所述应用程序被配置为用于执行前述实现手势操作的方法。

本发明实施例所提供的一种实现手势操作的方法,通过进行人体检测,当检测到至少两个人体时,则分别识别各个人体的手势动作,并根据各个人体的手势动作执行相应的操作指令,从而实现了同时识别多人的手势,并能够响应多人的手势操作,使得手势操作可以应用于多人操作的应用场景,扩展了手势操作的应用范围。

附图说明

图1是本发明实现手势操作的方法一实施例的流程图;

图2是本发明实施例中进行人体检测的步骤的具体流程图;

图3是本发明实施例中进行人体检测的步骤的另一具体流程图;

图4是本发明实现手势操作的装置一实施例的模块示意图;

图5是图4中的检测模块的模块示意图;

图6是图5中的第二计算单元的模块示意图;

图7是图6中的统计子单元的模块示意图;

图8是图4中的检测模块的又一模块示意图;

图9是图4中的识别模块的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personalcommunicationsservice,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personaldigitalassistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(globalpositioningsystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobileinternetdevice,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。

本发明实施例实现手势操作的方法和装置,可以应用于各种终端设备,所述终端设备包括游戏机、电视机、个人电脑等固定终端,手机、平板等移动终端,等等。

参照图1,提出本发明实现手势操作的方法一实施例,所述方法包括以下步骤:

s11、进行人体检测。

本步骤s11中,可以基于梯度方向直方图(histogramoforientedgradient,hog)、尺度不变特征转换(scale-invariantfeaturetransform,sift)、局部二值模式(localbinarypattern,lbp)、harr等图像特征进行人体检测。

梯度方向直方图是类似于尺度不变特征转换的一种局域描述符,它通过计算局部区域上的梯度方向直方图来构成人体特征。与尺度不变特征转换不同的是,尺度不变特征转换是基于关键点的特征提取,是一种稀疏描述方法,而梯度方向直方图是密集的描述方法。

梯度方向直方图描述方法具有以下优点:梯度方向直方图表示的是边缘(梯度)的结构特征,因此可以描述局部的形状信息;位置和方向空间的量化,在一定程度上可以抑制平移和旋转带来的影响;同时采取在局部区域的归一化,可以部分抵消光照带来的影响。故本发明实施例优选基于梯度方向直方图进行人体检测。

如图2所示,本发明实施例基于梯度方向直方图进行人体检测的具体流程如下:

s101、对检测窗口内的图像进行一阶梯度计算。

本发明实施例中,将规范化大小(如64x128)的检测窗口(detectionwindow)作为输入,通过一阶(一维)sobel算子[-1,0,1]计算检测窗口内的图像水平和垂直方向上的梯度。

采用单一窗口作为分类器输入的好处是分类器对目标的位置与尺度具有不变性。对于一个待检测的输入图像来说,需要沿着水平和垂直方向移动检测窗口,同时要以多尺度对图像进行缩放以检测不同尺度下的人体。

s102、计算图像中各个单元格的梯度方向直方图。

梯度方向直方图是在被称为单元格(cell)和块(block)的网格内进行密集计算得到的。将图像分成若干单元格,每个单元格由多个像素构成,而块则是由若干相邻的单元格组成。

本发明实施例中,先计算图像内每个像素的梯度,再统计出图像内每个单元格中所有像素的梯度方向直方图,即该单元格的梯度方向直方图。在统计各个单元格的梯度方向直方图时,首先针对每个单元格将[0~π]划分为多个区间,然后根据该单元格内各像素的梯度方向进行加权投票计算,得到该单元格中所有像素的梯度方向直方图。

在进行加权投票计算时,每个像素的权重为优选为该像素的梯度幅度。为了消除混淆,优选采用三线性差值(trilinearinterpolationi)进行加权投票计算。

遍历图像中的每个单元格,得到图像中各个单元格的梯度方向直方图。

s103、对图像中每个块内的所有单元格进行归一化处理,得到每个块的梯度方向直方图。

在块内,对该块内的单元格的梯度方向直方图进行归一化处理,以消除光照的影响,从而得到该块的梯度方向直方图。

遍历图像中的每个块,得到图像中每个块的梯度方向直方图。

s104、对图像内的所有块进行归一化处理,得到检测窗口的梯度方向直方图,并将检测窗口的梯度方向直方图作为人体特征向量。

本步骤s104中,由各块归一化后得到的检测窗口的梯度方向直方图,构成人体特征向量,从而实现人体检测。

由于梯度方向直方图是一种密集计算方式,因此计算量较大。为了减小计算量,提高检测速度,可以考虑选择在有较明显的人体轮廓的重点区域计算梯度方向直方图,从而达到降低维数的目的。因此,可以采用如图3所示的人体检测方法进行人体检测,具体包括以下步骤:

s201、将检测窗口划分为n个子窗口,n≥2。

s202、对各个子窗口内的图像进行一阶梯度计算。

s203、计算每个子窗口内的图像中各个单元格的梯度方向直方图。

s204、对每个子窗口内的图像中每个块内的所有单元格进行归一化处理,得到块的梯度方向直方图。

s205、对每个子窗口内的图像中的所有块进行归一化处理,得到子窗口的梯度方向直方图。

s206、将各子窗口的梯度方向直方图组成为人体特征向量。

本方案与前述第一方案(图2所示)的区别是增加步骤s201和s206。在步骤s201中将检测窗口划分为n(n≥2)个子窗口,例如将检测窗口中人体的头部区域、左手臂区域、右手臂区域和腿部区域四个重点区域作为子窗口,即将检测窗口划分为4个子窗口。然后在步骤s202-s205中,针对每个子窗口,采用与第一方案相同的方式计算出各个子窗口的梯度方向直方图。最后在步骤s206中,将各个子窗口的梯度方向直方图组成最终的人体特征向量。

通过实际计算发现,基于重点区域梯度方向直方图的方法得到的人体特征向量维数明显减少,有效降低了各个环节的计算量,提高了检测速度。

s12、当检测到至少两个人体时,分别识别各个人体的手势动作。

本发明实施例中,当检测到至少两个人体时,先将检测到的不同的人体划分为不同的区域,然后分别对各个区域进行手势识别,将识别出的各个区域的手势动作作为各个人体的手势动作。

s13、根据各个人体的手势动作执行相应的操作指令。

本发明实施例中,根据手势动作与操作指令的对应关系,将各个人体的手势动作翻译为对应的操作指令,并分别执行各个操作指令。从而实现了对多人手势的识别,能够同时响应多人的手势操作。

本发明实施例实现手势操作的方法,通过进行人体检测,当检测到至少两个人体时,则分别识别各个人体的手势动作,并根据各个人体的手势动作执行相应的操作指令,从而实现了同时识别多人的手势,并能够响应多人的手势操作,使得手势操作可以应用于多人操作的应用场景,扩展了手势操作的应用范围。

参照图4,提出本发明实现手势操作的装置一实施例,所述装置包括检测模块10、识别模块20和执行模块30,其中:检测模块10,用于进行人体检测;识别模块20,用于当检测到至少两个人体时,分别识别各个人体的手势动作;执行模块30,用于根据各个人体的手势动作执行相应的操作指令。

本发明实施例中,检测模块10可以基于梯度方向直方图(histogramoforientedgradient,hog)、尺度不变特征转换(scale-invariantfeaturetransform,sift)、局部二值模式(localbinarypattern,lbp)、harr等图像特征进行人体检测。

梯度方向直方图是类似于尺度不变特征转换的一种局域描述符,它通过计算局部区域上的梯度方向直方图来构成人体特征。与尺度不变特征转换不同的是,尺度不变特征转换是基于关键点的特征提取,是一种稀疏描述方法,而梯度方向直方图是密集的描述方法。

梯度方向直方图描述方法具有以下优点:梯度方向直方图表示的是边缘(梯度)的结构特征,因此可以描述局部的形状信息;位置和方向空间的量化,在一定程度上可以抑制平移和旋转带来的影响;同时采取在局部区域的归一化,可以部分抵消光照带来的影响。故本发明实施例优选基于梯度方向直方图进行人体检测。

如图5所示,检测模块10包括第一计算单元11、第二计算单元12、第一处理单元13和第二处理单元14,其中:第一计算单元11,用于对检测窗口内的图像进行一阶梯度计算;第二计算单元12,用于计算图像中各个单元格的梯度方向直方图;第一处理单元13,用于对图像中每个块内的所有单元格进行归一化处理,得到块的梯度方向直方图;第二处理单元14,用于对图像内的所有块进行归一化处理,得到检测窗口的梯度方向直方图,并将检测窗口的梯度方向直方图作为人体特征向量。

本发明实施例中,第一计算单元11将规范化大小(如64x128)的检测窗口(detectionwindow)作为输入,通过一阶(一维)sobel算子[-1,0,1]计算检测窗口内的图像水平和垂直方向上的梯度。

采用单一窗口作为分类器输入的好处是分类器对目标的位置与尺度具有不变性。对于一个待检测的输入图像来说,需要沿着水平和垂直方向移动检测窗口,同时要以多尺度对图像进行缩放以检测不同尺度下的人体。

梯度方向直方图是在被称为单元格(cell)和块(block)的网格内进行密集计算得到的。将图像分成若干单元格,每个单元格由多个像素构成,而块则是由若干相邻的单元格组成。

本发明实施例中,第二计算单元12如图6所示,包括计算子单元121和统计子单元122,其中:计算子单元121,用于计算图像内每个像素的梯度;统计子单元122,用于统计出图像内每个单元格中所有像素的梯度方向直方图,即该单元格的梯度方向直方图。

统计子单元122如图7所示,包括划分子单元1221和加权计算子单元1222121,其中:划分子单元1221,用于针对每个单元格,将[0~π]划分为多个区间;加权计算子单元1222121,用于根据单元格内各像素的梯度方向进行加权投票计算,得到该单元格中所有像素的梯度方向直方图。

加权计算子单元1222121在进行加权投票计算时,每个像素的权重为优选为该像素的梯度幅度。为了消除混淆,加权计算子单元1222121优选采用三线性差值(trilinearinterpolationi)进行加权投票计算。

加权计算子单元1222121遍历图像中的每个单元格,得到图像中各个单元格的梯度方向直方图。

在块内,第一处理单元13对该块内的单元格的梯度方向直方图进行归一化处理,以消除光照的影响,从而得到该块的梯度方向直方图。第一处理单元13遍历图像中的每个块,得到图像中每个块的梯度方向直方图。

第二处理单元14将各块归一化后得到的检测窗口的梯度方向直方图,构成人体特征向量,从而实现人体检测。

由于梯度方向直方图是一种密集计算方式,因此计算量较大。为了减小计算量,提高检测速度,可以考虑选择在有较明显的人体轮廓的重点区域计算梯度方向直方图,从而达到降低维数的目的。

因此,检测模块10还可以如图8所示,包括第二划分单元101、第三计算单元102、第四计算单元103、第三处理单元104、第四处理单元105和组合单元106,其中:第二划分单元101,用于将检测窗口划分为n个子窗口,n≥2;第三计算单元102,用于对各个子窗口内的图像进行一阶梯度计算;第四计算单元103,用于计算每个子窗口内的图像中各个单元格的梯度方向直方图;第三处理单元104,用于对每个子窗口内的图像中每个块内的所有单元格进行归一化处理,得到块的梯度方向直方图;第四处理单元105,用于对每个子窗口内的图像中的所有块进行归一化处理,得到子窗口的梯度方向直方图;组合单元106,用于将各子窗口的梯度方向直方图组成为人体特征向量。

举例而言:第二划分单元101将检测窗口划分为4个子窗口,例如将检测窗口中人体的头部区域、左手臂区域、右手臂区域和腿部区域四个重点区域作为子窗口。第三计算单元102采用与第一计算单元11相同的方式对各个子窗口内的图像进行一阶梯度计算。第四计算单元103采用与第二计算单元12相同的方式计算出每个子窗口内的图像中各个单元格的梯度方向直方图。第三处理单元104采用与第一处理单元13相同的方式对每个子窗口内的图像中每个块内的所有单元格进行归一化处理。第四处理单元105采用与第二处理单元14相同的方式对每个子窗口内的图像中的所有块进行归一化处理。最后由组合单元106将各个子窗口的梯度方向直方图组成最终的人体特征向量。

通过实际计算发现,基于重点区域梯度方向直方图的方法得到的人体特征向量维数明显减少,有效降低了各个环节的计算量,提高了检测速度。

本发明实施例中,识别模块20如图9所示,包括第一划分单元21和手势识别单元22,其中:第一划分单元21,用于将检测到的不同的人体划分为不同的区域;手势识别单元22,用于分别对各个区域进行手势识别,将识别出的各个区域的手势动作作为各个人体的手势动作。

本发明实施例中,执行模块30根据手势动作与操作指令的对应关系,将各个人体的手势动作翻译为对应的操作指令,并分别执行各个操作指令。从而实现了对多人手势的识别,能够同时响应多人的手势操作。

本发明实施例实现手势操作的装置,通过进行人体检测,当检测到至少两个人体时,则分别识别各个人体的手势动作,并根据各个人体的手势动作执行相应的操作指令,从而实现了同时识别多人的手势,并能够响应多人的手势操作,使得手势操作可以应用于多人操作的应用场景,扩展了手势操作的应用范围。

本发明同时提出一种实现手势操作的装置,其包括存储器、处理器和至少一个被存储在存储器中并被配置为由处理器执行的应用程序,所述应用程序被配置为用于执行实现手势操作的方法。所述方法包括以下步骤:进行人体检测;当检测到至少两个人体时,分别识别各个人体的手势动作;根据各个人体的手势动作执行相应的操作指令。本实施例中所描述的实现手势操作的方法为本发明中上述实施例所涉及的实现手势操作的方法,在此不再赘述。

本领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随机存储器)、eprom(erasableprogrammableread-onlymemory,可擦写可编程只读存储器)、eeprom(electricallyerasableprogrammableread-onlymemory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。

本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。

本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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