该应用是一个基于 Quectel Pi H1 智能主控板,通过 USB 摄像头进行实时人体姿态识别,采用 YOLOv8-Pose 和多人跌倒分类器,自动检测用户是否发生跌倒事件的智能应用。
该项目通过调用摄像头实时采集画面,当检测到跌倒事件时会启动本地报警器并发送通知到手机,用户通过手机 App 查看跌倒图片,可作为老年人/患者安全监护、跌倒预警系统的参考示例。
该应用是一个基于 Quectel Pi H1 智能主控板,通过 USB 摄像头进行实时人体姿态识别,采用 YOLOv8-Pose 和多人跌倒分类器,自动检测用户是否发生跌倒事件的智能应用。
该项目通过调用摄像头实时采集画面,当检测到跌倒事件时会启动本地报警器并发送通知到手机,用户通过手机 App 查看跌倒图片,可作为老年人/患者安全监护、跌倒预警系统的参考示例。

| 配件名称 | 数量 | 规格参数 |
|---|---|---|
| Quectel Pi H1 智能主控板 | 1块 | Quectel Pi H1智能主控板 |
| USB 摄像头 | 1个 | 推荐分辨率:1280×720或更高;输出格式:MJPG/YUYV |
| USB-C 电源线充电器 | 1个 | 27W USB Type-C接口充电器 1.2米线长中规电源PD电源 适用于树莓派5代 |
| USB-C DP 显示线/HDMI 线 | 1根 | 规格:DP 1.4;线长:1m;接口:USB-C(公头)- USB-C(公头) 规格:HDMI 2.0;线长:1m;接口:HDMI-A(公头)-HDMI-D(公头) |
| CPU 散热风扇(可选) | 1个 | 树莓派5代官方原装散热器带导热贴 |
| 显示屏 | 1个 | 24英寸HDMI显示器 |
| USB可编程警报灯(可选) | 1个 | 通过串口(/dev/ttyUSB0)控制的LED警报灯 |

Quectel Pi H1 智能主控板出厂默认搭载 Debian 13 系统镜像,因此无需再次烧录镜像,仅需按照如下步骤操作即可。
将 HDMI 线一端接入智能主控板的 HDMI 接口,另一端接入显示器的 HDMI 接口。

将 USB 键盘、鼠标接入智能主控板的两个 USB-A 接口上,若用无线输入设备,将接收器插入 USB 口即可。

将网线一端接入智能主控板的千兆网口,另一端接入路由器的网口(确保路由器已联网)。

使用 USB 线将警报灯与智能主控板的空闲 USB 接口连接(可根据购买的警报灯的文档操作)。
将 USB-A 电源线的 USB-A 端接入电源适配器,USB-C 端接入智能主控板的电源口(通常标注 POWER IN )。

确认有网络连接后,打开终端输入命令:
上述命令将更新软件源并安装项目运行所需的一些库,具体包括:
依赖包说明:
跌倒检测应用需要预加载以下模型文件,请放置在 model/ 目录下:
这些模型文件可以从以下方式获取:
完成模型准备后,运行主程序:
程序启动后将显示图形界面,提供以下功能:

| 界面区域 | 功能说明 |
|---|---|
| 摄像头预览区域 | 实时显示摄像头采集的画面,标注检测到的人体和跌倒状态 |
| 日志输出区域 | 显示应用运行过程中的实时日志和检测信息 |
| 跌倒警报提示 | 在顶部显示跌倒检测结果,自动触发警报灯并保存报警图片 |
| 相机选择 | 支持多个 USB 摄像头,可自动检测并选择可用摄像头 |
右侧区域可输出应用运行过程中的日志信息,包括:
程序使用以下参数进行跌倒检测(可根据实际需求调整):
| 参数 | 说明 | 默认值 |
|---|---|---|
| MIN_CONFIDENCE | 关键点置信度阈值 | 0.4 |
| MIN_KEYPOINTS | 有效关键点最少数量 | 10 |
| FALL_BODY_ANGLE_THRESHOLD | 身体倾角阈值 | 55° |
| FALL_HEIGHT_RATIO_THRESHOLD | 身体高宽比阈值 | 1.2 |
| FALL_MIN_CONFIDENCE | 分类器置信度阈值 | 0.75 |
| FALL_CONFIRM_FRAMES | 跌倒确认帧数 | 3 |
| DETECT_INTERVAL | 检测间隔(秒) | 0.15 |
应用使用 YOLOv8-Pose 模型检测人体17个关键点:
从关键点提取以下特征用于分类:
应用使用多种方法判断是否发生跌倒:
判断标准:
当检测到跌倒时,应用会:
picture/ 目录保存包含时间戳的 JPEG 图片http://SERVER_IP:8000/upload_fall (可自行替换服务器地址和上传接口)