CN117037272B - 一种老人摔倒监测方法及系统 - Google Patents
一种老人摔倒监测方法及系统 Download PDFInfo
- Publication number
- CN117037272B CN117037272B CN202310991993.2A CN202310991993A CN117037272B CN 117037272 B CN117037272 B CN 117037272B CN 202310991993 A CN202310991993 A CN 202310991993A CN 117037272 B CN117037272 B CN 117037272B
- Authority
- CN
- China
- Prior art keywords
- target
- pixel
- point
- image
- frame image
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012544 monitoring process Methods 0.000 title claims abstract description 28
- 230000004044 response Effects 0.000 claims abstract description 50
- 238000004364 calculation method Methods 0.000 claims abstract description 49
- 238000001514 detection method Methods 0.000 claims abstract description 37
- 230000033001 locomotion Effects 0.000 claims description 80
- 239000013598 vector Substances 0.000 claims description 26
- 230000001133 acceleration Effects 0.000 claims description 24
- 238000012216 screening Methods 0.000 claims description 20
- 230000000694 effects Effects 0.000 claims description 15
- 238000012163 sequencing technique Methods 0.000 claims description 12
- 208000032544 Cicatrix Diseases 0.000 claims description 5
- 230000001815 facial effect Effects 0.000 claims description 5
- 230000008921 facial expression Effects 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 5
- 231100000241 scar Toxicity 0.000 claims description 5
- 230000037387 scars Effects 0.000 claims description 5
- 210000003484 anatomy Anatomy 0.000 claims description 3
- 230000009471 action Effects 0.000 abstract description 10
- 230000037237 body shape Effects 0.000 abstract description 3
- 230000035945 sensitivity Effects 0.000 abstract description 3
- 230000008859 change Effects 0.000 description 13
- 230000036544 posture Effects 0.000 description 7
- 210000000887 face Anatomy 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 208000028752 abnormal posture Diseases 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 210000000544 articulatio talocruralis Anatomy 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 210000002310 elbow joint Anatomy 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 210000000629 knee joint Anatomy 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 210000002414 leg Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000035790 physiological processes and functions Effects 0.000 description 1
- 210000000323 shoulder joint Anatomy 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 210000003857 wrist joint Anatomy 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/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
-
- 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/08—Learning methods
-
- 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- 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
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B21/00—Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
- G08B21/02—Alarms for ensuring the safety of persons
- G08B21/04—Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons
- G08B21/0407—Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons based on behaviour analysis
- G08B21/043—Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons based on behaviour analysis detecting an emergency event, e.g. a fall
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B21/00—Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
- G08B21/02—Alarms for ensuring the safety of persons
- G08B21/04—Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons
- G08B21/0438—Sensor means for detecting
- G08B21/0446—Sensor means for detecting worn on the body to detect changes of posture, e.g. a fall, inclination, acceleration, gait
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B21/00—Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
- G08B21/02—Alarms for ensuring the safety of persons
- G08B21/04—Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons
- G08B21/0438—Sensor means for detecting
- G08B21/0476—Cameras to detect unsafe condition, e.g. video cameras
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Gerontology & Geriatric Medicine (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Emergency Management (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Psychiatry (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Social Psychology (AREA)
- Psychology (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种老人摔倒监测方法及系统。通过多尺度高斯模糊和差分图像计算实现尺度自适应的检测,不同尺度下的差分图像捕捉到不同尺度的目标特征,以获取目标老人的微妙动作和姿态变化,提高检测的灵敏度和准确性;通过对像素极值点检测和精确定位,即检测和定位显著特征点,实现对目标老人的准确定位,抑制非目标区域的干扰,以精确捕捉目标老人的形状和结构信息;通过计算主曲率响应,增强关键点的特征响应,以提高目标区域的辨别度和可靠性,通过设定响应阈值,对关键点进行筛选,保留响应值高于阈值的关键点,以减少将非目标区域误判为关键点的可能性,将目标老人的身体形状和结构描述的更准确,从而对摔倒的识别也更加准确可靠。
Description
技术领域
本发明属于老人摔倒监测技术领域,尤其涉及一种老人摔倒监测方法及系统。
背景技术
老人们随着年龄的变大,生理机能的减弱,自理能力越来越差,很可能出现由于不小心的跌倒而无人帮扶的情况。老人一旦跌倒又没有获得及时救治,往往会遭受严重伤害。因此,实时监测家中老人是否摔倒已逐渐成为很多子女的必要需求。
目前市面上提供老人摔倒监护检测的方式大多是依靠智能手环、智能拐杖等监测设备,通过监测老人行走步态等信息赖判断老人是否摔倒,并进行摔倒预警。但是现有的这些监测技术,仍然存在一些问题,比如基于单模态参数的采集进行摔倒监测判断容易受到老人自身行动状态的影响,可能出现摔倒误判(将正常行动情况误判为摔倒)、漏判(未能正确识别出真正的摔倒动作)的情况,监测准确率效果不理想。
发明内容
本发明提供一种老人摔倒监测系统及装置,旨在解决无法对老人摔倒情况进行准确监测的问题。
本发明是这样实现的,提供一种老人摔倒监测方法,在目标老人的常活动区域布设摄像头,步骤包括:
通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像;
在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态;
根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,并按尺度大小顺序对高斯图像进行金字塔层排列;
对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像;
对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置;
将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,σ)=(Dxx*Dyy-Dxy2)*σ2,其中,L(x,y,σ)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,σ为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除,并将所述候选关键点列表中的所有像素极值点定为关键点;
根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记;
根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算;
将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置;
对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角;
将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
更进一步地,所述根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像的步骤中:
高斯图像中每个像素点的值为:其中,σ为尺度参数,(x,y)为像素点;
所述对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像的步骤中:
差分图像中每个像素点的值为:DoG(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y),其中,DoG(x,y,σ)为在坐标(x,y)处、尺度参数为σ的差分值,G(x,y,σ)为高斯图像值,I(x,y)为坐标(x,y)处的像素值,k为尺度因子;
所述对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置的步骤中:
像素极值点的插值偏移量为: 其中,(x,y)为像素极值点的坐标,σ为当前层的尺度参数,k为尺度因子,dx为x方向上的插值偏移量,dy为y方向上的插值偏移量,DoG x,y,σ)为在坐标(x,y)处、尺度参数为σ的高斯差分值。
更进一步地,所述在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息的步骤包括:
对第一帧图像进行预处理,加载训练好的Faster R-CNN模型,将预处理后的第一帧图像输入Faster R-CNN模型并输出第一帧图像的行人检测结果,第一帧图像的行人检测结果包括第一帧图像中每个行人的边界框、类别置信度和类别标签,行人的位置表示为行人的边界框;
通过训练好的级联分类器对第一帧图像的每个行人的边界框进行人脸检测以得到第一帧图像的每个行人的人脸边界框;
根据所述目标老人的年龄和性别对所有行人的人脸进行初步筛选,再根据所述目标老人的一个或多个特定特征依次对初步筛选后的行人的人脸进行一次或多次筛选直至筛选出一张符合条件的人脸,并将符合条件的人脸标记为目标老人的人脸,将与符合条件的人脸对应的行人锁定为目标老人,所述特定特征包括独特的脸部特征、疤痕或面部表情;
将所述目标老人的人脸图像转换为灰度图像,并计算其灰度图像的梯度信息,将图像均匀划分为若干个小区域并计算每个小区域内的梯度直方图,将所有小区域内的梯度直方图连接起来以形成一个特征向量,定为第一帧图像中目标老人的人脸特征。
更进一步地,所述通过训练好的级联分类器对每个行人的边界框进行人脸检测以得到每个行人的人脸边界框的步骤前还包括:
根据行人的类别置信度从高至低对边界框进行排序;
创建一个列表,将置信度最高的边界框添加至所述列表中;
根据类别置信度排序,从类别置信度排序第二的边界框开始,依次遍历每个边界框,并对当前的边界框与所述列表中边界框的重叠区域进行计算,若重叠区域不超过预设面积比阈值,则将当前边界框添加至所述列表中,若重叠区域超过预设面积比阈值,则将当前边界框删除,直至遍历完所有行人的边界框,以得到目标行人检测结果。
更进一步地,所述在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态的步骤包括:
以前一帧图像中目标老人的位置为中心设置第一搜索区域,将所述第一搜索区域内的每个行人定为候选目标;
将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值;
判断是否存在相似度高于预设相似度阈值的候选目标;
若存在,则将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,并根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态;
更进一步地,所述判断是否存在相似度高于预设相似度阈值的候选目标的步骤后还包括:
若不存在,则根据前一帧图像中目标老人的位置计算前一帧图像中目标老人的运动方向和速度,并以前一帧图像中目标老人的位置为起始点,根据前一帧图像中目标老人的运动方向和速度设置第二搜索区域,
运动速度的计算公式为:
第二搜索区域的计算公式为:
第二搜索区域的左上角坐标及右下角坐标的计算公式为:
xtl=xc-d,ytl=yc-d,xbr=xc+d,ybr=yc+d,
其中,(xc,yc)为当前帧图像中目标老人的位置,(xp,yp)为前一帧图像中目标老人的位置,(xtl,ytl)为第二搜索区域的左上角坐标,(xbr,ybr)为第二搜索区域的右下角坐标,d为第二搜索区域的边长,第二搜索区域为正方形,t为当前帧与前一帧之间的时间间隔,v为前一帧图像中目标老人的运动速度,s为第二搜索区域的缩放因子;
将所述第二搜索区域内的每个行人定为候选目标,并将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值,将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态。
更进一步地,所述对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点的步骤包括:
对每层所述差分图像中的每个像素点,将当前像素点与其当前层的二十六个邻域像素点及其邻近两层的九个像素点的灰度值进行比较,以判断所述当前像素点的像素值是否为极大值或极小值;
若所述当前像素点的像素值为极大值或极小值,则判定所述当前像素点为像素极值点。
更进一步地,所述将精确定位后的所有所述像素极值点加入候选关键点列表的步骤后还包括:
以所述像素极值点为中心对每个所述像素极值点设置一局部区域,所述局部区域为正方形或圆形区域,且包含若干个像素点;
以所述像素极值点为中心在所述局部区域内提取一子区域,所述子区域为正方形或圆形区域,且包含在所述局部区域内;
对所述子区域内的像素方差进行计算以得到局部区域的对比度,计算公式为:
其中,I(x,y)为像素极值点的像素值,μ为子区域内的像素均值,N为子区域内的像素点数量;
判断所述像素极值点的局部区域的对比度是否小于对比度阈值,其中,所述对比度阈值的取值范围为[0.1,0.5];
若小于对比度阈值,则将对应的像素极值点从所述候选关键点列表中移除。
本发明还提供一种老人摔倒监测系统,用于执行老人摔倒监测方法,在目标老人的常活动区域布设摄像头,包括:
采集模块:用于通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像;
位置获取模块:用于在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态;
高斯模糊模块:用于根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,并按尺度大小顺序对高斯图像进行金字塔层排列;
差分计算模块:用于对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像;
精确定位模块:用于对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置;
关键点筛选模块:用于将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,σ)=(Dxx*Dyy-Dxy2)*σ2,其中,L(x,y,σ)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,σ为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除,并将所述候选关键点列表中的所有像素极值点定为关键点;
部位标记模块:用于根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记;
第一计算模块:用于根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算;
第二计算模块:用于将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置;
第三计算模块:用于对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角;
摔倒识别模块:用于将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
本发明的有益效果在于,与现有技术相比,本发明的老人摔倒监测方法,先对目标老人的轨迹状态进行实时更新,以实现对目标老人在整个活动区域内的持续准确追踪;再使用高斯模糊生成一组不同尺度的高斯图像,并计算相邻尺度的差分图像,这种多尺度处理方式可以便于提取目标区域的细节特征,并突出目标老人在图像中的运动和变化;然后通过对差分图像进行像素值比较,找到像素极值点,并使用插值计算精确位置,从而确定目标老人在图像中的关键位置,便于后续的特征计算和分析;接着计算像素极值点的主曲率响应值,并通过设定响应阈值进行关键点筛选,从而去除响应值较低、不稳定的边缘非关键点,以提高关键点的质量和可靠性,更好的确定目标老人身体部位的关键点;再基于关键点的位置信息和时间间隔,计算目标老人的运动速度、加速度和运动方向,通过计算关键点之间的相对位置和关节构成的夹角,可以更详细地描述目标老人的姿态和动作;最后将目标老人的运动特征(速度、加速度、运动方向等)和关节角度等信息输入已训练好的摔倒识别模型,以判断目标老人是否发生了摔倒,以得出可靠的摔倒识别结果。
其中,高斯模糊可以帮助平滑图像并减少噪声的影响,提取出目标的整体特征,提高目标的可视性和轮廓的清晰度,通过生成一组不同尺度的高斯图像,并计算相邻尺度的差分图像,可以突出目标区域的运动和变化(在差分图像中,像素值的变化可以反映出目标的运动幅度和方向),且由于目标老人在不同尺度下的大小和细节可能会有所变化,使用多尺度高斯模糊和差分图像计算可以实现尺度自适应的检测,不同尺度下的差分图像可以捕捉到不同尺度的目标特征,这样可以更好地适应目标老人在不同距离、角度和姿势下的变化,有助于捕捉目标老人的微妙动作和姿态变化,提高检测的灵敏度、准确性、鲁棒性和适应性;
通过对像素极值点检测和精确定位,可以准确地确定目标在图像中的位置,像素极值点通常对应着目标区域的关键位置,例如关节点或显著特征点,通过检测和定位这些特征点,可以实现对目标位置的准确定位,抑制非目标区域的干扰,从而提高对目标老人检测的准确性,精确捕捉目标老人的形状和结构信息,以实现姿态和动作的精确分析,从而实现对摔倒的准确识别,因为摔倒通常伴随着异常的姿态和动作模式;
通过计算主曲率响应,可以增强关键点的特征响应,从而提高目标区域的辨别度和可靠性,主曲率响应是关键点的局部特征描述,可以帮助区分目标区域和背景或其他物体之间的区别,通过设定响应阈值,对关键点进行筛选,只有响应值高于阈值的关键点才会被保留,其他的点则被排除,从而减少误检,即减少将非目标区域误判为关键点的可能性,通过筛选得到的关键点,能够将目标老人的身体形状和结构描述的更准确,从而对摔倒的识别也更加准确可靠,关键点的筛选还可以减少需要处理的特征点数量,从而降低计算复杂性,提高算法的效率和实时性;
由于摔倒通常伴随着明显的运动异常,因此通过准确计算目标的运动特征,可以更好地区分正常的日常活动和摔倒事件,提高摔倒检测的准确性,且由于摔倒通常导致身体部位之间的异常姿态和关节角度,通过关节角度的计算,可以分析目标老人身体部位之间的相对位置和关系,提供更细致的姿态信息,进一步支持摔倒的识别和判定。
附图说明
图1是本发明提供的老人摔倒监测方法的流程示意图;
图2是本发明提供的老人摔倒监测系统的系统框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
参考图1,实施例一提供一种老人摔倒监测方法,在目标老人的常活动区域布设摄像头,包括步骤S101~S111:
S101,通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像。
S102,在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态。
进一步,所述在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息的步骤包括:
对第一帧图像进行预处理,加载训练好的Faster R-CNN模型,将预处理后的第一帧图像输入Faster R-CNN模型并输出第一帧图像的行人检测结果,第一帧图像的行人检测结果包括第一帧图像中每个行人的边界框、类别置信度和类别标签,行人的位置表示为行人的边界框;
通过训练好的级联分类器对第一帧图像的每个行人的边界框进行人脸检测以得到第一帧图像的每个行人的人脸边界框;
根据所述目标老人的年龄和性别对所有行人的人脸进行初步筛选,再根据所述目标老人的一个或多个特定特征依次对初步筛选后的行人的人脸进行一次或多次筛选直至筛选出一张符合条件的人脸,并将符合条件的人脸标记为目标老人的人脸,将与符合条件的人脸对应的行人锁定为目标老人,所述特定特征包括独特的脸部特征、疤痕或面部表情;
将所述目标老人的人脸图像转换为灰度图像,并计算其灰度图像的梯度信息,将图像均匀划分为若干个小区域并计算每个小区域内的梯度直方图,将所有小区域内的梯度直方图连接起来以形成一个特征向量,定为第一帧图像中目标老人的人脸特征。
需要说明的是,本实施例从第一帧图像中提取目标老人的人脸特征,相对于根据提前存储的静态图像来获取人脸特征,能够得到目标老人的实时人脸特征,避免出现老人因外貌发生较大变化(如化妆、改变发型等)导致存储的静态图像与实时图像不一致,从而降低识别的准确性的问题,且仅通过存储的静态图像进行识别,可能无法适应目标老人在其他不同场景和姿态下的识别需求,如果目标老人出现在其他图像中,可能需要重新进行人脸检测和特征提取。
进一步,所述通过训练好的级联分类器对每个行人的边界框进行人脸检测以得到每个行人的人脸边界框的步骤前还包括:
根据行人的类别置信度从高至低对边界框进行排序;
创建一个列表,将置信度最高的边界框添加至所述列表中;
根据类别置信度排序,从类别置信度排序第二的边界框开始,依次遍历每个边界框,并对当前的边界框与所述列表中边界框的重叠区域进行计算,若重叠区域不超过预设面积比阈值,则将当前边界框添加至所述列表中,若重叠区域超过预设面积比阈值,则将当前边界框删除,直至遍历完所有行人的边界框,以得到目标行人检测结果。
需要说明的是,当出现多个边界框重叠表示同一个行人时,通过上述步骤能够对重叠的边界框进行筛选及删除操作以确保列表中的边界框不重叠,从而避免出现重复计算和重复报告同一个行人目标的情况。
进一步,所述在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态的步骤包括:
以前一帧图像中目标老人的位置为中心设置第一搜索区域,将所述第一搜索区域内的每个行人定为候选目标;
将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值;
判断是否存在相似度高于预设相似度阈值的候选目标;
若存在,则将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,并根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态;
若不存在,则根据前一帧图像中目标老人的位置计算前一帧图像中目标老人的运动方向和速度,并以前一帧图像中目标老人的位置为起始点,根据前一帧图像中目标老人的运动方向和速度设置第二搜索区域,
运动速度的计算公式为:
第二搜索区域的计算公式为:
第二搜索区域的左上角坐标及右下角坐标的计算公式为:
xtl=xc-d,ytl=yc-d,xbr=xc+d,ybr=yc+d,
其中,(xc,yc)为当前帧图像中目标老人的位置,(xp,yp)为前一帧图像中目标老人的位置,(xtl,ytl)为第二搜索区域的左上角坐标,(xbr,ybr)为第二搜索区域的右下角坐标,d为第二搜索区域的边长,第二搜索区域为正方形,t为当前帧与前一帧之间的时间间隔,v为前一帧图像中目标老人的运动速度,s为第二搜索区域的缩放因子;
将所述第二搜索区域内的每个行人定为候选目标,并将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值,将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态。
需要说明的是,先以前一帧图像中目标老人的位置为中心设置第一搜索区域,若目标老人在第一搜索区域内,便能够快速找到目标老人,若目标老人不在第一搜索区域内,则根据前一帧图像中目标老人的运动方向和速度,通过计算第二搜索区域的位置和大小,使搜索区域能够更加适应目标老人可能的运动轨迹,从而提高目标检测的准确性和效率。
S103,根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,并按尺度大小顺序对高斯图像进行金字塔层排列。
具体的,高斯图像中每个像素点的值为:其中,σ为尺度参数,(x,y)为像素点。
需要说明的是,高斯模糊可以帮助平滑图像并减少噪声的影响,提取出目标的整体特征,提高目标的可视性和轮廓的清晰度。
S104,对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像。
具体的,差分图像中每个像素点的值为:DoG(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y),其中,DoG(x,y,σ)为在坐标(x,y)处、尺度参数为σ的差分值,G(x,y,σ)为高斯图像值,I(x,y)为坐标(x,y)处的像素值,k为尺度因子。
需要说明的是,通过生成一组不同尺度的高斯图像,并计算相邻尺度的差分图像,可以突出目标区域的运动和变化(在差分图像中,像素值的变化可以反映出目标的运动幅度和方向),且由于目标老人在不同尺度下的大小和细节可能会有所变化,使用多尺度高斯模糊和差分图像计算可以实现尺度自适应的检测,不同尺度下的差分图像可以捕捉到不同尺度的目标特征,这样可以更好地适应目标老人在不同距离、角度和姿势下的变化,有助于捕捉目标老人的微妙动作和姿态变化,提高检测的灵敏度、准确性、鲁棒性和适应性。
S105,对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置。
具体的,像素极值点的插值偏移量为: 其中,(x,y)为像素极值点的坐标,σ为当前层的尺度参数,k为尺度因子,dx为x方向上的插值偏移量,dy为y方向上的插值偏移量,DoG x,y,σ)为在坐标(x,y)处、尺度参数为σ的高斯差分值。
需要说明的是,将像素极值点的插值偏移量与初始坐标(x,y)相加,即可得到像素极值点的精确位置,通过对像素极值点检测和精确定位,可以准确地确定目标在图像中的位置,像素极值点通常对应着目标区域的关键位置,例如关节点或显著特征点,通过检测和定位这些特征点,可以实现对目标位置的准确定位,抑制非目标区域的干扰,从而提高对目标老人检测的准确性,精确捕捉目标老人的形状和结构信息,以实现姿态和动作的精确分析,从而实现对摔倒的准确识别,因为摔倒通常伴随着异常的姿态和动作模式。
进一步,所述对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点的步骤包括:
对每层所述差分图像中的每个像素点,将当前像素点与其当前层的二十六个邻域像素点及其邻近两层的九个像素点的灰度值进行比较,以判断所述当前像素点的像素值是否为极大值或极小值;
若所述当前像素点的像素值为极大值或极小值,则判定所述当前像素点为像素极值点。
S106,将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,σ)=(Dxx*Dyy-Dxy2)*σ2,其中,L(x,y,σ)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,σ为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除。
需要说明的是,通过计算主曲率响应,可以增强关键点的特征响应,从而提高目标区域的辨别度和可靠性,主曲率响应是关键点的局部特征描述,可以帮助区分目标区域和背景或其他物体之间的区别,通过设定响应阈值,对关键点进行筛选,只有响应值高于阈值的关键点才会被保留,其他的点则被排除,从而减少误检,即减少将非目标区域误判为关键点的可能性,通过筛选得到的关键点,能够将目标老人的身体形状和结构描述的更准确,从而对摔倒的识别也更加准确可靠,关键点的筛选还可以减少需要处理的特征点数量,从而降低计算复杂性,提高算法的效率和实时性。
进一步,所述将精确定位后的所有所述像素极值点加入候选关键点列表的步骤后还包括:
以所述像素极值点为中心对每个所述像素极值点设置一局部区域,所述局部区域为正方形或圆形区域,且包含若干个像素点;
以所述像素极值点为中心在所述局部区域内提取一子区域,所述子区域为正方形或圆形区域,且包含在所述局部区域内;
对所述子区域内的像素方差进行计算以得到局部区域的对比度,计算公式为:
其中,I(x,y)为像素极值点的像素值,μ为子区域内的像素均值,N为子区域内的像素点数量;
判断所述像素极值点的局部区域的对比度是否小于对比度阈值,其中,所述对比度阈值的取值范围为[0.1,0.5];
若小于对比度阈值,则将对应的像素极值点从所述候选关键点列表中移除;
将所述候选关键点列表中的所有像素极值点定为关键点。
需要说明的是,提取子区域的目的是为了在关键点的周围更加精细的探测局部区域的变化,较小的子区域可以更好的捕捉图像中的细节和纹理信息,从而提供更准确的对比度估计,通过计算子区域内像素值的变化幅度,进而评估局部区域图像的对比度水平,这样可以过滤掉一些局部对比度较低的区域,以减少噪声,进一步提高关键点的质量。
S107,根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记。
S108,根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算。
S109,将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置。
S110,对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角。
需要说明的是,由于摔倒通常伴随着明显的运动异常,因此通过准确计算目标的运动特征,可以更好地区分正常的日常活动和摔倒事件,提高摔倒检测的准确性,且由于摔倒通常导致身体部位之间的异常姿态和关节角度,通过关节角度的计算,可以分析目标老人身体部位之间的相对位置和关系,提供更细致的姿态信息,进一步支持摔倒的识别和判定。
进一步,所述根据标记好的关键点的位置信息及时间间隔对目标老人各关键点的运动速度、加速度、运动方向和身体部位之间的相对位置及变化进行计算的步骤包括:
根据当前帧及前一帧图像中标记为头顶或眼睛的关键点的位置信息及当前帧与前一帧图像的时间间隔计算目标老人头部的运动速度、加速度及运动方向:
根据当前帧及前一帧图像中标记为胸部的关键点的位置信息及当前帧与前一帧图像的时间间隔计算目标老人躯干的运动速度、加速度及运动方向;
根据当前帧及前一帧图像中标记为指尖的关键点的位置信息及当前帧与前一帧图像的时间间隔计算目标老人手臂的运动速度、加速度及运动方向;
根据当前帧及前一帧图像中标记为脚后跟的关键点的位置信息及当前帧与前一帧图像的时间间隔计算目标老人腿部的运动速度、加速度及运动方向;
根据当前帧及前一帧图像中标记为肩关节、腕关节、肘关节、膝关节或踝关节的关键点的位置信息及当前帧与前一帧图像的时间间隔计算目标老人各对应关节的运动速度、加速度及运动方向;
计算公式为:
v2=√((x_2〖-x〗_1)^2+(y_2〖-y〗_1)^2)/t,
a=(v2-v1)/t,
α=tan^(-1)〖(y_2-y_1)/(x_2〖-x〗_1)〗,
其中,v2为当前帧图像中目标老人身体部位的运动速度,v1为前一帧图像中目标老人身体部位的运动速度,a为当前帧图像中目标老人身体部位的加速度,t为当前帧与前一帧图像的时间间隔,α为当前帧图像中目标老人身体部位的运动方向。
所述对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角步骤包括:
angle=cos^(-1)〖(A*B)/(|A|*|B|)〗,
其中,A、B分别为标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量的内积,|A|、|B|分别为标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量的模。
S111,将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
需要说明的是,可以通过以下步骤来构建摔倒识别模型:通过多体动力学模型对老人摔倒和非摔倒的动作及姿势进行模拟以生成摔倒和非摔倒场景的数据集,所述数据集包含大量且均衡的摔倒样本和非摔倒样本;对数据集中的每个样本提取关键特征,所述关键特征包括各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角;对数据集中的每个样本标注上摔倒或非摔倒的标签,所述标签表示为字母或数字;通过每个样本提取的关键特征及标注的标签输入机器学习算法训练得到摔倒识别模型。
本发明的老人摔倒监测方法,先对目标老人的轨迹状态进行实时更新,以实现对目标老人在整个活动区域内的持续准确追踪;再使用高斯模糊生成一组不同尺度的高斯图像,并计算相邻尺度的差分图像,这种多尺度处理方式可以便于提取目标区域的细节特征,并突出目标老人在图像中的运动和变化;然后通过对差分图像进行像素值比较,找到像素极值点,并使用插值计算精确位置,从而确定目标老人在图像中的关键位置,便于后续的特征计算和分析;接着计算像素极值点的主曲率响应值,并通过设定响应阈值进行关键点筛选,从而去除响应值较低、不稳定的边缘非关键点,以提高关键点的质量和可靠性,更好的确定目标老人身体部位的关键点;再基于关键点的位置信息和时间间隔,计算目标老人的运动速度、加速度和运动方向,通过计算关键点之间的相对位置和关节构成的夹角,可以更详细地描述目标老人的姿态和动作;最后将目标老人的运动特征(速度、加速度、运动方向等)和关节角度等信息输入已训练好的摔倒识别模型,以判断目标老人是否发生了摔倒,以得出可靠的摔倒识别结果。
实施例二
参考图2,实施例二提供一种老人摔倒监测系统,在目标老人的常活动区域布设摄像头,包括:
采集模块:用于通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像。
位置获取模块:用于在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态。
所述位置获取模块还用于:
对第一帧图像进行预处理,加载训练好的Faster R-CNN模型,将预处理后的第一帧图像输入Faster R-CNN模型并输出第一帧图像的行人检测结果,第一帧图像的行人检测结果包括第一帧图像中每个行人的边界框、类别置信度和类别标签,行人的位置表示为行人的边界框;
通过训练好的级联分类器对第一帧图像的每个行人的边界框进行人脸检测以得到第一帧图像的每个行人的人脸边界框;
根据所述目标老人的年龄和性别对所有行人的人脸进行初步筛选,再根据所述目标老人的一个或多个特定特征依次对初步筛选后的行人的人脸进行一次或多次筛选直至筛选出一张符合条件的人脸,并将符合条件的人脸标记为目标老人的人脸,将与符合条件的人脸对应的行人锁定为目标老人,所述特定特征包括独特的脸部特征、疤痕或面部表情;
将所述目标老人的人脸图像转换为灰度图像,并计算其灰度图像的梯度信息,将图像均匀划分为若干个小区域并计算每个小区域内的梯度直方图,将所有小区域内的梯度直方图连接起来以形成一个特征向量,定为第一帧图像中目标老人的人脸特征。
所述位置获取模块还用于:
根据行人的类别置信度从高至低对边界框进行排序;
创建一个列表,将置信度最高的边界框添加至所述列表中;
根据类别置信度排序,从类别置信度排序第二的边界框开始,依次遍历每个边界框,并对当前的边界框与所述列表中边界框的重叠区域进行计算,若重叠区域不超过预设面积比阈值,则将当前边界框添加至所述列表中,若重叠区域超过预设面积比阈值,则将当前边界框删除,直至遍历完所有行人的边界框,以得到目标行人检测结果。
所述位置获取模块还用于:
以前一帧图像中目标老人的位置为中心设置第一搜索区域,将所述第一搜索区域内的每个行人定为候选目标;
将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值;
判断是否存在相似度高于预设相似度阈值的候选目标;
若存在,则将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,并根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态;
若不存在,则根据前一帧图像中目标老人的位置计算前一帧图像中目标老人的运动方向和速度,并以前一帧图像中目标老人的位置为起始点,根据前一帧图像中目标老人的运动方向和速度设置第二搜索区域,
运动速度的计算公式为:
第二搜索区域的计算公式为:
第二搜索区域的左上角坐标及右下角坐标的计算公式为:
xtl=xc-d,ytl=yc-d,xbr=xc+d,ybr=yc+d,
其中,(xc,yc)为当前帧图像中目标老人的位置,(xp,yp)为前一帧图像中目标老人的位置,(xtl,ytl)为第二搜索区域的左上角坐标,(xbr,ybr)为第二搜索区域的右下角坐标,d为第二搜索区域的边长,第二搜索区域为正方形,t为当前帧与前一帧之间的时间间隔,v为前一帧图像中目标老人的运动速度,s为第二搜索区域的缩放因子;
将所述第二搜索区域内的每个行人定为候选目标,并将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值,将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态。
高斯模糊模块:用于根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,并按尺度大小顺序对高斯图像进行金字塔层排列。
其中,高斯图像中每个像素点的值为:其中,σ为尺度参数,(x,y)为像素点。
差分计算模块:用于对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像。
其中,差分图像中每个像素点的值为:DoG(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y),其中,DoG(x,y,σ)为在坐标(x,y)处、尺度参数为σ的差分值,G(x,y,σ)为高斯图像值,I(x,y)为坐标(x,y)处的像素值,k为尺度因子。
精确定位模块:用于对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置。
其中,像素极值点的插值偏移量为: 其中,(x,y)为像素极值点的坐标,σ为当前层的尺度参数,k为尺度因子,dx为x方向上的插值偏移量,dy为y方向上的插值偏移量,DoG x,y,σ)为在坐标(x,y)处、尺度参数为σ的高斯差分值。
所述精确定位模块还用于:
对每层所述差分图像中的每个像素点,将当前像素点与其当前层的二十六个邻域像素点及其邻近两层的九个像素点的灰度值进行比较,以判断所述当前像素点的像素值是否为极大值或极小值;
若所述当前像素点的像素值为极大值或极小值,则判定所述当前像素点为像素极值点。
关键点筛选模块:用于将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,σ)=(Dxx*Dyy-Dxy2)*σ2,其中,L(x,y,σ)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,σ为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除,并将所述候选关键点列表中的所有像素极值点定为关键点。
所述关键点筛选模块还用于:
以所述像素极值点为中心对每个所述像素极值点设置一局部区域,所述局部区域为正方形或圆形区域,且包含若干个像素点;
以所述像素极值点为中心在所述局部区域内提取一子区域,所述子区域为正方形或圆形区域,且包含在所述局部区域内;
对所述子区域内的像素方差进行计算以得到局部区域的对比度,计算公式为:
其中,I(x,y)为像素极值点的像素值,μ为子区域内的像素均值,N为子区域内的像素点数量;
判断所述像素极值点的局部区域的对比度是否小于对比度阈值,其中,所述对比度阈值的取值范围为[0.1,0.5];
若小于对比度阈值,则将对应的像素极值点从所述候选关键点列表中移除。
部位标记模块:用于根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记。
第一计算模块:用于根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算。
第二计算模块:用于将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置。
第三计算模块:用于对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角。
摔倒识别模块:用于将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种老人摔倒监测方法,其特征在于,在目标老人的常活动区域布设摄像头,步骤包括:
通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像;
在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,包括以下步骤:
对第一帧图像进行预处理,加载训练好的Faster R-CNN模型,将预处理后的第一帧图像输入Faster R-CNN模型并输出第一帧图像的行人检测结果,第一帧图像的行人检测结果包括第一帧图像中每个行人的边界框、类别置信度和类别标签,行人的位置表示为行人的边界框;
通过训练好的级联分类器对第一帧图像的每个行人的边界框进行人脸检测以得到第一帧图像的每个行人的人脸边界框;
根据所述目标老人的年龄和性别对所有行人的人脸进行初步筛选,再根据所述目标老人的一个或多个特定特征依次对初步筛选后的行人的人脸进行一次或多次筛选直至筛选出一张符合条件的人脸,并将符合条件的人脸标记为目标老人的人脸,将与符合条件的人脸对应的行人锁定为目标老人,所述特定特征包括独特的脸部特征、疤痕或面部表情;
将所述目标老人的人脸图像转换为灰度图像,并计算其灰度图像的梯度信息,将图像均匀划分为若干个小区域并计算每个小区域内的梯度直方图,将所有小区域内的梯度直方图连接起来以形成一个特征向量,定为第一帧图像中目标老人的人脸特征;
以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态;
根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,其中高斯图像中每个像素点的值为:G(x,y,)=/>*/>,其中,/>为尺度参数,(x,y)为像素点,并按尺度大小顺序对高斯图像进行金字塔层排列;
对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像,包括以下步骤:
差分图像中每个像素点的值为:DoG(x,y,)=(G(x,y,k/>)-G(x,y,/>))*I(x,y),其中,DoG(x,y,/>)为在坐标(x,y)处、尺度参数为/>的差分值,G(x,y,/>)为高斯图像值,I(x,y)为坐标(x,y)处的像素值,k为尺度因子;
对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置,包括以下步骤:
像素极值点的插值偏移量为:dx=,dy=,其中,(x,y)为像素极值点的坐标,/>为当前层的尺度参数,k为尺度因子,dx为x方向上的插值偏移量,dy为y方向上的插值偏移量,为在坐标(x,y)处、尺度参数为/>的高斯差分值;
将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,)=(Dxx*Dyy-Dxy2)*/> 2,其中,L(x,y,/>)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,/>为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除,并将所述候选关键点列表中的所有像素极值点定为关键点;
根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记;
根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算;
将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置;
对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角;
将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
2.根据权利要求1所述的老人摔倒监测方法,其特征在于,所述通过训练好的级联分类器对每个行人的边界框进行人脸检测以得到每个行人的人脸边界框的步骤前还包括:
根据行人的类别置信度从高至低对边界框进行排序;
创建一个列表,将置信度最高的边界框添加至所述列表中;
根据类别置信度排序,从类别置信度排序第二的边界框开始,依次遍历每个边界框,并对当前的边界框与所述列表中边界框的重叠区域进行计算,若重叠区域不超过预设面积比阈值,则将当前边界框添加至所述列表中,若重叠区域超过预设面积比阈值,则将当前边界框删除,直至遍历完所有行人的边界框,以得到目标行人检测结果。
3.根据权利要求1所述的老人摔倒监测方法,其特征在于,所述在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态的步骤包括:
以前一帧图像中目标老人的位置为中心设置第一搜索区域,将所述第一搜索区域内的每个行人定为候选目标;
将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值;
判断是否存在相似度高于预设相似度阈值的候选目标;
若存在,则将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,并根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态。
4.根据权利要求3所述的老人摔倒监测方法,其特征在于,所述判断是否存在相似度高于预设相似度阈值的候选目标的步骤后还包括:
若不存在,则根据前一帧图像中目标老人的位置计算前一帧图像中目标老人的运动方向和速度,并以前一帧图像中目标老人的位置为起始点,根据前一帧图像中目标老人的运动方向和速度设置第二搜索区域,
运动速度的计算公式为:
v=,
第二搜索区域的计算公式为:
d=v*t*s=*s ,
第二搜索区域的左上角坐标及右下角坐标的计算公式为:
xtl=xc-d,ytl=yc-d,xbr=xc+d,ybr=yc+d,
其中,(xc,yc)为当前帧图像中目标老人的位置,(xp,yp)为前一帧图像中目标老人的位置,(xtl,ytl)为第二搜索区域的左上角坐标,(xbr,ybr)为第二搜索区域的右下角坐标,d为第二搜索区域的边长,第二搜索区域为正方形,t为当前帧与前一帧之间的时间间隔,v为前一帧图像中目标老人的运动速度,s为第二搜索区域的缩放因子;
将所述第二搜索区域内的每个行人定为候选目标,并将前一帧图像中目标老人的人脸特征与每个所述候选目标进行匹配以计算其相似度值,将相似度值高于预设相似度阈值的候选目标的位置定为所述目标老人的当前位置,根据所述目标老人的当前位置信息更新所述目标老人的轨迹状态。
5.根据权利要求1所述的老人摔倒监测方法,其特征在于,所述对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点的步骤包括:
对每层所述差分图像中的每个像素点,将当前像素点与其当前层的二十六个邻域像素点及其邻近两层的九个像素点的灰度值进行比较,以判断所述当前像素点的像素值是否为极大值或极小值;
若所述当前像素点的像素值为极大值或极小值,则判定所述当前像素点为像素极值点。
6.根据权利要求1所述的老人摔倒监测方法,其特征在于,所述将精确定位后的所有所述像素极值点加入候选关键点列表的步骤后还包括:
以所述像素极值点为中心对每个所述像素极值点设置一局部区域,所述局部区域为正方形或圆形区域,且包含若干个像素点;
以所述像素极值点为中心在所述局部区域内提取一子区域,所述子区域为正方形或圆形区域,且包含在所述局部区域内;
对所述子区域内的像素方差进行计算以得到局部区域的对比度,计算公式为:
局部区域的对比度= ,
其中,I(x,y)为像素极值点的像素值,为子区域内的像素均值,N为子区域内的像素点数量;
判断所述像素极值点的局部区域的对比度是否小于对比度阈值,其中,所述对比度阈值的取值范围为[0.1,0.5];
若小于对比度阈值,则将对应的像素极值点从所述候选关键点列表中移除。
7.一种老人摔倒监测系统,其特征在于,在目标老人的常活动区域布设摄像头,包括:
采集模块:用于通过摄像头实时采集所述目标老人在常活动区域内的视频流,设为实时视频流,并将所述实时视频流分割成若干帧以获取每一帧图像;
位置获取模块:用于在第一帧图像中锁定目标老人并获取目标老人的位置和特征信息,对第一帧图像进行预处理,加载训练好的Faster R-CNN模型,将预处理后的第一帧图像输入Faster R-CNN模型并输出第一帧图像的行人检测结果,第一帧图像的行人检测结果包括第一帧图像中每个行人的边界框、类别置信度和类别标签,行人的位置表示为行人的边界框;
通过训练好的级联分类器对第一帧图像的每个行人的边界框进行人脸检测以得到第一帧图像的每个行人的人脸边界框;
根据所述目标老人的年龄和性别对所有行人的人脸进行初步筛选,再根据所述目标老人的一个或多个特定特征依次对初步筛选后的行人的人脸进行一次或多次筛选直至筛选出一张符合条件的人脸,并将符合条件的人脸标记为目标老人的人脸,将与符合条件的人脸对应的行人锁定为目标老人,所述特定特征包括独特的脸部特征、疤痕或面部表情;
将所述目标老人的人脸图像转换为灰度图像,并计算其灰度图像的梯度信息,将图像均匀划分为若干个小区域并计算每个小区域内的梯度直方图,将所有小区域内的梯度直方图连接起来以形成一个特征向量,定为第一帧图像中目标老人的人脸特征;
以第一帧图像中目标老人的位置和特征信息作为初始位置和初始特征信息,在后续的每一帧图像中,获取当前帧图像的当前位置信息并更新所述目标老人的轨迹状态;
高斯模糊模块:用于根据所述目标老人的当前位置提取所述目标老人在当前帧的图像区域,定为目标区域,对所述目标区域进行高斯模糊以生成一组不同尺度的高斯图像,其中高斯图像中每个像素点的值为:G(x,y,)=/>*/>,其中,/>为尺度参数,(x,y)为像素点,并按尺度大小顺序对高斯图像进行金字塔层排列;
差分计算模块:用于对每相邻尺度的两层所述高斯图像之间的差分进行计算以得到一组差分图像;差分图像中每个像素点的值为:DoG(x,y,)=(G(x,y,k/>)-G(x,y,/>))*I(x,y),其中,DoG(x,y,/>)为在坐标(x,y)处、尺度参数为/>的差分值,G(x,y,/>)为高斯图像值,I(x,y)为坐标(x,y)处的像素值,k为尺度因子;
精确定位模块:用于对每层所述差分图像中的每个像素点与其邻域像素点进行像素值比较以找到像素极值点,对所述像素极值点进行插值计算以对所述像素极值点进行精确定位并得到所述像素极值点的精确位置; 像素极值点的插值偏移量为:dx=,dy=/>,其中,(x,y)为像素极值点的坐标,/>为当前层的尺度参数,k为尺度因子,dx为x方向上的插值偏移量,dy为y方向上的插值偏移量,/>为在坐标(x,y)处、尺度参数为/>的高斯差分值;
关键点筛选模块:用于将精确定位后的所有所述像素极值点加入候选关键点列表,对每个像素极值点的主曲率响应进行计算以得到每个像素极值点的主曲率响应值,计算公式为:L(x,y,)=(Dxx*Dyy-Dxy2)*/> 2,其中,L(x,y,/>)为像素极值点的主曲率响应值,Dxx、Dyy、Dxy分别表示为图像在x和y方向上的二阶偏导数,/>为当前层的尺度参数,并判断所述像素极值点的主曲率响应值是否小于响应阈值,若小于响应阈值,则将对应的像素极值点从所述候选关键点列表中移除,并将所述候选关键点列表中的所有像素极值点定为关键点;
部位标记模块:用于根据关键点的位置、形状及标记好的身体解剖学图像对筛选到的关键点的身体部位属性进行标记;
第一计算模块:用于根据标记好的关键点的位置信息及时间间隔对目标老人身体各关键点的运动速度、加速度和运动方向进行计算;
第二计算模块:用于将一个关键点设置为基准点,并计算每个所述关键点与所述基准点之间的坐标差值以得到目标老人身体各关键点之间的相对位置;
第三计算模块:用于对每个标记为关节的关键点与其相邻的两个标记为关节的关键点之间的向量进行计算,并根据两个向量的内积及模计算夹角以得到目标老人各关节构成的夹角;
摔倒识别模块:用于将目标老人身体各关键点的运动速度、加速度、运动方向、相对位置及各相邻关节关键点之间的夹角输入训练好的摔倒识别模型以得到目标老人发生摔倒或非摔倒的识别结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310991993.2A CN117037272B (zh) | 2023-08-08 | 2023-08-08 | 一种老人摔倒监测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310991993.2A CN117037272B (zh) | 2023-08-08 | 2023-08-08 | 一种老人摔倒监测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117037272A CN117037272A (zh) | 2023-11-10 |
CN117037272B true CN117037272B (zh) | 2024-03-19 |
Family
ID=88644122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310991993.2A Active CN117037272B (zh) | 2023-08-08 | 2023-08-08 | 一种老人摔倒监测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117037272B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104821010A (zh) * | 2015-05-04 | 2015-08-05 | 清华大学深圳研究生院 | 基于双目视觉的人手三维信息实时提取方法及系统 |
CN109670396A (zh) * | 2018-11-06 | 2019-04-23 | 华南理工大学 | 一种室内老人跌倒检测方法 |
WO2019134327A1 (zh) * | 2018-01-03 | 2019-07-11 | 东北大学 | 一种基于边缘检测与sift的人脸表情识别特征提取方法 |
CN110097051A (zh) * | 2019-04-04 | 2019-08-06 | 平安科技(深圳)有限公司 | 图像分类方法、装置及计算机可读存储介质 |
CN110188599A (zh) * | 2019-04-12 | 2019-08-30 | 哈工大机器人义乌人工智能研究院 | 一种人体姿态行为智能分析识别方法 |
WO2019232894A1 (zh) * | 2018-06-05 | 2019-12-12 | 中国石油大学(华东) | 一种基于复杂场景下的人体关键点检测系统及方法 |
CN110991274A (zh) * | 2019-11-18 | 2020-04-10 | 杭州电子科技大学 | 一种基于混合高斯模型和神经网络的行人摔倒检测方法 |
CN112348032A (zh) * | 2019-08-09 | 2021-02-09 | 珠海市一微半导体有限公司 | 一种基于硬件电路的sift算法关键点检测方法 |
WO2021057810A1 (zh) * | 2019-09-29 | 2021-04-01 | 深圳数字生命研究院 | 数据处理、训练、识别方法、装置和存储介质 |
CN114792429A (zh) * | 2022-04-06 | 2022-07-26 | 南京信息工程大学 | 多视角摔倒检测方法、装置及存储介质 |
CN115731563A (zh) * | 2022-12-07 | 2023-03-03 | 新大陆数字技术股份有限公司 | 一种远距离监控人员倒地识别方法 |
CN116363753A (zh) * | 2023-03-12 | 2023-06-30 | 天翼云科技有限公司 | 一种基于运动历史图像的摔倒检测方法和装置、电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109145696B (zh) * | 2017-06-28 | 2021-04-09 | 安徽清新互联信息科技有限公司 | 一种基于深度学习的老人跌倒检测方法及系统 |
-
2023
- 2023-08-08 CN CN202310991993.2A patent/CN117037272B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104821010A (zh) * | 2015-05-04 | 2015-08-05 | 清华大学深圳研究生院 | 基于双目视觉的人手三维信息实时提取方法及系统 |
WO2019134327A1 (zh) * | 2018-01-03 | 2019-07-11 | 东北大学 | 一种基于边缘检测与sift的人脸表情识别特征提取方法 |
WO2019232894A1 (zh) * | 2018-06-05 | 2019-12-12 | 中国石油大学(华东) | 一种基于复杂场景下的人体关键点检测系统及方法 |
CN109670396A (zh) * | 2018-11-06 | 2019-04-23 | 华南理工大学 | 一种室内老人跌倒检测方法 |
CN110097051A (zh) * | 2019-04-04 | 2019-08-06 | 平安科技(深圳)有限公司 | 图像分类方法、装置及计算机可读存储介质 |
CN110188599A (zh) * | 2019-04-12 | 2019-08-30 | 哈工大机器人义乌人工智能研究院 | 一种人体姿态行为智能分析识别方法 |
CN112348032A (zh) * | 2019-08-09 | 2021-02-09 | 珠海市一微半导体有限公司 | 一种基于硬件电路的sift算法关键点检测方法 |
WO2021057810A1 (zh) * | 2019-09-29 | 2021-04-01 | 深圳数字生命研究院 | 数据处理、训练、识别方法、装置和存储介质 |
CN110991274A (zh) * | 2019-11-18 | 2020-04-10 | 杭州电子科技大学 | 一种基于混合高斯模型和神经网络的行人摔倒检测方法 |
CN114792429A (zh) * | 2022-04-06 | 2022-07-26 | 南京信息工程大学 | 多视角摔倒检测方法、装置及存储介质 |
CN115731563A (zh) * | 2022-12-07 | 2023-03-03 | 新大陆数字技术股份有限公司 | 一种远距离监控人员倒地识别方法 |
CN116363753A (zh) * | 2023-03-12 | 2023-06-30 | 天翼云科技有限公司 | 一种基于运动历史图像的摔倒检测方法和装置、电子设备 |
Non-Patent Citations (2)
Title |
---|
基于SIFT算法的图像特征点提取和匹配研究;王心醉等;南京医科大学学报(自然科学版);20130215;第33卷(第02期);全文 * |
基于显著性检测的图像匹配;刘超;北京信息科技大学学报(自然科学版);20160615;第31卷(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117037272A (zh) | 2023-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Vishnu et al. | Human fall detection in surveillance videos using fall motion vector modeling | |
CN108520226B (zh) | 一种基于躯体分解和显著性检测的行人重识别方法 | |
CN109558810B (zh) | 基于部位分割与融合目标人物识别方法 | |
CN108549846B (zh) | 一种结合运动特征和头肩结构的行人检测与统计方法 | |
US7957560B2 (en) | Unusual action detector and abnormal action detecting method | |
WO2013015528A1 (en) | Apparatus, method, and medium detecting object pose | |
CN114187665B (zh) | 一种基于人体骨架热图的多人步态识别方法 | |
CN106599785B (zh) | 人体3d特征身份信息库的建立方法及设备 | |
CN104200200A (zh) | 融合深度信息和灰度信息实现步态识别的系统及方法 | |
US20220366570A1 (en) | Object tracking device and object tracking method | |
CN109325408A (zh) | 一种手势判断方法及存储介质 | |
Sun et al. | Human recognition for following robots with a Kinect sensor | |
Hu et al. | Depth sensor based human detection for indoor surveillance | |
CN112541403A (zh) | 一种利用红外摄像头的室内人员跌倒检测方法 | |
CN117541994A (zh) | 一种密集多人场景下的异常行为检测模型及检测方法 | |
Zhang et al. | A coarse-to-fine leaf detection approach based on leaf skeleton identification and joint segmentation | |
CN113470073A (zh) | 一种基于深度学习的动物中心追踪方法 | |
CN107886060A (zh) | 基于视频的行人自动检测与跟踪方法 | |
CN117037272B (zh) | 一种老人摔倒监测方法及系统 | |
Thome et al. | Learning articulated appearance models for tracking humans: A spectral graph matching approach | |
CN111104857A (zh) | 一种基于步态能量图的身份识别方法及系统 | |
Hou et al. | Multicue-based crowd segmentation using appearance and motion | |
Rafi et al. | A parametric approach to gait signature extraction for human motion identification | |
CN110032976B (zh) | 一种基于掩膜处理新型步态能量图的获取及身份识别方法 | |
El Sayed et al. | A method for contactless palm ROI extraction |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |