一种基于Kinect的手势遮挡检测方法及系统与流程

文档序号:17937423发布日期:2019-06-18 22:43阅读:456来源:国知局
一种基于Kinect的手势遮挡检测方法及系统与流程

本发明涉及虚拟现实技术领域,特别是涉及一种基于kinect的手势遮挡检测方法及系统。



背景技术:

随着虚拟现实的飞速发展,利用kinect的手势自然交互已经广泛的应用于各个领域。但是在实际的使用过程中往往存在由于遮挡问题而导致手势无法被识别的现象,从而导致系统出错的现象。

因此,急需一种高准确率的手势遮挡检测方法,来实现对手势的遮挡检测,来提高手势识别的准确度。



技术实现要素:

本发明的目的是提供一种基于kinect的手势遮挡检测方法及系统,旨在解决现有技术中由于遮挡问题导致的手势无法识别的问题,实现提高手势识别准确率,有效预测出手势姿态。

为达到上述技术目的,本发明提供了一种基于kinect的手势遮挡检测方法,所述方法包括以下步骤:

s1、利用kinect分别获取手部深度图像以及彩色图像;

s2、将深度图像二值化,并与彩色图像进行与运算,得到只有人手区域的彩色图像;

s3、统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡;

s4、计算获取存在遮挡或不存在遮挡时的预测手势姿态。

优选地,所述方法还包括:

利用深度神经网络对数据集进行预训练,得到能够通过人手深度图像预测人手姿态的深度神经网络;

将数据集中所有数据进行一次正向传播,将倒数第二层提取出来的256维特征向量与相应的姿态坐标数据存入特征库中。

优选地,所述步骤s1具体操作如下:

利用kinect获取人体深度图、彩色图及人体的骨骼信息;

通过人体骨骼信息中的人手深度信息将深度图中的人手部分分割出来;

利用张正友标定法获取对应的手部彩色图像。

优选地,所述步骤s3具体操作如下:

将rgb模型转换为ycbcr模型,遍历最大连通区域area中的像素,如果像素的cr分量在[140,170]之间,cb分量在[100,120]之间,则将肤色像素点skin的数量加1;

计算最大连通区域中肤色像素所占的比率d,如果d小于80%则判断为有遮挡,否则判断为不存在遮挡。

优选地,所述比率d的计算公式如下:

优选地,所述不存在遮挡时的预测手势姿态的计算方法如下:

将手部深度图像缩放至96*96,传入深度神经网络,进行特征提取得到256维的特征向量v1;

计算特征向量v1与特征库中的每个特征的欧氏距离,求得欧式距离最小的n个特征向量d1∈rn×256,以及所对应的全部人手姿态p1∈rn×m,则有:

假设m为低秩矩阵,则预测手势姿态的计算如下:

p=v1(d1)-1p1。

优选地,所述存在遮挡时的预测手势姿态的计算方法如下:

利用深度神经网络结构提取历史前r帧的特征向量,得到每一维的原始序列:

x(0)=(x(0)(1),x(0)(2),....,x(0)(r))

对每一维的原始数据进行一阶累加处理,得到累加序列:

x(1)=(x(1)(1),x(1)(2),....,x(1)(r))

其中,x(1)=x(0)(1),

由累加的一阶序列建立系统gm(1,1),其白化微分方程形式为:

其中a为系统的发展系数,b为灰色作用量,其对应的灰色微分方程为:

a(0)(k)+az(1)(k)=b

其中,z(1)(k)为均值生成序列,

对参数a,b求值,由最小二乘法得到:

[a,b]t=(btb)-1bty

其中,y=(x(0)(2),x(0)(3),....,x(0)(r))t

在初始条件为的情况下,得到一阶累加生成序列的数据模型:

得到原始的数据蓄力模型如下:

利用原始数据蓄力模型预测当前帧的特征向量为v2,将v2代替特征向量v1,并放到矩阵m中进行矩阵填充计算,最终得到遮挡时预测的手势姿态p。

本发明还提供了一种基于kinect的手势遮挡检测系统,所述系统包括:

图像获取模块,用于利用kinect分别获取手部深度图像以及彩色图像;

图像运算模块,用于将深度图像二值化,并与彩色图像进行与运算,得到只有人手区域的彩色图像;

遮挡判断模块,用于统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡;

预测手势模块,用于计算获取存在遮挡或不存在遮挡时的预测手势姿态。

发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:

与现有技术相比,本发明通过kinect获取手势的深度图像及其对应的彩色图像,通过图像与运算将彩色手势分割出来,然后用统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡的情况,并通过手势估计算法预测出手势姿态,从而解决由于遮挡问题导致的手势无法识别的问题,实现提高手势识别准确率,特别是在有遮挡的情况下,可有效预测出手势姿态。

附图说明

图1为本发明实施例中所提供的一种基于kinect的手势遮挡检测方法流程示意图;

图2为本发明实施例中所提供的一种手势遮挡检测整体算法逻辑示意图;

图3为本发明实施例中所提供的一种预训练cnn网络结构示意图;

图4为本发明实施例中所提供的一种手势估计算法逻辑示意图;

图5为本发明实施例中所提供的一种基于kinect的手势遮挡检测系统结构框图。

具体实施方式

为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

下面结合附图对本发明实施例所提供的一种基于kinect的手势遮挡检测方法及系统进行详细说明。

如图1、2所示,本发明实施例公开了一种基于kinect的手势遮挡检测方法,所述方法包括以下步骤:

s1、利用kinect分别获取手部深度图像以及彩色图像;

s2、将深度图像二值化,并与彩色图像进行与运算,得到只有人手区域的彩色图像;

s3、统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡;

s4、计算获取存在遮挡或不存在遮挡时的预测手势姿态。

本发明实施例通过kinect获取手势的深度图像与其对应的彩色图像,通过图像与运算将彩色手势分割出来,然后利用统计最大连通区域与肤色区域的比值来判断是否存在手势被遮挡的情况,并通过手势估计算法预测出手势姿态。

利用图3所示的网络结构对公开数据集nyu进行预训练,得到能够通过人手的深度图像预测人手姿态m的深度神经网络。

将公开数据集nyu中的所有数据进行一次网络的正向传播,将倒数第二层提取出来的256维特征向量与相应的姿态坐标数据存储到特征库中。

利用kinect获取手势图像,包括深度图像以及彩色图像,另外还获取人体骨骼信息,将获取到的人体骨骼信息中的人手深度信息将深度图像中的人手部分分割出来。

采用张正友标定法获取对应的彩色图像,将深度图像进行二值化并与彩色图像进行与运算,得到只有人手区域的彩色图像i。

针对彩色图像i,求i中最大连通区域area,并计算area中的肤色像素点个数skin,具体操作过程如下:

将rgb模型转换为ycbcr模型,遍历area中的像素,如果像素的cr分量在[140,170]之间,cb分量在[100,120]之间,则将肤色skin数量加1。

计算最大连通区域中肤色像素所占的比率d,如果d小于80%则判断为有遮挡,所占比率d的计算公式如下:

如图4所示,如果不存在遮挡,即d>0.8,则将获取到的人手深度图像缩放至96*96,再传入图3的神经网络中进行特征提取,得到256维的特征向量v1。

计算特征向量v1与上述提取出的特征库中的每个特征的欧式距离,求得欧式距离最小的n个特征向量d1∈rn×256,以及所对应的全部人手姿态p1∈rn×m

其中,p∈r1×m是当前帧的估计手势姿态值,是未知参数。假设m为一个低秩矩阵,通过解决矩阵填充问题,可计算得到当前帧的手势估计:

p=v1(d1)-1p1

如果存在遮挡d<0.8,则利用图3的网络结构提取历史前r帧的特征向量,得到每一维的原始序列x(0)=(x(0)(1),x(0)(2),....,x(0)(r)),对每一维的原始数据进行一阶累加处理,得到累加序列:

x(1)=(x(1)(1),x(1)(2),....,x(1)(r))

其中,x(1)=x(0)(1),

由累加的一阶序列建立系统gm(1,1),其白化微分方程形式为:

其中a为系统的发展系数,b为灰色作用量,其对应的灰色微分方程为:

a(0)(k)+az(1)(k)=b

其中,z(1)(k)为均值生成序列,

对参数a,b求值,由最小二乘法得到:

[a,b]t=(btb)-1bty

其中,y=(x(0)(2),x(0)(3),....,x(0)(r))t

在初始条件为的情况下,得到一阶累加生成序列的数据模型:

得到原始的数据蓄力模型如下:

利用原始数据模型预测当前帧的特征向量为v2,将v2代替特征向量v1,并放到矩阵m中进行矩阵填充计算,最终得到遮挡时预测的手势姿态p。

本发明实施例通过kinect获取手势的深度图像及其对应的彩色图像,通过图像与运算将彩色手势分割出来,然后用统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡的情况,并通过手势估计算法预测出手势姿态,从而解决由于遮挡问题导致的手势无法识别的问题,实现提高手势识别准确率,特别是在有遮挡的情况下,可有效预测出手势姿态。

如图5所示,本发明实施例还公开了一种基于kinect的手势遮挡检测系统,所述系统包括:

图像获取模块,用于利用kinect分别获取手部深度图像以及彩色图像;

图像运算模块,用于将深度图像二值化,并与彩色图像进行与运算,得到只有人手区域的彩色图像;

遮挡判断模块,用于统计最大连通区域与肤色区域的比值判断是否存在手势被遮挡;

预测手势模块,用于计算获取存在遮挡或不存在遮挡时的预测手势姿态。

通过kinect获取手势的深度图像与其对应的彩色图像,通过图像与运算将彩色手势分割出来,然后利用统计最大连通区域与肤色区域的比值来判断是否存在手势被遮挡的情况,并通过手势估计算法预测出手势姿态。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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