Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020114236 - KEYPOINT DETECTION METHOD AND APPARATUS, ELECTRONIC DEVICE, AND STORAGE MEDIUM

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17  

附图

1   2   3   4   5  

说明书

发明名称 : 关键点检测方法、装置、电子设备及存储介质

[0001]
本公开要求于2018年12月5日提交中国专利局、申请号为201811481858.9发明名称为“关键点检测方法、装置、电子设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。

技术领域

[0002]
本公开涉及图像处理技术领域,尤其涉及一种关键点检测方法、装置、电子设备及存储介质。

背景技术

[0003]
随着图像处理技术的不断发展,手势图像检测、人脸图像检测等各种图像检测技术随之产生。其中,手势图像检测主要包括:检测出各个手部关键点在手势图像中的位置。
[0004]
在相关技术中,通常采用回归算法进行手势图像检测。具体的,采用回归算法,对含有手势的手势图像中的手部关键点进行拟合,从而得到各个手部关键点在手势图像中的位置。
[0005]
但发明人发现,由于手势变化比较灵活,且不同手势的手部关键点在手势图像中的位置差异较大,因此采用回归算法对手部关键点进行拟合,会导致手部关键点的检测准确率较低。
[0006]
发明内容
[0007]
为克服相关技术中存在的问题,本公开提供一种关键点检测方法、装置、电子设备及存储介质,以解决手部关键点检测准确率较低的问题。
[0008]
根据本公开实施例的第一方面,提供一种关键点检测方法,包括获取待检测的手势图像,将所述手势图像划分为多个区域;针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值;通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值。
[0009]
根据本公开实施例的第二方面,提供一种关键点检测装置,包括划分单 元,被配置为获取待检测的手势图像,将所述手势图像划分为多个区域;确定单元,被配置为针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值;计算单元,被配置为通过每个手部关键点出现的概率与第一坐标值,计算每个势关键点在所述手势图像中的第二坐标值。
[0010]
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述第一方面所述的关键点检测方法。
[0011]
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备执行上述第一方面提供的关键点检测方法。
[0012]
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品包括程序指令,当所述计算机程序产品中的指令由电子设备的处理器执行时,使电子设备执行上述第一方面提供的关键点检测方法。
[0013]
本公开实施例提供的技术方案可以包括以下有益效果:
[0014]
本公开实施例中,获取待检测的手势图像,将手势图像划分为多个区域;针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值;通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在手势图像中的第二坐标值。本公开实施例中,通过注意力机制,使得不同区域对于每个手部关键点坐标值的贡献不同,充分考虑整幅手势图像的不同区域对每个手部关键点的重要性不同,将注意力主要集中在手部关键点最可能存在的区域,弱化其他区域在手部关键点检测中的作用,从而减小其他区域对手部关键点坐标值预测的干扰,更能适应手势的多样性,大幅度提高手部关键点检测的准确率。
[0015]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

[0016]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发 明的实施例,并与说明书一起用于解释本发明的原理。
[0017]
图1是根据一示例性实施例示出的一种关键点检测方法的流程图。
[0018]
图2是根据一示例性实施例示出的一种手部关键点位置的示意图。
[0019]
图3是根据一示例性实施例示出的一种关键点检测装置的框图。
[0020]
图4是根据一示例性实施例示出的一种用于关键点检测的装置的框图。
[0021]
图5是根据一示例性实施例示出的一种用于关键点检测的装置的框图。

具体实施方式

[0022]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0023]
图1是根据一示例性实施例示出的一种关键点检测方法的流程图,如图1所示,关键点检测方法用于电子设备中,包括以下步骤。
[0024]
在步骤S11中,获取待检测的手势图像,将所述手势图像划分为多个区域。
[0025]
本公开实施例中,可以从各种来源获取待检测的手势图像。比如,可以从网络中抓取手势图像,或者可以实时拍摄手势图像,等等。
[0026]
手势图像中包括人体的手部,手部的手势可以为任意手势。比如“ok”手势,“胜利”手势、“比心”手势,等等。手势图像可以为红绿蓝(Red Green Blue,RGB)等格式的图像。
[0027]
本公开实施例中,可以预先训练用于进行关键点检测的深度卷积神经网络。比如,可以收集大量的已知手势及该手势下各个手部关键点对应概率及坐标值的手势图像,通过这些手势图像训练深度卷积神经网络,使训练后的深度卷积神经网络能够执行本公开实施例的关键点检测方法。
[0028]
具体的,可以收集大量的已知手势的手势图像,将收集的每一手势图像划分为多个区域,统计该已知手势下各个手部关键点在这些手势图像中每个 区域出现的概率,并统计该已知手势下各个手部关键点在这些手势图像中每个区域的坐标值,通过这些手势图像、该已知手势下各个手部关键点在这些手势图像中每个区域出现的概率和坐标值,训练深度卷积神经网络,使训练后的深度卷积神经网络能够执行本公开实施例的关键点检测方法。
[0029]
上述收集的每一手势图像的区域划分方式和待检测的手势图像的区域划分方式相同。
[0030]
对于具体的深度卷积神经网络训练过程,本领域技术人员根据实际经验进行相关处理即可,本公开实施例在此不再详细论述。
[0031]
将手势图像输入到卷积神经网络中。为了解决直接通过整幅手势图像进行手部关键点检测时检测准确率较低的问题,将手势图像输入到卷积神经网络中时,可以将该手势图像划分为多个区域,将多个区域分别输入预设的卷积神经网络中依据多个区域对手部关键点进行检测。比如,可以将手势图像划分为N个区域,N为正整数。N的取值不是固定不变的,可以根据具体的应用场景选取合适的值即可。
[0032]
在步骤S12中,针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[0033]
对于人体的手部,可以设置多个手部关键点,手部关键点可以用于表征手部的关键位置。比如,可以设置M个手部关键点,M为正整数。图2是根据一示例性实施例示出的一种手部关键点位置的示意图。图2中,0-20数字所指代的点为手部关键点。由图2可知,手部可以包括21个手部关键点,对于“ok”手势中21个手部关键点的位置参见图2。
[0034]
针对每个手部关键点,可以确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。也就是,针对每个手部关键点,可以预测该手部关键点在每个区域中出现的概率,以及预测该手部关键点在每个区域中的第一坐标值。
[0035]
比如,N个区域分别为区域1、区域2、……、区域N,M个手部关键点分别为手部关键点1、手部关键点2、……、手部关键点M。针对手部关键点1,分别预测手部关键点1在区域1、区域2、……、区域N中出现的概率,并分别 预测手部关键点1在区域1、区域2、……、区域N中的第一坐标值。针对手部关键点2,分别预测手部关键点2在区域1、区域2、……、区域N中出现的概率,并分别预测手部关键点2在区域1、区域2、……、区域N中的第一坐标值。以此类推,直至针对手部关键点M,分别预测手部关键点M在区域1、区域2、……、区域N中出现的概率,并分别预测手部关键点M在区域1、区域2、……、区域N中的第一坐标值。
[0036]
在一种可选实施方式中,针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值的步骤可以包括:提取每个区域的图像特征,将每个区域的图像特征分别输入预设的卷积神经网络中的通道;针对每个手部关键点,获取卷积神经网络中的通道对每个区域的图像特征进行卷积操作后的输出结果,输出结果包括每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[0037]
上述卷积神经网络中的通道可以认为是卷积神经网络的一个模块,该模块中具有相应的卷积层和池化层。卷积神经网络中的每一通道可以独立的对图像进行卷积操作,获得相应的输出结果。
[0038]
对于图像而言,每一幅图像都具有能够区别于其他类图像的图像特征。区别于其他类图像的图像特征可以包括可以直观地感受到的自然特征,如亮度、边缘、纹理和色彩等;区别于其他类图像的图像特征还可以包括需要通过变换或处理才能得到的非自然特征,如直方图特征以及表征主成份的特征等。基于此,本公开实施例中,可以设置卷积神经网络提取手势图像的任意种图像特征,比如可以设置卷积神经网络提取方向梯度直方图(Histogram of Oriented Gradient,HOG)特征、局部二值模式(Local Binary Pattern,LBP)特征、Haar-like特征,等等,本公开实施例对此不再详细论述。
[0039]
本公开实施例中,卷积神经网络可以包括分类分支和回归分支。分类分支用于确定手势图像中每个区域中存在每个手部关键点出现的概率;回归分支用于确定手势图像中每个区域中每个手部关键点的坐标值。分类分支和回归分支的输出层结构可以相同。
[0040]
分类分支包括M个分类通道,每个分类通道对应一个手部关键点,M个分类通道对应M个手部关键点。比如按照图2所示,分类分支可以包括21个分类 通道,分别对应21个手部关键点。每个分类通道由N个网格构成,每个网格对应一个区域,N个网格对应N个区域。N的取值不是固定不变的,可以根据具体的应用场景选取合适的值即可。
[0041]
回归分支包括M个横坐标通道及M个纵坐标通道。每个横坐标通道对应一个手部关键点,M个横坐标通道对应M个手部关键点。每个横坐标通道由N个网格构成,每个网格对应一个区域,N个网格对应N个区域。每个纵坐标通道对应一个手部关键点,M个纵坐标通道对应M个手部关键点。每个纵坐标通道由N个网格构成,每个网格对应一个区域,N个网格对应N个区域。比如按照图2所示,回归分支可以包括21个横坐标通道及21个纵坐标通道,21个横坐标通道分别对应21个手部关键点,21个纵坐标通道同样分别对应21个手部关键点。
[0042]
将每个区域的图像特征分别输入预设的卷积神经网络中的通道的步骤可以包括:将N个区域的图像特征对应输入M个分类通道中的N个网格,得到每个分类通道对N个区域的图像特征进行卷积操作后的第一输出结果,每个分类通道的第一输出结果包括该分类通道对应的手部关键点在每个区域中出现的概率;将N个区域的图像特征对应输入M个横坐标通道中的N个网格,得到每个横坐标通道对N个区域的图像特征进行卷积操作后的第二输出结果,每个横坐标通道的第二输出结果包括该横坐标通道对应的手部关键点在每个区域中的第一横坐标值;将N个区域的图像特征对应输入M个纵坐标通道中的N个网格,得到每个纵坐标通道对N个区域的图像特征进行卷积操作后的第三输出结果,每个纵坐标通道的第三输出结果包括该纵坐标通道对应的手部关键点在每个区域中的第一纵坐标值。
[0043]
比如,N个区域分别为区域1、区域2、……、区域N,M个手部关键点分别为手部关键点1、手部关键点2、……、手部关键点M,M个分类通道分别为与手部关键点1对应的分类通道1、与手部关键点2对应的分类通道2、……、与手部关键点M对应的分类通道M,每个分类通道的N个网格分别为与区域1对应的网格1、与区域2对应的网格2、……、与区域N对应的网格N。
[0044]
针对区域1,将区域1的图像特征分别输入分类通道1的网格1、分类通道2的网格1、……、分类通道M的网格1,得到手部关键点1-M在区域1中出现的 概率。针对区域2,将区域2的图像特征分别输入分类通道1的网格2、分类通道2的网格2、……、分类通道M的网格2,得到手部关键点1-M在区域2中出现的概率。以此类推,直至针对区域N,将区域N的图像特征分别输入分类通道1的网格N、分类通道2的网格N、……、分类通道M的网格N,得到手部关键点1-M在区域N中出现的概率。
[0045]
同理,分别预测得到手部关键点1-M在区域1的第一横坐标值和第一纵坐标值,分别预测得到手部关键点1-M在区域2的第一横坐标值和第一纵坐标值,……,分别预测得到手部关键点1-M在区域N的第一横坐标值和第一纵坐标值。
[0046]
每个分类通道中的每个网格输出一个数值,该数值的取值范围是[0-1]区间。每个网格输出数值代表该分类通道对应的手部关键点出现在该网格对应的区域的概率。每个分类通道上所有网格输出的数值的总和是1。当一个分类通道的一个网格输出的数值较大时,代表该分类通道对应的手部关键点出现在该网格对应的区域的可能性较大,后续进行加权组合时权重较大。当一个分类通道的一个网格输出的数值较小时,代表该分类通道对应的手部关键点出现在该网格对应的区域的可能性较小,后续进行加权组合时权重较小。
[0047]
每个横坐标通道中的每个网格输出一个数值,该数值代表:通过该网格对应的区域提取的图像特征,所预测的该横坐标通道对应的手部关键点在该网格对应的区域中的横坐标的拟合值。每个纵坐标通道中的每个网格输出一个数值,该数值代表:通过该网格对应的区域提取的图像特征,所预测的该纵坐标通道对应的手部关键点在该网格对应的区域中的纵坐标的拟合值。
[0048]
在步骤S13中,通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值。
[0049]
在一种可选实施方式中,针对每个手部关键点,可以获取到卷积神经网络中的对应通道输出的该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值,并通过该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值,确定该手部关键点在手势图像中的第二坐标值。
[0050]
通过每个手部关键点出现的概率与第一坐标值,计算每一手部关键点在 手势图像中的第二坐标值的步骤可以包括:针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在手势图像中的第二坐标值。
[0051]
具体的,针对每个手部关键点,将该手部关键点在每个区域中出现的概率作为该手部关键点在每个区域中出现的第一坐标值的权重,对该手部关键点在每个区域中出现的第一坐标值进行加权计算,得到该手部关键点在手势图像中的第二坐标值。
[0052]
第一坐标值包括第一横坐标值和第一纵坐标值。将手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在手势图像中的第二坐标值的步骤可以包括:将该手部关键点在每个区域中出现的概率以及在每个区域中的第一横坐标值进行加权计算,得到该手部关键点在手势图像中的第二横坐标值;将该手部关键点在每个区域中出现的概率以及在每个区域中的第一纵坐标值进行加权计算,得到该手部关键点在手势图像中的第二纵坐标值。
[0053]
具体的,针对每个手部关键点,将该手部关键点在每个区域中出现的概率作为该手部关键点在每个区域中出现的第一横坐标值的权重,对该手部关键点在每个区域中出现的第一横坐标值进行加权计算,得到该手部关键点在手势图像中的第二横坐标值;将该手部关键点在每个区域中出现的概率作为该手部关键点在每个区域中出现的第一纵坐标值的权重,对该手部关键点在每个区域中出现的第一纵坐标值进行加权计算,得到该手部关键点在手势图像中的第二纵坐标值。
[0054]
本公开实施例中,加权计算是指计算手部关键点在每个区域中出现的概率与在对应的每个区域中的第一坐标值的乘积,并将所有乘积相加。
[0055]
比如,针对手部关键点1,确定出手部关键点1在区域1中出现的概率为P1,在区域2中出现的概率为P2,……,在区域N中出现的概率为PN。确定出手部关键点1在区域1中的第一横坐标值为x1,第一纵坐标值为y1,在区域2中的第一横坐标值为x2,第一纵坐标值为y2,……,在区域N中的第一横坐标值为xN,第一纵坐标值为yN。因此,手部关键点1在手势图像中的第二横坐标值为P1×x1+P2×x2+……+PN×xN;手部关键点1在手势图像中的第二纵坐标值为 P1×y1+P2×y2+……+PN×yN。
[0056]
因此,可以输出每个手部关键点在手势图像中的第二坐标值。
[0057]
在一种可选实施方式中,可将上述加权计算得到每一手部关键点在手势图像中的第二坐标值的功能集成在卷积神经网络中,由卷积神经网络输出每个手部关键点在手势图像中的第二坐标值。
[0058]
本公开实施例中,预测得到每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。一个手部关键点在一个区域中出现的概率的大小与该手部关键点在该区域中出现的可能性大小呈正相关的关系,通过每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值,确定每个手部关键点在手势图像中的第二坐标值。这样,可有效增强权重高的区域在手部关键点检测中的作用,减弱权重低的区域在手部关键点检测中的作用,从而增加手部关键点检测的准确率。
[0059]
本公开实施例中,通过每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值,确定每个手部关键点在手势图像中的第二坐标值,这种确定第二坐标值的方式为注意力机制的“去伪存真”方式。注意力机制源于对人类视觉的研究。在认知科学中,由于信息处理的瓶颈,人类会选择性地关注所有信息的一部分,同时忽略其他可见的信息,上述机制通常被称为注意力机制。加入注意力机制会对输入的信息进行一次基于权重的筛选,这种筛选模式并不是人工制定的,而是卷积神经网络自己学到的,即通过加权组合的方式,让卷积神经网络自己学到输入的信息在空间上的结构关系,从而使卷积神经网络能够很好的适应手势变化的多样性。在进行手部关键点检测时,整幅手势图像中各个区域的信息的重要性是不等价的,根据每个区域存在手部关键点可能性的大小获得相应的权重,将注意力主要集中到权重高的特定区域,增强权重高的区域在手部关键点检测中的作用,减弱权重低的区域在手部关键点检测中的作用,从而增加手部关键点检测的准确率。
[0060]
本公开实施例中,通过注意力机制,使得不同区域对于每个手部关键点坐标值的贡献不同,充分考虑整幅手势图像的不同区域对每个手部关键点的重要性不同,将注意力主要集中在手部关键点最可能存在的区域,弱化其他区域在手部关键点检测中的作用,从而减小其他区域对手部关键点坐标值预 测的干扰,更能适应手势的多样性,大幅度提高手部关键点检测的准确率。
[0061]
图3是根据一示例性实施例示出的一种关键点检测装置的框图。参照图3,该装置包括划分单元301、确定单元302和计算单元303。
[0062]
该划分单元301,被配置为获取待检测的手势图像,将该手势图像划分为多个区域。
[0063]
该确定单元302,被配置为针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[0064]
该计算单元303,被配置为通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在手势图像中的第二坐标值。
[0065]
在一种可选实施方式中,确定单元302可以包括:输入模块,被配置为提取每个区域的图像特征,将每个区域的图像特征输入预设的卷积神经网络中的通道;获取模块,被配置为针对每个手部关键点,获取卷积神经网络中的通道对每个区域的图像特征进行卷积操作后的输出结果,输出结果包括每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[0066]
在一种可选实施方式中,上述区域包括N个,预设手部关键点包括M个;卷积神经网络包括分类分支和回归分支,分类分支包括M个分类通道,回归分支包括M个横坐标通道及M个纵坐标通道;每个通道对应一个手部关键点,每个通道包括N个网格,每个网格对应一个区域;通道包括分类通道、横坐标通道和纵坐标通道,M个分类通道对应M个手部关键点,M个横坐标通道对应M个手部关键点,M个纵坐标通道对应M个手部关键点,每个通道包括的N个网格对应N个区域,M、N均为正整数。
[0067]
上述输入模块可以包括:第一输入子模块,被配置为将N个区域的图像特征对应输入M个分类通道中的N个网格,得到每个分类通道对N个区域的图像特征进行卷积操作后的第一输出结果,每个分类通道的第一输出结果包括该分类通道对应的手部关键点在每个区域中出现的概率;第二输入子模块,被配置为将N个区域的图像特征对应输入M个横坐标通道中的N个网格,得到每个横坐标通道对N个区域的图像特征进行卷积操作后的第二输出结果,每个横坐标通道的第二输出结果包括该横坐标通道对应的手部关键点在每个区域中 的第一横坐标值;第三输入子模块,被配置为将N个区域的图像特征对应输入M个纵坐标通道中的N个网格,得到每个纵坐标通道对N个区域的图像特征进行卷积操作后的第三输出结果,每个纵坐标通道的第三输出结果包括该纵坐标通道对应的手部关键点在每个区域中的第一纵坐标值。
[0068]
在一种可选实施方式中,计算单元303可以包括:加权模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在手势图像中的第二坐标值。
[0069]
在一种可选实施方式中,第一坐标值包括第一横坐标值和第一纵坐标值。加权模块可以包括:第一加权子模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一横坐标值进行加权计算,得到该手部关键点在手势图像中的第二横坐标值;第二加权子模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一纵坐标值进行加权计算,得到该手部关键点在手势图像中的第二纵坐标值。
[0070]
本公开实施例中,通过注意力机制,使得不同区域对于每个手部关键点坐标值的贡献不同,充分考虑整幅手势图像的不同区域对每个手部关键点的重要性不同,将注意力主要集中在手部关键点最可能存在的区域,弱化其他区域在手部关键点检测中的作用,从而减小其他区域对手部关键点坐标值预测的干扰,更能适应手势的多样性,大幅度提高手部关键点检测的准确率。
[0071]
关于本公开实施例中的装置,其中各个单元或模块执行操作的具体方式已经在有关方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0072]
图4是根据一示例性实施例示出的一种用于关键点检测的装置400的框图。例如,装置400被提供为一电子设备,电子设备可以是移动终端。装置400可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。
[0073]
参照图4,装置400可以包括以下一个或多个组件:处理组件402、存储器404、电源组件406、多媒体组件408、音频组件410、输入/输出(Input/Output, I/O)接口412、传感器组件414以及通信组件416。
[0074]
处理组件402通常控制装置400的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
[0075]
存储器404被配置为存储各种类型的数据以支持在装置400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、磁存储器、快闪存储器、磁盘或光盘等。
[0076]
电源组件406为装置400的各种组件提供电力。电源组件406可以包括电源管理系统、一个或多个电源、及其他与为装置400生成、管理和分配电力相关联的组件。
[0077]
多媒体组件408包括在装置400和用户之间提供的一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,LCD)和触摸面板(Touch Panel,TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器不仅可以感测触摸或滑动动作的边界,而且还可以检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当装置400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0078]
音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(Microphone,MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还可以包括一个扬声器,用于输出音频信号。
[0079]
I/O接口412为处理组件402和外围接口模块之间提供接口。上述外围接口模块可以是键盘、点击轮、按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮等。
[0080]
传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测装置400的打开/关闭状态、组件的相对定位,例如所述组件为装置400的显示器和小键盘。传感器组件414还可以检测装置400或装置400的一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化等。传感器组件414可以包括接近传感器,接近传感器被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)传感器或电荷耦合器件(Charge Coupled Device,CCD)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器等。
[0081]
通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如无线保真(Wireless Fidelity,WiFi)、运营商网络(如2G、3G、4G或5G)、或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件416可以包括近场通信(Near Field Communication,NFC)模块,以促进短程通信。例如,NFC模块可基于射频识别(Radio Frequency Identification,RFID)技术、红外数据协会(Infrared Data Association,IrDA)技术、超宽带(Ultra Wide Band,UWB)技术、蓝牙(Blue Tooth,BT)技术和其他技术来实现。
[0082]
在示例性实施例中,装置400可以被一个或多个应用专用集成电路 (Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理设备(Digital Signal Processor Device,DSPD)、可编程逻辑器件(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述关键点检测方法的步骤。
[0083]
对于用于关键点检测的装置实施例而言,由于其基本相似于关键点检测方法实施例,所以描述的比较简单,相关之处参见图1-2所示的关键点检测方法实施例的部分说明即可。
[0084]
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述关键点检测方法的步骤。具体可参考上述图1-2所示实施例。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc ROM,CD-ROM)、磁带、软盘和光数据存储设备等。
[0085]
对于非临时性计算机可读存储介质实施例而言,由于其基本相似于关键点检测方法实施例,所以描述的比较简单,相关之处参见图1-2所示的关键点检测方法实施例的部分说明即可。
[0086]
图5是根据一示例性实施例示出的一种用于关键点检测的装置500的框图。例如,装置500被提供为一电子设备,电子设备可以是服务器。
[0087]
参照图5,装置500包括处理组件522,处理组件522可以包括一个或多个处理器。装置500还包括由存储器532所代表的存储器资源,用于存储可由处理组件522执行的指令,例如应用程序。存储器532中存储的应用程序可以包括一个或一个以上模块,每一个模块对应于一组指令的模块。此外,处理组件522被配置为执行指令,以执行上述关键点检测方法。
[0088]
装置500还可以包括一个电源组件526、有线或无线网络接口550和一个输入输出(I/O)接口558。电源组件526被配置为执行装置500的电源管理,一个有线或无线网络接口550被配置为将装置500连接到网络。装置500可以操作存储在存储器532的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM或类似。
[0089]
对于用于关键点检测的装置实施例而言,由于其基本相似于关键点检测方法实施例,所以描述的比较简单,相关之处参见图1-2所示的关键点检测方法实施例的部分说明即可。
[0090]
在示例性实施例中,本公开实施例还提供了一种计算机程序产品,计算机程序产品包括程序指令,当计算机程序产品中的程序指令由电子设备的处理器执行时,使得电子设备执行上述关键点检测方法。
[0091]
对于计算机程序产品实施例而言,由于其基本相似于关键点检测方法实施例,所以描述的比较简单,相关之处参见图1-2所示的关键点检测方法实施例的部分说明即可。
[0092]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
[0093]
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

权利要求书

[权利要求 1]
一种关键点检测方法,包括: 获取待检测的手势图像,将所述手势图像划分为多个区域; 针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值; 通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值。
[权利要求 2]
根据权利要求1所述的关键点检测方法,所述针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值的步骤,包括: 提取每个区域的图像特征,将每个区域的图像特征分别输入预设的卷积神经网络中的通道; 获取所述卷积神经网络中的通道对每个区域的图像特征进行卷积操作后的输出结果,所述输出结果包括每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[权利要求 3]
根据权利要求2所述的关键点检测方法,所述区域包括N个,所述预设的手部关键点包括M个,所述通道包括分类通道、横坐标通道和纵坐标通道;所述卷积神经网络包括分类分支和回归分支,所述分类分支包括M个分类通道,所述回归分支包括M个横坐标通道及M个纵坐标通道;每个通道对应一个手部关键点,每个通道包括N个网格,每个网格对应一个区域;M个分类通道对应M个手部关键点,M个横坐标通道对应M个手部关键点,M个纵坐标通道对应M个手部关键点,每个通道包括的N个网格对应N个区域,M、N均为正整数; 所述将每个区域的图像特征分别输入预设的卷积神经网络中的通道的步骤,包括: 将N个区域的图像特征对应输入M个分类通道中的N个网格,得到每个分类通道对N个区域的图像特征进行卷积操作后的第一输出结果,每个分类通道的第一输出结果包括该分类通道对应的手部关键点在每个区域中出现的概率; 将N个区域的图像特征对应输入M个横坐标通道中的N个网格,得到每个横坐标通道对N个区域的图像特征进行卷积操作后的第二输出结果,每个横坐标通道的第二输出结果包括该横坐标通道对应的手部关键点在每个区域中的第一横坐标值; 将N个区域的图像特征对应输入M个纵坐标通道中的N个网格,得到每个纵坐标通道对N个区域的图像特征进行卷积操作后的第三输出结果,每个纵坐标通道的第三输出结果包括该纵坐标通道对应的手部关键点在每个区域中的第一纵坐标值。
[权利要求 4]
根据权利要求1所述的关键点检测方法,所述通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值的步骤,包括: 针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二坐标值。
[权利要求 5]
根据权利要求4所述的关键点检测方法,所述第一坐标值包括第一横坐标值和第一纵坐标值; 所述针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二坐标值的步骤,包括: 针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一横坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二横坐标值; 针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一纵坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二纵坐标值。
[权利要求 6]
一种关键点检测装置,包括: 划分单元,被配置为获取待检测的手势图像,将所述手势图像划分为多个区域; 确定单元,被配置为针对预设的每个手部关键点,确定该手部关键点在 每个区域中出现的概率以及在每个区域中的第一坐标值; 计算单元,被配置为通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值。
[权利要求 7]
根据权利要求6所述的关键点检测装置,所述确定单元包括: 输入模块,被配置为提取每个区域的图像特征,将每个区域的图像特征输入预设的卷积神经网络中的通道; 获取模块,被配置为获取所述卷积神经网络中的通道对每个区域的图像特征进行卷积操作后的输出结果,所述输出结果包括每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[权利要求 8]
根据权利要求7所述的关键点检测装置,所述区域包括N个,所述预设的手部关键点包括M个,所述通道包括分类通道、横坐标通道和纵坐标通道;所述卷积神经网络包括分类分支和回归分支,所述分类分支包括M个分类通道,所述回归分支包括M个横坐标通道及M个纵坐标通道;每个通道对应一个手部关键点,每个通道包括N个网格,每个网格对应一个区域;M个分类通道对应M个手部关键点,M个横坐标通道对应M个手部关键点,M个纵坐标通道对应M个手部关键点,每个通道包括的N个网格对应N个区域,M、N均为正整数; 所述输入模块包括: 第一输入子模块,被配置为将N个区域的图像特征对应输入M个分类通道中的N个网格,得到每个分类通道对N个区域的图像特征进行卷积操作后的第一输出结果,每个分类通道的第一输出结果包括该分类通道对应的手部关键点在每个区域中出现的概率; 第二输入子模块,被配置为将N个区域的图像特征对应输入M个横坐标通道中的N个网格,得到每个横坐标通道对N个区域的图像特征进行卷积操作后的第二输出结果,每个横坐标通道的第二输出结果包括该横坐标通道对应的手部关键点在每个区域中的第一横坐标值; 第三输入子模块,被配置为将N个区域的图像特征对应输入M个纵坐标通道中的N个网格,得到每个纵坐标通道对N个区域的图像特征进行卷积操作后的第三输出结果,每个纵坐标通道的第三输出结果包括该纵坐标通道对 应的手部关键点在每个区域中的第一纵坐标值。
[权利要求 9]
根据权利要求6所述的关键点检测装置,所述计算单元包括: 加权模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二坐标值。
[权利要求 10]
根据权利要求9所述的关键点检测装置,所述第一坐标值包括第一横坐标值和第一纵坐标值;所述加权模块包括: 第一加权子模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一横坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二横坐标值; 第二加权子模块,被配置为针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一纵坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二纵坐标值。
[权利要求 11]
一种电子设备,包括: 处理器; 用于存储处理器可执行指令的存储器; 其中,所述处理器被配置为执行: 获取待检测的手势图像,将所述手势图像划分为多个区域; 针对预设的每个手部关键点,确定该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值; 通过每个手部关键点出现的概率与第一坐标值,计算每个手部关键点在所述手势图像中的第二坐标值。
[权利要求 12]
根据权利要求11所述的电子设备,所述处理器被配置为具体执行: 提取每个区域的图像特征,将每个区域的图像特征分别输入预设的卷积神经网络中的通道; 获取所述卷积神经网络中的通道对每个区域的图像特征进行卷积操作后的输出结果,所述输出结果包括每个手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值。
[权利要求 13]
根据权利要求12所述的电子设备,所述区域包括N个,预设的手部 关键点包括M个;所述卷积神经网络包括分类分支和回归分支,所述分类分支包括M个分类通道,所述回归分支包括M个横坐标通道及M个纵坐标通道;每个通道对应一个手部关键点,每个通道包括N个网格,每个网格对应一个区域;所述通道包括分类通道、横坐标通道和纵坐标通道,M个分类通道对应M个手部关键点,M个横坐标通道对应M个手部关键点,M个纵坐标通道对应M个手部关键点,每个通道包括的N个网格对应N个区域,M、N均为正整数; 所述处理器被配置为具体执行: 将N个区域的图像特征对应输入M个分类通道中的N个网格,得到每个分类通道对N个区域的图像特征进行卷积操作后的第一输出结果,每个分类通道的第一输出结果包括该分类通道对应的手部关键点在每个区域中出现的概率; 将N个区域的图像特征对应输入M个横坐标通道中的N个网格,得到每个横坐标通道对N个区域的图像特征进行卷积操作后的第二输出结果,每个横坐标通道的第二输出结果包括该横坐标通道对应的手部关键点在每个区域中的第一横坐标值; 将N个区域的图像特征对应输入M个纵坐标通道中的N个网格,得到每个纵坐标通道对N个区域的图像特征进行卷积操作后的第三输出结果,每个纵坐标通道的第三输出结果包括该纵坐标通道对应的手部关键点在每个区域中的第一纵坐标值。
[权利要求 14]
根据权利要求11所述的电子设备,所述处理器被配置为具体执行: 针对每个手部关键点,将该手部关键点在每个区域中出现的概率以及在每个区域中的第一坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二坐标值。
[权利要求 15]
根据权利要求14所述的电子设备,所述第一坐标值包括第一横坐标值和第一纵坐标值; 所述处理器被配置为具体执行: 将该手部关键点在每个区域中出现的概率以及在每个区域中的第一横坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二横坐标值; 将该手部关键点在每个区域中出现的概率以及在每个区域中的第一纵坐标值进行加权计算,得到该手部关键点在所述手势图像中的第二纵坐标值。
[权利要求 16]
一种非临时性计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备执行如权利要求1-5任一项所述的关键点检测方法。
[权利要求 17]
一种计算机程序产品,所述计算机程序产品包括程序指令,当所述程序指令被电子设备执行时,使所述电子设备执行如权利要求1-5任一项所述的关键点检测方法。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]