3、人体活动识别概述:HAR的定义、常见活动类别与传感器类型

人体活动识别(Human Activity Recognition,HAR)是边缘AI与可穿戴计算领域的核心任务之一,其目标是通过部署在人体不同部位的传感器,自动感知并分类用户当前所处的物理活动状态。在智能手环、老人跌倒监测、康复训练评估、工业安全帽等场景中,HAR系统需要实时、低功耗地完成数据采集、特征提取与分类推理。本章将系统梳理HAR的基本定义、典型活动类别体系,以及支撑这些识别任务的四类核心传感器——加速度计、陀螺仪、磁力计和气压计,为后续章节的传感器融合算法与边缘部署打下基础。

HAR系统传感器融合与活动类别映射 加速度计 三轴线性加速度 (m/s²) 采样率: 20-100Hz 陀螺仪 三轴角速度 (rad/s) 姿态变化敏感 磁力计 地磁场强度 (μT) 航向角参考 气压计 大气压强 (hPa) 高度变化检测 多传感器数据融合 时间同步 → 坐标系对齐 → 特征级融合 → 分类器推理 静态活动 站立/坐下/躺下 步态活动 走路/跑步/上下楼 过渡活动 起立/坐下/转身 复杂活动 骑车/跳跃/跌倒 环境活动 上楼/下楼/乘梯 关键设计点:传感器安装位置(腰部/手腕/脚踝)影响信号特征;采样率与功耗需权衡; 边缘设备需在MCU上完成实时推理,模型大小与延迟受严格约束。

3.1 HAR的核心定义与问题建模

人体活动识别本质上是一个时间序列分类问题:给定一段由可穿戴传感器采集的多维时间序列数据,模型需要输出对应的活动类别标签。与图像分类不同,HAR数据具有明显的时序依赖性——走路时的加速度波形呈现周期性,而坐下动作则表现为短促的瞬态变化。因此,HAR系统通常采用滑动窗口(Sliding Window)机制将连续数据流切分为固定长度的片段(如2秒窗口,50%重叠),每个窗口作为一个独立样本进行特征提取与分类。

从数学角度看,设传感器在时刻 t 的输出为向量 x(t) = [ax, ay, az, ωx, ωy, ωz, mx, my, mz, p],其中 a 为加速度,ω 为角速度,m 为磁场强度,p 为气压。HAR的目标是学习一个映射函数 f: Xwindow → Y,其中 Y ∈ {走路, 跑步, 站立, 坐下, 躺下, 上楼, 下楼}。在边缘部署场景中,这个映射函数通常由轻量级机器学习模型(如决策树、随机森林、1D-CNN或MobileNetV3)实现,模型参数量需控制在数百KB以内,推理延迟低于50ms。

关键设计原则:HAR系统设计需遵循“传感器选择→数据采集→预处理→特征工程→模型训练→边缘部署”的完整链路。在课程实战项目中,我们将使用BMI270六轴IMU(集成加速度计+陀螺仪)配合BMP390气压计,在ESP32-S3边缘节点上实现实时识别。

3.2 常见活动类别体系与识别难点

根据活动特性和应用需求,HAR活动类别通常划分为以下五个层次,每个层次对传感器信号的要求和算法复杂度各不相同。

活动类别典型示例主要传感器信号特征识别难点
静态姿势站立、坐下、躺下加速度计重力分量稳定,方差小站立与坐下的加速度分布相似,需结合姿态角
步态活动走路、跑步加速度计、陀螺仪周期性明显,频率1-3Hz走路与跑步的频带重叠,需区分步频与幅值
楼层过渡上楼、下楼气压计、加速度计气压单调变化,垂直加速度有偏置上下楼方向判别需融合气压变化率
过渡动作起立、坐下、转身陀螺仪、加速度计瞬态冲击,持续时间0.5-1.5秒窗口边界模糊,需使用事件检测
复杂活动跌倒、跳跃、骑车全传感器融合高幅值冲击或低频持续振动跌倒与剧烈运动的区分需多级阈值

在实际工程中,上下楼识别是最具挑战性的任务之一。单纯使用加速度计,上楼和下楼在垂直方向的加速度波形差异很小,容易混淆。引入气压计后,上楼时气压下降(高度升高),下楼时气压上升,通过计算窗口内气压变化率(Δp/Δt)可以准确判别方向。例如,在2秒窗口内,上楼的气压变化约为-0.12 hPa,下楼约为+0.10 hPa,而平地走路的气压变化接近零。

3.3 核心传感器原理与选型要点

3.3.1 加速度计:HAR的基石

加速度计测量物体在三个正交轴上的线性加速度,其工作原理基于MEMS(微机电系统)中的质量块-弹簧结构。当传感器加速时,质量块发生位移,通过电容或压阻效应转换为电信号。在HAR中,加速度计提供两个关键信息:静态重力分量(用于判断姿态)和动态运动分量(用于识别动作)。

选型时需关注以下参数:量程(±2g至±16g,走路约±2g,跑步可达±6g)、分辨率(16位ADC可提供0.06mg精度)、噪声密度(影响低幅值动作的检测)、以及零偏稳定性(长期漂移影响姿态计算)。在边缘项目中,推荐使用BMI270或LSM6DSOX,它们内置运动识别引擎,可减轻MCU负担。

3.3.2 陀螺仪:姿态变化的敏感器

陀螺仪测量绕三个轴的角速度,单位为rad/s或°/s。其核心是科里奥利效应——当质量块在旋转参考系中运动时,会受到垂直于运动方向的力,通过检测该力的大小即可得到角速度。陀螺仪在HAR中的主要用途包括:判别旋转动作(转身、挥手)、辅助计算姿态角(通过角速度积分)、以及区分走路与跑步(跑步时躯干俯仰角变化更剧烈)。

需要注意,陀螺仪存在积分漂移问题:即使静止时,角速度输出也有微小偏置,积分后姿态角会逐渐偏离真实值。因此,在长时间HAR监测中,通常使用加速度计的重力向量对陀螺仪积分结果进行校正(即互补滤波或卡尔曼滤波)。

3.3.3 磁力计:航向参考与方向判别

磁力计测量地球磁场在三个轴上的分量,用于提供绝对航向角(相对于地磁北极)。在HAR中,磁力计的价值在于:当设备佩戴在手腕或腰部时,可以通过磁场方向判断身体朝向;在上下楼场景中,结合陀螺仪的偏航角变化,可以区分转身动作与直行。然而,磁力计极易受环境干扰——电机、钢筋、手机扬声器都会产生磁场畸变,因此在实际系统中通常只作为辅助传感器,且需要定期校准。

3.3.4 气压计:高度变化的直接证据

气压计基于压阻或电容原理,测量大气压强。在近地面,气压与海拔高度呈近似线性关系:每升高8.5米,气压下降约1 hPa。对于上下楼检测,气压计提供了加速度计无法获得的绝对高度变化信息。例如,一层楼高约3米,对应气压变化约0.35 hPa,远高于气压计的分辨率(0.01 hPa)。

实战经验:气压计对温度敏感,开机后需预热2-3分钟;在室内空调环境下,气压波动可能达到0.05 hPa,需使用滑动平均滤波(窗口长度1秒)去除高频噪声。同时,气压计的采样率不需要太高,25Hz即可满足需求,以降低功耗。

3.4 传感器融合策略与案例分析

单一传感器难以覆盖所有活动类别,多传感器融合是提升识别鲁棒性的必然选择。融合策略分为三个层次:数据级融合(直接拼接原始数据)、特征级融合(分别提取特征后拼接)、决策级融合(各传感器独立分类后投票)。在边缘设备上,特征级融合是性价比最高的方案——它既保留了多源信息,又避免了数据级融合带来的维度灾难。

以我们课程中的实战项目为例,目标是在ESP32-S3上实现六类活动识别(走路、跑步、站立、坐下、躺下、上下楼)。初始方案仅使用加速度计,分类准确率为82%,其中上下楼混淆严重。随后引入气压计特征(窗口内气压变化率、气压方差),准确率提升至91%。进一步融合陀螺仪的俯仰角变化率后,准确率达到94.5%。

具体实现中,我们为每个传感器窗口提取以下特征:

  • 加速度计:均值、方差、峰峰值、过零率、FFT主频、能量
  • 陀螺仪:均值、方差、角速度积分(姿态变化量)
  • 气压计:线性拟合斜率(高度变化率)、气压方差、最大最小差值
  • 磁力计:航向角变化量(用于区分转身与直行)

特征向量维度为28维,使用随机森林分类器(100棵树,最大深度12),模型大小约45KB,在ESP32-S3上的推理时间为8ms,满足实时性要求。

风险提示:传感器安装位置对识别准确率影响极大。同一模型在腰部佩戴时准确率可达95%,但改到手腕后可能降至80%。这是因为手腕运动自由度大,信号噪声高。在部署时,必须固定佩戴位置,并在训练数据中覆盖该位置的样本。此外,不同用户的步态差异(身高、步频、走路习惯)也会导致模型泛化性能下降,建议在模型训练时加入多用户数据或使用域自适应技术。

3.5 常见误区与设计复盘

在HAR系统开发中,初学者常陷入以下误区,需要特别警惕:

  1. 采样率越高越好:过高的采样率(>100Hz)会显著增加功耗和计算量,而HAR活动频率通常低于5Hz,50Hz采样率已足够。过采样反而引入更多高频噪声。
  2. 忽略传感器坐标系对齐:加速度计、陀螺仪、磁力计的坐标系必须统一,否则融合特征会出现相位错位。在代码中应使用传感器厂商提供的旋转矩阵进行对齐。
  3. 窗口长度一刀切:静态活动(站立、躺下)需要较长窗口(3-5秒)以获得稳定统计量,而过渡动作(起立、坐下)需要短窗口(0.5-1秒)以捕捉瞬态特征。建议使用多尺度窗口并行分析。
  4. 忽视数据标注质量:HAR数据标注依赖人工记录或视频同步,标注延迟或错误会直接污染训练集。建议使用标注工具(如Label Studio)并设置双人复核机制。

从工程复盘角度看,一个成功的HAR项目应遵循“先简单后复杂”的迭代路径:首先用单加速度计+阈值法实现粗分类,验证数据链路和标注流程;然后逐步引入更多传感器和机器学习模型;最后针对混淆矩阵中的错误样本进行定向优化。这种渐进式开发方式能有效控制风险,避免在初期就陷入复杂的融合算法调试中。