基于骨骼点的跌倒检测方法及其跌倒检测装置与流程

文档序号:17162434发布日期:2019-03-20 00:56阅读:288来源:国知局
基于骨骼点的跌倒检测方法及其跌倒检测装置与流程

本发明涉及机器视觉深度学习技术领域,尤其涉及一种基于骨骼点的跌倒检测方法、装置、计算机设备及存储介质。



背景技术:

随着我国进入老龄化社会,养老问题日趋严峻。老年人的各项身体机能指标下降,活动能力降低,特别是平衡力、反应能力和协同能力的不足可能造成意外跌倒情况发生。当老人发生跌倒后,如果没有获得及时的援助甚至可能因此在家中身亡。因此,家庭或者其他环境中针对老人的跌倒检测是计算机视觉和机器学习领域中一个很有意义的研究问题。

目前现有的跌倒检测主要有三种方法,分别为基于穿戴式设备的跌倒检测、基于深度摄像头的跌倒检测和基于普通摄像头的跌倒检测。其中基于穿戴式设备的方法必须时刻携带,给使用者带来很大不便,实际应用价值不大;基于深度摄像头的方法由于成本昂贵,实际推广难度大;而基于普通摄像头的方法成本便宜、使用方便,但对算法的要求较高。

由于普通摄像头能够覆盖各个地方,因此其硬件基础是成熟的。目前业内利用普通摄像头进行跌倒检测已经提出了很多方法。例如,直接利用图像序列的信息对跌倒行为进行分类,利用检测算法对人物的边框变化进行分类。但是目前跌倒检测的数据较少,场景单一,不能应用在各种实际场景中。对于利用图像序列的分类方法,由于数据少,不能够训练出优秀的网络。对于利用检测算法对人物边框分类的方法,利用了大量其他数据集的信息,能够有效检测到人,但是在利用边框信息分类的时候,由于边框信息有限,不能得到泛化性好的网络。



技术实现要素:

本发明的目的是提供一种基于骨骼点的跌倒检测方法、装置、计算机设备及存储介质,用于解决现有技术存在的问题。

为实现上述目的,本发明提供一种基于骨骼点的跌倒检测方法,包括以下步骤:

通过第一图片样本训练第一特征提取神经网络,所述第一特征提取神经网络用于提取所述第一图片样本中的多个第一特征点,所述第一特征点表征人体上的关键骨骼点;

将第二视频样本输入训练好的所述第一特征提取神经网络,得到表征所述第二视频样本中的人体的关键骨骼点的多个第二特征点;

对所述多个第二特征点进行编码生成预测特征图;

通过所述预测特征图训练第二行为分类神经网络,所述第二行为分类神经网络用于对所述预测特征图中表示的行为进行分类;

将被监测对象的视频数据依次输入训练好的所述第一特征提取神经网络和所述第二行为分类神经网络,以输出所述被监测对象的行为类别。

进一步地,所述通过第一图片样本训练第一特征提取神经网络,包括:

所述第一图片样本输入resnet残差网络,得到第一提取数据;

所述第一提取数据分别通过多个具有不同膨胀系数的卷积模块,得到多个具有不同特征通道的第二提取数据;

所述多个具有不同特征通道的第二提取数据组合后进入以残差卷积堆积起来的第一卷积层,得到多个具有不同感知野的第三提取数据;

对所述多个具有不同感知野的第三提取数据进行融合,然后进入以残差模块堆积起来的第二卷积层,最终输出表征人体上的关键骨骼点的多个第一特征点;

通过第一损失函数对所述第一特征提取网络进行反向训练。

进一步地,所述通过所述预测特征图训练第二行为分类神经网络,包括:

所述预测特征图通过常规卷积模块,得到第一分类数据;

所述第一分类数据分别通过多个具有不同膨胀系数的卷积模块,得到多个具有不同特征通道的第二分类数据;

所述多个具有不同特征通道的第二分类数据组合后依次通过三个常规卷积模块,最终输出行为分类。

进一步地,所述第一损失函数f为:

其中xp、yp代表所述第一特征提取神经网络提取到的第一特征点的预测坐标,xg、yg代表所述第一特征点的实际坐标。

进一步地,所述第二损失函数l为:

其中,所述xk代表第k种行为类别的参数值,zk代表第k中行为类别的预测概率,l2代表防止发生过拟合的正则项。

进一步地,所述卷积模块由以下层依次串联组成:卷积层、批次正则化层、relu激活函数层、卷积层、批次正则化层、relu激活函数层、池化层。

进一步地,所述对所述多个第二特征点进行编码生成预测特征图,包括:

对所述多个第二特征点进行两两配对;

计算每两个第二特征点之间的距离和速度:

vxit=xit-xi(t-1)

vyit=yit-yi(t-1)

上式中,xit、yit分别代表t时刻的第i个第二特征点的横、纵坐标;lxjt代表t时刻第i个第二特征点和第j个第二特征点的欧拉距离,vxit代表第i个第二特征点在t时刻在x方向上的速度,vyit代表第i个第二特征点在y方向上的速度;

将所有计算得到的距离和速度数据组合形成预测特征图。

为实现上述目的,本发明还提出一种基于骨骼点的跌倒检测装置,包括:

第一神经网络训练模块,适用于通过第一图片样本训练第一特征提取神经网络,所述第一特征提取神经网络用于提取所述第一图片样本中的多个第一特征点,所述第一特征点表征人体上的关键骨骼点;

特征点提取模块,适用于将第二视频样本输入训练好的所述第一特征提取神经网络,得到表征所述第二视频样本中的人体的关键骨骼点的多个第二特征点;

特征图生成模块,适用于对所述多个第二特征点进行编码生成表征所述多个第二特征点的分布情况的预测特征图;

第二神经网络训练模块,适用于通过所述预测特征图训练第二行为分类神经网络,所述第二行为分类神经网络用于对所述预测特征图中表示的行为进行分类;

分类模块,适用于将被监测对象的视频数据依次输入训练好的所述第一特征提取神经网络和所述第二行为分类神经网络,以输出所述被监测对象的行为类别。

为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。

本发明针对现有技术中跌倒检测数据不足的问题,利用其他数据训练人体骨骼点特征提取神经网络;针对利用边框信息不足以检测出跌倒行为的问题,利用骨骼点信息对跌倒行为进行分类。本发明通过图片样本库训练第一特征提取神经网络,用于提取人体中的关键骨骼点信息;通过视频样本库训练第二行为分类神经网络,在已提取关键骨骼点信息的基础上,判断视频中的人体动作是否属于跌倒行为。通过本发明训练出的第一特征提取神经网络和第二行为分类神经网络,能够准确地提取被监测对象的骨骼点信息,并根据骨骼点信息及时判断被监测对象是否发生了跌倒行为,能够为行动不便的老人、伤残人士等提供及时有效地看护,有利于提高人们的生活质量。

附图说明

图1为本发明基于骨骼点的跌倒检测方法实施例一的流程图;

图2为本发明实施例一中的第一特征提取神经网络的结构示意图;

图3为本发明实施例一中的第二行为分类神经网络的结构示意图;

图4为本发明基于骨骼点的跌倒检测装置实施例一的程序模块示意图;

图5为本发明内存共享装置实施例一的硬件结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供的跌倒检测方法、装置、计算机设备及存储介质,适用于机器视觉技术领域,为独居情况下的老人或伤残人士等提供一种可及时发现跌倒行为的跌倒检测方法及其装置。本发明通过图片样本库训练第一特征提取神经网络,用于提取人体中的关键骨骼点信息;通过视频样本库训练第二行为分类神经网络,在已提取关键骨骼点信息的基础上,判断视频中的人体动作是否属于跌倒行为。通过本发明训练出的第一特征提取神经网络和第二行为分类神经网络,能够准确地提取被监测对象的骨骼点信息,并根据骨骼点信息及时判断被监测对象是否发生了跌倒行为,有利于极大提高人们的生活质量。

实施例一

请参阅图1,本实施例的一种基于骨骼点的跌倒检测方法,包括以下步骤:

s1:通过第一图片样本训练第一特征提取神经网络,所述第一特征提取神经网络用于提取所述第一图片样本中的多个第一特征点,所述第一特征点表征人体上的关键骨骼点。

本步骤中,从图片样本库中选择第一图片样本来训练第一特征提取神经网络,第一图片样本优选为人物的全身图片。实施时,将第一图片样本分为训练图片样本和测试图片样本,其中训练图片样本用于对第一特征提取神经网络进行训练,测试图片样本用于验证经过训练图片样本训练后的第一特征提取神经网络在提取图片中的特征信息时的效果。优选的,可以对上述训练图片样本和测试图片样本进行数据增强的预处理,例如对每个样本进行对比度变换和亮度变换,再加上局部随机高斯噪声,并进行统一的归一化处理,从而得到数据增强后的训练图片样本和测试图片样本。

下面以某测试图片样本为例进行详细说明本步骤中的第一特征提取神经网络的结构,如图2所示。测试图片样本首先进入特征提取模块来提取该测试图片样本中的特征,本实施例中的特征提取模块采用resnet残差网络,以保证较好的特征提取性能。测试样本图片经过resnet残差网络后得到第一提取数据d1,然后第一提取数据d1分别进入四个含有不同膨胀系数的卷积模块,得到四个具有不同特征通道的第二提取数据d2。接下来,四个具有不同特征通道的第二提取数据d2经组合后进入以残差模块堆积起来的第一卷积层,得到四个具有不同感知野的第三提取数据d3。最后,将四个具有不同感知野的第三提取数据d3融合后,再次进入以残差模块堆积起来的第二卷积层,最终输出表征人体上的关键骨骼点的多个第一特征点。

需要说明的是,本实施例中所公开的卷积模块个数以及膨胀系数的取值仅仅是作为示例性说明,并不以此为限。本领域普通技术人员可以根据实际需要任意改变上述卷积模块的个数以及膨胀系数的数值,均属于本发明的保护范围之内。

优选的,上述卷积模块依次包括以下层的组成:卷积层、批规范化层、relu激活函数层、卷积层、批规范化层、relu激活函数层和pool池化层,其中每个模块中的卷积层具有不同的膨胀系数。

本步骤中,特征信息优选为人身体上的骨骼特征点,例如包括头、颈、两肩、两肘、两手、两臀、两膝以及两脚共14个骨骼点信息。当然,以上列举的骨骼点位置仅仅是用于举例,并不用来限制具体的特征点信息,根据具体情况,也可以对上述骨骼点信息进行删除或者增加,或者改变具体特征点的位置,例如也可获取人体中的穴位特征点信息,本发明对此不做限制。在此基础上,本实施例中的多个第一特征点优选的可以是在人体中标示出的上述骨骼点分布信息图。

本步骤是采用以交叉熵为损失函数带动量的随机梯度下降法来训练上述第一特征提取神经网络的。具体损失函数的表达式如下:

其中xp、yp代表所述第一特征提取神经网络提取到的第一特征点的预测坐标,xg、yg代表所述第一特征点的实际坐标。

s2:将第二视频样本输入训练好的所述第一特征提取神经网络,得到表征所述第二视频样本中的人体的关键骨骼点的多个第二特征点。

在步骤s1已训练完成第一特征提取神经网络的基础上,本步骤利用训练好的第一特征提取神经网络来提取视频样本中的第二特征点,优选的,该第二特征点为上文中提到的14个骨骼特征点。

本发明是以普通摄像头采集到的被监测者的视频信息为基础进行跌倒检测的,因此本步骤中进行特征点提取的对象是连续视频而不是简单的图片。由于视频是通过一系列的图片帧随时间变换而形成的,因此首先需要对视频采样以提取目标图片。例如,将视频按照20帧/秒的标准来提取图片,以3秒作为一个样本。同时为了产生多样化的样本,可以在视频中的行为起始点附近随机选择起始帧。

提取到足够数量的目标图片之后,便可以通过第一特征提取神经网络来提取目标图片中的特征点信息,优选的可以是上文中提到的14个骨骼特征点。

s3:对所述多个第二特征点进行编码生成预测特征图。

本步骤用于对提取到的第二特征点进行处理,以得到预测特征图。仍以上文中的14个骨骼特征点为例,包括以下处理步骤:

s31:对上述骨骼特征点进行两两配对。

本实施例是从14个骨骼特征点中任选两个特征点进行配对,计算式如下:

c(14,2)=14!/(12!*2!)=91;

s32:计算每两个骨骼特征点之间的欧拉距离lxjt和方向速度vxit和vyit:

vxit=xit-xi(t-1)

vyit=yit-yi(t-1)

上式中,xit、yit分别代表t时刻的第i个第二特征点的横、纵坐标;lxjt代表t时刻第i个第二特征点和第j个第二特征点的欧拉距离,vxit代表第i个第二特征点在t时刻在x方向上的速度,vyit代表第i个第二特征点在y方向上的速度。

s33:将所有计算得到的欧拉距离和方向速度数据组合形成预测特征图。

对于任一幅样本图而言,14个骨骼特征点进行两两配对可以得到91种组合方式,也就是可以计算得到91个欧拉距离;每个骨骼特征点分别具有一个x方向的速度和一个y方向的速度,也就是共有14个x方向的速度和14个y方向的速度,综合起来共得到91+14+14=119个特征向量。

假设本步骤中共有60帧图像需要处理,那么把每一帧图像中的特征向量按顺序排列,可以得到60×119的矩阵图。该矩阵图即为预测特征图。

s4:通过所述预测特征图训练第二行为分类神经网络,所述第二行为分类神经网络用于对所述预测特征图中表示的行为进行分类。

在已经得到预测特征图的基础上,本步骤的目的在于训练第二行为分类神经网络,用于对表示在预测特征图中的行为进行分类,从而确定是否发生了跌倒行为。本发明中的第二行为分类神经网络的结构如图3所示,下面进行详细说明。

以步骤s3中得到的某预测特征图为例。所述预测特征图首先通过常规卷积模块,得到第一分类数据r1。然后,该第一分类数据r1分别通过四个具有不同膨胀系数的卷积模块,得到四个具有不同特征通道的第二分类数据r2,优选的,上述四个卷积模块的膨胀系数分别为1,3,6和12。接下来,上述四个具有不同特征通道的第二分类数据r2组合后依次通过三个常规卷积模块,最终输出行为分类,用以判断表示在上述预测特征图中的行为属于哪种行为类别。

需要说明的是,本实施例中所公开的卷积模块个数以及膨胀系数的取值仅仅是作为示例性说明,并不以此为限。本领域普通技术人员可以根据实际需要任意改变上述卷积模块的个数以及膨胀系数的数值,均属于本发明的保护范围之内。

优选的,上述卷积模块依次包括以下层的组成:卷积层、批规范化层、relu激活函数层、卷积层、批规范化层、relu激活函数层和pool池化层。

本步骤中通过损失函数lh(x,y)来对第二行为分类神经网络进行训练,具体表达式如下:

上式中,所述xk代表第k种行为类别的参数值,zk代表第k中行为类别的预测概率。例如,第二行为分类神经网络可以识别的类别有蹲下、站起、挥手、弯腰、跌倒、平躺等多种行为,每一种行为分别对应各自的参数值,例如当通过视频识别被监测人正在发生跌倒行为时,那么xk表示被监测人处于跌倒行为的参数值,zk表示被监测人正在发生跌倒行为的预测概率。

为了防止过拟合,本实施例在损失函数后又加上了一个l2正则项,用于防止发生过拟合的情况,得到的代价函数如下所示:

l(x,y)=lh(x,y)+l2。

s5:将被监测对象的视频数据依次输入训练好的所述第一特征提取神经网络和所述第二行为分类神经网络,以输出所述被监测对象的行为类别。

在已经完成对第一特征提取神经网络和第二行为分类神经网络的训练的基础上,本发明即可对实际的监控视频进行跌倒行为的检测。具体而言,本发明通过普通摄像头实时拍摄被监护对象的视频信息,该视频信息经过采样提取到一定数量的目标图像。该目标图像首先经过训练好的第一特征提取神经网络,提取出目标图像中的多个特征点,例如是骨骼特征点。对多个骨骼特征点进行计算、组合,例如计算每两个骨骼特征点之间的欧拉距离和x方向、y方向上的速度,并对上述计算得到的矢量按照每帧图像的顺序进行排列,最终得到预测特征图。接下来,将预测特征图输入第二行为分类神经网络,便可以得到包含在预测特征图中的行为所述所属的类别,例如是否是跌倒行为。

请继续参阅图4,示出了一种跌倒检测装置,在本实施例中,跌倒检测装置10可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述跌倒检测方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述跌倒检测装置10在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:

第一神经网络训练模块11,适用于通过第一图片样本训练第一特征提取神经网络,所述第一特征提取神经网络用于提取所述第一图片样本中的多个第一特征点,所述第一特征点表征人体上的关键骨骼点;

特征点提取模块12,适用于将第二视频样本输入训练好的所述第一特征提取神经网络,得到表征所述第二视频样本中的人体的关键骨骼点的多个第二特征点;

特征图生成模块13,适用于对所述多个第二特征点进行编码生成表征所述多个第二特征点的分布情况的预测特征图;

第二神经网络训练模块14,适用于通过所述预测特征图训练第二行为分类神经网络,所述第二行为分类神经网络用于对所述预测特征图中表示的行为进行分类;

分类模块15,适用于将被监测对象的视频数据依次输入训练好的所述第一特征提取神经网络和所述第二行为分类神经网络,以输出所述被监测对象的行为类别。

本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图5所示。需要指出的是,图5仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例一的跌倒检测装置10的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器22在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行跌倒检测装置10,以实现实施例一的跌倒检测方法。

本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储跌倒检测装置10,被处理器执行时实现实施例一的跌倒检测方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

流程图中或在此以其它方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

本技术领域的普通技术人员可以理解,实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1