体态识别算法

背景介绍

近年来,国内一直大力发展数字经济,从共享单车到新能源汽车,其主要推动力在于硬件性能的不断提升,软件系统的不断优化,带动了物联网行业不断的向前发展。物联网想要真正赋能实体经济,需要多个学科之间相互协调,整个过程中存在巨量的市场,也存在一些小众领域,能吃一些残羹剩饭。

图1 物联网嵌入式系统的架构

传统的系统架构为:通过网关将嵌入式硬件采集的数据上传到物联网云平台,整个过程中需要占用的硬件资源比较多,系统的实时性比较差。近年来,随着人工智能算法的不断发展,出现了各种轻量化的神经网络模型,能够支持数据边缘侧进行实时处理(特征提取),并将结果反馈到云平台。

智能算法

调研发现,传感器采集的数据大多属于时序数据,工程师能够通过算法对信息规律地分析和挖掘,实现对未来事件的准确预测,相关成果广泛应用于人体运动状态预测、依据ECG信号识别人体生理状态、污染物浓度预测、机械设备寿命预测、地基变形规律预测以及股票的涨跌预测等。

传统的时间序列预测主要基于统计学方法,通过数学模型描述数据背后的耦合关系,主要包含:指数平滑法、移动平均(MA)、 自回归(AR)等。然而很多实际场景中很难建立准确的数学模型(ECG生理信号等),因此,近些年为了解决该问题,发展出RNN以及LSTM等机器学习算法,具体原理如下所示:

图2 LSTM网络模型结构

LSTM内部主要包含三个门(遗忘门、输入门和输出门)和记忆单元 (Memory Cell)两块,其中,遗忘门、输入门和输出门的数学表达式为:

单元状态的更新函数为:

系统的输出为:

附1:AR模型:当前值是前 p 时刻序列的线性组合,核心本质属于线性拟合,通过求解矩阵方程组获取拟合拟合参数;

附2:LSTM的数学模型跟力学涉及的材料本构极为相似,在什么时候有限元解是唯一的,什么时候是无解的,最后可以用数学上不动点原理来解答。

应用实例

智能可穿戴设备在生活中具有广泛的应用,能够自动采集人体的状态数据。本项目中建立了LSTM模型,后续导入智能手机获取的加速度信号进行训练,判断穿戴者的状态(坐下、站立、走动、跑步以及跳动)。本项目采用6组时序数据作为训练集,每组数据包含X、Y、Z方向的加速度信号,具体过程如下所示:

图3 LSTM网络训练过程

后续将LSTM模型封装为函数,直接部署到网关中,本项目采用的网关硬件参数为: 4核心;内存:512M;存储容量:4g ;支持sd卡;

clear all;clc;
load HumanActivityTrain
% XTrain
X = XTrain{1}(1,:);
classes = categories(YTrain{1});

figure
for j = 1:numel(classes)
label = classes(j);
idx = find(YTrain{1} == label);
hold on
plot(idx,X(idx))
end
hold off

numFeatures = 3;
numHiddenUnits = 200;
numClasses = 5;
layers = [ ...
sequenceInputLayer(numFeatures)
lstmLayer(numHiddenUnits,'OutputMode','sequence')
fullyConnectedLayer(numClasses)
softmaxLayer
classificationLayer];
options = trainingOptions('adam', ...
'MaxEpochs',60, ...
'GradientThreshold',2, ...
'Verbose',0, ...
'Plots','training-progress');
net = trainNetwork(XTrain,YTrain,layers,options);

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

在线客服
联远智维
我们将24小时内回复。
2025-08-06 01:15:11
您好,有任何疑问请与我们联系!
您的工单我们已经收到,我们将会尽快跟您联系!
[注意事项]
208300320
取消

选择聊天工具:

滚动至顶部