发明内容
根据本公开的一个方面,提供以下技术方案:
一种拳击动作识别方法,包括:从图像源获取视频图像,所述视频图像中包括至少一个人手;从所述视频图像的当前帧中检测出所述人手;跟踪所述人手并获取当前帧中的人手的第一属性;识别所述当前帧中的人手的手势;响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。
进一步的,所述从图像源获取视频图像,所述视频图像中包括至少一个人手,包括:从图像传感器中采集视频图像,其中所述图像传感器采集到的视频图像中包括至少一个人手。
进一步的,所述从所述视频图像的当前帧中检测出所述人手,包括:检测人手的关键点;通过所述人手的关键点检测到人手的位置。
进一步的,所述跟踪所述人手并获取当前帧中的人手的第一属性,包括:跟踪所述人手的位置并获取当前帧中的人手外接矩形的长和/或宽。
进一步的,所述识别所述当前帧中的人手的手势,包括:将所述当前帧中的人手从所述当前帧中分割出来并输入图像分类器;根据所述图像分类器的分类结果确定所述手势的类别。
进一步的,所述响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势,包括:如果识别出当前帧中的人手的手势为拳头,则从第一存储位置上读取上一帧中所保存的人手的手势。
进一步的,所述响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性,包括:如果上一帧中的人手的手势为拳头,则从第二存储位置上读取上一帧中所保存的人手的第一属性。
进一步的,所述使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作,包括:使用所述当前帧中的人手的第一属性减去上一帧中的人手的第一属性得到第一差值;如果所述第一差值大于或等于第一阈值,则将人手的动作识别为拳击动作。
进一步的,所述方法还包括:将所述当前帧的人手的手势为拳头保存在第一存储位置上,将当前帧中的人手的第一属性保存在第二存储位置上。
进一步的,所述方法还包括:响应于识别出所述拳击动作,在显示装置上显示预先设置的图像特效。
根据本公开的另一个方面,还提供以下技术方案:
一种拳击动作识别装置,包括:
视频图像获取模块,用于从图像源获取视频图像,所述视频图像中包括至少一个人手;
人手检测模块,用于从所述视频图像的当前帧中检测出所述人手;
人手跟踪模块,用于跟踪所述人手并获取当前帧中的人手的第一属性;
手势识别模块,用于识别所述当前帧中的人手的手势;
第一手势获取模块,用于响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;
第一属性获取模块,用于响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;
动作识别模块,用于使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。
进一步的,所述视频图像获取模块,还包括:
图像采集模块,用于从图像传感器中采集视频图像,其中所述图像传感器采集到的视频图像中包括至少一个人手
进一步的,所述人手检测模块,还包括:
关键点检测模块,用于检测人手的关键点;
位置检测模块,用于通过所述人手的关键点检测到人手的位置。
进一步的,所述人手跟踪模块,还用于:
跟踪所述人手的位置并获取当前帧中的人手外接矩形的长和/或宽。
进一步的,所述手势识别模块,还包括:
图像分割模块,用于将所述当前帧中的人手从所述当前帧中分割出来并输入图像分类器;
分类模块,用于根据所述图像分类器的分类结果确定所述手势的类别。
进一步的,所述第一手势获取模块,还用于:
如果识别出当前帧中的人手的手势为拳头,则从第一存储位置上读取上一帧中所保存的人手的手势。
进一步的,所述第一属性获取模块,还用于:
如果上一帧中的人手的手势为拳头,则从第二存储位置上读取上一帧中所保存的人手的第一属性。
进一步的,所述动作识别模块,还包括:
第一差值计算模块,用于使用所述当前帧中的人手的第一属性减去上一帧中的人手的第一属性得到第一差值;
动作识别子模块,用于如果所述第一差值大于或等于第一阈值,则将人手的动作识别为拳击动作。
进一步的,所述装置,还包括:
存储模块,用于将所述当前帧的人手的手势为拳头保存在第一存储位置上,将当前帧中的人手的第一属性保存在第二存储位置上。
进一步的,所述装置,还包括:
特效显示模块,用于响应于识别出所述拳击动作,在显示装置上显示预先设置的图像特效。
根据本公开的又一个方面,还提供以下技术方案:
一种电子设备,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现上述任一拳击动作识别方法所述的步骤。
根据本公开的又一个方面,还提供以下技术方案:
一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行上述任一方法中所述的步骤。
本公开公开一种拳击动作识别方法、装置和电子设备。其中,所述拳击动作识别方法包括:从图像源获取视频图像,所述视频图像中包括至少一个人手;从所述视频图像的当前帧中检测出所述人手;跟踪所述人手并获取当前帧中的人手的第一属性;识别所述当前帧中的人手的手势;响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。本公开通比较两帧图像识别拳击动作,解决了现有技术中的动作识别的实时性差的技术问题。
上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
具体实施方式
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
本公开实施例提供一种拳击动作识别方法。本实施例提供的所述拳击动作识别方法可以由一计算装置来执行,所述计算装置可以实现为软件,或者实现为软件和硬件的组合,所述计算装置可以集成设置在服务器、终端设备等中。如图1所示,所述拳击动作识别方法主要包括如下步骤S101至步骤S107。其中:
步骤S101:从图像源获取视频图像,所述视频图像中包括至少一个人手;
在本公开中,所述视频源为本地存储空间或者网络存储空间,所述从图像源获取视频图像,包括从本地存储空间中获取视频图像或者从网络存储空间中获取视频图像,无论从哪里获取视频图像,首选需要获取视频图像的存储地址,之后从该存储地址获取视频图像,所述视频图像包括多帧图像,所述视频图像可以是视频也可以是带有动态效果的图片,只要是带有多帧的图像均可以是本公开中的视频图像。
在本公开中,所述视频源可以是图像传感器,所述从图像源获取视频图像,包括从图像传感器中采集视频图像。所述图像传感器指可以采集图像的各种设备,典型的图像传感器为摄像机、摄像头、相机等。在该实施例中,所述图像传感器可以是移动终端上的摄像头,比如智能手机上的前置或者后置摄像头,摄像头采集的视频图像可以直接显示在手机的显示屏上,在该步骤中,获取图像传感器所拍摄的视频,用于在下一步进一步识别图像。
在本公开中,所述视频图像中包括至少一个人手,人手是拳击动作的识别基础,图像中包括人手才能进一步对人手是否形成拳头,是否形成拳击动作进行识别。
在一个典型的应用中,用户使用移动终端的摄像头拍摄自己的人体图像,移动终端将拍摄到的图像显示在移动终端的显示装置上,此时用户可以在摄像头前做出各种动作,移动终端通过摄像头采集到的人体图像对人体的动作进行识别。
步骤S102:从所述视频图像的当前帧中检测出所述人手;
在检测人手时,可以使用颜色特征定位人手的位置,将人手从背景中分割出来,对找到和分割出的人手图像进行特征提取与识别。具体的,使用图像传感器获取图像的颜色信息以及颜色信息的位置信息;将所述颜色信息与预设的人手颜色信息对比;识别人手上的第一颜色信息,所述第一颜色信息与所述预设的人手颜色信息的误差小于第一阈值;利用所述第一颜色信息的位置信息形成人手的轮廓。优选的,为了避免环境亮度对颜色信息的干扰,可以将图像传感器采集到的RGB颜色空间的图像数据映射到HSV颜色空间,使用HSV颜色空间中的信息作为对比信息,优选的,将HSV颜色空间中的色调值作为颜色信息,色调信息受亮度的影响最小,可以很好的过滤亮度的干扰。使用人手轮廓粗略确定人手的位置,之后对人手进行关键点检测。检测人手的关键点;通过所述人手的关键点检测到人手的位置,在图像上进行人手关键点检测,相当于寻找每个人手轮廓关键点在人手图像中的对应位置坐标,即关键点定位,这一过程需要基于关键点对应的特征进行,在获得了能够清晰标识关键点的图像特征之后,依据此特征在图像中进行搜索比对,在图像上精确定位关键点的位置。由于关键点在图像中仅占据非常小的面积(通常只有几个至几十个像素的大小),关键点对应的特征在图像上所占据的区域通常也是非常有限和局部的,目前用的特征提取方式有两种:(1)沿轮廓垂向的一维范围图像特征提取;(2)关键点方形邻域的二维范围图像特征提取。上述两种方式有很多种实现方法,如ASM和AAM类方法、统计能量函数类方法、回归分析方法、深度学习方法、分类器方法、批量提取方法等等。上述各种实现方法所使用的关键点个数,准确度以及速度各不相同,适用于不同的应用场景。
在识别出人手之后,在人手的外轮廓之外圈定一个多边形,作为人手的外接检测框,该外接检测框用于替代所述人手,描述所述人手的位置,在此以矩形为例,在识别出人手的关键点之后,可以计算人手最宽处的宽度以及最长处的长度,以该宽度和长度识别出人手的外接检测框。计算人手的最长处和最宽处的一个实现方式为,提取人手的边界关键点,计算X坐标距离最远的两个边界关键点的X坐标之差,作为矩形宽的长度,计算Y坐标距离最远的两个边界关键点的Y坐标之差,作为矩形长的长度。如果人手缩成拳头状,可以设定外接检测框为覆盖拳头的最小圆形。具体的,可以用外接检测框的中心点作为手的位置,所述外接检测框的中心点为外接检测框对角线的交点;也可以用所述圆形的圆心代替拳头的位置。
可以理解的是,上述人手的检测方法仅仅是举例,实际上本领域中任何一种检测人手的方法均可以应用到本公开的所述步骤S102中,还步骤的目的在于检测出人手的位置,更进一步的,可以圈定手的范围,使用这个范围来代替人手。
步骤S103:跟踪所述人手并获取当前帧中的人手的第一属性;
在本公开中,由于视频图像包括多帧,因此需要在每一帧中都跟踪人手的位置,一般来说,当识别出人手的关键点之后,只需要跟踪人手的关键点的位置的变化即可以跟踪人手的位置的变化,实际上在本公开中并不限定使用何种方法跟踪人手,常用的粒子滤波算法、均值漂移算法、卡尔曼滤波法和骨骼跟踪法等均可以应用到本公开的技术方案中。
在本公开中,所述获取当前帧的人手的第一属性,可以是人手的大小属性或者是人手的深度信息。典型的,当使用步骤S102中的外接检测框来表示手的位置时,所述外接检测框为矩形时,可以使用外接矩形的面积或者边长或者长宽比等作为人手的第一属性,在该步骤中也可以简单的获取外接矩形的长和/或宽,如果外接检测框为圆形,则可以使用圆形的半径或者面积作为第一属性。其他第一属性不再赘述,所述的第一属性可以直接或者间接的表示出人手的大小,只要是可以直接或间接得到人手大小的人手属性均可以作为该步骤中所要获取的第一属性,在此不再赘述。
步骤S104:识别所述当前帧中的人手的手势;
在该步骤中,可以将通过步骤S102检测出来的人手输入到分类模型中,以识别出人手的手势。在所述步骤S104中,将所述当前帧中的人手从所述当前帧中分割出来并输入图像分类器;根据所述图像分类器的分类结果确定所述手势的类别。人手的分割可以基于步骤S102的检测结果,通过人手的外轮廓分割出人手图像,输入到卷积神经网络中,所述的卷积神经网络为预先训练好的,用于对手势进行分类的网络。典型的,该网络可以只识别拳头,将人手的图像输入到卷积神经网络的输入层,经过卷积层的多次卷积之后输出特征图到图像分类器,图像分类器输出该人手图像为拳头的概率,当概率大于一个阈值时,可以认为识别出人手图像中的人手为拳头。可以理解是的,上述人手的手势的识别,也可以使用其他方法,只要是满足实时性要求的方法均可以应用于本公开的所述步骤S104中来对人手的手势进行识别。
如果当前帧中的人手的手势不是拳头,则更新第一存储位置上的信息,所述第一存储位置用于存储上一帧的手势类型。更新第一存储位置上的信息之后,回到步骤S102继续监测下一帧的人手。
步骤S105:响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;
在所述步骤中,所述响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势,包括:如果识别出当前帧中的人手的手势为拳头,则从预定的存储位置上读取上一帧中所保存的人手的手势。在当前帧的人手手势为拳头时,获取上一帧的人手手势,在该方法中需要预先设置一个第一存储位置存储上一帧的人手手势,该第一存储位置上可以仅存储两个值0和1,0表示不是拳头,1表示是拳头。如果上一帧图像中的人手的手势不是拳头,则更新所述第一存储位置上的手势为拳头,回到步骤S102继续检测下一帧的人手。如果上一帧中的人手的手势是拳头,则继续执行下边的步骤。
步骤S106:响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;
在该步骤中,所述响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性,包括:如果上一帧中的人手的手势为拳头,则从第二存储位置上读取上一帧中所保存的人手的第一属性。该步骤中,如果判断上一帧中的手势为拳头,则继续从第二存储位置上获取上一帧中的人手的第一属性,所述的第一属性为步骤S103在上一帧时所获取的人手的第一属性,具体可以为步骤S103中的人手外接检测框的长和/宽、矩形面积、圆形半径、圆形面积等等。
步骤S107:使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。
在本公开中,如图2所示,所述步骤S107可以包括:
步骤S201:使用所述当前帧中的人手的第一属性减去上一帧中的人手的第一属性得到第一差值;
步骤S202:如果所述第一差值大于或等于第一阈值,则将人手的动作识别为拳击动作。
典型的,如使用当前帧中的人手的外接矩形的长宽之和减去上一帧中的人手的外接矩形的长宽之和,得到第一差值。如图3所示,其中301为当前帧所识别出来的拳头的外接矩形,该矩形的长为4,宽为2,长宽之和为6,而302为上一帧中识别出来的拳头的外接矩形,该矩形的长为3,宽为1.5,长宽之和为4.5,则第一差值为6-4.5=1.5。
在步骤S202中,如果所述的第一阈值为1,则1.5>1,此时认为拳头从远离镜头的位置移动到靠近镜头的位置,可以由此将人手的动作识别为拳击动作。一般情况下,仅使用外接框的单个边长或者半径也可以实现上述效果,在此不再赘述。如果镜头为深度镜头,图像直接带有深度信息,则可以直接使用深度信息作为第一属性,如果判断两帧均为拳头,且拳头是靠近镜头的,则可以判断动作为拳击动作。
如图4所示,在步骤S107之后,还可以包括:
步骤S401:将当前帧的人手的手势为拳头保存在第一存储位置上,将当前手势的第一属性值保存在第二存储位置上。并回到步骤S102中继续识别下一帧中的人手。
如图5所示,在步骤S107之后,还可以包括:
步骤S501:响应于识别出所述拳击动作,在显示装置上显示预先设置的图像特效。
在一个典型的应用中,当识别出拳击动作时候,可以在显示装置的预定位置显示“拳击!”的字样,或者也可以显示其他任何特效,此时拳击动作作为一个特效的触发条件来使用。
此外,还可以通过第一属性的差值来判断出拳的速度,如可以设置第二阈值,还以步骤S107中的实例为例,如果上一帧中识别出来的拳头的外接矩形的长为1,宽为0.5,则长宽和为1.5,第一差值为6-1.5=4.5,如果第二阈值为4,则4.5>4,证明拳头外接框的变化很剧烈,出拳的速度较快,此时可以显示“快拳!”的字样。当然触发的效果以及方式不局限于上述效果和方式,实际上通过第一属性可以表示出很多拳击的状态,根据不同的状态可以设置不同的对应的特效。
此外,上述识别拳击动作的过程还可以包括双手的过程,此时对视频图像中每个识别出的人手都分配一个全局唯一的ID,步骤S101-S107中的每一步都可以针对每个唯一ID所表示的人手来执行,这样对每个人手单独执行上述步骤,可以针对每个人手单独识别出拳击动作,在此不再赘述。
本公开公开一种拳击动作识别方法、装置和电子设备。其中,所述拳击动作识别方法包括:从图像源获取视频图像,所述视频图像中包括至少一个人手;从所述视频图像的当前帧中检测出所述人手;跟踪所述人手并获取当前帧中的人手的第一属性;识别所述当前帧中的人手的手势;响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。本公开通比较两帧图像识别拳击动作,解决了现有技术中的动作识别的实时性差的技术问题。
在上文中,虽然按照上述的顺序描述了上述方法实施例中的各个步骤,本领域技术人员应清楚,本公开实施例中的步骤并不必然按照上述顺序执行,其也可以倒序、并行、交叉等其他顺序执行,而且,在上述步骤的基础上,本领域技术人员也可以再加入其他步骤,这些明显变型或等同替换的方式也应包含在本公开的保护范围之内,在此不再赘述。
下面为本公开装置实施例,本公开装置实施例可用于执行本公开方法实施例实现的步骤,为了便于说明,仅示出了与本公开实施例相关的部分,具体技术细节未揭示的,请参照本公开方法实施例。
本公开实施例提供一种图像的处理装置。所述装置可以执行上述拳击动作识别方法实施例中所述的步骤。如图6所示,所述装置600主要包括:视频图像获取模块601、人手检测模块602、人手跟踪模块603、手势识别模块604、第一手势获取模块605、第一属性获取模块606和动作识别模块607。其中,
视频图像获取模块601,用于从图像源获取视频图像,所述视频图像中包括至少一个人手;
人手检测模块602,用于从所述视频图像的当前帧中检测出所述人手;
人手跟踪模块603,用于跟踪所述人手并获取当前帧中的人手的第一属性;
手势识别模块604,用于识别所述当前帧中的人手的手势;
第一手势获取模块605,用于响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;
第一属性获取模块606,用于响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;
动作识别模块607,用于使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。
进一步的,所述视频图像获取模块601,还包括:
图像采集模块,用于从图像传感器中采集视频图像,其中所述图像传感器采集到的视频图像中包括至少一个人手
进一步的,所述人手检测模块602,还包括:
关键点检测模块,用于检测人手的关键点;
位置检测模块,用于通过所述人手的关键点检测到人手的位置。
进一步的,所述人手跟踪模块603,还用于:
跟踪所述人手的位置并获取当前帧中的人手外接矩形的长和/或宽。
进一步的,所述手势识别模块604,还包括:
图像分割模块,用于将所述当前帧中的人手从所述当前帧中分割出来并输入图像分类器;
分类模块,用于根据所述图像分类器的分类结果确定所述手势的类别。
进一步的,所述第一手势获取模块605,还用于:
如果识别出当前帧中的人手的手势为拳头,则从第一存储位置上读取上一帧中所保存的人手的手势。
进一步的,所述第一属性获取模块606,还用于:
如果上一帧中的人手的手势为拳头,则从第二存储位置上读取上一帧中所保存的人手的第一属性。
进一步的,所述动作识别模块607,还包括:
第一差值计算模块,用于使用所述当前帧中的人手的第一属性减去上一帧中的人手的第一属性得到第一差值;
动作识别子模块,用于如果所述第一差值大于或等于第一阈值,则将人手的动作识别为拳击动作。
进一步的,所述装置600,还包括:
存储模块,用于将所述当前帧的人手的手势为拳头保存在第一存储位置上,将当前帧中的人手的第一属性保存在第二存储位置上。
进一步的,所述装置600,还包括:
特效显示模块,用于响应于识别出所述拳击动作,在显示装置上显示预先设置的图像特效。
图6所示装置可以执行图1-图5所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图5所示实施例的相关说明。所述技术方案的执行过程和技术效果参见图1-图5所示实施例中的描述,在此不再赘述。
下面参考图7,其示出了适于用来实现本公开实施例的电子设备700的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储装置708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
通常,以下装置可以连接至I/O接口705:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,所述计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从ROM 702被安装。在所述计算机程序被处理装置701执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,所述程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,所述计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入所述电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被所述电子设备执行时,使得所述电子设备:从图像源获取视频图像,所述视频图像中包括至少一个人手;从所述视频图像的当前帧中检测出所述人手;跟踪所述人手并获取当前帧中的人手的第一属性;识别所述当前帧中的人手的手势;响应于识别出所述当前帧中的人手的手势为拳头,获取上一帧中的人手的手势;响应于所述上一帧中的人手的手势为拳头,获取上一帧中的人手的第一属性;使用所述当前帧中的人手的第一属性和上一帧中的人手的第一属性计算第一结果,如果所述第一结果满足第一条件,则将人手的动作识别为拳击动作。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对所述单元本身的限定。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。