CN117115862A - 一种基于深度学习的多个人体的跌倒检测方法 - Google Patents
一种基于深度学习的多个人体的跌倒检测方法 Download PDFInfo
- Publication number
- CN117115862A CN117115862A CN202311368956.2A CN202311368956A CN117115862A CN 117115862 A CN117115862 A CN 117115862A CN 202311368956 A CN202311368956 A CN 202311368956A CN 117115862 A CN117115862 A CN 117115862A
- Authority
- CN
- China
- Prior art keywords
- human body
- key point
- body key
- data
- loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 40
- 238000013135 deep learning Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000012544 monitoring process Methods 0.000 claims abstract description 9
- 238000012549 training Methods 0.000 claims description 43
- 238000012706 support-vector machine Methods 0.000 claims description 27
- 238000000605 extraction Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000010606 normalization Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000012216 screening Methods 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 5
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 3
- 230000005764 inhibitory process Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 abstract description 5
- 238000010801 machine learning Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 239000013598 vector Substances 0.000 description 8
- 235000019878 cocoa butter replacer Nutrition 0.000 description 7
- 210000003423 ankle Anatomy 0.000 description 6
- 210000003127 knee Anatomy 0.000 description 6
- 238000012856 packing Methods 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 210000000707 wrist Anatomy 0.000 description 6
- 230000004913 activation Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 238000012806 monitoring device Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
- G06V10/464—Salient features, e.g. scale invariant feature transforms [SIFT] using a plurality of salient features, e.g. bag-of-words [BoW] representations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
- G06V10/765—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Biodiversity & Conservation Biology (AREA)
- Image Analysis (AREA)
Abstract
一种基于深度学习的多个人体的跌倒检测方法,包括如下步骤:S100:由监控设备实时采集监控区域的图像,并将采集的图像进行存储;S200:对所采集的图像进行多个人体的各个人体关键点检测;S300:采用机器学习SVM对各个人体关键点进行二分类,得到跌倒和非跌倒两种分类结果;S400:对跌倒分类结果进行输出,返回跌倒信息。该方法能够有效避免逻辑判断存在的问题,不需要人为设置参数,不要求监控设备性能及角度,对任一张图像都可以判断是否包含有人体,并能够对多个人体行为是否为跌倒进行判断。
Description
技术领域
本公开属于智能识别技术、图像处理技术领域,特别涉及一种基于深度学习的多个人体的跌倒检测方法。
背景技术
随着社会发展日新月异,人体跌倒在许多领域均有检测需求,如如工厂、户外等存在安全隐患的区域检测人体是否跌倒可以有效避免安全事故的产生。目前对人体跌倒识别国内外研究较少,且大部分采用的是逻辑方法进行判断。这类方法需要人工设置大量参数,且存在鲁棒性较差,结果不稳定等问题。
发明内容
为了解决上述问题,本公开提供了一种基于深度学习的多个人体的跌倒检测方法,包括如下步骤:
S100:由监控设备实时采集监控区域的图像,并将采集的图像进行存储;
S200:构建并训练人体关键点检测网络,对所采集的图像进行多个人体的各个人体关键点检测;其中,
人体关键点检测网络包括5层结构的主干网络,10层结构的特征提取网络,以及包括1个预测输出模块的预测输出层;其中,
5层结构的主干网络中的第2至第5层结构为10层结构的特征提取网络中的4层输入层提供4个输入;
10层结构的特征提取网络中的其余6层输入层为预测输出层提供6个输入,所述6个输入经由预测输出模块分别解析出类别、目标框、特征点并进一步获得各个人体关键点的检测;
S300:训练支持向量机SVM对各个人体关键点进行二分类,得到跌倒和非跌倒两种分类结果;
S400:对跌倒分类结果进行输出,返回跌倒信息。
优选的,步骤S100中的所采集的图像是包括各种场景、天气、和光线的复杂环境因素的人体图像集。
优选的,步骤S200进一步包括如下步骤:
S2011:数据制作,先将采集的图像进行标注,标注出人体所在的像素坐标及宽高,并标注人体关键点数据,其中对被裁剪掉或者有遮挡的点不进行标注,将标注的数据分为训练集和测试集;
S2012:数据预处理,将训练集数据进行增强;
S2013:取上述增强后的训练集中数据输入所述人体关键点检测网络,将得到的预测张量与标注的实际值进行损失计算,直至人体关键点检测网络满足训练的要求。
优选的,步骤S2012中数据增强包括如下任一或其组合:旋转、缩放、模糊、拼接、偏色和添加噪声。
优选的,步骤S2013的损失计算采用了分类损失、定位损失、置信度损失和关键点损失。
优选的,步骤S200进一步包括如下步骤:
S2021:人体关键点检测网络结果解析,以将实时采集的图像输入训练好的人体关键点检测网络中,所述预测输出层解析出结果;
S2022:NMS目标框筛选,以将所述结果进行NMS非极大值抑制处理,从多个目标框中筛选出最准确的目标框,得到采集的图像上所有人体关键点的位置和置信度得分。
优选的,步骤S2022进一步包括如下步骤:
S20221:将所有检测的目标框按照置信度得分进行排序,选出最高置信度和对应的目标框;
S20222:遍历剩下的目标框,如果和步骤S20221中的框交并比大于设定的阈值则将其删除,从剩下的目标框中选择最高置信度的目标框;
S20223:重复上述步骤S20221至S20222直至完成NMS目标框筛选。
优选的,步骤300进一步包括如下步骤:
S301:训练支持向量机SVM;
S302:实施跌倒分类。
优选的,步骤S301进一步包括如下步骤:
S3011:数据制作,对上述标注的人体关键点数据进行坐标轴统一,进行归一化处理,并对人体关键点数据进行打标签;
S3012:采用高斯核函数构建非线性分类器,将二维线性不可分样本映射到高维空间中,再通过间隔最大化的方式,学习得到支持向量机SVM。
对于本公开而言,由于人体姿态复杂,且各姿态存在一定的中间态,仅通过逻辑判断往往会造成误检漏检,所以本公开通过训练相关模型以及训练向量支持机SVM,最终对人体关键点可以有效避免现有技术依靠逻辑判断存在的问题。本公开不需要人为设置参数,不要求监控设备性能及角度,对任一张图像都可以判断是否包含有人体,并能够对多个人体行为是否为跌倒进行判断。
附图说明
图1是本公开一个实施例中所提供的一种基于深度学习的多个人体的跌倒检测方法的流程示意图;
图2是本公开一个实施例中人体关键点标注示意图;
图3是本公开一个实施例中人体关键点检测网络的结构图;
图4是本公开一个实施例中人体关键点检测网络中的预测输出层结构图;
图5是本公开一个实施例中卷积操作原理示意图;
图6是本公开一个实施例中Relu激活函数示意图;
图7是本公开一个实施例中残差结构示意图;
图8是本公开一个实施例中人体关键点检测网络中间特征图;
图9是本公开一个实施例中模型训练过程示意图;
图10是本公开一个实施例中人体关键点检测网络评估P-R曲线图;
图11是本公开一个实施例中为高斯核函数图;
图12是本公开一个实施例中SVM高维空间分类示意图。
具体实施方式
为了使本领域技术人员理解本公开所披露的技术方案,下面将结合实施例及有关附图1至图12,对各个实施例的技术方案进行描述,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。本公开所采用的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,“包括”和“具有”以及它们的任何变形,意图在于覆盖且不排他的包含。例如包含了一系列步骤或单元的过程、或方法、或系统、或产品或设备没有限定于已列出的步骤或单元,而是可选的还包括没有列出的步骤或单元,或可选的还包括对于这些过程、方法、系统、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本公开的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其他实施例互斥的独立的或备选的实施例。本领域技术人员可以理解的是,本文所描述的实施例可以与其他实施例相结合。
在一个实施例中,如图1所示,公开了提供了一种基于深度学习的多个人体的跌倒检测方法,包括如下步骤:
S100:由监控设备实时采集监控区域的图像,并将采集的图像进行存储;
S200:构建并训练人体关键点检测网络,对所采集的图像进行多个人体的各个人体关键点检测;其中,
人体关键点检测网络包括5层结构的主干网络,10层结构的特征提取网络,以及包括1个预测输出模块的预测输出层;其中,
5层结构的主干网络中的第2至第5层结构为10层结构的特征提取网络中的4层输入层提供4个输入,
10层结构的特征提取网络中的其余6层输入层为预测输出层提供6个输入,所述6个输入经由预测输出模块分别解析出类别、目标框、特征点并进一步获得各个人体关键点的检测;
S300:训练支持向量机SVM对各个人体关键点进行二分类,得到跌倒和非跌倒两种分类结果;
S400:对跌倒分类结果进行输出,返回跌倒信息。例如,返回给上层应用程序,例如监控室的应用程序,从而对作业现场是否发生人员跌倒甚至多个人员发生跌倒进行监控和识别。
就该实施例而言,该方法能于作业现场的复杂环境下准确而高效的检测人体跌倒情况。对跌倒分类结果进行输出,如果存在跌倒情况,则返回跌倒信息。将步骤200中输出的人体关键点输入步骤300中的SVM模型,得到二分类结果。结果输出0则为跌倒,输出1则为其他行为。
在另一个实施例中,步骤S100中的所采集的图像是包括各种场景、天气、和光线的复杂环境因素的人体图像集。
就该实施例而言,由监控设备采集需要监控的图像;采集的图像包含白天黑夜,各类场景、天气、光线等因素。
在另一个实施例中,步骤S200进一步包括如下步骤:
人体关键点检测网络预测。
就该实施例而言,针对一张监控图像,需要先进行人体检测,包括是否含有人体,人体所在区域,和人体骨骼关键点。本公开实现了一种新的模型,能够理解,模型需要用标注的数据进行训练。以下是标注数据的制作:
如图2所示,对每张采集的图像标注出人体所在的像素坐标及宽高,并标注人体骨骼关键点分别是(1-鼻子,2-左眼,3-右眼,4-左耳,5-右耳,6-左肩膀,7-右肩膀,8-左肘,9-右肘,10-左手腕,11-右手腕,12-左腿跟,13-右腿跟,14-左膝盖,15-右膝盖,16-左脚腕,17-右脚腕)共17个点。将标注的数据分为训练集和测试集。用训练集数据训练初始模型,测试集数据计算模型精度,最后即可得到满足要求的模型。
在另一个实施例中,步骤S200进一步包括如下步骤:
S2011:数据制作,先将采集的图像进行标注,标注出人体所在的像素坐标及宽高,并标注人体关键点数据,其中对被裁剪掉或者有遮挡的点不进行标注,将标注的数据分为训练集和测试集;
S2012:数据预处理,将训练集数据进行增强;
S2013:取上述增强后的训练集中数据输入所述人体关键点检测网络,将得到的预测张量与标注的实际值进行损失计算。
就该实施例而言,网络训练之前需要先将采集的图像数据进行标注,标注内容包括[目标类别,目标框中心坐标,目标框宽高],[1-鼻子,2-左眼,3-右眼,4-左耳,5-右耳,6-左肩膀,7-右肩膀,8-左肘,9-右肘,10-左手腕,11-右手腕,12-左腿跟,13-右腿跟,14-左膝盖,15-右膝盖,16-左脚腕,17-右脚腕],如图2所示,其中对被裁剪掉或者有遮挡的点不进行标注。将标注好的数据分为两部分:训练集和测试集,比例为10:1。
实际采集的图像数据也不能完全涵盖自然环境下所有的情况,所有为了让最终模型适应更多复杂环境下的目标,这里将训练集数据进行增强,使用旋转,缩放,模糊,拼接,偏色,添加噪声等数据增强方法。
关键点检测网络采用一种新型神经网络结构,该网络包括5层结构的主干网络,10层结构的特征提取网络,加最后一层预测输出层,如图3所示。下面对网络的基础模块进行介绍:
主干网络的5层自上而下依次是:Conv1模块、Conv_3模块,Conv_4模块、Conv_6模块,Conv_3模块,其中,
Conv表示卷积操作,具体操作如图5所示,其中,
Conv:[c_out,kernel,stride,padding]表示卷积操作及其参数,参数中,c_out:输出特征通道数,数量与卷积核数量相同;kernel:核算子大小,每个卷积核通道数与输入的通道数相同;stride:核滑动步长,卷积核在图像窗口上每次平移的间隔,为空则表示默认步长为1;padding:图像周围填充数,为空则补齐。
Conv1=CBR->Maxpool,其代表输入至Conv_1模块的输入先经过CBR操作,然后经过Maxpool操作,其中,Maxpool代表最大池化操作。CBR则代表输入先经过Conv卷积操作,然后经过BN批量归一化操作,再经过Relu激活函数操作,其中,BN(Batch Normalization)批量归一化操作,用于卷积层之后,Relu激活函数之前,用于加快模型的收敛速度,防止模型梯度爆炸等。BN操作的公式如下:
x为输入数组;y为标准化处理之后的数组;mean[x]为输入数组的均值;Var[x]为
输入数组的方差;eps为稳定系数,默认为10的-5次方;尺度因子和平移因子用于调整
归一化之后数值的大小和偏移,可解决归一化后网络表达能力下降问题,这两个参数是在
训练时网络过程中学习到的。
图3中,add表示张量相加操作,尺寸不变,数值相加。
需要说明的是,对于Conv_3模块,Conv_4模块、Conv_6模块而言, Conv_3模块,Conv_4模块、Conv_6模块分别代表Conv_X这一通式中X分别取3、4、6的情形。如图3所示,每个Conv_X包括重复X个的重复操作,每个重复操作包括:输入经过连续的3个CBR操作后,所述输入与3个CBR操作后的结果进行add张量相加操作。需要进一步说明的是,Conv_X通过残差结构来加深网络,将三个不同卷积核的CBR聚合起来,其残差结构如图7所示:对于输入x的期望输出H(x),利用映射将x作为初始结果,将原来的映射关系变成F(x)+x,将学习目标改变为残差F(x)。
对于图3所反映的卷积Conv[kernel, stride, padding]操作: 参数中,kernel为核算子大小;stride为核滑动步长;padding为图像周围填充数,为空则自动补齐。
进一步参考图3,其中,
Relu:激活函数,其效果图如图6所示。公式如下:
x为输入值,f(x)为输出值,max表示求最大值。
参见图3,10层结构的特征提取网络则包括:输入侧的自上而下的4层Conv卷积层,以及输出侧的自上而下的6层Conv卷积层,其中,
输入侧的4层Conv卷积层的输入自上而下依次连接主干网络中的第2至5层的Conv_3模块、Conv_4模块、Conv_6模块、Conv_3模块;
输入侧的4层Conv卷积层的输出,其中,
第4层的Conv卷积层的输出,其连接特征提取网络输出侧的自上而下的6层Conv卷积层中的第4层Conv卷积层的输入;其还经过Up上采样操作后连接第3层的Conv卷积层对应的add张量操作的第一输入;
第3层的Conv卷积层的输出连接与其对应的add张量操作的第二输入,该add张量操作的输出则连接特征提取网络输出侧的自上而下的6层Conv卷积层中的第3层Conv卷积层的输入,该add张量操作的输出还经过Up上采样操作后连接第2层的Conv卷积层对应的add张量操作的第一输入;
第2层的Conv卷积层的输出连接与其对应的add张量操作的第二输入,该add张量操作的输出则连接特征提取网络输出侧的自上而下的6层Conv卷积层中的第2层Conv卷积层的输入,该add张量操作的输出还经过Up上采样操作后连接第1层的Conv卷积层对应的add张量操作的第一输入;
第1层的Conv卷积层的输出连接与其对应的add张量操作的第二输入,该add张量操作的输出则连接特征提取网络输出侧的自上而下的6层Conv卷积层中的第1层Conv卷积层的输入;
预测输出层基于6个输入进行解析以实现预测输出。
需要说明的是,图3中,Up表示上采样,用于对图像尺寸进行扩充。
以图3为例,示例性的,其给出了具体的图像规格和各种神经网络模块或操作的参数,例如,
输入图像为640*640*3,
主干网络的5层操作自上而下为:Conv1[7,2,][3,2,]操作、Conv_3[1,,][3,,][1,,]操作、Conv_4[1,,][3,,][1,,]操作、Conv_6[1,,][3,,][1,,]操作、Conv_3[1,,][3,,][1,,]操作,此5个操作所得的输出依次是如下规格的特征图像:320*320*64、160*160*256、80*80*512、40*40*1024、20*20*2048;能够发现,自上而下的5个操作,其尺寸在缩小,但是通道数在放大;
特征提取网络中连接主干网络的4个Conv卷积层,其均执行Conv[1,,]操作,其得到的输出分别是160*160*256、80*80*256、40*40*256、20*20*256规格的图像;
特征提取网络输出侧的6层Conv卷积层,其输出P2至P7图像,其图像规格是:160*160*256、80*80*256、40*40*256、20*20*256、10*10*256、5*5*256。
由此,参见图3,尺寸为640*640的3通道图像作为输入图像输入至图3的主干网络,其中,
主干网络,用于提取图像中特征信息,供后面的特征提取网络使用;
特征提取网络,用于更好的融合/提取主干网络输入的特征;
预测输出层,则用于实现神经网络的预测输出。
在一个具体的实施例中,举例单张图像一次训练的完整过程,需要说明的是,实际上训练是多张重复批次训练。如图8所示,展示一张输入图在模型每一层的特征输出(图8中的图像仅显示一个通道的图片)。具体操作为取上述准备好的训练集中数据,大小缩放到640*640*3,后将图像输入Backbone主干网络第一个模块Conv1[7,2,][3,2,](第一个卷积算子核尺寸kernel为7*7,步长stride为2,周围填充数padding为0,第二个Maxpool最大池化层算子核尺寸为3*3,步长为2,填充为0),操作后输出尺寸为(320*320*64);后输入C2:Conv_3[1,1,][3,,][1,,]操作后输出尺寸(160*160*256);后输入C3:Conv_4[1,1,][3,,][1,,]操作后输出尺寸(80*80*512);后输入C4:Conv_6[1,1,][3,,][1,,]操作后输出尺寸(40*40*1024);后输入C5:Conv_3[1,1,][3,,][1,,]操作后输出尺寸(20*20*2048);再进行第一步卷积Conv[1,,]操作输出尺寸(20*20*256);进行第二步卷积Conv[3,,]操作后得到P5(20*20*256);P5进行Conv[3,2,]操作后得到P6(10*10*256);P6进行Conv[3,2,]操作后得到P7(5*5*256);C4:Conv_6的输出进行第一步Conv[1,,]操作输出尺寸(40*40*256);再加上C5:Conv_3第一步卷积后的输出上采样的结果,进行C4:Conv_6第二步Conv[3,,]得到P4(40*40*256);C3:Conv_4的输出进行第一步Conv[1,,]操作输出尺寸(80*80*256);再加上C4:Conv_6第一步卷积后的输出上采样的结果,进行C3:Conv_4第二个Conv[3,,]得到P3(80*80*256);C2:Conv_3的输出进行第一步Conv[1,,]操作输出尺寸(160*160*256);再加上C3:Conv_4第一步卷积后的输出上采样的结果,进行C2:Conv_3第二个Conv[3,,]得到P2(160*160*256);
最后得到P2(160*160*256)、P3(80*80*256)、P4(40*40*256)、P5(20*20*256)、P6(10*10*256)、P7(5*5*256)的特征输出。
需要说明的是,以图8为例,左上角第一幅图中标记的Conv1及其320*320*64的含义是:
Conv1为前文所述的操作;
320*320表示特征图像长和宽;
64表示特征图像通道数。
在另一个实施例中,步骤S2012中数据增强包括旋转,缩放,模糊,拼接,偏色,添加噪声等。
在另一个实施例中,步骤S2013的损失计算采用了分类损失、定位损失、置信度损失和关键点损失。
就该实施例而言,将得到的4个预测张量与标注的实际值进行损失计算,这里采用了4种损失函数。分别是:分类损失cls_loss(计算计算锚框与对应的标定分类是否正确);定位损失box_loss(预测框与标定框之间的误差);置信度损失obj_loss(计算框及关键点的置信度);关键点损失oks_loss(计算关键点)。总的损失函数=分类损失+定位损失+置信度损失+关键点损失。
分类损失和置信度损失使用二元交叉熵损失函数BCEWithLogitsLoss计算,定位损失采用的是CIOU_Loss计算。其中BCEWithLogitsLoss计算公式如下:
其中n表示样本总量,表示一个样本的预测输出,是一个样本的标签值。
CIOU_Loss用来衡量矩形框的损失,它将预测框A和标签框B两个矩形框的重叠面积,中心点距离和宽高比同时加入了计算,计算公式如下:
其中IOU表示A,B两个框的交并比(两个框相交区域面积与相并区域面积的比值),为框A与框B中心点的距离,c为框A和框B最小包围矩形的对角线长度,分别为
标签框B的宽、高和预测框A的宽、高;是因子,其反映A和B的宽高比相似度,则是和IOU
确定的中间因子。
关键点损失采用的是OKS进行计算,其给予不同的点以不同的权重,同时不受点的尺度影响,用于计算真值和预测值所反映的人体关键点的相似度。公式如下:
其中:p表示真实值的id;i表示关键点的id;表示真实值中每个人和预测的每
个人的关键点的欧式距离;表示当前人的尺度因子;表示第i个关键点的归一化因子,
通过计算真实值标准差得到,值越大越难标注;表示第p个人的第i个关键点可见;则
是将可见的关键点选出来的函数。
通过数据训练计算总的损失函数,总的损失值越小,模型准确率越高。如图9模型训练过程示意图所示,如果总的损失值一直偏大,不能收敛,则修改网络参数或者检测数据标签等方法重新训练直至网络收敛。然后,用测试集对模型检测能力进行评估,评估公式如下:
其中TP:预测值为正实际为正的样本数;FN:预测为负实际为正的样本数;FP:预测为负实际为负的样本数;再画出P-R(Precision-Recall)曲线即准确率-召回率曲线,如图10所示,准确率-召回率曲线上通过计算每一个recall召回率值对应的Precision准确率值的平均值可以获得一个数值形式的评估指标AP,可以用于衡量训练出来模型检测能力的好坏,再结合人眼对结果的观察即可判断最终模型准确率是否合格,如果不合格则需要采用修改训练参数,添加针对性数据等方法再重新训练。就图10而言,图中人体的准确率-召回率曲线,和跌倒的总类别的准确率-召回率均达到了0.913且高度吻合,满足了性能要求。
在另一个实施例中,步骤S200进一步包括如下步骤:
S2021:人体关键点检测网络结果解析,以将实时采集的图像输入训练好的人体关键点检测网络中,所述预测输出层解析出结果;
S2022:NMS目标框筛选,以将所述结果进行NMS非极大值抑制处理,从多个目标框中筛选出最准确的目标框,得到采集的图像上所有人体关键点的位置和置信度得分。
就该实施例而言,监控设备采集图像后传入上述训练好的人体关键点检测模型,预测过程和上述训练过程一致,只是对最后的网络输出P2(160*160*256)、P3(80*80*256)、P4(40*40*256)、P5(20*20*256)、P6(10*10*256)、P7(5*5*256)不是进行总的损失值计算,而是直接进行结果解析。
取一张640*640*3的待测图像,输入训练好的模型中,模型各层输出与训练相同,最后得到P2(160*160*256)、P3(80*80*256)、P4(40*40*256)、P5(20*20*256)、P6(10*10*256)、P7(5*5*256)6个特征输出。如图4所示。将这6个特征输出,均进行(类别,目标框,特征点)的输出解析,最后得到:
P2:(160*160*1),(160*160*4),(160*160*51)
其中第一个输出中的1,指的是类别,这里仅包含人体一个类别;第二个输出中的4,指的是(中心点x坐标的坐标偏移,中心点y坐标的坐标偏移,其反映了图像中心点处的高,宽);第三个输出中的51指的是17个关键点的对应的:x坐标,y坐标,点置信度的3个量,能够发现,按照本公开的技术方案,第三个输出的值永远是3的倍数,51除以3得到商17,商代表了最终获得的人体关键点的个数。
类似的,在该实施例中,预测输出模块通过解析还得到以下输出:
P3(80*80*1)、(80*80*4)、(80*80*51);
P4(40*40*1)、(40*40*4)、(40*40*51);
P5(20*20*1)、(20*20*4)、(20*20*51);
P6(10*10*1)、(10*10*4)、(10*10*51);
P7(5*5*1)、(5*5*4)、(5*5*51)。
需要说明的是,图4中,
CBR*4表示进行4个CBR模块的操作;
W*H则表示特征图的图像尺寸;事实上,图4中的W*H为P2至P7输入后,分别解析类别、目标框,特征点的解析,得到的特征图的图像尺寸,如上所述,其分别为160*160,80*80,……,5*5。
在另一个实施例中,步骤S2022进一步包括如下步骤:
S20221:将所有检测的目标框按照置信度得分进行排序,选出最高置信度和对应的目标框;
S20222:遍历剩下的目标框,如果和步骤S20221中的框交并比大于设定的阈值则将其删除,从剩下的目标框中选择最高置信度的目标框;
S20223:重复上述步骤S20221至S20222直至完成NMS目标框筛选。
从而,当S20223执行完毕后,对所有多个人体的最高置信度的目标框进行NMS非极大值抑制处理,以此筛选出相应的最准确的目标框。
到此,人体跌倒检测过程已经完成,最后得到采集的图像上所有人体及骨骼关键点的位置和置信度得分,并将这些结果作为下一步的输入。
在另一个实施例中,步骤300进一步包括如下步骤:
S301:训练支持向量机SVM;
S302:实施跌倒分类。
就该实施例而言,采用机器学习SVM(支持向量机)对人体的17个关键点进行二分类,识别跌倒和非跌倒情况。数据制作:需要转换关键点坐标,变换为以(鼻子)为原点的坐标系中,并进行归一化处理。
在另一个实施例中,步骤S301进一步包括如下步骤:
S3011:数据制作,对上述标注的人体关键点数据进行坐标轴统一,进行归一化处理,并对人体关键点数据进行打标签;
S3012:采用高斯核函数构建非线性分类器,将二维线性不可分样本映射到高维空间中,再通过间隔最大化的方式,学习得到支持向量机SVM。
就该实施例而言,为使得机器学习更好的学习人体关键点特征,对上述标注的人体17个关键点数据[1-鼻子,2-左眼,3-右眼,4-左耳,5-右耳,6-左肩膀,7-右肩膀,8-左肘,9-右肘,10-左手腕,11-右手腕,12-左腿跟,13-右腿跟,14-左膝盖,15-右膝盖,16-左脚腕,17-右脚腕]进行坐标轴统一,以(鼻子)为坐标原点对每个人的17个关键点构建坐标系,再用坐标除以图像长宽对关键点数据进行归一化处理。再对关键点数据进行打标签,对跌倒行为的17个关键点标注为0,对其他行为的17个关键点标注为1。
关于支持向量机的训练,本公开采用高斯核函数构建非线性分类器,高斯核函数(Gaussian kernel)公式如下:
其中x和为两个向量,相当于计算两个向量的欧式距离,高斯核函数是两个向量
欧式距离的单调函数,是带宽,控制径向作用范围,如图11所示。
高斯核函数可以将二维线性不可分样本映射到高维空间中,让样本点在高维空间中可分,如图12所示。对于在有限维度向量空间中线性不可分的样本,我们将其映射到更高维度的向量空间中,再通过间隔最大化的方式,学习得到支持向量机,从而本公开实现了一种非线性的向量支持机SVM。最终,本公开通过训练相关模型以及训练向量支持机SVM,对人体关键点可以有效避免现有技术依靠逻辑判断存在的问题。本公开不需要人为设置参数,不要求监控设备性能及角度,对任一张图像都可以判断是否包含有人体,并能够对多个人体行为是否为跌倒进行判断。
尽管以上结合附图对本公开的实施方案进行了描述,但本公开并不局限于上述的具体实施方案和应用领域,上述的具体实施方案仅仅是示意性的、指导性的,而不是限制性的。本领域的普通技术人员在本说明书的启示下和在不脱离本公开权利要求所保护的范围的情况下,还可以做出很多种的形式,这些均属于本公开保护之列。
Claims (9)
1.一种基于深度学习的多个人体的跌倒检测方法,其特征在于,包括如下步骤:
S100:由监控设备实时采集监控区域的图像,并将采集的图像进行存储;
S200:构建并训练人体关键点检测网络,对所采集的图像进行多个人体的各个人体关键点检测;其中,
人体关键点检测网络包括5层结构的主干网络,10层结构的特征提取网络,以及包括1个预测输出模块的预测输出层;其中,
5层结构的主干网络中的第2至第5层结构为10层结构的特征提取网络中的4层输入层提供4个输入;
10层结构的特征提取网络中的其余6层输入层为预测输出层提供6个输入,所述6个输入经由预测输出模块分别解析出类别、目标框、特征点并进一步获得各个人体关键点的检测;
S300:训练支持向量机SVM对各个人体关键点进行二分类,得到跌倒和非跌倒两种分类结果;
S400:对跌倒分类结果进行输出,返回跌倒信息。
2.根据权利要求1所述的方法,其特征在于,步骤S100中的所采集的图像是包括各种场景、天气、和光线的复杂环境因素的人体图像集。
3.根据权利要求1所述的方法,其特征在于,步骤S200进一步包括如下步骤:
S2011:数据制作,先将采集的图像进行标注,标注出人体所在的像素坐标及宽高,并标注人体关键点数据,其中对被裁剪掉或者有遮挡的点不进行标注,将标注的数据分为训练集和测试集;
S2012:数据预处理,将训练集数据进行增强;
S2013:取上述增强后的训练集中数据输入所述人体关键点检测网络,将得到的预测张量与标注的实际值进行损失计算,直至人体关键点检测网络满足训练的要求。
4.根据权利要求3所述的方法,其特征在于,步骤S2012中数据增强包括如下任一或其组合:旋转、缩放、模糊、拼接、偏色和添加噪声。
5.如权利要求3所述的方法,其特征在于,步骤S2013的损失计算采用了分类损失、定位损失、置信度损失和关键点损失。
6.如权利要求3所述的方法,其特征在于,步骤S200进一步包括如下步骤:
S2021:人体关键点检测网络结果解析,以将实时采集的图像输入训练好的人体关键点检测网络中,所述预测输出层解析出结果;
S2022:NMS目标框筛选,以将所述结果进行NMS非极大值抑制处理,从多个目标框中筛选出最准确的目标框,得到采集的图像上所有人体关键点的位置和置信度得分。
7.如权利要求6所述的方法,其特征在于,步骤S2022进一步包括如下步骤:
S20221:将所有检测的目标框按照置信度得分进行排序,选出最高置信度和对应的目标框;
S20222:遍历剩下的目标框,如果和步骤S20221中的框交并比大于设定的阈值则将其删除,从剩下的目标框中选择最高置信度的目标框;
S20223:重复上述步骤S20221至S20222直至完成NMS目标框筛选。
8.根据权利要求3所述的方法,其特征在于,步骤300进一步包括如下步骤:
S301:训练支持向量机SVM;
S302:实施跌倒分类。
9.根据权利要求8所述的方法,其特征在于,步骤S301进一步包括如下步骤:
S3011:数据制作,对标注的人体关键点数据进行坐标轴统一,进行归一化处理,并对人体关键点数据进行打标签;
S3012:采用高斯核函数构建非线性分类器,将二维线性不可分样本映射到高维空间中,再通过间隔最大化的方式,学习得到支持向量机SVM。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311368956.2A CN117115862A (zh) | 2023-10-23 | 2023-10-23 | 一种基于深度学习的多个人体的跌倒检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311368956.2A CN117115862A (zh) | 2023-10-23 | 2023-10-23 | 一种基于深度学习的多个人体的跌倒检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117115862A true CN117115862A (zh) | 2023-11-24 |
Family
ID=88813176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311368956.2A Pending CN117115862A (zh) | 2023-10-23 | 2023-10-23 | 一种基于深度学习的多个人体的跌倒检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117115862A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110490080A (zh) * | 2019-07-22 | 2019-11-22 | 西安理工大学 | 一种基于图像的人体跌倒判别方法 |
CN115082825A (zh) * | 2022-06-16 | 2022-09-20 | 中新国际联合研究院 | 一种基于视频实时人体跌倒检测及报警的方法和装置 |
CN115116127A (zh) * | 2022-05-25 | 2022-09-27 | 西安北斗安全技术有限公司 | 一种基于计算机视觉和人工智能的跌倒检测方法 |
US20220351408A1 (en) * | 2021-04-28 | 2022-11-03 | Wistron Corp. | Detection device for detecting human-body orientation and detection method for detecting human-body orientation |
CN115331283A (zh) * | 2022-07-25 | 2022-11-11 | 上海中侨健康智能科技有限公司 | 用于检测人在生活空间中跌倒的检测系统及其检测方法 |
-
2023
- 2023-10-23 CN CN202311368956.2A patent/CN117115862A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110490080A (zh) * | 2019-07-22 | 2019-11-22 | 西安理工大学 | 一种基于图像的人体跌倒判别方法 |
US20220351408A1 (en) * | 2021-04-28 | 2022-11-03 | Wistron Corp. | Detection device for detecting human-body orientation and detection method for detecting human-body orientation |
CN115116127A (zh) * | 2022-05-25 | 2022-09-27 | 西安北斗安全技术有限公司 | 一种基于计算机视觉和人工智能的跌倒检测方法 |
CN115082825A (zh) * | 2022-06-16 | 2022-09-20 | 中新国际联合研究院 | 一种基于视频实时人体跌倒检测及报警的方法和装置 |
CN115331283A (zh) * | 2022-07-25 | 2022-11-11 | 上海中侨健康智能科技有限公司 | 用于检测人在生活空间中跌倒的检测系统及其检测方法 |
Non-Patent Citations (1)
Title |
---|
DEBAPRIYA MAJI等: "YOLO-Pose: Enhancing YOLO for Multi Person Pose Estimation Using Object Keypoint Similarity Loss", PROCEEDINGS OF THE IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR) WORKSHOPS, 2022, pages 2637 - 2646 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sun et al. | MEAN-SSD: A novel real-time detector for apple leaf diseases using improved light-weight convolutional neural networks | |
CN110399905B (zh) | 施工场景中安全帽佩戴情况的检测及描述方法 | |
CN108564097B (zh) | 一种基于深度卷积神经网络的多尺度目标检测方法 | |
EP3961484A1 (en) | Medical image segmentation method and device, electronic device and storage medium | |
CN110059741B (zh) | 基于语义胶囊融合网络的图像识别方法 | |
Yadav et al. | An improved deep learning-based optimal object detection system from images | |
CN112801236B (zh) | 图像识别模型的迁移方法、装置、设备及存储介质 | |
CN114332473B (zh) | 目标检测方法、装置、计算机设备、存储介质及程序产品 | |
CN117115722B (zh) | 施工场景检测的方法、装置、存储介质及电子设备 | |
CN112215217B (zh) | 模拟医师阅片的数字图像识别方法及装置 | |
CN114821102A (zh) | 密集柑橘数量检测方法、设备、存储介质及装置 | |
CN111368768A (zh) | 一种基于人体关键点的员工手势指引检测方法 | |
CN116824335A (zh) | 一种基于YOLOv5改进算法的火灾预警方法及系统 | |
CN111599444A (zh) | 智能舌诊检测方法、装置、智能终端和存储介质 | |
CN113052295A (zh) | 一种神经网络的训练方法、物体检测方法、装置及设备 | |
CN113096080A (zh) | 图像分析方法及系统 | |
Bai et al. | Automated construction site monitoring based on improved YOLOv8-seg instance segmentation algorithm | |
CN105354405A (zh) | 基于机器学习的免疫组化图像自动化判读系统 | |
CN113887455B (zh) | 一种基于改进fcos的人脸口罩检测系统及方法 | |
JP2021154935A (ja) | 車両シミュレーションシステム、車両シミュレーション方法およびコンピュータプログラム | |
CN111598140A (zh) | 一种基于胶囊网络的遥感图像分类方法 | |
CN113096079A (zh) | 图像分析系统及其构建方法 | |
CN114792300B (zh) | 一种基于多尺度注意力x光断针检测方法 | |
CN117115862A (zh) | 一种基于深度学习的多个人体的跌倒检测方法 | |
CN115659221A (zh) | 一种教学质量的评估方法、装置及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20231124 |
|
RJ01 | Rejection of invention patent application after publication |