发明内容
本发明的主要目的在于提供一种跌倒预警方法、装置、设备及可读存储介质,旨在解决目前在施工工地,当有人员跌倒的危险发生时,由于对跌倒人员的检测效率和检测准确率不够高,未能对跌倒人员及时进行救助的技术问题。
第一方面,本发明提供一种跌倒预警方法,所述跌倒预警方法包括:
获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像;
使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构;
将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态;
若所述待检测人员图像对应的状态为跌倒状态,则播放语音进行预警。
可选的,所述获取目标场景的实时图像包括:
通过安装于目标场景中的摄像头,获取目标场景的实时图像,所述目标场景为施工工地。
可选的,在所述使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构之前,还包括:
基于开源的openpose神经网络,将开源的openpose神经网络中的VGG19网络替换为MobileNetV3网络,将生成keypoints和PAFs的两个网络合并为一个网络,将7x7的卷积更换为3x3和1x1的卷积,将空洞卷积的rate设置为2,得到轻量化的openpose神经网络。
可选的,在所述获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像之前,还包括:
根据包含人员处于跌倒和非跌倒两种状态的多张图像,构建训练数据集;
将训练数据集中的样本,输入InceptionV3分类网络;
将分类网络的输出结果和输入样本的真实标签进行对比,判断输出结果是否正确;
统计输出结果的正确率;
若输出结果的正确率达到预设的正确率,则将最新的分类网络作为训练好的状态分类模型,否则调整分类网络的参数,并返回执行所述将训练数据集中的样本,输入InceptionV3分类网络的步骤。
可选的,所述将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态包括:
将所述待检测骨骼结构输入状态分类模型;
若所述状态分类模型输出的跌倒状态的分值大于非跌倒状态的分值,且所述待检测骨骼结构的人体宽高比在预设人体宽高比范围内,则确定待检测人员图像对应的状态为跌倒状态。
第二方面,本发明还提供一种跌倒预警装置,所述跌倒预警装置包括:
获取模块,用于获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像;
提取模块,用于使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构;
确定模块,用于将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态;
预警模块,用于若所述待检测人员图像对应的状态为跌倒状态,则播放语音进行预警。
可选的,所述获取模块,用于:
通过安装于目标场景中的摄像头,获取目标场景的实时图像,所述目标场景为施工工地。
可选的,所述确定模块,用于:
将所述待检测骨骼结构输入状态分类模型;
若所述状态分类模型输出的跌倒状态的分值大于非跌倒状态的分值,且所述待检测骨骼结构的人体宽高比在预设人体宽高比范围内,则确定待检测人员图像对应的状态为跌倒状态。
第三方面,本发明还提供一种跌倒预警设备,所述跌倒预警设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的跌倒预警程序,其中所述跌倒预警程序被所述处理器执行时,实现如上述所述的跌倒预警方法的步骤。
第四方面,本发明还提供一种可读存储介质,所述可读存储介质上存储有跌倒预警程序,其中所述跌倒预警程序被处理器执行时,实现如上述所述的跌倒预警方法的步骤。
本发明中,获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像;使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构;将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态;若所述待检测人员图像对应的状态为跌倒状态,则播放语音进行预警。本发明通过,在获取目标场景的实时图像之后,通过采用背景差分法,分离实时图像中的背景图像,得到待检测人员图像,然后通过使用轻量化的openpose神经网络,对待检测人员图像进行特征提取,得到待检测骨骼结构,将待检测骨骼结构输入状态分类模型,根据状态分类模型的输出再结合待检测骨骼结构的人体宽高比,就能够确定待检测人员图像对应的状态,当待检测人员图像对应的状态为跌倒状态时,则播放语音进行预警,可实现对跌倒人员的高效检测和及时预警,可以及时地对跌倒人员进行救助,避免危险的发生。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
第一方面,本发明实施例提供一种跌倒预警设备。
参照图1,图1为本发明跌倒预警设备一实施例的硬件结构示意图。本发明实施例中,跌倒预警设备可以包括处理器1001(例如中央处理器Central Processing Unit,CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WI-FI接口);存储器1005可以是高速随机存取存储器(random accessmemory,RAM),也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及跌倒预警程序。其中,处理器1001可以调用存储器1005中存储的跌倒预警程序,并执行本发明实施例提供的跌倒预警方法。
第二方面,本发明实施例提供了一种跌倒预警方法。
为了更清楚地展示本申请实施例提供的跌倒预警方法,首先介绍一下本申请实施例提供的跌倒预警方法的应用场景。
本申请实施例提供的跌倒预警方法应用在工地施工的过程中,对现场人员的跌倒状态进行实时高效的检测,当有人员发生跌倒时,通过实时的预警,对跌倒人员进行及时的救助。
一实施例中,参照图2,图2为本发明跌倒预警方法一实施例的流程示意图,如图2所示,所述跌倒预警方法包括:
步骤S10,获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像。
本实施例中,将目标场景的实时图像,使用背景差分法,分离出背景图像,得到人员图像,作为待检测人员图像。背景差分法,常用于检测视频及图像中的目标,通过将实时图像和预先确定的或实时获取的背景图像的模型进行对比,计算出实时图像与背景图像的模型像素差异超过一定阀值的区域,从而确定目标的位置、轮廓、大小等特征。
步骤S20,使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构。
本实施例中,openpose神经网络是美国卡耐基梅隆大学(CMU)基于卷积神经网络和监督学习并以Caffe为框架开发的开源的人体姿态识别项目,对openpose神经网络进行轻量化从而实现效率上的优化,以满足实时和高效地对跌倒状态进行检测和预警的要求,将待检测人员图像使用轻量化的openpose神经网络进行特征提取,得到待检测骨骼结构。
步骤S30,将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态。
本实施例中,状态分类模型是一个利用神经学习网络建立的模型分类器,人体处于跌倒状态和非跌倒状态时人体的宽度和高度的比值有着很大的差异,将待检测骨骼结构输入状态分类模型中,状态分类模型会输出对应的跌倒和非跌倒两个状态的相似度分值,再结合人体的宽高比进行辅助判断,进一步提高检测的准确率,确定待检测人员图像处于跌倒还是非跌倒状态。
步骤S40,若所述待检测人员图像对应的状态为跌倒状态,则播放语音进行预警。
本实施例中,当检测到待检测人员图像对应的状态为跌倒状态即表明有人员跌倒的情况发生,此时,通过现场安装的广播播放预警语音进行预警,通知现场人员对跌倒人员及时进行救助,现场安装的广播的数量和各广播间的间距根据现场的大小和现场的环境来具体确定,最终保证对现场的全方位和无死角的语音预警提醒。
本实施例中,获取目标场景的实时图像之后,通过采用背景差分法,分离背景图像,得到待检测人员图像,然后使用轻量化的openpose神经网络,对待检测人员图像进行特征提取,可实时高效地得到待检测骨骼结构,然后再将待检测骨骼结构输入状态分类模型中,状态分类模型会输出对应的跌倒和非跌倒两个状态的相似度分值,再结合人体的宽高比进行辅助判断,进一步提高检测的准确率,确定待检测人员图像处于跌倒还是非跌倒状态,当检测到待检测人员图像对应的状态为跌倒状态即表明有人员跌倒的情况发生,通过现场安装的全方位无死角的广播播放预警语音进行预警,通知现场人员对跌倒人员及时进行救助,从而可以避免危险的发生。本实施例的对跌倒状态的实时检测和预警,避免了传统安全预警中生产人员发生跌落时还需要一段时间被发现,再由专人进行救援所带来的效率低下的问题,可显著减低生产过程中的人力和时间成本,同时基于本实施例的高效和准确的检测,可避免现有技术中对跌倒人员的检测延迟及检测错误的情况发生。
进一步地,一实施例中,步骤S10中,所述获取目标场景的实时图像包括:
通过安装于目标场景中的摄像头,获取目标场景的实时图像,所述目标场景为施工工地。
本实施例中,通过安装于施工工地中的高分辨率摄像头实时地对可见光波段进行信号采集,同时通过网络进行实时传输,可以根据现场施工工地的具体需要,在多个方向搭建可拆卸式的视频采集集成系统,适配不同面积的施工工地,适配不同场景的施工工地,工人跌落情况会被视频采集系统及时记录,并通知生产人员或管理人员进行处理,避免了传统安全预警中生产人员发生跌落时还需要一段时间被发现,再由专人进行救援所带来的效率低下的问题,显著降低了生产过程中的人力和时间成本,后续数字化的检测记录相对于纸质记录也更有利于工程管理。
进一步地,一实施例中,在步骤S20之前,还包括:
基于开源的openpose神经网络,将开源的openpose神经网络中的VGG19网络替换为MobileNetV3网络,将生成keypoints和PAFs的两个网络合并为一个网络,将7x7的卷积更换为3x3和1x1的卷积,将空洞卷积的rate设置为2,得到轻量化的openpose神经网络。
本实施例中,基于开源的openpose神经网络,通过对开源的openpose神经网络一系列针对性的轻量化优化可以显著提高从待检测人员图像中提取待检测骨骼结构的效率,进一步提高整体的检测预警效率。这是因为VGG19网络使用了更多的参数,会耗费更多计算资源,并且VGG19网络为openpose神经网络的第一个全连接层,openpose神经网络的绝大多数的参数都是来自于VGG19网络,导致更多的内存占用,在进行反向传播时,中间的卷积层也会导致占用更多的内存,因而整个神经网络会导致运算的实时性很低,而MobileNetV3的大部分运算集中在1×1的pointwise卷积,可以极大降低对计算资源的要求,因而能极大地提升网络识别的实时性。在替换VGG19网络的基础上,我们将生成keypoints和PAFs的两个网络合并成一个,进一步降低计算资源与内存资源占用,在卷积层方面,把7x7的卷积换成3x3和1x1的卷积块,为保持视野,将空洞卷积的rate设置为2,即使用dil=2的空洞卷积,可以获得7x7的感受野,也能在维持识别精度的基础上极大地降低计算对资源的占用。
进一步地,一实施例中,参照图3,图3为本发明跌倒预警方法一实施例状态分类模型的训练流程示意图,如图3所示,在步骤S10之前,还包括:
步骤T10,根据包含人员处于跌倒和非跌倒两种状态的多张图像,构建训练数据集;
步骤T20,将训练数据集中的样本,输入InceptionV3分类网络;
步骤T30,将分类网络的输出结果和输入样本的真实标签进行对比,判断输出结果是否正确;
步骤T40,统计输出结果的正确率;
步骤T50,若输出结果的正确率达到预设的正确率,则将最新的分类网络作为训练好的状态分类模型,否则调整分类网络的参数,并返回执行所述将训练数据集中的样本,输入InceptionV3分类网络的步骤。
本实施例中,InceptionV3分类网络为谷歌Inception系列里面的第三代网络,是一个利用神经学习网络建立的模型分类器。获取多张包含人员处于跌倒和非跌倒两种状态的图像,构建用于训练的数据集,训练数据集中的图像可以从网络等公开渠道获取,还可以通过使用本实施例步骤S20中的轻量化的openpose神经网络提取人员图像的骨骼结构来获取。在构建数据集的过程中,对获取到的每张图片标注上图片中人员处于跌倒或非跌倒状态的真实标签,将其作为样本输入到InceptionV3分类网络中,InceptionV3分类网络输出样本对应的跌倒和非跌倒的两个状态的相似度分值,若跌倒或非跌倒的分值大于0.5可判断样本中人员处于相应的跌倒或非跌倒的状态,将其与输入样本的真实标签进行对比,即可判断分类网络的输出结果是否正确。对分类网络的训练是一个迭代的过程,将每次的输出结果进行统计即得到正确率。预设的正确率可根据具体的应用场景来进行设定,将输出结果的正确率达到预设的正确率作为训练结束的条件,当输出结果的正确率达到预设的正确率时,将最新的分类网络作为训练好的状态分类模型,否则将输出结果返回分类网络,调整分类网络的参数,继续对分类网络进行训练。
进一步地,一实施例中,步骤S30,包括:
将所述待检测骨骼结构输入状态分类模型;
若所述状态分类模型输出的跌倒状态的分值大于非跌倒状态的分值,且所述待检测骨骼结构的人体宽高比在预设人体宽高比范围内,则确定待检测人员图像对应的状态为跌倒状态。
本实施例中,可预先训练好状态分类模型,将待检测骨骼结构输入状态分类模型进行检测,分类模型输出样本跌倒和非跌倒的两个状态的相似度分值,若跌倒状态的分值大于非跌倒状态的分值,即状态分类模型的检测结果为跌倒状态,由于人体在处于跌倒和非跌倒两种状态下的宽度和高度的比值明显不同,因此将人体宽高比用于进一步的辅助检测,可以大大提升检测的准确率,人体在跌倒状态的宽度和高度的比值约为4:1,由于每个人具体的人体特征不同,因此根据检测的要求具体设定预设的人体宽高比的范围。
第三方面,本发明实施例还提供一种跌倒预警装置。
参照图4,图4为本发明跌倒预警装置一实施例的功能模块示意图。
本实施例中,所述跌倒预警装置包括:
获取模块10,用于获取目标场景的实时图像,采用背景差分法,分离所述实时图像中的背景图像,得到待检测人员图像;
提取模块20,用于使用轻量化的openpose神经网络,对所述待检测人员图像进行特征提取,得到待检测骨骼结构;
确定模块30,用于将所述待检测骨骼结构输入状态分类模型,根据所述状态分类模型的输出以及所述待检测骨骼结构的人体宽高比,确定所述待检测人员图像对应的状态;
预警模块40,用于若所述待检测人员图像对应的状态为跌倒状态,则播放语音进行预警。
进一步地,一实施例中,获取模块10,用于:
通过安装于目标场景中的摄像头,获取目标场景的实时图像,所述目标场景为施工工地。
进一步地,一实施例中,所述跌倒预警装置,还包括优化模块,用于:
基于开源的openpose神经网络,将开源的openpose神经网络中的VGG19网络替换为MobileNetV3网络,将生成keypoints和PAFs的两个网络合并为一个网络,将7x7的卷积更换为3x3和1x1的卷积,将空洞卷积的rate设置为2,得到轻量化的openpose神经网络。
进一步地,一实施例中,参照图5,图5为本发明跌倒预警装置一实施例训练模块50的细化功能模块示意图,如图5所示,所述跌倒预警装置,还包括训练模块50,所述训练模块50包括:
构建单元501,用于根据包含人员处于跌倒和非跌倒两种状态的多张图像,构建训练数据集;
输入单元502,用于将训练数据集中的样本,输入InceptionV3分类网络;
判断单元503,用于将分类网络的输出结果和输入样本的真实标签进行对比,判断输出结果是否正确;
统计单元504,用于统计输出结果的正确率;
训练单元505,用于若输出结果的正确率达到预设的正确率,则将最新的分类网络作为训练好的状态分类模型,否则调整分类网络的参数,并返回执行所述将训练数据集中的样本,输入InceptionV3分类网络的步骤。
进一步地,一实施例中,确定模块30,用于:
将所述待检测骨骼结构输入状态分类模型;
若所述状态分类模型输出的跌倒状态的分值大于非跌倒状态的分值,且所述待检测骨骼结构的人体宽高比在预设人体宽高比范围内,则确定待检测人员图像对应的状态为跌倒状态。
其中,上述跌倒预警装置中各个模块的功能实现与上述跌倒预警方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
第四方面,本发明实施例还提供一种可读存储介质。
本发明可读存储介质上存储有跌倒预警程序,其中所述跌倒预警程序被处理器执行时,实现如上述的跌倒预警方法的步骤。
其中,跌倒预警程序被执行时所实现的方法可参照本发明跌倒预警方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。