首页 / 专利库 / 企业组织 / 框图 / 救援环境中的人体检测以及姿态识别方法

救援环境中的人体检测以及姿态识别方法

阅读:987发布:2020-06-11

专利汇可以提供救援环境中的人体检测以及姿态识别方法专利检索,专利查询,专利分析的服务。并且本 发明 提出了一种救援环境中的人体检测以及 姿态 识别方法,属于救援环境中的人体检测与姿态识别技术领域,主要应用于智能探测 机器人 中,完成灾难事故现场的人员探测以及救援任务。具体流程包括:本方法通过摄像头采集救援现场实时图像信息并传输到 服务器 中,服务器首先截取 视频 帧 ,使用均值滤波进行一次实时去雾处理。接着,使用去雾图像完成人体检测的相关计算从而检测出人体区域。最后,针对每个人体图像,完成姿态识别的相关计算检测出人体关键点和姿态向量,并且通过人体框的宽高比与人体姿态向量来完成姿态判断。,下面是救援环境中的人体检测以及姿态识别方法专利的具体信息内容。

1.救援环境中的人体检测以及姿态识别方法,其特征在于,具体工作流程如下:
S1实时图像去雾
通过有雾图像的物理模型得出原始图像、去雾图像、环境光以及全局大气光之间的关系,然后使用均值滤波,估计出环境光以及全局大气光的值,最后恢复出清晰的无雾图像;
S2利用去雾处理后的图像完成人体检测
算法使用多尺度预测,分别在8×8、16×16以及32×32大小的特征图上进行人体框的预测;在每个尺度上,将输入图像分成N×N个网格,在每个网格中,通过微调人体默认框进行预测,对于每个默认框,网络预测人体框的左上坐标、人体框的宽和高以及人体框的置信度;最后,将网络预测的人体框通过一次非极大值抑制得到最终的预测结果;
S3使用检测得到的人体图像进行姿态识别
的姿态识别过程将人体检测得到的人体框图单独剪裁出来得到一幅独立的人体图像,使用RMPE姿态识别框架与Stacked Hourglass网络相结合的方法进行人体姿态识别;具体步骤如下:
S3.1剪裁人体图片
为了确保可以将完整的人体剪裁出来,在人体检测得到的人体框基础上,宽延长30%,高延长20%进行剪裁;
S3.2使用空间变换网络提取高质量的人体区域
S3.3使用Stacked Hourglass网络进行单人姿态估计
S3.4使用空间反变换网络将姿态估计结果映射回原图像
S3.5使用PNMS消除姿势冗余,得到最终姿态向量;
S4判断人体姿态
在救援场景中,通过判断人员是否处于躺卧姿势即可确定其是否需要立即救助;因此,通过得到的人体边框与姿态向量,采用简单的几何特征完成对人体姿态的判断;使用的几何特征包括人体边框的宽高比以及人体躯干的方向角;采用如下约束条件进行姿态判断:
(1)人体框的宽高比小于0.5;
(2)人体躯干角度小于±30°;
当满足上述条件时,则判定该姿态为躺卧姿态,并为每个人赋予姿态标签。
2.根据权利要求1所述的救援环境中的人体检测以及姿态识别方法,其特征在于:在提取默认框算法使用k-means++聚类算法,求取YOLOv3算法中所需的n个默认框的宽和高;在聚类过程中,采用公式(1)所示的距离度量公式;
d(box,centroid)=1-IOU(box,centroid)  (1)
其中,box为样本库中的人体框,centroid为聚类中心,d(box,centroid)为每个人体框与聚类中心的距离;IOU(box,centroid)为人体框与聚类中心的交并比,即两个区域交集部分除以两个区域并集部分的结果。
3.根据权利要求1所述的救援环境中的人体检测以及姿态识别方法,其特征在于:人体检测网络的训练,具体流程如下:
样本库的准备
采集人体样本作为正样本;以COCO公开数据集为基础,使用其中包含人体样本的图片作为训练集正样本,标注信息使用原数据集中人体类别的标注信息;
神经网络的训练
将所有的训练样本分批次输入网络进行训练;训练时,采用平方和误差函数作为训练过程的损失函数;
同时,在训练过程中,使用了BN层加速收敛;并且,每经过10次训练,随机选取新的输入尺寸,尺寸大小均为32的倍数,最小为320×320,最大为608×608。
4.根据权利要求1所述的救援环境中的人体检测以及姿态识别方法,其特征在于:人体姿态识别网络的训练,具体流程如下:
样本库的准备
首先使用人体检测网络对MPII人体姿态数据库进行人体检测,得到一系列的人体框;
根据检测得到的人体框和真实人体框之间的偏移与人体姿态的关系,使用高斯混合分布进行建模,得到分布P(δB|atom(P)),其中δB为人体框的偏移,atom(P)为人体的原子姿态;最后,根据标注的人体姿态,使用分布P(δB|atom(P))对样本进行扩展;
神经网络的训练
在训练时,使用上述样本图片对空间变换网络、Stacked Hourglass网络、空间反变换网络同时进行微调,使得空间变换网络与空间反变换网络可以自动适应姿态识别任务;
同时,在训练中增加了一个并行的Stacked Hourglass网络来促进姿态的准确估计;该网络与原始的Stacked Hourglass网络共享空间变换网络,但是网络后不加空间反变换网络;每个分支都采用均方误差作为损失函数,总损失为两个分支损失之和。

说明书全文

救援环境中的人体检测以及姿态识别方法

技术领域:

[0001] 本发明属于救援环境中的人体检测与姿态识别技术领域。具体涉及一种对救援现场图像进行去雾后检测人体并进行姿态识别从而确定伤员的方法。

背景技术

[0002] 近年来,由于自然灾害、恐怖活动以及各类突发状况,灾难事故层出不穷,给经济和社会生活带来了极大的损失,成为了当前安全保障的重大议题。在事故发生后的救援过程中,首要任务就是检测并营救伤员,保障所有人员的生命安全。但是由于事故现场环境恶劣,并且容易存在大量有毒有害气体,常规安全检测手段失效,救援工作难以开展。在这种危险和复杂的环境下,基于视觉的人体检测和姿态识别技术可以使智能机器人协助救援人员完成伤员搜救的任务,从而避免营救过程中的二次伤亡。
[0003] 目前,基于视觉的人体检测算法主要分为两类:基于手工特征的人体检测和基于深度学习的人体检测。其中,最常用的两种手动特征方法是HOG算法和DPM算法。基于手工特征方法的缺点是鲁棒性差,检测率低。同时,由于其检测时间长,难以满足实际应用。深度学习技术可以自动学习图像的内在特征,弥补手工特征泛化能差的问题,如今也开始被应用于人体检测问题。比较出色的算法包括ConvNet、JointDeep等。但是网络模型不够深,检测精度低。同时检测时间长,不能满足实时性要求。
[0004] 另一方面,由于救援现场资源有限,需要根据事态的紧急情况对资源进行有侧重的分配,所以可以通过姿态识别技术判断现场人员的受伤情况,从而合理分配现场资源。目前的人体姿态估计方法主要可以分为基于部件的框架与基于整体的框架两种。基于部件的框架首先检测人体部位,然后组装人体部位形成多个人体姿势,具有代表性的是openpose,缺点就是当人员密集时,会将不属于同一个人的部位进行拼接,并且丧失了从全局进行部位识别的能力。基于整体的框架就是在行人检测的基础上,对每一个人整体进行关键点检测,缺点是受检测框影响大,姿态估计的准确性主要取决于人体边界框的质量
[0005] 同时,由于救援现场往往存在大量烟雾灰尘,致使获取到的图像可视性差、细节模糊,极大地影响了基于视觉的检测系统的检测精度。并且现有的姿态识别算法仅仅是输出关键点坐标,因此,还需要对人的具体姿态进行分析。

发明内容

[0006] 本发明的主要目的是提出一种救援环境中的人体检测以及姿态识别方法,该方法可以应用于智能探测机器人中,完成灾难事故现场的人员探测以及救援任务。主要面临如下问题:
[0007] 1.救援现场往往存在大量烟雾灰尘,致使获取到的图像可视性差、细节模糊,极大地影响了基于视觉的检测系统的检测精度。
[0008] 2.救援场景中对于人体检测实时性的要求极高,在满足高准确率的同时,检测速度也需要达到实时性要求。
[0009] 3.现有的单人姿态识别算法严重依赖于检测到的人体边界框质量,只有人体位于图像中央的高精度边界框可以满足姿态识别的需要。
[0010] 4.现有的姿态识别算法仅仅是输出关键点坐标,无法得到人的具体姿态。
[0011] 为了解决以上技术问题,本发明提出了一种救援环境中的人体检测以及姿态识别方法,该方法通过摄像头采集救援现场实时图像信息并传输到服务器中,服务器首先截取视频,进行一次实时去雾处理。接着,使用去雾图像完成人体检测。最后,针对每个人体图像,完成人体姿态识别,并且结合识别出的人体姿态向量与检测出的人体框宽高比完成人体姿态的判断。本发明方法的具体工作流程如下:
[0012] S1实时图像去雾
[0013] 本方法通过有雾图像的物理模型得出原始图像、去雾图像、环境光以及全局大气光之间的关系,然后通过均值滤波,估计出环境光以及全局大气光的值,最后恢复出清晰的无雾图像。
[0014] S2利用去雾图像完成人体检测
[0015] 算法使用多尺度预测,分别在8×8、16×16以及32×32大小的特征图上进行人体框的预测。在每个尺度上,将输入图像分成N×N个网格,在每个网格中,通过微调人体默认框进行预测,对于每个默认框,网络预测人体框的左上坐标、人体框的宽和高以及人体框的置信度。最后,将网络预测的人体框通过一次非极大值抑制得到最终的预测结果。
[0016] S3使用检测得到的人体图像进行姿态识别
[0017] 本方法的姿态识别过程首先把人体检测得到的人体框图单独剪裁出来得到一幅独立的人体图像,使用RMPE姿态识别框架与Stacked Hourglass网络相结合的方法进行人体姿态识别。具体步骤如下:
[0018] S3.1剪裁人体图片
[0019] 为了确保可以将完整的人体剪裁出来,在人体检测得到的人体框基础上,宽延长30%,高延长20%进行剪裁。经验证,大部分图片中的人体可以通过此方法被完整的剪裁出。
[0020] S3.2使用空间变换网络提取高质量的人体区域
[0021] S3.3使用Stacked Hourglass网络进行单人姿态估计
[0022] S3.4使用空间反变换网络将姿态估计结果映射回原图像
[0023] S3.5使用PNMS消除姿势冗余,得到最终姿态向量。
[0024] S4判断人体姿态
[0025] 在救援场景中,通过判断人员是否处于躺卧姿势即可确定其是否需要立即救助。因此,本方法通过得到的人体边框与姿态向量,采用简单的几何约束完成对人体姿态的判断。使用的几何约束包括人体边框的宽高比以及人体躯干的方向角。最终判断人体是否为躺卧姿势,并为每个人赋予姿态标签。
[0026] 本发明具有如下优点:
[0027] 本方法采用k-means++聚类算法代替YOLOv3检测框架中传统k-means聚类算法获取默认人体框的宽和高,并且将该检测框架应用于救援环境中的人体检测,从而满足了高准确度和实时性的要求。同时,使用RMPE姿态识别框架与Stacked Hourglass网络相结合的方法进行人体姿态识别,使得人体检测框质量不足时也能较好的完成姿态识别任务。并且通过人体检测和姿态识别结果进行了人体姿态判断,从而得到人的具体姿态。最后,使用简单的均值滤波完成实时去雾处理,使得方法可以工作于环境恶劣的救援现场。附图说明
[0028] 图1救援环境中的人体检测以及姿态识别方法流程图
[0029] 图2实时图像去雾处理的流程框图;
[0030] 图3人体检测结果示例图,其中图(a)为躺卧姿势下检测结果,图(b)为其他姿势下检测结果;
[0031] 图4人体姿态识别流程图;
[0032] 图5人体姿态识别结果示意图,其中图(a)为躺卧姿势下识别结果,图(b)为其他姿势下识别结果;
[0033] 图6人体姿态判断结果示意图,其中图(a)为躺卧姿势下判断结果,图(b)为其他姿势下判断结果

具体实施方式

[0034] 下面结合附图与实例,针对本方法做详细说明。
[0035] 图1为本发明提出的救援环境中的人体检测以及姿态识别方法流程图。该方法通过摄像头采集救援现场实时图像信息并传输到服务器中,服务器首先截取视频帧,使用均值滤波进行一次实时去雾处理。接着,使用去雾图像完成人体检测的相关计算从而检测出人体区域。最后,针对每个人体图像,完成姿态识别的相关计算检测出人体关键点和姿态向量,并且通过人体框的宽高比与人体姿态向量来完成姿态判断。具体步骤如下:
[0036] 1、实时图像去雾
[0037] 图2为实时图像去雾处理的流程框图。在救援现场中,往往存在大量烟雾灰尘。因此,可以采用公式(1)所示的物理模型公式描述救援现场的原始有雾图像。
[0038] H(x)=F(x)t(x)+A(1-t(x))  (1)
[0039] 其中,H(x)为救援现场的原始图像;F(x)为处理后的去雾图像;A表示全局大气光成分;t(x)表示透射率。A(1-t(x))被称为环境光,是影响图像色彩亮度偏移的因素。
[0040] 公式(1)中,令L(x)=A(1-t(x)),则公式(1)可以转化为公式(2)。
[0041]
[0042] 因此可以看出,可以通过估计全局大气光成分A以及环境光L(x)来计算去雾图像。
[0043] 由公式(1)可得公式(3)。
[0044] A(1-t(x))≤H(x)  (3)
[0045] 计算公式(3)两侧三原色通道的最小值,令 可得公式(4)。
[0046]
[0047] 其中,{r,g,b}为红绿蓝三原色通道,M(x)为原始图像三原色通道的最小值。
[0048] 本 方 法对 公 式 ( 4) 右 侧 进 行均 值 滤 波 估计 透 射 率 t (x) 。令并且在结果上添加一个估计值,用来弥补均值滤波结果与真实值的差。透射率的估计值 由式(5)计算得到。
[0049]
[0050] 其中,Mave(x)为对原始图像三原色通道的最小值进行均值滤波操作的结果,为均值滤波操作,sa为均值滤波窗口的尺寸,为估计值的系数,并且满足令 公式(5)可以转换为公式(6)。
[0051]
[0052] 为了控制去雾图像的明暗程度,设置系数 其中,ρ为可调节的参数。在该实例中,ρ取1.3。mav为M(x)中所有元素的均值。并且,使用公式(7)对系数δ进行限定。
[0053] δ=min(ρmav,0.9)  (7)
[0054] 根据公式(4)、公式(6)和公式(7)可得公式(8)。
[0055]
[0056] 则本方法中环境光估计方法如公式(9)所述。
[0057] L(x)=min(min(ρmav,0.9)Mave(x),M(x))  (9)
[0058] 由于 因此可得公式(10)。
[0059]
[0060] 其中,ε为预设比例因子。在本实例中,考虑到算法的快速性,我们设置ε=0.5,利用Mave(x)和H(x)可得公式(11)。
[0061]
[0062] 最后,根据公式(2),通过估计全局大气光成分A以及环境光L(x)来计算去雾图像。
[0063] 2、实时人体检测
[0064] 本文采用改进的YOLOv3算法进行人体检测。具体步骤如下:
[0065] 2.1人体检测网络的训练
[0066] 样本库的准备
[0067] 采集人体样本作为正样本。本次实例中以COCO公开数据集为基础,使用其中包含人体样本的图片作为训练集正样本,标注信息使用原数据集中人体类别的标注信息。
[0068] 神经网络的训练
[0069] 将所有的训练样本分批次输入网络进行训练。由于批次数量越大对硬件需求越高同时训练时间越久,批次数量太小算法精度低。综合考虑以上因素,在实例中,每批次使用64个样本图片。训练时,采用平方和误差函数作为训练过程的损失函数。
[0070] 同时,在训练过程中,使用了BN层加速收敛。并且,每经过10次训练,随机选取新的输入尺寸,尺寸大小均为32的倍数,最小为320×320,最大为608×608。
[0071] 2.2k-means++获取人体默认框
[0072] 为了提高YOLOv3算法的检测精度,本方法在提取默认框算法上进行了改进。使用k-means++聚类算法,求取YOLOv3算法中所需的n个默认框的宽和高。其中,n的取值越大,算法精度越高速度越慢。在本实例中,综合考虑精度与速度的要求,将n取值为9。k-means++聚类算法步骤如下:
[0073] (1)随机挑选一个样本点作为第一个聚类中心;
[0074] (2)计算数据集中每一个样本点与离它最近的聚类中心的距离d(x);
[0075] (3)选择一个新的样本点作为新的聚类中心,选择原则为:d(x)大的点被选中的几率大;
[0076] (4)重复步骤(2)和步骤(3)直到选出n个聚类中心;
[0077] (5)计算每个样本点到聚类中心的距离,并将其划分到距离最小的一类簇中;
[0078] (6)计算每个簇中所有点的坐标平均值,作为新的聚类中心;
[0079] (7)重复步骤(5)和步骤(6),直到聚类中心不发生移动为止。
[0080] 在聚类过程中,采用公式(13)所示的距离度量公式。
[0081] d(box,centroid)=1-IOU(box,centroid)  (13)
[0082] 其中,box为样本库中的人体框,centroid为聚类中心,IOU(box,centroid)为两个区域的交并比,即两个区域交集部分除以两个区域并集部分的结果。
[0083] 2.3利用去雾图像完成人体检测
[0084] 人体检测过程中使用多尺度预测,分别在8×8、16×16以及32×32大小的特征图上进行人体框的预测。在每个尺度上,将输入图像分成N×N个网格,在每个网格中,通过微调人体默认框进行预测,对于每个默认框,网络预测人体框的左上角坐标、人体框的宽和高以及人体框的置信度。最后,将网络预测的人体框通过一次非极大值抑制得到最终的预测结果。人体检测结果如图3所示,其中图(a)为躺卧姿势下检测结果,图(b)为其他姿势下检测结果。
[0085] 3、人体姿态识别
[0086] 图4为人体姿态识别流程图。具体步骤如下:
[0087] 3.1样本库的准备
[0088] 首先使用人体检测网络对MPII人体姿态数据库进行人体检测,得到一系列的人体框。根据检测得到的人体框和真实人体框之间的偏移与人体姿态的关系,使用高斯混合分布进行建模,得到分布P(δB|atom(P)),其中δB为人体框的偏移,atom(P)为人体的原子姿态。最后,根据标注的人体姿态,使用分布P(δB|atom(P))对样本进行扩展。
[0089] 3.2神经网络的训练
[0090] 在训练时,使用上述样本图片对空间变换网络、Stacked Hourglass网络、空间反变换网络同时进行微调,从而使得空间变换网络与空间反变换网络可以自动适应姿态识别任务。
[0091] 同时,在训练中增加了一个并行的Stacked Hourglass网络来促进姿态的准确估计。该网络与原始的Stacked Hourglass网络共享空间变换网络,但是网络后不加空间反变换网络。每个分支都采用均方误差作为损失函数,总损失为两个分支损失之和。
[0092] 3.3使用检测出的人体框完成姿态识别
[0093] 首先,使用空间变换网络提取高质量的人体区域,公式定义如式(14)所示。
[0094]
[0095] 其中,θ1,θ2,θ3为空间变换系数, 为空间变换前的坐标值, 为空间变换后的坐标值。
[0096] 在基于Stacked Hourglass网络的单人姿态识别完成后,使用空间反变换网络将姿态估计结果映射回原图像,公式定义如式(15)所示。
[0097]
[0098] 其中,γ1,γ2,γ3为空间反变换系数,公式定义如式(16)、(17)所示。
[0099] [γ1γ2]=[θ1θ2]-1  (16)
[0100] γ3=-1×[γ1γ2]θ3  (17)
[0101] 由于得到的姿态识别结果中会有大量冗余信息,所以本方法使用PNMS消除姿势冗余,得到最终姿态向量。步骤如下:
[0102] 首先选取置信度最高的姿态,接着依照消除标准去除与它相似的姿态结果,不断重复该过程直到仅剩1个独特的姿态。在本方法中,采用公式(18)定义的消除标准。
[0103] f(Pi,Pj|Λ,η)=I[d(Pi,Pj|Λ,λ)≤η]  (18)
[0104] 其中,d(Pi,Pj|Λ)为姿势Pi和姿势Pj的距离,Λ为函数d(·)的参数集,η为是否消除的阈值标准,I[d(Pi,Pj|Λ,λ)≤η]表示当姿势Pi和姿势Pj的距离小于阈值时,f(Pi,Pj|Λ,η)输出为1,姿势Pi应当被消除。在消除标准中,姿势Pi和姿势Pj的距离定义如公式(19)所示。
[0105]
[0106] 其中, 和 分别为姿态Pi和姿态Pj中第n个关键点的置信度, 和 分别为姿态Pi和姿态Pj中第n个关键点的坐标值, 表示中心位于kin的姿态框,σ1为软匹配参数,σ2为空间距离参数,λ为平衡因子。
[0107] 人体姿态识别结果如图5所示,其中图(a)为躺卧姿势下检测结果,图(b)为其他姿势下检测结果。
[0108] 4姿态判断
[0109] 本方法中,通过得到的人体边框与姿态向量,采用简单的几何约束完成对人体姿态的判断。使用的几何约束包括人体边框的宽高比以及人体躯干的方向角。
[0110] 通过多次对比测试,发现当人体框的宽高比小于0.5时,可以初步断定检测到的人体处于躺卧姿势,同时,当人体躯干角度小于±30°时,可以进一步确定人体处于躺卧姿势。因此,在本实例中,采用如下约束条件进行姿态判断:
[0111] (1)人体框的宽高比小于0.5;
[0112] (2)人体躯干角度小于±30°;
[0113] 当满足上述条件时,则判定该姿态为躺卧姿态。
[0114] 人体姿态判断结果如图6所示,其中图(a)为躺卧姿势下检测结果,图(b)为其他姿势下检测结果。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈