一种骨骼点遮挡检测方法、装置、设备及存储介质与流程

文档序号:31185529发布日期:2022-08-19 21:30阅读:50来源:国知局
一种骨骼点遮挡检测方法、装置、设备及存储介质与流程

1.本发明涉及图像处理技术领域,具体是涉及一种骨骼点遮挡检测方法、装置、设备及存储介质。


背景技术:

2.在视频监控与搜索、人机交互、家庭健身、智慧养老、虚拟现实等领域中,均需进行人体姿势估计以理解和分析人体行为。一般地,人体姿势是基于未被遮挡骨骼点的位置关系估计得到的,但如果利用被遮挡的骨骼点进行估计便会导致得到的人体姿势偏离实际情况,使得人体姿势估计结果不够精确。
3.而现有技术中,骨骼点遮挡判断常采用基于深度学习的人体分割方法,即将人体图像进行像素级的细粒度分割得到多个部位并基于各部位的分割情况来判断各骨骼点是否被遮挡;但该方法不仅依赖大量的训练数据,还需要结构复杂的网络模型进行精细化分割,以致其计算量大且计算时间长,骨骼点遮挡的检测效率低。


技术实现要素:

4.有鉴于此,本发明提供了一种骨骼点遮挡检测方法、装置、设备及存储介质,解决现有技术中骨骼点遮挡检测效率低的问题。
5.根据本发明的实施例,提供一种骨骼点遮挡检测方法,包括:获取包括目标用户人体骨架且对齐的彩色图像和深度图像;利用彩色图像获取人体骨架中各待检测骨骼点的位置信息,根据位置信息获取若干具有连接关系的待检测骨骼点集;其中,连接关系为待检测骨骼点集中各待检测骨骼点的连接可构成人体躯干的任意部位;基于彩色图像与深度图像的对齐关系,利用待检测骨骼点集中各待检测骨骼点间的位置信息及其对应的深度信息进行区域构建,得到若干目标区域;判断待检测骨骼点与目标区域之间的位置关系,得到待检测骨骼点的遮挡检测结果。
6.根据本发明的实施例,还提供一种骨骼点遮挡检测装置,包括:图像获取模块,用于获取包括目标用户人体骨架且对齐的彩色图像和深度图像;骨骼点集计算模块,用于利用彩色图像获取人体骨架中各待检测骨骼点的位置信息,根据位置信息获取若干具有连接关系的待检测骨骼点集;其中,连接关系为待检测骨骼点集中各待检测骨骼点的连接可构成人体躯干的任意部位;目标区域生成模块,用于基于彩色图像与深度图像的对齐关系,利用待检测骨骼点集中各待检测骨骼点间的位置信息及其对应的深度信息进行区域构建,得到若干目标区域;遮挡检测模块,用于判断待检测骨骼点与目标区域之间的位置关系,得到待检测骨骼点的遮挡检测结果。
7.根据本发明的实施例,还提供一种终端设备,其中,终端设备包括存储器、处理器及存储在存储器中并可在处理器上运行的骨骼点遮挡检测程序,处理器执行骨骼点遮挡检测程序时,实现上述的骨骼点遮挡检测方法的步骤。
8.根据本发明的实施例,还提供一种计算机可读存储介质,计算机可读存储介质上
存储有骨骼点遮挡检测程序,骨骼点遮挡检测程序被处理器执行时,实现上述的骨骼点遮挡检测方法的步骤。
9.本发明的有益效果为:本技术先通过获取彩色图像获取人体骨架中各骨骼点的位置信息并利用各骨骼点的位置信息获取具有连接关系的骨骼点集;再依据各骨骼点间的连接关系对人体骨架进行区域构建得到目标区域;最后判断骨骼点与目标区域之间的位置关系得到遮挡检测结果;即本发明只需要根据有连接关系的骨骼点标定出目标区域,再根据骨骼点与目标区域的位置关系便可直接判断出待检测骨骼点是否被遮挡。因此,与现有技术相比,本发明的计算量较小,通过简单的逻辑便能快速且有效判断出骨骼点的遮挡情况。
附图说明
10.图1为本发明提供的一种骨骼点遮挡检测方法的流程示意图;
11.图2为本发明实施例提供的一种人体骨骼点模型的结构示意图;
12.图3为本发明实施例提供的一种非手腕骨骼点遮挡判断模型;
13.图4为本发明实施例提供的一种手腕骨骼点的遮挡判断模型;
14.图5为本发明实施例提供的左臀被左肘-左腕遮挡示意图;
15.图6为本发明实施例提供的左臀被左膝-左踝所在的小腿遮挡示意图;
16.图7为本发明实施例提供的左肩被左肘骨骼点-左腕骨骼点所在的左小臂遮挡示意图;
17.图8为本发明实施例提供的终端设备的内部结构原理框图。
具体实施方式
18.以下结合实施例和说明书附图,对本发明中的技术方案进行清楚、完整地描述。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.本发明提供了一种骨骼点遮挡检测方法、装置、设备及存储介质,其只需要根据有连接关系的骨骼点标定出目标区域,再根据待检测骨骼点与目标区域的位置关系便可判断出待检测骨骼点是否被遮挡。本发明所使用的方法计算量较小,且能快速判断出待检测骨骼点是否被遮挡,解决了现有技术中骨骼点遮挡检测效率低的问题。
20.举例说明,采集左右手臂对应的骨骼点图像,图像中包括左肘骨骼点、左腕骨骼点、右肘骨骼点、右腕骨骼点,因为骨骼点图像为2d图像,而该2d图像上只有各个骨骼点(一个圆点)以及各个骨骼点之间的连接关系,所以从2d图像上无法判断出在拍摄人体照片时右腕是否被左肘和左腕所在的左胳膊遮挡。有鉴于此,本实施例为判断右腕是否被左肘和左腕所在的左胳膊遮挡,通过将左肘骨骼点、左腕骨骼点所构成的区域标定为目标区域,然后判断右腕骨骼点是否在该目标区域内以得到右腕的遮挡情况。
21.示例性方法
22.图1为本发明提供的一种骨骼点遮挡检测方法的流程示意图,该方法可应用于终端设备中,所述终端设备可为具有图像采集功能的终端产品,比如手机、电脑等。如图1中所示,所述骨骼点遮挡检测方法具体包括如下步骤:
23.s100,获取包括目标用户人体骨架且对齐的彩色图像和深度图像。
24.在一个实施例中,可利用采集设备采集包括目标用户人体骨架的彩色图像。优选地,彩色图像可为rgb格式、yuv格式或hsv格式的图像,此处不作限制。
25.在另一个实施例中,采集设备还可同步或按时序采集与彩色图像相同场景的深度图像。进一步地,获取深度图像后,需将深度图像的各像素点和彩色图像对应的各像素点进行一一对齐,得到具备对齐关系的深度图像和彩色图像,即深度图像和彩色图像通过该对齐关系可转换至同一坐标系下。
26.s200,利用彩色图像获取人体骨架中各待检测骨骼点的位置信息,并根据各待检测骨骼点的位置信息获取若干具有连接关系的待检测骨骼点集。
27.图2为根据本实施例提供的一种人体骨架中骨骼点的位置关系结构示意图,图中l、r分别表示左、右,索引号从0至14分别表示人体的骨骼点位置,依次为头、脖子、中臀、右肩、左肩、右肘、左肘、右腕、左腕、右臀、左臀、右膝、左膝、右踝、左踝。当采集到人体不同姿势下的图像时,可利用预设骨骼点检测算法对彩色图像进行骨骼点检测得到各待检测骨骼点的位置信息,并根据各待检测骨骼点的位置信息获取具有连接关系的骨骼点集,以便于后续人体姿势估计。需要说明的是,预设骨骼点检测算法可为alphapose、openpose等现有算法,此处不作限制。
28.在一个实施例中,根据各待检测骨骼点的位置信息获取具有连接关系的骨骼点集更具体包括:根据各待检测骨骼点之间的位置信息判断各待检测骨骼点是否存在连接关系,若待检测骨骼点间的连线可构成人体躯干的任意部位,则判断上述待检测骨骼点存在连接关系,进而按可构成人体躯干的任意部位的连线顺序集合存在连接关系的待检测骨骼点形成待检测骨骼点集。进一步地结合图2所示,索引号1和索引号4所对应的待检测骨骼点连线可构成人体躯干中的左上肢,即为存在连接关系的待检测骨骼点集;索引号9、11、13所对应的四个待检测骨骼点依次连线可构成人体躯干中的右腿,所以其亦为有连接关系的待检测骨骼点集;而索引号5和索引号6所对应的待检测骨骼点依次连线并不能构成人体躯干的任意部位,因此索引号5和索引号6所对应的待检测骨骼点不能构成有连接关系的待检测骨骼点集,其他依次类推,此处不再赘述。
29.s300,基于彩色图像与深度图像的对齐关系,利用待检测骨骼点集中各待检测骨骼点间的位置信息及其对应的深度信息进行区域构建,得到若干目标区域。
30.更具体地,目标区域为基于待检测骨骼点集构建的区域,其对应各个待检测骨骼点所在的肢体。在一个实施例中,以一个待检测骨骼点集为例说明,步骤s300还包括步骤s301、s302:
31.s301,根据彩色图像与深度图像的对齐关系,分别获取待检测骨骼点集中首尾骨骼点的位置信息及其对应深度信息,并利用位置信息及其对应深度信息分别构建球体模型,得到第一区域和第二区域。
32.在一些实施例中,获取待检测骨骼点集中首尾待检测骨骼点的位置信息后,分别以首尾待检测骨骼点的各自位置为球心,以设定半径r构建球体模型,得到第一区域和第二区域。需要说明的是,本实施例可以是球体模型亦可为椭圆体模型,此处不作限制。
33.在一个实施例中,设定半径r=2*x/hipdepth,其中x参数为常数值,hipdepth为首尾待检测骨骼点的深度信息。从上述公式可以看出,半径r是随着目标用户距离相机的远近而变化的,即当目标用户距离相机较近时,半径r增大,目标区域所占像素面积随之变大;当
目标区域远离相机时,半径r变小,目标区域所占像素面积随之变小;即本技术所构建的目标区域会随着目标用户距离相机的远近进行实时改变,使得在后续步骤可更精确判断骨骼点的遮挡情况。
34.s302,构建柱体模型对第一区域和第二区域进行围合,得到目标区域。
35.更具体地,以第一区域或第二区域为底面,连线各区域之间的各待检测骨骼点并以此为轴线构建柱体模型,该柱体模型可围合第一区域和第二区域,从而形成目标区域。应当理解的是,本技术仅以一个待检测骨骼点集进行说明,当待检测骨骼点集为多个时,重复上述步骤即可,此处不再赘述。
36.举例说明,如图3所示,本实施例中待检测骨骼点集中首尾待检测骨骼点为左肩骨骼点(joint1)和左肘骨骼点(joint2),分别以joint1、joint2为球心、以半径r构建球体模型,得到第一区域和第二区域;然后再以第一区域或第二区域为底面建立柱体模型将第一区域和第二区域进行围合,从而形成目标区域;其中,柱体模型的高为第一区域与第二区域之间的距离。需要说明的是,本实施例的目标区域可为立体的,亦可将立体的目标区域投影到平面上并以投影在平面上的区域作为最终的目标区域。
37.需要说明的是,上述得到的目标区域针对的是常规肢体区域。当目标区域中的肢体区域需连接手掌或脚时,则需要对基于连接点(如手腕点、脚腕点)得到的目标区域进行自适应处理。具体地,当需处理的目标区域存在手腕骨骼点时,因手腕骨骼点为手臂与手掌的连接点且一般情况下手掌的直径大于手臂的直径,因此需以首尾的骨骼点为球心并以不同的半径建立球体模型得到不同尺寸的第一区域和第二区域;其中,第一区域尺寸大于第二区域。进一步地,以第二区域为底,向第一区域的方向延伸构建柱体模型得到目标区域,其中延伸长度大于各第一区域之间的长度,如图4所示。从图4可见,不同尺寸的第一区域由两个不同半径(即r和r1)的球体组成,第二区域的长度比两个不同半径的球体的球心距离长出r2。
38.s400,判断待检测骨骼点与目标区域之间的位置关系,得到待检测骨骼点的遮挡检测结果。
39.本实施例中的待检测骨骼点与目标区域之间的位置关系包括待检测骨骼点位于目标区域的外部和待检测骨骼点位于目标区域的内部这两种情况,当待检测骨骼点位于目标区域的外部,则说明待检测骨骼点没有被遮挡,不需进一步判断;当待检测骨骼点位于目标区域的内部,则说明待检测骨骼点可能存在被遮挡的情况,还需进一步判断。
40.在一个实施例中,当待检测骨骼点位于目标区域的内部时,步骤s400包括如下的步骤s401、s402:
41.s401,根据彩色图像与深度图像的对齐关系,获取目标区域的深度值及待检测骨骼点的深度值。
42.s402,比较目标区域的深度值与待检测骨骼点的深度值,若待检测骨骼点所对应的深度值均小于目标区域各像素的深度值,则待检测骨骼点未被遮挡;若目标区域中任一像素所对应的深度值小于待检测骨骼点所对应的深度值,则待检测骨骼点被遮挡。
43.具体地,如图3所示,joint3为当前待检测骨骼点,joint1和joint2为组成目标区域的首尾待检测骨骼点,将基于joint1和joint2构建的第一区域及第二区域合并作为目标区域,当joint3在目标区域内,则认为该骨骼点可能存在被遮挡的情况,需要进一步确认。若
joint3在目标区域内,则需结合待检测骨骼点与目标区域的深度值,判断出待检测骨骼点与目标区域前后关系,并根据该前后关系即可判断出该骨骼点实际是否被遮挡。例如,当joint1,joint2,joint3分别为左肩-左肘-右腕时,若通过上述方法得到joint3在基于joint1及joint2构建的目标区域内,则可初步认为右腕存在被左肩-左肘遮挡的情况;再者,获取左肩、左肘、右腕处的深度值,若右腕深度均小于左肩、左肘的深度值,则认为右腕没有被遮挡;反之,则认为该右腕被遮挡。
44.需要说明的是,s401和s402是根据目标区域内各个像素点的深度判断待检测骨骼点是否被遮挡。在另一个实施例中,也可以根据目标区域中首尾的待检测骨骼点构成的轴线所对应的深度值判断待检测骨骼点是否被遮挡,更具体地,包括以下步骤:
45.s403,根据深度图像与彩色图像的对齐关系,获取目标区域中两端的待检测骨骼点构成的轴线所对应的深度值。
46.在一个实施例中,本实施例中的轴线对应人体的肢体躯干,比如目标区域的首尾待检测骨骼点为左腕骨骼点和左肘骨骼点,则该轴线为左腕骨骼点和左肘骨骼点的连线(即左手臂)。
47.s404,比较轴线所对应的深度值及待检测骨骼点所对应的深度值,得到待检测骨骼点的遮挡检测结果。
48.更具体地,当待检测骨骼点所对应的深度值小于轴线所对应的深度值,则待检测骨骼点未被遮挡;反之则待检测骨骼点被遮挡。
49.在另一个实施例中,得到待检测骨骼点的遮挡检测结果后,可利用待检测骨骼点的遮挡检测结果进行人体姿势估计,更具体地,在步骤s400后还包括:
50.s501,获取遮挡检测结果中被遮挡的待检测骨骼点的坐标信息;
51.s502,根据被遮挡的待检测骨骼点的坐标信息,剔除彩色图像中被遮挡的待检测骨骼点以得到未被遮挡的待检测骨骼点;
52.s503,基于深度图像与彩色图像的对齐关系,获取未被遮挡的待检测骨骼点的深度信息;
53.s504,利用未被遮挡的待检测骨架点的深度信息进行人体姿势估计,得到三维人体姿势模型。
54.具体可见图5、图6及图7,其依次为利用本技术提供的实施例得到的三维人体姿势模型结果示意图;其中,图5为左臀被左肘-左腕遮挡的人体姿势模型示意图;图6为左臀被小腿遮挡的人体姿势模型示意图;图7为左肩被左小臂遮挡的人体姿势模型示意图。
55.综上,本发明只需通过利用有连接关系的骨骼点标定出目标区域,再根据待检测骨骼点与目标区域的位置关系便可判断出待检测骨骼点是否被遮挡。与现有技术相比,本发明提供的方法计算量较小,通过简单的逻辑便能快速且有效地判断出待检测骨骼点是否被遮挡。
56.示例性装置
57.本实施例还提供一种骨骼点遮挡检测装置,所述装置包括如下组成部分:
58.图像获取模块,用于获取包括目标用户人体骨架且对齐的彩色图像和深度图像;
59.骨骼点集计算模块,用于利用彩色图像获取人体骨架中各待检测骨骼点的位置信息,并根据各待检测骨骼点的位置信息获取若干具有连接关系的待检测骨骼点集;其中,连
接关系为待检测骨骼点集中各待检测骨骼点的连接可构成人体躯干的任意部位;
60.目标区域生成模块,用于基于彩色图像与深度图像的对齐关系,利用待检测骨骼点集中各待检测骨骼点间的连接关系及其对应的深度信息进行目标区域构建,得到若干目标区域;
61.遮挡检测模块,用于判断待检测骨骼点与目标区域之间的位置关系,得到待检测骨骼点的遮挡检测结果。
62.需要说明的是,各模块具体作用参考前述的骨骼点检测方法,此处不再赘述。
63.基于上述实施例,本发明还提供了一种终端设备,其原理框图可以如图8所示。终端设备可以包括一个或多个处理器800(图8中仅示出一个),存储器801以及存储在存储器801中并可在一个或多个处理器800上运行的计算机程序802,例如,骨骼点遮挡检测程序。一个或多个处理器800执行计算机程序802时可以实现骨骼点遮挡检测的方法实施例中的各个步骤。或者,一个或多个处理器800执行计算机程序802时可以实现骨骼点遮挡检测装置实施例中各模块/单元的功能,此处不作限制。
64.在一个实施例中,终端设备还包括采集装置,采集装置可包括深度相机和二维相机,其中,深度相机可为结构光相机、tof相机、双目相机等中的任意一种,二维相机可为红外相机、彩色相机等中的任意一种,用于分别采集深度图像和二维图像,处理器利用采集的深度图像和二维图像实现获取上述骨骼点遮挡检测方法实施例中的各个步骤。需要说明的是,深度相机及二维相机可一体化设置亦可独立设置,采集装置可设置在终端设备中,亦可通过无线通信或有线通信与所述终端设备进行数据传输,此处不作限制。
65.本领域技术人员可以理解,图8中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端设备的限定,具体的终端设备以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
66.在一个实施例中,提供了一种终端设备,终端设备包括存储器、处理器及存储在存储器中并可在处理器上运行的骨骼点遮挡检测程序,处理器执行骨骼点遮挡检测程序时,实现如下操作指令:
67.获取包括目标用户人体骨架且对齐的彩色图像和深度图像;
68.利用彩色图像获取人体骨架中各待检测骨骼点的位置信息,根据位置信息获取若干具有连接关系的待检测骨骼点集;其中,连接关系为待检测骨骼点集中的待检测骨骼点连接可构成人体躯干的任意部位;
69.基于彩色图像与深度图像的对齐关系,利用待检测骨骼点集中各待检测骨骼点间的位置信息及其对应的深度信息进行区域构建,得到若干目标区域;
70.判断待检测骨骼点与目标区域之间的位置关系,得到待检测骨骼点的遮挡检测结果。
71.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
72.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出
本技术的范围。
73.在本技术所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
74.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
75.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
76.集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于上述理解,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
77.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1