CN114359328B - 一种利用单深度相机和人体约束的运动参数测量方法 - Google Patents
一种利用单深度相机和人体约束的运动参数测量方法 Download PDFInfo
- Publication number
- CN114359328B CN114359328B CN202111625000.7A CN202111625000A CN114359328B CN 114359328 B CN114359328 B CN 114359328B CN 202111625000 A CN202111625000 A CN 202111625000A CN 114359328 B CN114359328 B CN 114359328B
- Authority
- CN
- China
- Prior art keywords
- frame
- depth
- human body
- joint point
- joint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Image Processing (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
一种利用单深度相机和人体约束的运动参数测量方法,通过将2D人体姿态检测模型与深度相机结合,能够显著抑制关节点缺失和跳变的问题,获取更加准确的关节点的三维坐标,具有较强的抗干扰能力和环境自适应能力,有利于人体运动参数的测量。对场地、环境以及被测试者的行动等无严格约束,对人体运动参数测量的准确性无显著影响。仅使用单个深度相机和一台电脑,通过2D人体姿态检测模型和深度相机获取人体的运动参数,在不降低人体参数测量准确性的同时,FPS可达每秒15帧,可实现人体运动参数的实时测量。
Description
技术领域
本发明涉及计算机视觉技术领域,具体涉及一种利用单深度相机和人体约束的运动参数测量方法。
背景技术
随着社会经济以及人工智能技术的快速发展,人体运动参数、姿态获取技术逐渐融入人们的生活。上述人体运动参数、姿态能够提供较为准确的人体运动指标,因此在康复医疗、运动训练、文化体育等领域应用广泛。
OpenPose是美国卡耐基梅隆大学基于卷积神经网络设计的2D人体姿态检测模型,能够实时多人姿态评估,具有较好的鲁棒性。公开号CN11049010A的专利提出了一种基于单目视觉的在线人体康复动作识别方法,该方法利用OpenPose模型对视频中的目标人体进行识别并生成动作序列,然后送入之后的网络进行建模,并用于病人的康复动作识别。公开号CN111798995A的专利提出了一种基于OpenPose模型的术后康复方法及其数据采集装置支架,该方法利用OpenPose模型识别出病人的姿态和骨骼关节点,并用于病人的协调性评估。以上两种专利都可以很好的识别出患者的姿态,但是OpenPose模型只能提供二维空间的人体骨骼关节点坐标信息,对于动作的识别存在较大局限性,无法清晰准确地反映目标人体在三维空间中的姿态信息。
与传统相机相比,深度相机增加了关于目标的深度信息测量,因此可以更准确地感知运动目标及其周围环境的变化。公开号CN110307788A提出了一种多深度相机人体参数测量方法及装置,将多个深度相机捕捉的深度图像融合为规则点云,并将SMPL人体模板与点云拟合,最后通过标准参数化模板定义的人体参数获取目标对象的人体参数。虽然这种方法可以比较精确地测量人体参数,但存在实现成本过高、计算量大以及场景布置复杂等问题。并且,单深度相机容更易受到各种因素的影响,包括人体运动角度变化引起的关节遮挡,人体周围环境变化引起的关节点识别错误等。受多方面因素的影响,如何使用单深度相机实现人体运动参数的准确测量仍然是一个挑战性的问题。
发明内容
本发明为了克服以上技术的不足,提供了一种可以实时测量并获得较为准确的人体关节点三维坐标信息,并具有较强的自适应和抗干扰能力的利用单深度相机和人体约束的运动参数测量方法。
本发明克服其技术问题所采用的技术方案是:
一种利用单深度相机和人体约束的运动参数测量方法,包括如下步骤:
a)利用深度相机捕捉人体深度图像和RGB彩色图像,采集21个人体关节点数据,通过计算各个人体关节点之间的欧氏距离和关节点的坐标信息,得到人体约束数据;
b)将深度图像、RGB彩色图像与2D人体姿态检测模型相结合,利用21个人体关节点及其深度信息获得人体关节点三维坐标;
c)当检测到关节点缺失时,使用简单移动平均算法及人体约束数据对缺失的关节点位置进行预测;
d)当检测到关节点跳变时,使用中值滤波算法、回溯法及人体约束数据对关节点进行约束。
进一步的,步骤a)中将一个深度相机与电脑相连,被测人体立于深度相机视野范围内进行关节点信息测量,得到21个人体关节点数据,测量时间小于3s。
进一步的,步骤a)中将深度相机捕捉的深度图像与彩色图像对齐操作,使深度图像的像素与彩色图像的像素保持一一对应关系,通过深度相机的色彩流colorstream调用depthaligncolor()对齐函数获取对齐对象align,对于深度相机捕捉的任意一帧图像frame,利用align调用深度帧函数get_depthframe()和彩色帧函数get_colorframe()获取深度帧depth_frame和彩色帧color_frame。进一步的,步骤a)中采用的深度相机为IntelRealSense Depth Camera D435型深度相机。
进一步的,步骤b)中的2D人体姿态检测模型为mediapipe模型。
进一步的,步骤b)包括如下步骤:
b-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取第i个关节点的三维坐标 depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,式中fx为深度相机捕获的RGB彩色图像的平面的焦距的横坐标值,fy为深度相机捕获的RGB彩色图像的平面的焦距的纵坐标值,ppx为深度相机捕获的RGB彩色图像的投影中心的横坐标,ppy为深度相机捕获的RGB彩色图像的投影中心的纵坐标。进一步的,步骤c)包括如下步骤:
c-1)对于当前帧图像frame中缺失的关节点A,通过公式利用当前帧图像frame之前的N帧关节点A的坐标信息求和取平均预测缺失关节点的二维坐标A-i为当前帧图像frame之前的第i帧中关节点A的坐标,i∈{1,...,N};
c-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取预测缺失关节点的三维坐标 depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,
进一步的,步骤d)包括如下步骤:
计算得到第l+1帧关节点B和关节点C的距离Joint_length_l,L为深度相机每秒采集图像的数目,L为奇数,式中(Xi,Yi,Zi)为关节点B的三维坐标,(Xi+1,Yi+1,Zi+1)为关节点C的三维坐标,用于存储关节点C与关节点B间的距离,使用公式Distance=Mid(sort(Joint_Length[L]))利用sort()函数对列表中元素进行排序后通过Mid()函数对排序后的列表元素取中值得到L帧关节点C与关节点B间的中位数距离Distance,Joint_Length[L]=[Joint_length_0,...,Joint_length_l,...,Joint_length_L-1],Joint_length_0为第1帧关节点C与关节点B间的距离,Joint_length_L-1为第L帧关节点C与关节点B间的距离;
d-2)对于关节点C,如果当前帧的深度距离Z与上一帧的深度距离Z的差值大于0.3m且当前帧关节点C与关节点B的距离小于中位数距离Distance则判定关节点C跳变,将当前帧的关节点C的二维坐标回溯为上一帧对应的关节点C的二维坐标,将当前帧的关节点C的三维坐标回溯为上一帧对应的关节点C的三维坐标。
本发明的有益效果是:通过将2D人体姿态检测模型与深度相机结合,能够显著抑制关节点缺失和跳变的问题,获取更加准确的关节点的三维坐标,具有较强的抗干扰能力和环境自适应能力,有利于人体运动参数的测量。对场地、环境以及被测试者的行动等无严格约束,对人体运动参数测量的准确性无显著影响。仅使用单个深度相机和一台电脑,通过2D人体姿态检测模型和深度相机获取人体的运动参数,在不降低人体参数测量准确性的同时,FPS可达每秒15帧,可实现人体运动参数的实时测量。
附图说明
图1为本发明的深度相机室内摆放位置图;
图2为本发明的人体运动参数测量方法流程图;
图3为本发明的利用2D人体姿态检测模型提取的关节点图;
具体实施方式
下面结合附图1至附图3对本发明做进一步说明。
一种利用单深度相机和人体约束的运动参数测量方法,包括如下步骤:
a)利用深度相机捕捉人体深度图像和RGB彩色图像,采集21个人体关节点数据,通过计算各个人体关节点之间的欧氏距离和关节点的坐标信息,得到人体约束数据(即各个关节点之间固有的约束关系)。
b)将深度图像、RGB彩色图像与2D人体姿态检测模型相结合,利用21个人体关节点及其深度信息获得人体关节点三维坐标。
c)当检测到关节点缺失时,使用简单移动平均算法及人体约束数据对缺失的关节点位置进行预测。
d)当检测到关节点跳变时,使用中值滤波算法、回溯法及人体约束数据对关节点进行约束。
通过将2D人体姿态检测模型与深度相机结合,能够显著抑制关节点缺失和跳变的问题,获取更加准确的关节点的三维坐标,具有较强的抗干扰能力和环境自适应能力,有利于人体运动参数的测量。对场地、环境以及被测试者的行动等无严格约束,对人体运动参数测量的准确性无显著影响。仅使用单个深度相机和一台电脑,通过2D人体姿态检测模型和深度相机获取人体的运动参数,在不降低人体参数测量准确性的同时,FPS可达每秒15帧,可实现人体运动参数的实时测量。
实施例1:
步骤a)中将一个深度相机与电脑相连,被测人体立于深度相机视野范围内进行关节点信息测量,得到21个人体关节点数据,测量时间小于3s。在此期间,需确保被测试者的21个关节点能够被深度相机捕获,以保证关节点初始化数据,以及人体约束数据的正确性。
实施例2:
步骤a)中将深度相机捕捉的深度图像与彩色图像对齐操作,使深度图像的像素与彩色图像的像素保持一一对应关系,通过深度相机的色彩流colorstream调用depthaligncolor()对齐函数获取对齐对象align,对于深度相机捕捉的任意一帧图像frame,利用align调用深度帧函数get_depthframe()和彩色帧函数get_colorframe()获取深度帧depth_frame和彩色帧color_frame。
实施例3:
步骤a)中采用的深度相机为Intel RealSense Depth Camera D435型深度相机。
实施例4:
步骤b)中的2D人体姿态检测模型为mediapipe模型。
实施例5:
步骤b)包括如下步骤:
b-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取第i个关节点的三维坐标 depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,式中fx为深度相机捕获的RGB彩色图像的平面的焦距的横坐标值,fy为深度相机捕获的RGB彩色图像的平面的焦距的纵坐标值,ppx为深度相机捕获的RGB彩色图像的投影中心的横坐标,ppy为深度相机捕获的RGB彩色图像的投影中心的纵坐标。
实施例6:
人体在运动过程中,光照或人体关节点部位被遮挡等可能会出现关节点缺失。当检测到关节点缺失时,使用简单移动平均算法和人体约束数据对关节点的位置进行预测,具体的步骤c)包括如下步骤:
c-1)对于当前帧图像frame中缺失的关节点A,通过公式利用当前帧图像frame之前的N帧关节点A的坐标信息求和取平均预测缺失关节点的二维坐标A-i为当前帧图像frame之前的第i帧中关节点A的坐标,i∈{1,...,N}。
c-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取预测缺失关节点的三维坐标 depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,
实施例7:
人体在运动过程中,衣服颜色、面对相机的角度或周围环境等都可能引起关节点跳变。使用中值滤波算法及关节点之间固有约束关系判断关节点跳变,使用回溯法约束关节点回到人体上。具体的,步骤d)包括如下步骤:
计算得到第l+1帧关节点B和关节点C的距离Joint_length_l,L为深度相机每秒采集图像的数目,L为奇数,式中(Xi,Yi,Zi)为关节点B的三维坐标,(Xi+1,Yi+1,Zi+1)为关节点C的三维坐标,用于存储关节点C与关节点B间的距离,使用公式Distance=Mid(sort(Joint_Length[L]))利用sort()函数对列表中元素进行排序后通过Mid()函数对排序后的列表元素取中值得到L帧关节点C与关节点B间的中位数距离Distance,Joint_Length[L]=[Joint_length_0,...,Joint_length_l,...,Joint_length_L-1],Joint_length_0为第1帧关节点C与关节点B间的距离,Joint_length_L-1为第L帧关节点C与关节点B间的距离;
d-2)对于关节点C,如果当前帧的深度距离Z与上一帧的深度距离Z的差值大于0.3m且当前帧关节点C与关节点B的距离小于中位数距离Distance则判定关节点C跳变,将当前帧的关节点C的二维坐标回溯为上一帧对应的关节点C的二维坐标,将当前帧的关节点C的三维坐标回溯为上一帧对应的关节点C的三维坐标。
利用步骤c)和步骤d)得到的关节点三维坐标进行人体运动参数的计算,如关节距离、角度、运动速度以及运动频率等。本发明可实时测量人体的运动参数,且受场景布置、环境因素、人体状态等的影响较小,在康复医疗、运动训练、文化体育等领域有很大的应用前景。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种利用单深度相机和人体约束的运动参数测量方法,其特征在于,包括如下步骤:
a)利用深度相机捕捉人体深度图像和RGB彩色图像,采集21个人体关节点数据,通过计算各个人体关节点之间的欧氏距离和关节点的坐标信息,得到人体约束数据;
b)将深度图像、RGB彩色图像与2D人体姿态检测模型相结合,利用21个人体关节点及其深度信息获得人体关节点三维坐标;
c)当检测到关节点缺失时,使用简单移动平均算法及人体约束数据对缺失的关节点位置进行预测;
d)当检测到关节点跳变时,使用中值滤波算法、回溯法及人体约束数据对关节点进行约束;
步骤a)中将深度相机捕捉的深度图像与彩色图像对齐操作,使深度图像的像素与彩色图像的像素保持一一对应关系,通过深度相机的色彩流colorstream调用depthaligncolor()对齐函数获取对齐对象align,对于深度相机捕捉的任意一帧图像frame,利用align调用深度帧函数get_depthframe()和彩色帧函数get_colorframe()获取深度帧depth_frame和彩色帧color_frame;
步骤b)包括如下步骤:
b-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取第i个关节点的三维坐标color_point(Xi color,Yi color,Z), depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,式中fx为深度相机捕获的RGB彩色图像的平面的焦距的横坐标值,fy为深度相机捕获的RGB彩色图像的平面的焦距的纵坐标值,ppx为深度相机捕获的RGB彩色图像的投影中心的横坐标,ppy为深度相机捕获的RGB彩色图像的投影中心的纵坐标;
步骤c)包括如下步骤:
c-1)对于当前帧图像frame中缺失的关节点A,通过公式利用当前帧图像frame之前的N帧关节点A的坐标信息求和取平均预测缺失关节点的二维坐标A-i为当前帧图像frame之前的第i帧中关节点A的坐标,i∈{1,...,N};
c-2)利用彩色帧color_frame的内参矩阵color_intrin和深度距离Z获取预测缺失关节点的三维坐标 depth_frame.get_distance()表示在深度帧depth_frame下调用get_distance()函数得到二维坐标的深度距离,
步骤d)包括如下步骤:
d-1)找寻到与关节点C最近的关节点B,通过公式计算得到第l+1帧关节点B和关节点C的距离Joint_length_l,L为深度相机每秒采集图像的数目,L为奇数,式中(Xi,Yi,Zi)为关节点B的三维坐标,(Xi+1,Yi+1,Zi+1)为关节点C的三维坐标,用于存储关节点C与关节点B间的距离,使用公式Distance=Mid(sort(Joint_Length[L]))利用sort()函数对列表中元素进行排序后通过Mid()函数对排序后的列表元素取中值得到L帧关节点C与关节点B间的中位数距离Distance,Joint_Length[L]=[Joint_length_0,...,Joint_length_l,...,Joint_length_L-1],Joint_length_0为第1帧关节点C与关节点B间的距离,Joint_length_L-1为第L帧关节点C与关节点B间的距离;
d-2)对于关节点C,如果当前帧的深度距离Z与上一帧的深度距离Z的差值大于0.3m且当前帧关节点C与关节点B的距离小于中位数距离Distance则判定关节点C跳变,将当前帧的关节点C的二维坐标回溯为上一帧对应的关节点C的二维坐标,将当前帧的关节点C的三维坐标回溯为上一帧对应的关节点C的三维坐标。
2.根据权利要求1所述的利用单深度相机和人体约束的运动参数测量方法,其特征在于:步骤a)中将一个深度相机与电脑相连,被测人体立于深度相机视野范围内进行关节点信息测量,得到21个人体关节点数据,测量时间小于3s。
3.根据权利要求1所述的利用单深度相机和人体约束的运动参数测量方法,其特征在于:步骤a)中采用的深度相机为Intel RealSense Depth Camera D435型深度相机。
4.根据权利要求1所述的利用单深度相机和人体约束的运动参数测量方法,其特征在于:步骤b)中的2D人体姿态检测模型为mediapipe模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111625000.7A CN114359328B (zh) | 2021-12-28 | 2021-12-28 | 一种利用单深度相机和人体约束的运动参数测量方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111625000.7A CN114359328B (zh) | 2021-12-28 | 2021-12-28 | 一种利用单深度相机和人体约束的运动参数测量方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114359328A CN114359328A (zh) | 2022-04-15 |
CN114359328B true CN114359328B (zh) | 2022-08-12 |
Family
ID=81103789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111625000.7A Active CN114359328B (zh) | 2021-12-28 | 2021-12-28 | 一种利用单深度相机和人体约束的运动参数测量方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114359328B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109003301A (zh) * | 2018-07-06 | 2018-12-14 | 东南大学 | 一种基于OpenPose和Kinect的人体姿态估计方法及康复训练系统 |
CN110363140A (zh) * | 2019-07-15 | 2019-10-22 | 成都理工大学 | 一种基于红外图像的人体动作实时识别方法 |
CN111540055A (zh) * | 2020-04-16 | 2020-08-14 | 广州虎牙科技有限公司 | 三维模型驱动方法、装置、电子设备及存储介质 |
CN112805730A (zh) * | 2019-12-30 | 2021-05-14 | 华为技术有限公司 | 一种轨迹预测方法及相关设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9947134B2 (en) * | 2012-07-30 | 2018-04-17 | Zinemath Zrt. | System and method for generating a dynamic three-dimensional model |
CN109376571B (zh) * | 2018-08-03 | 2022-04-08 | 西安电子科技大学 | 基于变形卷积的人体姿态估计方法 |
-
2021
- 2021-12-28 CN CN202111625000.7A patent/CN114359328B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109003301A (zh) * | 2018-07-06 | 2018-12-14 | 东南大学 | 一种基于OpenPose和Kinect的人体姿态估计方法及康复训练系统 |
CN110363140A (zh) * | 2019-07-15 | 2019-10-22 | 成都理工大学 | 一种基于红外图像的人体动作实时识别方法 |
CN112805730A (zh) * | 2019-12-30 | 2021-05-14 | 华为技术有限公司 | 一种轨迹预测方法及相关设备 |
CN111540055A (zh) * | 2020-04-16 | 2020-08-14 | 广州虎牙科技有限公司 | 三维模型驱动方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114359328A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108717531B (zh) | 基于Faster R-CNN的人体姿态估计方法 | |
US9330307B2 (en) | Learning based estimation of hand and finger pose | |
JP5873442B2 (ja) | 物体検出装置および物体検出方法 | |
CN111881887A (zh) | 基于多摄像头的运动姿态监测和指导方法及装置 | |
JP4742168B2 (ja) | ビデオ監視カメラが検出した対象物の特性を識別する方法および機器 | |
Chang et al. | Tracking Multiple People Under Occlusion Using Multiple Cameras. | |
CN106796449A (zh) | 视线追踪方法及装置 | |
CN109059895A (zh) | 一种基于手机摄像头和传感器的多模态室内测距及定位方法 | |
CN111144207B (zh) | 一种基于多模态信息感知的人体检测和跟踪方法 | |
CN113850865A (zh) | 一种基于双目视觉的人体姿态定位方法、系统和存储介质 | |
CN113378649A (zh) | 身份、位置和动作识别方法、系统、电子设备及存储介质 | |
Xu et al. | Integrated approach of skin-color detection and depth information for hand and face localization | |
Labati et al. | Weight estimation from frame sequences using computational intelligence techniques | |
CN112633217A (zh) | 基于三维眼球模型计算视线方向的人脸识别活体检测方法 | |
CN114612933B (zh) | 单目社交距离检测追踪方法 | |
CN111582036A (zh) | 可穿戴设备下基于形状和姿态的跨视角人物识别方法 | |
CN113221815A (zh) | 一种基于骨骼关键点自动检测技术的步态鉴定方法 | |
CN108694348B (zh) | 一种基于自然特征的跟踪注册方法及装置 | |
Haker et al. | Self-organizing maps for pose estimation with a time-of-flight camera | |
CN114359328B (zh) | 一种利用单深度相机和人体约束的运动参数测量方法 | |
CN112183287A (zh) | 一种移动机器人在复杂背景下的人数统计方法 | |
CN113723432B (zh) | 一种基于深度学习的智能识别、定位追踪的方法及系统 | |
El-Sallam et al. | A low cost 3D markerless system for the reconstruction of athletic techniques | |
Martin et al. | An evaluation of different methods for 3d-driver-body-pose estimation | |
CN114548224A (zh) | 一种用于强交互人体运动的2d人体位姿生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |