基于稀疏辅助小波和线性时不变滤波器的惯性传感器步态周期分割方法(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等。

相关推荐
小曹要微笑几秒前
C#的运算符重载
开发语言·c#·运算符重载·c#运算符重载
道可云1 分钟前
AI全球快讯(3月12日)丨Meta收购AI智能体社交平台Moltbook
人工智能
梯度下降中1 分钟前
CNN原理精讲
人工智能·算法·机器学习
我是唐青枫2 分钟前
C#.NET Channel 深入解析:高性能异步生产者消费者模型实战
开发语言·c#·.net
摆烂工程师3 分钟前
2026年新国内如何注册 Claude 账号保姆教程(成功率95%)
人工智能·ai编程·claude
Ivanqhz4 分钟前
活跃范围重写(Live Range Rewriting)
开发语言·c++·后端·算法·rust
人道领域7 分钟前
【绝对干货】C语言常量,变量,内存全方位总结:从入门到精通,这一篇就够了!
c语言·开发语言
薛不痒7 分钟前
大模型(2):大模型推理文本分类
人工智能·python·深度学习·机器学习
Matlab程序设计与单片机8 分钟前
【机器人最短路径规划问题】基于模拟退火算法SA
matlab·栅格地图·模拟退火算法·路径规划
yuyuxun19 分钟前
基于JSP购物网站系统的设计与实现 毕业设计-附源码03645
java·开发语言·python·django·flask·课程设计·pygame