本技术涉及图像处理,尤其涉及一种手势分割方法、装置、设备及介质。
背景技术:
1、随着虚拟现实(virtual reality,简称vr))、增强现实(augmented reality),简称ar)技术的发展,以及ar/vr眼镜的应用场景的不断扩充,手势交互功能显得愈发重要。由于许多场景的光照、纹理、用户的习惯都是不可控的,如何在不同的复杂光照场景下准确还原手势成了手势数据采集的大问题。复杂光照场景下高精度的手势分割数据,对后续训练手势交互深度学习模型有至关重要的作用。传统采用“绿幕分割+后期裁剪”的方法进行手势分割,但这种方法存在以下问题:由于训练集图片是在绿幕下采集,手部边缘像素会出现g通道值大于r通道值的问题,而测试集是在实景下拍摄,手部颜色是r通道值较大。这就是训练集与测试集采集场景不统一而产生的回归偏差问题。
技术实现思路
1、针对上述技术问题,本技术的目的在于提供一种方法、装置、设备及存储介质,以解决训练集和测试集场景不统一而产生的回归问题,为手势分割相关的神经网络训练提供了高精度的手势分割数据。
2、为了解决上述技术问题,第一方面,本技术实施例提供一种手势分割方法,其特征在于,包括:
3、获取真实场景下包括手部的rgb图和对应的深度图;其中,所述深度图与所述rgb图已对齐;
4、将所述rgb图输入手部关键点检测模型,得到所有检测出的手部关键点;
5、基于所述rgb图和所述所有手部关键点,通过基于灰度的区域生长算法获得第一手势分割结果;
6、基于所述深度图和所述所有手部关键点,通过基于深度的区域生长算法获得第二手势分割结果;
7、基于所述rgb图,通过肤色检测算法获得第三手势分割结果;
8、根据预设的深度阈值,对所述深度图进行分割,获得第四手势分割结果;
9、根据所述第一手势分割结果、第二手势分割结果、第三手势分割结果、第四手势分割结果以及所述所有检测出的手部关键点确定第五手势分割结果;
10、对所述第五手势分割结果进行图像阈值化处理,得到最终手势分割结果。
11、进一步的,所述根据所述第一手势分割结果、第二手势分割结果、第三手势分割结果、第四手势分割结果以及所述所有检测出的手部关键点确定第五手势分割结果,包括:
12、根据所述第一手势分割结果、所述第二手势分割结果对应的第一权重、所述第二手势分割结果、所述第二手势分割结果对应的第二权重、所述第三手势分割结果、所述第三手势分割结果对应的第三权重、所述第四手势分割结果、所述第四手势分割结果对应的第四权重、所述所有检测出的手部关键点以及第五权重确定第五手势分割结果。
13、进一步的,所述根据所述第一手势分割结果、所述第二手势分割结果对应的第一权重、所述第二手势分割结果、所述第二手势分割结果对应的第二权重、所述第三手势分割结果、所述第三手势分割结果对应的第三权重、所述第四手势分割结果、所述第四手势分割结果对应的第四权重、所述所有检测出的手部关键点以及第五权重确定第五手势分割结果,包括:根据公式
14、maskfinal(x,y)=a1*maskgrouthgray(x,y)+a2*maskgrouthdepth(x,y)+a3*maskcrcb(x,y)+a4*maskdepth(x,y)+a5*handlmk(x,y)
15、确定每一像素点的像素值,得到第五手势分割结果;其中a1表示第一手势分割结果对应的第一权重,a2表示第二手势分割结果对应的第二权重、a3表示第三手势分割结果对应的第三权重、a4表示第四手势分割结果对应的第四权重、a5表示第五权重;maskgrouthgray(x,y)表示像素点(x,y)在第一手势分割结果中的像素值,maskgrouthdepth(x,y)表示像素点(x,y)在第二手势分割结果中的像素值;maskcrcb(x,y)表示像素点(x,y)在第三手势分割结果中的像素值,maskdepth(x,y)表示像素点(x,y)在第四手势分割结果中的像素值,handlmk(x,y)表示像素点(x,y)为手部关键点时,该手部关键点在所述rgb图像中的像素值。
16、进一步的,所述基于所述rgb图和所述所有手部关键点,通过基于灰度的区域生长算法获得第一手势分割结果,包括:
17、将所述rgb图转换为灰度图;
18、将所述所有手部关键点均作为初始种子点,根据设定的第一区域生长条件以及设定的第一区域生长停止条件在所述灰度图上确定第一生长区域;
19、将所述第一生长区域中每一像素点的像素值保持不变,其余像素点的像素值赋值为0,获得第一手势分割结果。
20、进一步的,所述基于所述深度图和所述所有手部关键点,通过基于深度的区域生长算法获得第二手势分割结果,包括:
21、将所述所有手部关键点均作为初始种子点,根据设定的第二区域生长条件以及第二区域生长停止条件在所述深度图中确定第二生长区域;
22、将所述第二生长区域中每一像素点的像素值保持不变,其余像素点的像素值赋值为0,获得第二手势分割结果。
23、进一步的,所述基于所述rgb图,通过肤色检测算法获得第三手势分割结果,包括:
24、将所述rgb图转换到ycrcb颜色空间,提取cr分量图像;
25、将所述cr分量图像转换为灰度图,得到cr分量图像的灰度图;
26、对所述cr分量图像的灰度图进行二值化阈值分割处理,以将所述cr分量图像的灰度图中像素值大于阈值的像素点的像素值赋值为0,其余像素点的像素值保持不变,得到所述第三手势分割结果。
27、进一步的,所述根据预设的深度阈值,对所述深度图进行分割,得到第四手势分割结果,包括:
28、对于所述深度图中的每一像素点,判断所述像素点的深度是否大于预设的深度阈值,若是,则将所述像素点的像素值赋值为0,否则保持所述像素点的像素值保持不变,得到所述第四手势分割结果。
29、进一步的,所述对所述第五手势分割结果进行图像阈值化操作,得到最终手势分割结果,包括:
30、对于所述第五手势分割结果中的每一像素点,判断所述像素点是否大于预设的第二阈值,若是,则将所述像素点的像素值赋值为0,否则,保持所述像素点的像素值不变,得到所述最终手势分割结果。
31、第二方面,本技术实施例提供一种手势分割装置,包括:
32、获取模块,用于获取真实场景下包括手部的rgb图和对应的深度图;其中,所述深度图与所述rgb图已对齐;
33、输入模块,用于将所述rgb图输入手部关键点检测模型,得到所有检测出的手部关键点;
34、第一分割模块,用于基于所述rgb图和所述所有手部关键点,通过基于灰度的区域生长算法获得第一手势分割结果;
35、第二分割模块,用于基于所述深度图和所述所有手部关键点,通过基于深度的区域生长算法获得第二手势分割结果;
36、第三分割模块,用于基于所述rgb图,通过肤色检测算法获得第三手势分割结果;
37、第四分割模块,用于根据预设的深度阈值,对所述深度图进行分割,获得第四手势分割结果;
38、确定模块,用于根据所述第一手势分割结果、第二手势分割结果、第三手势分割结果、第四手势分割结果以及所述所有检测出的手部关键点确定第五手势分割结果;
39、图像阈值化处理模块,用于对所述第五手势分割结果进行图像阈值化处理,得到最终手势分割结果。
40、第三方面,本技术实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
41、第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
42、本技术实施例提供的一种手势分割方法,包括:获取真实场景下包括手部的rgb图和对应的深度图;其中,所述深度图与所述rgb图已对齐;将所述rgb图输入手部关键点检测模型,得到所有检测出的手部关键点;基于所述rgb图和所述所有手部关键点,通过基于灰度的区域生长算法获得第一手势分割结果;基于所述深度图和所述所有手部关键点,通过基于深度的区域生长算法获得第二手势分割结果;基于所述rgb图,通过肤色检测算法获得第三手势分割结果;根据预设的深度阈值,对所述深度图进行分割,获得第四手势分割结果;根据所述第一手势分割结果、第二手势分割结果、第三手势分割结果、第四手势分割结果以及所述所有检测出的手部关键点确定第五手势分割结果;对所述第五手势分割结果进行图像阈值化处理,得到最终手势分割结果。由于本技术实施例最终的手势分割结果考虑了各种手势分割结果以及手势关键点,因此,最终确定的手势分割结果,即最终分割出的手势会更加的准确,实现了在实景采集后准确地分割出手势。此外,由于通过本技术实施例可直接在实景采集后准确地分割出手势,因此,无需采用绿幕分割+后期裁剪的技术实现手势分割,从而避免了传统“绿幕分割+后期裁剪”存在的回归偏差问题,能够为手势分割相关的神经网络训练提供了高精度的手势分割数据。