孙颖,张吟龙,王鑫,曾子铭
1.中国医科大学附属第一医院重症医学科,辽宁沈阳110001;2.中国科学院沈阳自动化研究所,辽宁沈阳110016;3.沈阳建筑大学信息与控制工程学院,辽宁沈阳110168;4.深圳职业技术学院汽车与交通学院,广东深圳518055
近年来国内正面临着人口老龄化的问题,预计到2026年,国内至少35%的人群将会是老年人群[1]。随着年龄的增长,老年人身体机能会出现不同程度的退化,意外跌倒不可避免。出于安全性考虑,需要在院内重要地点及时监控患者(尤其是老年患者)是否有意外跌倒的情况出现,特别是在急诊、重症监护室的病床、走廊等场合,患者很大程度上失去了独立自理能力,意外跌倒的患者如果未能及时发现,不仅会影响医院的正常运转,还会延误患者救治时间[2]。而现有的医护资源难以满足大范围意外跌倒检测的需求,这不仅给医护人员造成巨大的工作压力,也给医院患者造成了潜在的安全隐患[3]。
院内现有的跌倒检测方法按照辅助工具,可以分为两类,一类是可接触式跌倒检测,一类是视频监控跌倒检测。可接触式跌倒检测采用集成有加速度计、陀螺仪和压力传感器的智能手机或智能拐杖来完成跌倒检测的功能[4],此类方法虽然携带方便,但检测精度低、误报率高[5];相比而言,采用视频监控的方法成本低,而且能够快速、准确地检测出跌倒情况的出现。在协助医护人员及时发现突发情况的同时,也可从某种程度上缓解医护人员短缺和工作强度大的现状,更适合于医院内监控区域跌倒检测的需求[6]。现有的视频监控跌倒检测方法多数采用深度学习策略,即利用深度神经网络模型,检测并跟踪图像中出现的患者[7],提取图像中患者主要关节点的位置,建立人体骨架模型,最后根据图像中患者边框长宽比、患者躯干和腿部与地面夹角作为判别性特征,进而得到是否跌倒的检测结果[8]。鉴于此,本文采用视频监控跌倒检测的方法,以医院待就诊的患者,患有中风、帕金森、狂躁症等患者为研究对象[9-10]。在医院的病房、走廊、休息活动区等重点区域布设视频监控设备,来监控是否有患者出现意外跌倒情况,使病人的意外跌倒情况能及时被医护人员发现,避免延误病情[11]。
本方法以Openpose人体姿态估计方法[12]为基础,对患者的关节点位置进行检测及完成人体骨架信息的提取,其整体检测流程如图1所示。首先将原始图像输入到VGG卷积神经网络结构中处理[13],生成特征图集,每幅图像大小为h×w。然后,经过分支1来预测关节点置信度,关节点的置信度公式如下所示:
同时经过分支2 来计算各相邻关节点间的亲和度向量场,亲和度向量场由积分公式描述如下:
式中,ξ1、ξ2代表相邻关键点代表肢体的长 度如果点Q在肢体上,其中为单位向量,否则,kb(η(λ))=0。最后,通过1×1、3×3、3×1、7 × 7、7 × 1 大小的卷积核来提取种类丰富、形式多样的关节特征,并将上一阶段的输出作为下一阶段的输入,经过多阶段层层迭代训练以完成人体骨架的正确连接。
图1中最终输出图像得到人体的15个关节点,包括鼻子、脖子、左右肩膀、左右肘、左右手腕、重心、左右胯、左右膝盖、左右脚踝,各关节点的编号如表1所示。
表1 各关节点编号及身体部位对应表Table 1 Body parts and the corresponding joint point numbers
图1 基于Openpose的人体骨架和关键点检测模型Figure 1 Openpose-based model for detecting human skeleton and key points
根据上述模型提取到的人体关节点,本文设计了跌倒检测的判别性特征,具体包括人体边框的长宽比ratio、躯干与X轴夹角θ1、右腿与X轴夹角θ2、左腿与X轴夹角θ3,跌倒检测的判别性特征示意图如图2 所示。图2 中检测到的人体边框X轴方向和Y轴方向的长度分别为Δx和Δy,通过如下公式计算人体边框长宽比例,其反映了患者身体形态的变化,故可作为跌倒的一个重要判别特征:
图2 人体跌倒检测判别性特征示意图Figure 2 Schematic diagram of the discriminative features for human fall detection
同时,图2 中定义左上角为坐标原点,则本算法涉及的各关节点坐标可分别表示为:脖子重心(xc,yc)、右胯(xrh,yrh)、左胯(xlh,ylh)、右膝盖(xrk,yrk)、左膝盖则图2 中编号14 和编号1 连线代表的躯干与X轴方向的夹角θ1、编号9 和编号8 连线代表的右腿与X轴方向夹角θ2、编号12 和编号11 连线代表的左腿与X轴方向的夹角θ3可分别用以下公式计算得到:
式中,arctan(·)表示三角函数的反正切运算,‖·‖表示绝对值运算。因为患者在跌倒过程中身体躯干的倾斜角度θ1、θ2、θ3会由于物理属性的限制发生规律性变化,故可作为跌倒的另一个判别特征。如果判别性特征{ratio,θ1,θ2,θ3}满足如下条件,则可判定患者处于跌倒状态。
式中,τ1、τ2为身体躯干倾角范围的阈值,τr为人体标定框长宽比的阈值。
本工作采集了2019年和2020年在中国医科大学附属第一医院监护室内病床及走廊附近布设的4个监控摄像头的监控视频数据,提取了患者出现跌倒的视频片段(共113 组,每组时长2 min)作为跌倒样本,意外跌倒的患者包括中风患者(39 例)、帕金森患者(28 例)、躁狂症患者(27 例)、术后麻醉中患者(19 例)。其中出现意外跌倒的患者年龄>70 岁为44例,60~70 岁为38 例,40~60 岁为27 例,30~40 岁为4例。此外,本文在监控摄像头数据中提取患者正常生活状态的视频片段(共87 组,每组时长2 min),其中包括直立行走状态(21例),弯腰行走状态(22例),下蹲状态(22 例),坐立状态(22 例),将200 组视频片段作为自建数据集,并按照10:1 比例随机分类为训练集和测试集。本文的研究对象均知情同意。
训练过程中发现,随着倾角阈值τ1、τ2的不断变化,所得结果的准确率也不断变化,如表2 所示。当τ1= 74°、τ2= 106°时,算法准确率达到了99%;当τ1= 72°、τ2= 108°时,算法准确率下降到96%,此后随着角度减小,准确率逐渐降低。因此,本文选取倾角阈值为τ1= 74°、τ2= 106°。同时,从表3 中可以看出阈值由0.8 提高到1.4 的过程中,准确率最高为96%,出现在长宽比例阈值为1.2处,故选取人体标定框长宽比例阈值τr= 1.2。
表2 躯干倾角阈值选定Table 2 Selected trunk inclination thresholds
表3 人体标定框长宽比阈值选定Table 3 Selected threshold values for length-width ratio of human calibration frame
由于跌倒问题为二元分类问题,最终结果为跌倒或非跌倒,故本文引入如下4个通用评价指标来更好地评估实验结果,同时便于与其他方法的实验结果作对比。评价指标分别是灵敏度、特异度、准确度、错误率[14]。为了准确评估本算法的优势,本文选取2种基于卷积神经网络的同类工作进行对比实验。各方法在本文数据集上的实验结果如表4 所示。从表4 中可以看出本文方法的准确率为96%,分别超过文献[15]和文献[16]文7%、6%,这是因为文献[15]仅以人体部分关节点的高度变化作为判别特征,无法对下蹲、弯腰等动作做出有效判别导致精度较低。文献[16]以肩部中心、臀部中心、两脚踝中心的连线与地面的夹角作为判别特征,但该方法无法有效识别医院患者做的一些非跌倒康复动作,易出现误判。本方法充分考虑了患者在跌倒时身体所具有的物理属性,同时将判别特征由原来的单一维度信息(位置),提升到身体躯干所带有的二维信息(位置、方向),使判别特征具有更好的泛化性,提高方法的准确度。在灵敏度和特异度指标方面,本方法的实验结果分别为97.5%和95.0%,表明本文方法具有准确识别跌倒和未跌倒事件的能力,同时错误率仅为4%,足以达到医院对意外跌倒检测的要求。
表4 本文方法与其他方法性能比较(%)Table 4 Performance comparison between the proposed method and other methods(%)
意外跌倒会对患者身心健康产生伤害,如跌倒后不能被及时发现,会造成更多二次伤害,甚至危及生命[17-19]。如重症室内的患者,需全天24 h监测其行为信息。若稍有疏忽可能会使患者遭受更严重的伤害,这对于医护人员来说也是一种考验[20-21]。本方法能通过提取多个判别特征来准确地分析患者是否发生跌倒,并发出警报,且算法在处理监控视频数据时的运行速度达到25帧/s,满足医院对意外跌倒检测的实时性、准确性的要求,能有效缓解医护人员的工作负担。此外,本文方法应用场景多样具有很强的泛化性,图3为布置在医院不同位置的监控摄像头实时画面。
图3a 场景为患者中风发作,昏倒在医院走廊,可以看出画面中显示出患者跌倒字样,此时患者躯干的倾斜角度分别为θ1= 28°、θ2= 30°、θ3= 32°,并在画面右上角标出,由判别特征可知满足跌倒状态,算法做出正确判断结果并发出警报。图3b场景为在医院病房中一名帕金森综合征患者不慎跌落病床,本文视觉监控跌倒检测系统及时、准确地发现患者跌倒异常行为并发出警报,医护人员立即到达现场进行紧急救援,为防止发生生命危险赢得了宝贵时间[22-23]。图3c场景为患者处于术后麻醉状态,因意识没有完全恢复,导致在走动过程中跌倒,出现晕厥现象。本系统通过将θ1= 8°、θ2= 10°、θ3= 3°与倾角阈值对比,最终判断此人处于跌倒状态,并立即发出警报,有效减轻了医护人员对术后患者的行为监测工作压力。图3d场景为狂躁症患者病发失控导致跌倒发生,从图中可以看出患者处于倒立状态,头部在下,腿部躯干在上,且场景中包含很多杂物,这无疑会影响检测结果的准确性。但本算法依然能计算出此时患者的躯干倾角分别为θ1=56°、θ2=19°、θ3=69°,并标注在画面右上角,此时系统判断患者处于跌倒状态,随即发出警报。该实例表明本算法可在复杂场景中准确识别患者的跌倒动作。
图3 不同病患跌倒及救助示例Figure 3 Examples of patient falls and rescues
本文提出一种面向医疗护理的视觉监控医院患者跌倒检测方法,该方法能够检测患者的15 个关节点和对应的骨架,并通过提取的人体边框长宽比、躯干与地面夹角、腿部与地面夹角作为判别性特征,来实时检测患者是否出现跌倒情况并发出警报。本方法在自建数据集上的检测准确率达到96%,且其他方面性能均优于传统方法,验证本方法的准确性和有效性。对典型的跌倒实例进行实验结果分析可知,本方法在复杂多样的医院环境下仍具有较好的鲁棒性、准确性,对不同类型患者的跌倒情况均能做出准确的判别,不仅能缓解医护人员工作压力,同时能有效实时地对患者的健康与安全状况进行监测,对患者生命安全保障具有重要意义。
为更好地辅助医生进行医疗护理工作,未来研究将从以下几方面进行:(1)患者身体躯干被遮挡的情况下实现跌倒检测;(2)改进算法以实现对医院患者抽搐、休克等其他异常行为的检测;(3)对患者的行为信息进行记录与评估,通过多数据比对确定患者术后康复程度。