基于稀疏辅助小波和线性时不变滤波器的惯性传感器步态周期分割方法(MATLAB R2018A)

每个人在肌肉骨骼状况、生理状况、心理特征以及个人行走的"风格"等方面都有各自的特点,因此,每个人都有自己的步态指纹。这意味着可以根据步态特征来进行身份识别。基于步态的身份识别是生物特征识别的一个新兴领域。其机制有3个显著的优点:1)远距离,即步态检测过程可以在较远的距离下进行;2)无打扰,即它不需要与用户进行明确的交互;3)难以模仿,即很难模仿一个人的步态。目前,许多研究人员通过视频进行步态身份识别。随着惯性传感器在便携式设备中的广泛配置,以及其在生物力学、神经康复、运动医学等中的广泛应用,基于惯性传感器的步态身份识别吸引了众多研究者的关注。基于惯性传感器的步态识别可以显著增强便携式设备的安全性。

鉴于此,提出一种基于稀疏辅助小波和线性时不变滤波器的惯性传感器步态周期分割方法,运行环境为MATLAB R2018A。

Matlab 复制代码
function [toe_off,heel_stk,iGS] = label_gait_segments(binX,gx,t1,toe_off,heel_stk)

% Gyro data
[ms_start,ms_stop] = edge_detection(binX);
iGS = [ms_start,ms_stop-1];

if ~isempty(iGS)
    if (size(iGS,1) >= 2)
        % first local maxima (toe-off event)
        [~,ind] = max(gx(t1+iGS(1,1):t1+iGS(1,2)));
        toe_off(1,t1+iGS(1,1)+ind-1) = gx(t1+iGS(1,1)+ind-1);
        
        % second local maxima (heel-strike event)
        max_val = 0; ss = 2;
        for ii=2:size(iGS,1)
            [max_v, max_i] = max(gx(t1+iGS(ii,1):t1+iGS(ii,2)));
            if max_v > max_val
                max_val = max_v; ind = max_i; ss = ii;
            end
        end
        heel_stk(1,t1+iGS(ss,1)+ind-1) = gx(t1+iGS(ss,1)+ind-1);
    end
end
%完整代码:https://mbd.pub/o/bread/mbd-ZJyXlJ9s

end

工学博士,担任《Mechanical System and Signal Processing》《中国电机工程学报》《控制与决策》等期刊审稿专家,擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

相关推荐
斐夷所非16 分钟前
人工智能 AI. 机器学习 ML. 深度学习 DL. 神经网络 NN 的区别与联系
人工智能
递归不收敛30 分钟前
吴恩达机器学习课程(PyTorch适配)学习笔记:2.4 激活函数与多类别处理
pytorch·学习·机器学习
Paul_09201 小时前
golang面经——map模块和sync.Map模块
开发语言
Univin1 小时前
C++(10.5)
开发语言·c++·算法
haogexiaole2 小时前
Java高并发常见架构、处理方式、api调优
java·开发语言·架构
Funny_AI_LAB2 小时前
OpenAI DevDay 2025:ChatGPT 进化为平台,开启 AI 应用新纪元
人工智能·ai·语言模型·chatgpt
张人玉2 小时前
C# 通讯关键类的API
开发语言·c#
深瞳智检2 小时前
YOLO算法原理详解系列 第002期-YOLOv2 算法原理详解
人工智能·算法·yolo·目标检测·计算机视觉·目标跟踪
froginwe112 小时前
R 数组:深入解析与高效使用
开发语言
tao3556672 小时前
【Python刷力扣hot100】283. Move Zeroes
开发语言·python·leetcode