云计算百科
云计算领域专业知识百科平台

基于多信号融合与时序状态机的实时跌倒检测系统:融合YOLO姿态估计与双层目标跟踪的端到端解决方案

摘要:针对老年人跌倒监测和健康护理场景中的实时检测需求,本文设计并实现了一个基于多信号融合与时序状态机的跌倒检测系统。系统采用YOLO姿态估计模型进行人体关键点检测,通过多信号融合算法综合分析身体姿态、运动速度和形态特征,结合时序状态机实现准确的跌倒判定,并利用双层目标跟踪策略保证人员身份的稳定性。

项目概览

项目简介

系统主要包括姿态检测、活动识别、跌倒检测、目标跟踪和可视化交互五个模块。姿态检测模块基于YOLO26-Pose提取人体17个关键点及相关几何特征;活动识别模块根据关键点位置关系识别站立、坐下、行走和躺卧等姿态;跌倒检测模块融合躯干角度、宽高比、下降速度、角速度、头部下降速度和身高坍塌比率六类信号,并结合时序状态机完成跌倒判定,以降低误报;目标跟踪模块采用BoT-SORT与IoU后备跟踪相结合的双层策略,提高人员ID稳定性;可视化与交互模块则实现视频预览、参数配置、运行状态显示和事件记录,形成完整的实时跌倒检测流程。

系统在多种场景(居家环境、养老院)进行了测试验证。测试结果表明,系统在普通计算机(Intel i5 CPU + NVIDIA GTX 1060 GPU)上可达到实时处理速度(25 FPS @ 640×480分辨率),跌倒检测准确率达到85%以上,误报率低于20%,响应延迟小于1秒。系统生成的事件日志(JSON/CSV格式)便于后续分析和审计。该系统具有良好的实用性和可扩展性,可应用于养老院监护、居家看护、康复训练等场景,为老年人安全监测提供了有效的技术手段。

系统架构

本系统采用模块化分层架构设计,从底层到顶层依次为:数据输入层、姿态检测层、活动识别层、跌倒检测层、目标跟踪层和可视化交互层。数据输入层负责视频流的读取与预处理;姿态检测层基于YOLO26-Pose模型提取人体17个关键点及边界框信息;活动识别层通过几何特征分析将人体姿态分类为站立、坐下、行走、躺卧等基本状态;跌倒检测层采用六信号融合评分机制计算跌倒置信度,并通过五状态时序状态机进行跌倒事件确认;目标跟踪层实现双层跟踪策略,保证人员身份的连续性和稳定性;可视化交互层提供图形用户界面,支持实时监控、参数配置和事件记录,形成完整的端到端检测流程。

图1 系统架构图

技术创新

创新点1:六信号融合的跌倒评分机制

提出了一种综合多维度信息的跌倒评分算法,融合躯干角度(权重0.25)、边界框宽高比(0.10)、垂直下降速度(0.15)、躯干角速度(0.20)、头部下降速度(0.10)和身高坍塌比率(0.20)六个信号,通过加权求和计算连续的跌倒置信度分数。该方法克服了单一特征在不同摄像机角度下的局限性,特别是身高坍塌信号能够有效捕捉沿深度轴跌倒时传统2D几何特征失效的情况,显著提高了检测鲁棒性。

创新点2:五状态时序状态机确认方法

设计了NORMAL→POSSIBLE_FALL→FALLEN→RECOVERING→NORMAL的五状态时序状态机模型,配合可调阈值(进入阈值0.40、维持阈值0.30、恢复阈值0.22)和时间持续性检查(默认0.8秒),实现跌倒事件的时序确认。该方法有效过滤了单帧检测抖动、快速蹲起动作和正常坐姿等干扰场景,相比传统单帧判定方法将误报率降低80%以上,同时引入泄漏桶衰减机制使状态转换更加平滑自然。

创新点3:双层自适应目标跟踪策略

提出了原生BoT-SORT跟踪器与IoU后备跟踪器相结合的双层跟踪架构。当检测到NMS-free模型产生的重复边界框时,通过同帧IoU抑制(阈值0.6)进行去重;针对低FPS视频场景,实现了基于空间邻近度的跨帧重链接机制(最大时间间隔3.0秒,最大空间距离2倍身体对角线),确保即使在1 FPS的极低帧率下也能保持人员ID的稳定性,解决了低质量视频源的跟踪难题。

创新点4:遮挡鲁棒性处理机制

针对跌倒人员被遮挡或暂时离开视野的问题,设计了动态阈值调整和状态保持策略。当已标记为跌倒状态的人员消失时,系统自动降低检测置信度阈值(从0.4降至0.15)尝试重新获取,并在grace period(1.5秒)内维持跌倒状态不变。如超过grace period仍未重新检测到,系统生成”SUSPECTED_FALLEN_OCCLUDED”事件并记录到日志,有效避免了因短暂遮挡导致的漏报问题。

创新点5:多姿态时序平滑识别方法

基于几何特征(躯干角度、膝盖弯曲角度、边界框宽高比)和运动特征(速度、腿部分离度)实现了STANDING、SITTING、WALKING、CROUCHING、LYING五种姿态的精确识别。采用滑动窗口(默认30帧)和多数投票机制进行时序平滑,要求最少连续帧数(0.3×FPS,最少3帧)确认后才输出状态转换,有效消除了检测抖动,使状态转换更加稳定可靠,为跌倒检测提供了准确的前置判断。

快速开始

安装依赖后运行python main.py启动图形界面,选择模型文件(weights/yolo26s-pose.pt)和输入视频(data/input/),点击”开始处理”即可进行实时跌倒检测。

环境要求

系统需要Python 3.10及以上版本,安装PyQt5、OpenCV、PyTorch、Ultralytics等依赖包,支持CPU和GPU两种运行模式。

运行展示

图2 系统主界面

图3 从坐姿到确认跌倒

图4 从行走到确认跌倒

图5 从行走到确认跌倒

图6 从坐姿到确认跌倒

项目资源

配套文件

包括完整的项目源代码、演示视频、运行截图,开箱即用。

项目信息

作者信息

作者:Bob (张家梁)
项目编号:AI-46-P
原创声明:本项目为原创作品

赞(0)
未经允许不得转载:网硕互联帮助中心 » 基于多信号融合与时序状态机的实时跌倒检测系统:融合YOLO姿态估计与双层目标跟踪的端到端解决方案
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!