掌桥专利:专业的专利平台
掌桥专利
首页

在人机物融合场景下的多目标实时摔倒检测方法及装置

文献发布时间:2023-06-19 19:27:02


在人机物融合场景下的多目标实时摔倒检测方法及装置

技术领域

本发明涉及计算机视觉技术领域,具体为一种在人机物融合场景下的多目标实时摔倒检测方法及装置。

背景技术

随着人口老龄化的不断加重,我国老年人口数量的增加,根据CDC(2017)的记录显示,摔倒给老年人带来的威胁日益加重,并逐渐成为一个亟待解决的问题。越来越多的摔倒事件的出现,不仅给家庭和社会造成了严重的负担,而且在因为摔倒而导致受伤的情况下,如果缺乏即使的护理和支持,就极有可能对生命造成威胁。同时随着物联网,大数据和人工智能技术的快速发展与加速融合,以智能物联网为首的通过各种传感器联网实时采集各类数据,进而在终端设备,边缘设备或云端通过数据挖掘和机器学习方法来进行智能化处理和理解的人机物的不断加深融合,在人机物融合场景下如何推进人机物三元的协作,并以此来解决摔倒带来的社会和安全问题显得格外重要。因此将计算机视觉应用到摔倒检测中,实现在人机物场景下的摔倒检测具有十分重要的现实意义。

基于计算机视觉的摔倒检测方法主要有1)基于体态分析的摔倒检测:通过使用人体姿态的静态特征,来识别人体的姿态(躺,站立,坐等),然后将躺的姿态认为是摔倒。这种方法的问题是无法将睡觉等处于躺倒姿态的活动区分开来,有较大的误识别率,且受环境影响较大。2)基于静态检测的摔倒检测:通过分析人体处于躺的姿态之后是否在之后的一段时间仍处于躺倒的姿态来判定是否发生了摔倒。这种方法仍旧没有摆脱体态分析的弊病,仍旧存在着相同的问题。3)基于头部运动分析的摔倒检测:通过使用深度相机和热相机等方法来追踪头部运动,通过分析头部的运动来判断是否发生摔倒。这种方法由于头部在摔倒时运动非常剧烈,容易丢失对头部的追踪,导致检测精度不高,且存在非常明显的对于设备的要求,实施困难。4)基于深度学习/机器学习的摔倒检测方法:通过学习人体的姿态特征,使用神经网络或者传统机器学习的方法,精度高,且泛化性好。

在已经公开的基于机器学习/深度学习的摔倒检测方法中,普遍将摔倒检测过程分为两步:运动目标检测和摔倒判定,使用一个网络进行人体检测,另一个网络进行摔倒判定。在进行人体检测时,将所有人体进行检测并不加筛选的进行人体特征提取,将很多没有必要进行特征提取的人体也进行了特征提取,明显浪费了大量了算力和计算时间,很难满足实时性的要求。此外,对于已经公开的网络模型中并没有针对易误检的情况进行训练,导致误检率偏高。而且在已经公开的人体行为数据集中包含的摔倒的样本数量极少,潜在的模型更加关注其他的动作,而不是摔倒的动作,造成摔倒检测的准确率较低。

发明内容

为了克服现有的摔倒检测算法实时性差、准确率低、误报率高的不足,以及更好的应对数据不足的情况,本发明提供了一种在人机物融合场景下的多目标实时摔倒检测方法及装置,通过使用度量学习的方式,可以很好的解决在小样本情况下对于摔倒的识别。

本发明解决其技术问题所采用的技术方案是:

一种在人机物融合场景下的多目标实时摔倒检测方法,其步骤包括:

根据各目标的当前状态,生成查询图片I

分别将各查询图片I

基于映射空间中的查询嵌入向量与参考嵌入向量,获取实时摔倒检测结果。

进一步地,生成查询图片I

1)使用Yolo模型,获取目标;

2)对具有摔倒迹象的目标进行骨骼节点提取,得到若干个骨骼节点序列的队列;

3)基于各骨骼节点序列,生成矩阵S

4)通过正则化方法,将矩阵S

5)将各矩阵S′

进一步地,通过以下步骤获取具有摔倒迹象的目标:

1)获取各目标检测框的长宽之比;

2)根据设定阈值与所述长宽之比,获取具有摔倒迹象的目标。

进一步地,进行骨骼节点提取的方法包括:AlphaPose算法、OpenPose算法、CPN算法、MSPN算法、RMPE算法或采用更轻量网络的改进AlphaPose算法。

进一步地,骨骼节点包括:鼻节点、左眼节点、右眼节点、左耳节点、右耳节点、左肩膀节点、右肩膀节点、左手肘节点、右手肘节点、左手腕节点、右手腕节点、左膝盖节点、右膝盖节点、左脚踝节点、右脚踝节点、左胯部节点和右胯部节点。

进一步地,通过以下步骤将查询图片I

1)提取查询图片I

2)基于所述特征,使用两层的感知机,生成查询嵌入向量;

3)将查询嵌入向量映射到映射空间。

进一步地,通过以下步骤提取查询图片I

1)以Resnet18网络作为特征提取网络的骨架,并使用预训练好的特征提取网络参数进行初始化;

2)基于骨骼节点序列的训练集,生成训练查询图片及训练查询图片的标签;

3)将训练查询图片输入特征提取网络,并基于训练查询图片的标签、三元组损失/多相似性损失,对特征提取网络进行训练,得到训练好的特征提取网络;

4)将查询图片I

进一步地,通过以下步骤得到检测结果:

1)在嵌入空间中,获取每一查询嵌入向量的查询点与每一参考嵌入向量的参考点;

2)通过最邻近算法,查找距离每一查询点最近的参考点,并将该参考点的标签作为查询数据点的预测标签,以得到检测结果。

进一步地,若检测结果中包含预测为摔倒的目标,则通过邮件或者短信的方式通知相应联系人。

一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行以上所述方法。

一种电子装置,包括存储器和处理器,其中存储器存储执行以上所述方法的程序。

本发明的有益效果是:

1、通过在有限的小样本的摔倒数据集上使用深度度量学习的方法,实现了在摔倒数据量不足的情况下依旧能够有较高的准确度和较低的误判率;

2、因为度量学习的特性,可以将多种摔倒的姿态以及易错误识别的数据作为参照集,从而降低错误识别率,减少因为误报警而造成的人力和财力损失;

3、同时使用深度学习和度量学习相融合的方法,提高了度量学习的学习能力,能够提供更加准确的摔倒识别准确率;

4、通过在基于Yolo的人体检测之后添加筛选过滤的步骤,减少了后续特征提取的算力和时间,实现了多人场景下的实时检测;

5、通过对数据处理流程的优化,节省了不必要的数据处理,节省了算力,提高了效率,实现了实时检测的效果,能够达到15fps的效果;

6、根据不同的隐私保护需求,实现了在不同隐私保护设定下的摔倒检测监控系统;

7、在公开数据集SisFall数据集上实现了100%的检测准确率,且在复杂场景数据集ImVia Fall Detection数据集上实现了96.75%的准确率,误检率不足1%。

附图说明

图1是本发明的摔倒检测方法架构图。

图2是本发明的摔倒检测方法流程图。

图3是本发明的数据特征提取表示方法流程图。

具体实施方式

在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。

此外,还需说明的一点是,为了避免不必要的细节而模糊了本发明,在附图中仅仅展示了与根据本发明的方案密切相关的部分,而省略了与本发明关系不大的其他细节。

本发明的摔倒检测方法,先对视频中的人体进行检测,并且通过筛选的方式筛选出可能会发生摔倒的人体,通过深度度量学习和最邻近算法对人体状态做第二次检测,进而判定是否发生摔倒事件。通过使用深度学习和度量学习结合的方法,实现了在摔倒数据较少的情况下的训练和摔倒检测识别。同时针对易混淆数据,通过深度度量学习的方式,不断增加易混淆数据与摔倒数据之间的距离,从而提高了检测的准确率,降低了误判率,取得了良好的效果。

本发明通过以下的步骤进行实现:

(1)对公开数据集的数据进行预处理,剔除数据质量较低的数据,并整合现有的几个数据集作为摔倒检测的融合数据集。

(2)将数据集的数据进行特征提取,将人体关键节点的序列进行提取,并且采用特殊的编码的方式将人体关键节点序列进行编码,并将其编码结果使用一张图片进行表示。

(3)搭建深度度量学习的网络模型进行训练和验证。

(4)在进行测试时,选择有代表性的动作图片作为度量学习的Reference Set(参考集)。

(5)对实时视频采用Yolo算法进行人体检测

(6)通过对检测的人体进行筛选,过滤掉不可能发生摔倒的正常人体。

(7)对筛选之后的人体进行人体关键节点提取

(8)将人体一段时间内的人体关键节点进行编码,编码成一张图片

(9)通过深度度量学习网络将图片和reference set中的图片映射到映射空间中

(10)采用最邻近算法,将距离待检测数据点最近的reference set中的数据点的标签作为判定标签。

(11)在监控后台中,根据不同的隐私设定,比如公共场所可以显示完整的视频画面,而在私密场所比如私人家庭,则可以只显示识别的人体骨骼关键点,从而隐藏背景画面和人物画面,从而很好的保护隐私。

(12)如果判定发生摔倒,则通过邮件/短信等方式进行摔倒报警。

具体实施方式如下:

本实施例提出一种基于计算机视觉和深度度量学习的多人实时摔倒检测方法,如图1~2所示,为本实施例的基于计算机视觉和深度度量学习的多人实时摔倒检测方法的流程图。

首先,本实施例中的关键骨骼点包括鼻节点,左眼节点,右眼节点,左耳节点,右耳节点,左肩膀节点,右肩膀节点,左手肘节点,右手肘节点,左手腕节点,右手腕节点,左膝盖节点,右膝盖节点,左脚踝节点,右脚踝节点,左胯部节点,右胯部节点共计17个节点。

由于采用的数据集为使用Microsoft Kinect采集的人体关键节点信息,故而在训练过程中不需要进行人体骨骼节点的检测和提取。但是在做测试中,由于输入数据是视频数据,需要本申请自行进行人体的检测和人体骨骼节点的提取。

在进行人体检测时,本申请采用开源的Yolo模型对测试视频进行逐帧的人体检测,并选择置信度大于90%的作为检测到的人体。

在对人体骨骼节点进行处理的过程中,本申请可以将一段时间内每个人的人体骨骼节点坐标按照不同节点不同时间进行划分,得到每个人体骨骼节点坐标相应的矩阵S,其中矩阵的每一行代表一个人体骨架节点,每一列代表某一骨架节点按照特定时间间隔采样时的坐标位置。

本申请通过正则化的方式将矩阵S

此外,本发明还可以通过其他设备或者技术手段获得人体在不同时刻的加速度、惯性等数据,再根据人体骨骼节点数据、加速度数据、惯性数据等中的一种或多种,生成图片。例如针对加速度数据、惯性数据分别训练一个模型,当有惯性数据或加速度数据中的一种时,使用对应模型,生成图片;当惯性数据和加速度数据都有时,这两种模型同时使用,分别生成数据集D

在特征提取网络中,本申请使用Resnet18作为本申请的网络骨架,并且使用预训练好的模型参数进行初始化。在最后的特征提取层之后,本申请使用了两层的感知机来将特征转换为嵌入大小。嵌入特征向量是通过深度度量学习的方法进行改进的。

本申请将三元组损失与多相似性挖掘器相结合,用来在训练期间挖掘良好的三元组候选者。

在训练过程中,本申请定义的三元组损失为:给定一个三元组:锚点图片I

其中,f表示使用度量学习学习到的映射函数,f(I

为了将三元组损失和分类损失统一起来,本申请使用如下损失函数作为整体训练损失函数:L=αL

通过对特征提取网络的训练,最终得到一个Encoder编码器,能够将本申请编码之后的图片进行特征提取,并且映射到嵌入空间中。

在做测试时,本申请对每个类别选择特征各不相同的10个数据作为ReferenceSample。

在做测试时,本申请首先对实时视频数据进行人体检测,在此处采用的人体检测算法为Yolo。

将检测到的人体目标进行初步筛选,在此处本申请以人体目标检测框的长宽之比作为筛选值,此处设定阈值为0.6。将所有阈值小于0.6的人体目标数据输入到下一流程中进行检测,大于0.6的人体目标则认为当前并无摔倒迹象。

然后将待检测到人体目标通过AlphaPose算法进行人体骨骼节点提取。在此处为了提高AlphaPose的人体骨骼关键节点检测速度,本申请使用更轻量的模型,与原模型相比,在损失很小精度的基础上,提高了人体关键节点的检测效率。

容易理解的,本发明提取骨骼节点时,还可使用其他对骨骼节点进行提取的方法:例如,OpenPose,CPN,MSPN,RMPE等。

针对每一个不同的人体目标,本申请都维护一个存放固定时间间隔的人体骨骼节点序列的队列,每个队列的大小设置为30,当队列中数量大于30时就会将最早的骨骼节点从队列中删除。

通过对队列中的所有骨骼节点序列进行编码,然后按照相同于训练数据时的方式将这些骨骼序列编码成一张图片。这样针对每个队列,都会存在一个编码之后的图片与之对应。如果此时有10个队列(即有10个跟踪目标),那么,在此时此刻的查询数据集中就存有10张图片。

然后对查询数据集中每个图片,使用本申请训练得到的特征网络进行处理,得到一个嵌入向量。该嵌入向量即为在嵌入空间中所对应的点的坐标。

同样,本申请将早已经选好的参考数据集中的每张图片使用相同的特征网络进行处理,得到一系列的参考嵌入向量,这些嵌入向量在嵌入空间中表示一些已经知道标签的点。

本申请通过最邻近算法,对查询数据集中每个点,查找在嵌入空间中距离该点最近的参考点,并且将该参考点的标签作为查询数据点的预测标签。

在监控后台中,根据不同的隐私设定,比如公共场所可以显示完整的视频画面,而在私密场所比如私人家庭,则可以只显示识别的人体骨骼关键点,从而隐藏背景画面和人物画面,很好的保护隐私。

如果存在一个预测为摔倒的目标人体,则通过邮件或者短信的方式通知相应的医疗救护支持机构,给摔倒者提供及时的医疗支持,保证生命安全。

显然,本发明的上述实施例仅仅视为清楚的说明本发明所作的距离,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其他的不同形式的变化或变动,这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

相关技术
  • 基于无人驾驶的多数据融合障碍物检测装置及其检测方法
  • 监控场景下的异常闯入物实时检测方法及装置
  • 一种浴室场景下Wi-Fi感知人体摔倒检测方法和系统
技术分类

06120115915905