APP下载

基于视频的人体行走参数测量方法及应用

2022-11-02周晓晶金思甫汤张枫

图学学报 2022年5期
关键词:关节点步速步长

姚 鹏,周晓晶,金思甫,汤张枫

基于视频的人体行走参数测量方法及应用

姚 鹏1,周晓晶1,金思甫1,汤张枫2

(1. 东南大学仪器科学与工程学院,江苏 南京 210096;2. 杭州萤石软件有限公司,浙江 杭州 310051)

针对现有的人体行走参数测量方法复杂度高、效率低等问题,提出了一种基于视频的人体行走参数测量方法。利用监督学习的方法对视频中的运动目标进行姿态估计,逐帧识别骨骼关节点。然后根据头部和脚部特征点,结合场景标定获取的像素距离与实际距离的转换关系,实现行走身高测量;根据关节特征点,利用余弦公式计算关节活动度;根据脚部特征点,提出了一种结合前后极点帧差和像素差判断行走步长和步速的方法。最后提出了一种基于Unity3D的虚拟人随动控制方法,能够在虚拟场景中进行运动仿真,便于实时监控和分析视频中的人体异常行为并做出预警。实验表明该方法具有操作简单、准确度高和实时性强等优点。

单目视频;人体关节点;行走参数;虚拟人仿真;异常行为

人体行走是复杂的非刚体运动,运动形式复杂多样。通过对行人进行检测、跟踪、计算得到人体行走参数,并获得多种信息,在安全监控、刑事侦查、医疗诊断和虚拟现实等领域均有广阔地应用前景[1]。相比于其他非接触测量方式,如红外线[2]、激光[3]、雷达[4]等,基于视频的人体行走参数测量技术只需对三维场景进行简单地拍摄,就可以随时利用测量软件进行在线或离线测量,具有结构简单、成本低廉、安全性高等多重优势。

基于视频的测量方法是从对单幅图像的测量发展而来,其利用视频序列中的信息进行运动测量,能够对单帧图像的测量结果做概率统计从而得到更加精确的平均值,是非接触式测量中非常重要的方法之一。CRIMINISI等[5]首次提出了单幅图像测量理论,利用消失点和消失线以及共线四点的交并比不变性计算度量信息之间的比例关系,从而得到目标的真实距离。CHAI和CAO[6]在该理论的基础上提出了一种基于单目视觉的人体身高实时测量算法,通过消失点和消失线提取每帧图像中的头部顶点和足部点,设置多个参考目标进行测量得到目标平均身高。但此类算法从监控视频中获得人体身高通常不够准确,且图像的分辨率过低,提取的从头到脚位置不够准确,以致造成对帧内高度的低估。为了解决上述问题,一些学者通常会选择先对视频进行校准,TOSTI等[7]尝试使用意大利AMPED SOFTWARE公司开发的Amped Five法医图像和视频增强软件对高度失真的低分辨率视频监控图像中的消失线进行校准,从而提高人体身高估计的精度。KAINZ等[8]则是采用ArUco标记的校准对象来估计视频中的人体高度。此类方法虽然测量准确度较高,但繁琐的校准过程,限制了在复杂场景的适用性。

目前大多数的人体行走监测系统均需专门部署可提供三维信息的深度相机Kinect[9-10],以计算时空行走参数(如步长、步速等)和运动学参数(如膝关节、肘关节和髋关节的屈曲)。STONE和SKUBIC[11]的研究指出,网络摄像头系统在测量步长时优于Kinect,是因红外反射对人体穿着含有氨纶成分的服装表现不佳,导致Kinect相机无法获取这部分人体的深度数据,而网络摄像头系统可以更准确地提取用于计算步长的脚步位置。使用Kinect深度相机虽然能从单个深度图像中预测人体关节位置,但也极易受到光照、前景遮挡以及人体自遮挡的影响。

近年来,随着人工智能的不断发展,基于深度学习的人体姿态估计算法已经无需借助深度相机,便可从普通RGB摄像头采集的图像中预测出人体位置并提取骨架中的稀疏关节点坐标[12]。OpenPose人体姿态识别项目[13]是美国卡耐基梅隆大学基于卷积神经网络(convolutional neural networks,CNN)和监督学习开发的开源库,是世界首个基于深度学习的实时多人二维姿态估计应用。OpenPose首次提出了部分亲和场(part affinity fields,PAFs)的概念,并用于描述肢体的位置和方向,解决了多人识别问题,并采用大卷积核来获得大的感受野,能够有效地推断被遮挡的关节。但OpenPose模型也存在很多不足,如网络参数较多、计算量较大等。刘玉杰等[14]提出的基于全局姿态感知的轻量级人体姿态估计模型,以损失很小的精度为代价大大减少了网络的参数量和计算量,其参数量仅为OpenPose的10%。

本文通过研究发现,目前使用普通RGB摄像头测量人体行走参数的研究多集中在测量行人身高信息,而对测量其他很有意义参数的研究不充分,如行人运动速度、步长、关节运动角度等。因此,本文提出了一种基于视频的人体行走参数测量的方法,可实现对关节活动度、行走身高、步长和步速等参数的实时测量;同时还提出了一种基于Unity3D的虚拟人随动控制方法,能够在虚拟场景中进行运动仿真,便于实时监控和分析视频中的异常行为并及时做出预警,该方法具有较高的测量精度和较强的鲁棒性。

1 人体行走参数测量方法

基于视频的人体行走参数测量方法的整体框架如图1所示。该算法主要包括人体骨架特征提取、行走参数测量、虚拟人随动控制和异常行为识别等4个核心模块。该方法的流程是:首先输入视频序列,由OpenPose对视频序列中的人体运动目标进行逐帧检测并提取关节点。根据头部、脚部特征点,结合场景标定获取图像像素距离与实际距离的转换关系,实现行走身高测量。根据肘关节、肩关节、腕关节特征点,利用余弦式计算关节活动度。根据脚部特征点,提出了一种结合前后极点帧差和像素差判断行走步长和步速的方法。本文还提出了一种基于Unity3D的虚拟人随动控制方法,能够在虚拟场景中实现从视频到虚拟人模型的动作仿真和生成自然流畅的人物动画,并利用测量的行走参数,可在虚拟场景中实时监控和分析异常行为。

图1 本文方法的整体框图

1.1 人体关节点定位

OpenPose是一种自底向上的方法,先检测出图像中所有人的关节点,然后再将检测出的关节点分配给每个对应的人。与自顶向下的方法相比,其仅仅使用单位时间就可以检测整幅图中的所有人,检测时间不受人数的影响。OpenPose模型本质上是一个双并行CNN模型,同时使用2个CNN,一个网络从图像中预测人体关节位置,另一个网络则用于连接关节组成肢体,最后将2个网络的结果进行姿态组装,完成对图像中人体的姿态估计。OpenPose姿态估计算法的另一个优势是对人体的检测并不依赖于图像中的局部特征,即使在图像分辨率较低或噪声较大的条件下也可以准确提取目标的二维关节点坐标。

本文主要使用了OpenPose开源库提供的基于BODY25数据集的人体关节点识别算法,其支持25个人体关节点的识别,关节点映射次序如图2所示。输入视频序列,可以输出每一帧图像的人体骨骼结构图和关节点坐标,每个关节点信息由(,,) 3个数据组成,其中和为关节点在图像中的横、纵坐标,坐标原点位于图像的左上角,横坐标方向水平向右,纵坐标方向竖直向下,为经过归一化处理后的预测评分,其值越趋近于1,则表明关节点的预测置信度越高。

通过OpenPose虽然能够实时获取每一帧图像的人体骨骼关节点,但要想进一步获取人体行走参数,还需要对这些关节点坐标数据进行处理。

1.2 关节活动度测量算法

人体关节主要包括肩关节、肘关节和膝关节等。肘关节活动度是以肘关节为顶点,肩关节和腕关节为端点构成的夹角θ;膝关节活动度是以膝关节为顶点,髋关节和踝关节为端点构成的夹角θ;肩关节活动度较为特殊,是以肩关节为顶点,上臂和0°基准线所构成夹角θ。要计算关节活动度,首先需要针对其关节部位选取3个特征点,利用OpenPose获取其位置信息,再通过余弦定理计算其运动的角度,测量示意图如图3所示。

图2 BODY25模型关节点映射次序

图3 人体关节活动度测量示意图

以肩关节活动度为例,其他几类关节活动度计算方法类似。假设图像中肘关节坐标为(x,y)、肩关节坐标为(x,y),在肩关节正下方的0°基准线上任取一点记为(x,0),下标Î{0,1},0表示左侧肢体,1表示右侧肢体。首先计算出关节点两两之间的欧氏距离,再利用余弦定理计算出肩关节活动度,即

1.3 行走身高测量算法

行走身高定义为人体头顶点到地平面的垂直距离,由于行走过程中人体质心的上下起伏,这个距离是动态变化的,可以将人体的行走身高近似视为上身长度1和下身长度2之和,则行走身高为

其中,d为鼻子到髋关节的竖直距离;d为髋关节到踝关节的竖直距离。

此时根据关节点坐标计算得到的行走身高仅仅是像素距离,还需要通过相机标定,获取相机内外参数矩阵和畸变系数,方可将像素距离转化为实际的身高,本文使用的方法是经典的张正友标定法[15],标定过程不再赘述。

1.4 步长和步速测量算法

人在行走过程中,左右脚是交替进行动作,脚步动作可分为支撑和抬腿向前2个阶段,则步长可以通过抬腿向前阶段脚部像素变化量得到,但OpenPose检测到的脚在支撑阶段的坐标通常不恒定,会有一个小范围浮动。因此针对支撑脚的坐标变化特点,提出了如下测量步长的方法:

(1) 输入图像序列,取连续3帧图像的脚部像素位置,即当前帧及前后帧图像;

(2) 判断当前帧的脚部像素位置是否为极点,若不是则取当前帧的下一帧,返回步骤1;

(3) 判断当前帧的脚部像素位置是否为有效极点,若是则保存脚部像素坐标,反之则取当前帧的下一帧,返回步骤1;

(4) 判断有效极点个数是否大于2,若是则计算步长对应的像素差并输出,反之则取当前帧的下一帧,返回步骤1。

当脚处于支撑阶段时,脚坐标均可视为极点,判断极点是否为有效极点是该算法的核心。本文的判断依据综合了前后极点的帧数差与极点所对应脚像素坐标的距离差,即一个步长对应的像素差与帧数应满足某一范围。在判断极点是否有效时,将一段连续图像序列内的无效极点视为同一支撑阶段的脚像素坐标,进行均值计算,得到真实步长。

若步长对应的帧差为,视频帧速率为,则步速为

2 人体行走参数测量的应用

传统的视频监控系统,大多采用人为的监控和处理,但由于监控场景背景复杂、要素过多、图像分辨率低等原因,安保人员容易产生视觉疲劳,难以及时发现监控场景中的人体异常行为。而实时复现的虚拟场景背景清晰、人物模型简单,很好地弥补了传统视频监控的这一缺点,因此通过实时测量人体行走参数,识别视频中的异常行为,并在Unity3D虚拟场景中进行实时的运动仿真,分析异常行为的发生原因,及时做出预警,具有极大的现实意义。

2.1 基于Unity3D的虚拟人随动控制方法

本文提出了基于Unity3D虚拟人随动控制方法,是将OpenPose获取的关节坐标在Unity3D虚拟场景中进行实现。由于对异常行为的识别更注重人体姿态的分析,因此可以忽视人体的碰撞体积和刚体属性,虚拟人建模时可用小球代替关节点,将人体抽象为简单的点线模型。

驱动虚拟人模型实时跟随视频监控中的人体运动由控制脚本完成,即:首先需要对虚拟人模型和OpenPose人体骨架的关节顺序进行一致性映射处理;逐帧读取和解析OpenPose输出的JSON文件,获取文件中的人体关节点坐标;当坐标匹配时,将数据赋值给虚拟人模型对应的关节点,将其移动至虚拟场景世界坐标系的对应位置,即可驱动虚拟人模型同步运动。

虚拟人模型及其运动仿真效果如图4所示,OpenPose将采集到的关节点数据实时传递给Unity3D中的虚拟人模型,实现人体动作的随动控制,生成实时的人物动画。

2.2 基于人体运动参数的跌倒检测

由于异常行为的多样性以及与正常行为区分的复杂性,使得异常行为的界定很难提出统一的通用模型,往往需要根据具体的真实场景进行分析和定义。因此本文以最常见的异常行为——人体跌倒为例,通过分析以下人体行走参数,对跌倒行为进行简单地识别和判定:

图4 基于Unity3D的虚拟人随动控制

(1) 行走身高变化幅度。人体在突然坠落的过程中,身高随之发生骤变,由于从站立到跌倒是一个非常短的过程,因此每5个相邻帧检测一次,若在此期间的身高变化幅度超过25 cm,则认为已检测到异常特征。

(2) 人体躯干与竖直方向的夹角。在跌落过程中,人体最明显的特征是身体倾斜,因此可以用人体躯干与竖直方向的夹角来描述人体下落过程中身体连续倾斜的特点。若躯干与竖直方向的夹角超过60°,则认为已检测到异常特征。

(3) 在被判定为可能发生跌倒后,若1 min内未恢复,则被确定为跌倒事件,应及时发出预警,指示救援。

3 实验与分析

实验场景分为室外场景和室内场景,室内光源为普通照明光线,室外为自然光线。实验视频均采用Sony DSC-HX10V相机拍摄,总像素数约1 890万,拍摄时行人垂直于相机的主光轴运动,拍摄的角度大致与人体平行,视频分辨率均为1280×720,帧速率均为30 Hz。肩关节活动度在前伸和后屈的极限位置的实际值可利用电子数显量角尺测量得到,行人身高和步长的实际长度使用卷尺人工测量得到,行走的实际平均速度通过秒表测量目标行走指定距离所需的时间得到。考虑到人体行走参数具有个体差异性,为了保证实验结果的可靠性,针对不同的行走参数均设置了不同的运动目标,并在不同的场景进行多次测量。

3.1 肩关节活动度测量结果及分析

肩关节活动度测量分别在室内、外进行,运动目标完成一次完整的摆臂过程要经过“前伸”“下垂”和“后屈”3个阶段,分别对运动目标1 (图5)的左肩活动度和运动目标2(图6)的右肩活动度进行多帧跟踪。实验共循环摆臂20次,取其中连续的500帧进行数据分析,左右肩关节角度变化如图7所示,大致呈周期性变化,符合实际预期。实验表明该方法能够及时捕捉到人体关节角度的变化情况,且人体在摆臂过程中,极限前伸角度约为180°,极限后屈角度约为-60°,符合正常成年人的肩关节活动范围。

图5 左侧肩关节活动度多帧跟踪结果(室内)

图6 右侧肩关节活动度多帧跟踪结果(室外)

图7 左右两侧肩关节活动度变化曲线

3.2 行走身高测量结果及分析

在室内、外测量不同身高行人正常行走的身高,运动目标1~4的单帧跟踪结果如图8所示,对每个运动目标取500帧数据进行统计分析,行走身高统计结果见表1,虽然OpenPose在输出关节坐标时在特定帧上易出现抖动和跳变从而带来一定误差,但总体上行走身高的标准差不超过2 cm,相对误差不超过1.5%,实验结果可靠。

图8 多目标行走身高单帧跟踪结果((a)~(b)运动目标1和2 (室内);(c)~(d)运动目标3和4 (室外))

表1 行走身高统计分析表

行走身高变化情况是跌倒检测的重要判断依据,图9显示了运动目标从直立行走到突然下蹲再恢复直立行走的过程中身高的跟踪测量情况,当人体下蹲时,测得的行走身高会发生骤变,实验表明该方法能够及时捕捉身高的变化情况。

3.3 步长和步速测量结果及分析

选取不同身高、性别的行人作为实验目标,分别在室内和室外对正常行走和慢跑2种运动状态进行实验,对每个运动目标同时测量其步长和步速。运动目标1~4的多帧跟踪结果如图10所示,各取200帧图片进行统计分析,本文通过与平均步长和平均步速比较得出结论(表2)。实验结果表明,由于每个人的生理结构和走路习惯不同,不同人的步长和步速在数值上难以得出一个统一的变化规律,即使是同一个人,在不同时刻的步长和步速也有较大差异,但整体上实验测得每个人在行走状态下步长相对误差不超过2.7%,步速的相对误差不超过1.8%,在慢跑状态下步长相对误差不超过3.4%,步速的相对误差不超过2.5%,实验表明该方法具有较高的测量准确度。

3.4 虚拟人运动仿真及跌倒检测

在虚拟场景中对运动进行仿真及跌倒检测的实验结果如图11所示,当控制脚本检测到场景中某人的行走参数超过设定的阈值时,将界定为跌倒事件,并及时做出预警。具体表现为虚拟场景中虚拟人的颜色变化,正常行走时虚拟人为蓝色,当检测场景中某人出现异常特征,则虚拟人的颜色变化更加醒目,便于与场景中的其他虚拟人区分,辅助监控人员及时发现异常情况,如果跌倒后未及时站起,算法将视为人体无法站立,自动将虚拟人标红,提示监控人员需要立刻采取援救措施。

图9 运动目标下蹲时身高测量结果

图10 运动目标1~4步长和步速测量结果((a)~(b)运动目标1行走和慢跑 (室内);(c)~(d)运动目标2行走和慢跑(室内);(e)~(f)运动目标3行走和慢跑(室外);(g)~(h)运动目标4行走和慢跑(室外))

表2 步长和步速测量结果统计分析表

图11 基于虚拟人动作仿真的跌倒检测及预警((a)视频监控视角;(b)虚拟场景视角)

4 结束语

本文给出了一种基于视频的人体行走参数测量方法,针对不同的实验场景和运动目标,均能准确地实现对关节活动度、行走身高、步长和步速等行走参数的实时测量。该方法无需精确的前景,对人体自遮挡而造成部分信息缺少的情况,仍能得到较为准确的人体行走参数值,测试系统鲁棒性强。由于本文提出的人体行走参数测量方法执行速度快,可以完成对人体行为的实时监控,因此可以用于对人体异常行为进行识别和判定。利用测量出来的人体行走参数,提出了对跌倒行为的检测算法,并在Unity3D虚拟场景中进行运动仿真。通过人体骨骼的运动仿真分析,能够发现异常行为的发生原因,提取跌倒等异常行为的共性特征,确定发出预警信息的合适时机。

[1] PAREEK P, THAKKAR A. A survey on video-based human action recognition: recent updates, datasets, challenges, and applications[J]. Artificial Intelligence Review, 2021, 54(3): 2259-2322.

[2] TZYDYNZHAPOV G, GUSIKHIN P, MURAVEV V, et al. New real-time sub-terahertz security body scanner[J]. Journal of Infrared, Millimeter, and Terahertz Waves, 2020, 41(6): 632-641.

[3] ISOGAWA M, YUAN Y, O’TOOLE M, et al. Optical non-line-of-sight physics-based 3D human pose estimation[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2020: 7011-7020.

[4] ALSHAMAA D, SOUBRA R, CHKEIR A. A radar sensor for automatic gait speed analysis in walking tests[J]. IEEE Sensors Journal, 2021, 21(12): 13886-13894.

[5] CRIMINISI A, REID I, ZISSERMAN A. Single view metrology[C]. The 7th IEEE International Conference on Computer Vision. New York: IEEE Press, 1999: 434-441.

[6] CHAI Y, CAO X J. A real-time human height measurement algorithm based on monocular vision[C]//2018 2nd IEEE Advanced Information Management, Communicates, Electronic and Automation Control Conference. New York: IEEE Press, 2018: 293-297.

[7] TOSTI F, NARDINOCCHI C, WAHBEH W, et al. Human height estimation from highly distorted surveillance image[J]. Journal of Forensic Sciences, 2022, 67(1): 332-344.

[8] KAINZ O, DOPIRIAK M, MICHALKO M, et al. Estimating the height of a person from a video sequence[C]//2021 19th International Conference on Emerging eLearning Technologies and Applications. New York: IEEE Press, 2021: 150-156.

[9] BARI A S M H, GAVRILOVA M L. KinectGaitNet: kinect-based gait recognition using deep convolutional neural network[J]. Sensors: Basel, Switzerland, 2022, 22(7): 2631.

[10] BIJALWAN V, SEMWAL V B, MANDAL T K. Fusion of multi-sensor-based biomechanical gait analysis using vision and wearable sensor[J]. IEEE Sensors Journal, 2021, 21(13): 14213-14220.

[11] STONE E, SKUBIC M. Evaluation of an inexpensive depth camera for in-home gait assessment[J]. Journal of Ambient Intelligence and Smart Environments, 2011, 3(4): 349-361.

[12] 任好盼, 王文明, 危德健, 等. 基于高分辨率网络的人体姿态估计方法[J]. 图学学报, 2021, 42(3): 432-438.

REN H P, WANG W M, WEI D J, et al. Human pose estimation based on high-resolution net[J]. Journal of Graphics, 2021, 42(3): 432-438 (in Chinese).

[13] CAO Z, SIMON T, WEI S E, et al. Realtime multi-person 2D pose estimation using part affinity fields[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE Press, 2017: 1302-1310.

[14] 刘玉杰, 张敏杰, 李宗民, 等. 基于全局姿态感知的轻量级人体姿态估计[J]. 图学学报, 2022, 43(2): 333-341.

LIU Y J, ZHANG M J, LI Z M, et al. Lightweight human pose estimation with global pose perception[J]. Journal of Graphics, 2022, 43(2): 333-341 (in Chinese).

[15] 郑玉梅, 宋文爱. 相机标定关键设备对标定精度的影响分析[J]. 图学学报, 2017, 38(2): 236-240.

ZHENG Y M, SONG W A. Analysis on the influence of camera calibration key equipment on calibration accuracy[J]. Journal of Graphics, 2017, 38(2): 236-240 (in Chinese).

Video-based human walking parameter measurement method and application

YAO Peng1, ZHOU Xiao-jing1, JIN Si-fu1, TANG Zhang-feng2

(1. School of Instrument Science and Engineering, Southeast University, Nanjing Jiangsu 210096, China; 2. Hangzhou EZVIZ Software Co., Ltd., Hangzhou Zhejiang 310051, China)

To address the problems of high complexity and low efficiency of the available methods for human walking parameter measurement, a video-based human walking parameter measurement method was proposed. The supervised learning method was used to estimate the pose of the moving target in the video, and the bone joint points were recognized frame by frame. Then, according to the feature points of head and feet, combined with the conversion relationship between the pixel distance obtained by scene calibration and the actual distance, the walking height measurement was realized. According to the joint feature points, the joint range of motion was calculated by cosine formula. According to the foot feature points, a method to identify the walking step size and pace was proposed by combining the frame difference of front and rear poles and the pixel difference. Finally, a virtual human follow-up control method based on Unity3D was proposed, which could carry out motion simulation in virtual scenes and was convenient for real-time monitoring and human abnormal behavior analysis in videos and early warning issuing. Experiments show that this method is superior in simple operation, high accuracy, and strong real-time performance.

monocular video; human joint points; walking parameter; virtual human simulation; abnormal behavior

TP 391

10.11996/JG.j.2095-302X.2022050858

A

2095-302X(2022)05-0858-07

2022-03-06;

2022-05-21

6 March,2022;

21 May,2022

国家重点研发计划项目(2019YFC511501)

National Key Research and Development Program (2019YFC511501)

姚 鹏(1999–),男,硕士研究生。主要研究方向为测试计量技术。E-mail:yaopeng_seu@163.com

YAO Peng (1999–), master student. His main research interest covers test measurement technology. E-mail:yaopeng_seu@163.com

周晓晶(1971–),女,副教授,博士。主要研究方向为测试计量技术、虚拟现实技术等。E-mail:xiaojingzhou@seu.edu.cn

ZHOU Xiao-jing (1971–), associate professor, Ph.D. Her main research interests cover test measurement technology, virtual reality technology, etc. E-mail:xiaojingzhou@seu.edu.cn

猜你喜欢

关节点步速步长
基于老年人行为特性的行人过街信号优化
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
基于深度学习和视觉检测的地铁违规行为预警系统研究与应用
步速与住院高龄老年患者全因死亡的相关性
步速与住院老年高血压患者全因死亡的相关性
关节点连接历史图与卷积神经网络结合的双人交互动作识别
健康老年人舒适步速测评的Meta分析
基于随机森林回归的智能手机用步长估计模型
基于Armijo搜索步长的几种共轭梯度法的分析对比
搞好新形势下军营美术活动需把握的关节点