跌倒检测

摄像头看到有人跌倒就报警。

端侧跌倒检测——姿态估计、逐人时序状态机、一条 MQTT 事件,全部在本地完成。可以用一体化摄像头,也可以把你现有的 RTSP 摄像头接到 Jetson、瑞芯微 NPU 或 Hailo-8 主机上。

中级30min视觉与视频智能源码

reComputer J30 / J40 上确认的一次跌倒——骨架、跟踪状态和证据计数来自实时 MQTT 消息

从正常到跌倒的状态跃迁,画面为 reCamera Pro App Center 预览页

机位选择——2-3 m 的侧向或斜角机位可用;垂直俯拍、远景和被遮挡的机位不可用

告警面板站点总览——房间、摄像头与识别区域,24 小时按类型分色的告警趋势,每个房间一张卡片带自己的画面缩略图与未处置数。数据为本地回放,不是现场实测

房间详情——摄像头在线状态、实时画面开关,告警列表每行都有确认、驳回与标记已处置

在实时画面上配置识别区域——矩形画在 4:3 画面上,两侧黑边留在框外,因为坐标按画面而不是按容器映射

告警状态——取证窗口、人工确认窗口、随后通知,超过期限则升级。默认窗口为 5 s、60 s 与 5 s 通知期限

可复用现场模板

室内固定机位、人常常独处、摔倒后几分钟内必须有人知道的地方。

养老院与居家照护

养老院与居家照护

老人卧室、卫生间门口、走廊。摔倒后不用等下一次查房。

康复中心与病区走廊

康复中心与病区走廊

康复训练区、夜间病区走廊。无人值守时段补一双眼睛。

独居住宅

独居住宅

自家客厅、浴室门外。一个跌倒事件接进 Home Assistant,用来开灯、推送或发起呼叫。

不适用:垂直俯拍、长走廊远景、家具严重遮挡。启动时人已经躺着的,只报姿态,不产生事件。

如何实现

摄像头采集画面,检测主机完成判定,告警送至既有接收系统;需要值班界面时增配告警面板主机。

跌倒检测的设备构成:IP 摄像头把 RTSP 交给一台 AI 主机,reCamera 2002 / reCamera Pro 不经主机直接发 MQTT 事件,两路都以 MQTT 汇到告警面板主机,面板对外给出 HTTP 网页与 Webhook / MQTT 告警

要跑起来只需要三样东西:出画面的摄像头、跑检测的主机、接事件的系统;要值班界面就再加一台告警面板主机(可以和检测主机同机,用 reCamera 时是一台小盒子)。摄像头和主机都在现场,视频不出设备;过网络的只有几百字节的一条 JSON。

摄像头

两条路,走哪条通常已经由墙上装着什么决定了:

  • 已经有 IP 摄像头:把检测器指向 RTSP 流即可。摄像头那边一个字不用改,一台主机可以同时接多路。
  • 没有摄像头:reCamera 2002 与 reCamera Pro 把摄像头和加速器做在一台里,通电即工作,不需要另配主机。代价是检测器会独占这个摄像头——装上后 Node-RED 和该摄像头上的其他视觉应用会停。

机位比硬件更能决定准确率。 固定的室内画面,2–3 m,侧向或斜角,肩部和髋部可见。跌倒过程必须发生在画面内:启动时人已经躺着的话,它报告姿态但不产生事件。垂直俯拍、长走廊远景、家具严重遮挡,实测都会明显变差。

实现什么效果

装上之后,值守护理员在浏览器里看到和操作的告警面板。

一屏看清所有房间

  • 每间房一张卡:最新画面 + 状态色
  • 断流房间变黑块,未处置数标在卡上
  • 告警趋势按类型分色,可切 24h / 7 天

告警逐条处置

  • 告警表列出时间、类型、区域与状态
  • 待确认可确认、驳回或标记已处置
  • 确认后自动记录处置人

在画面上拖出识别区域

  • 拖拽画框设区域,无需手填坐标
  • 每个区域可单独设无人/静止超时
  • 画面仅本机显示,通知不带图片

配置有版本,改冲突会拦下来

  • 保存后版本号自动递增,变更历史可查
  • 版本冲突时弹窗提示,不会静默覆盖
  • 可选择取消或重新载入最新配置
实测数据

公开数据集上的工程基准,不是医疗或人身安全认证。

现场能得到什么典型值设备
跌倒到告警1.4 秒全平台一致
跌倒召回,冻结配置95.8%留出集 27 段
日常动作不误报77.8%同一留出集
一台主机同时接几路16 路reComputer R2000 系列(R2035-12,Hailo-8)
接入告警面板后,跌倒到告警送达P50 2.83 秒reComputer R2000 系列(R2035-12,Hailo-8),确认窗口调短

路数随主机档位变化,reCamera 与 RK 系列各 1 路、Jetson J30 / J40 为 7 / 8 路,按 15 FPS 输入折算,是自行压测的起点而非标称能力。五个套餐的准确率基本一致,所以选硬件看路数,不看准确率。

换到含远景与遮挡的外部数据集,召回降到 52.9%–58.8%——制约因素是姿态模型的人体检出率,不是跌倒判定。

面板那一行是整链——摄像头到检测器到面板再到 webhook,取证窗口与自动确认窗口各调到 1 秒。用出厂默认值(5 秒 + 60 秒)时同一条链路要一分钟出头,这是确认机制本身。

能拿到什么数据

部署完就靠这几个主题接数据。

主题 / 端口内容retained
<设备名>/fall-detection/results每帧一条 JSON:state、fall_detected、fall_event、event_id、person_count、fallen_count,以及 persons[] 里的 track_id / state / bbox否
<设备名>/fall-detection/statusonline / offline,通过遗嘱消息发布是
homeassistant/自动发现配置:跌倒传感器、状态、事件编号、有人存在是
RTSP 8554 /live0实时视频,供预览和 NVR(reCamera 套餐)—

<设备名> 部署时自己填(reCamera 套餐默认 recamera,reComputer 套餐默认 recomputer),只是主题的第一段,可按房间或楼层命名;多路时流编号拼在主题后面,也写在 payload 里。fall_event 只在状态跃迁那一刻置位一次,自动化不会在人躺着的整段时间里反复触发。

移植到你的业务系统

这套设计的可复用单元不是「跌倒」,是「姿态估计 → 逐人跟踪 → 时序状态机 → MQTT 事件」这条链路。链路上只有倒数第二段跟这个具体事件绑定——定义「什么样子算跌倒」的那组特征与阈值。其余部分——机位规范、四套加速器运行时、模型交付路径、主题结构、Home Assistant 自动发现、现场调试预览——原样沿用。

层移植时你要做的
机位规范与构图要求直接复用
姿态估计与四套运行时(NPU / TensorRT / RKNN / Hailo)直接复用
逐人跟踪直接复用
MQTT 主题结构、Home Assistant 自动发现、预览工具直接复用
状态机里的特征与阈值按新事件重写
时序权重与留出测试集重新采集与训练,并按同样的按人划分方式切分

形态相同的事件——由骨架的时间变化定义、而不是由目标类别定义——都落在这条链路的适用范围内:离床、久卧不动、攀爬、蹲伏到地面、跌倒后长时间未起身。

不适用的形态

  • 精细的手部动作——判断某个手上动作是否合规。17 个关键点分辨不到这个层级,需要换模型类别,不是换阈值。
  • 远景与严重遮挡——外部远景数据集上实测召回掉到 52.9%–58.8%。失效发生在姿态模型这一层,调状态机不改变这个数字。
  • 需要用「没报警」证明「没出事」的场合——医疗或人身安全合规。本设计没有认证,也不对漏检做任何保证。

如何部署

说说你的现场情况,硬件由我们来定;再接上数据、照步骤装。

现有摄像头

现在有摄像头吗?

或者自己比一遍:各配置参数对照部署指南 · 30min →
套餐用途设备数量
reCamera 2002AI 摄像头reCamera 20021
告警面板主机(可选)reComputer R1000 系列 / 已有的 Docker 主机(二选一)1
reCamera Pro摄像头reCamera Pro1
告警面板主机(可选)reComputer R1000 系列 / 已有的 Docker 主机(二选一)1
IP 摄像头 + reComputer J30 / J40检测主机reComputer J30 系列(Jetson Orin Nano) / reComputer J40 系列(Jetson Orin NX)(二选一)1
IP 摄像头IP 摄像头1
IP 摄像头 + reComputer RK3576 / RK3588检测主机reComputer RK3588 系列 / reComputer RK3576 系列(二选一)1
IP 摄像头IP 摄像头1
IP 摄像头 + reComputer R2000(Hailo)检测主机reComputer Industrial R20 系列1
IP 摄像头IP 摄像头1
套餐视频来源检测主机当前下发的模型路数备注
reCamera 2002自带摄像头同一台设备YOLO11n-Pose INT81自带本地 broker 与 RTSP 8554;安装会把摄像头从 Node-RED 和其他视觉应用手里接管过去
reCamera Pro自带摄像头同一台设备YOLO11n-Pose INT81新一代一体机;检测器随设备应用中心分发,本套餐负责配置并启用
IP 摄像头 + reComputer J30 / J40自备 RTSPJ30(Orin Nano)/ J40(Orin NX)YOLO11s / YOLO11m FP16起步 4 路(Orin Nano + YOLO11s)或 3 路(Orin NX + YOLO11m)首次部署要在设备上构建 TensorRT 引擎,10–20 分钟;需 10 GB 空闲磁盘
IP 摄像头 + reComputer RK自备 RTSPRK3576 / RK3588YOLO11n-Pose FP161需要宿主的 librknnrt.so;.rknn 分板卡,部署时选错目标模型加载不了
IP 摄像头 + reComputer R2000 系列(R2035-12,Hailo-8)自备 RTSPreComputer R2000 series + Hailo-8YOLOv8s-Pose INT82ABI 锁定 HailoRT 4.21;加速器不能被其他程序占用

五个套餐端到端实测过的都是单路。上表的路数是把下面的吞吐表按解码、跟踪和 MQTT 的开销打折后的值,应作为自行压测的起点,而非标称能力。

难度定级 intermediate;reCamera 从零到跑通约 30 分钟,Jetson 因为要构建引擎会更久。

每个套餐的准确率、单帧延迟与多路吞吐实测数据,以及测试方法,见工程 Wiki。

告警面板在两个 reCamera 套餐里可选,在另外三个套餐里默认包含。 reComputer J30 / J40、RK、R2000 上它与检测器在同一份 compose 里一起起来,占 8080 端口。reCamera 2002 与 reCamera Pro 上摄像头承载不了它,所以它是一台独立机器上的额外步骤,这台机器不需要 AI 算力——reComputer R1000 系列,或你已有的一台 Docker 主机。跳过这一步,摄像头就只发 MQTT 事件,与之前完全一样。

常见问题

能。姿态估计、跟踪、跌倒判定和 MQTT broker 全部跑在检测主机上——reCamera 用自带的本地 broker,reComputer 各套餐会随检测器一起在 1883 端口拉起 mosquitto。只有当你自己把事件往外转发时才涉及外网。

没有找到你要的答案?
联系我们
获取可部署方案与产品选型支持。
下一步