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

相关推荐
xchenhao39 分钟前
SciKit-Learn 全面分析分类任务 breast_cancer 数据集
python·机器学习·分类·数据集·scikit-learn·svm
axban43 分钟前
QT M/V架构开发实战:QFileSystemModel介绍
开发语言·qt·架构
钢门狂鸭3 小时前
关于rust的crates.io
开发语言·后端·rust
007tg3 小时前
从ChatGPT家长控制功能看AI合规与技术应对策略
人工智能·chatgpt·企业数据安全
Memene摸鱼日报3 小时前
「Memene 摸鱼日报 2025.9.11」腾讯推出命令行编程工具 CodeBuddy Code, ChatGPT 开发者模式迎来 MCP 全面支持
人工智能·chatgpt·agi
linjoe993 小时前
【Deep Learning】Ubuntu配置深度学习环境
人工智能·深度学习·ubuntu
Lionel_SSL3 小时前
《深入理解Java虚拟机》第三章读书笔记:垃圾回收机制与内存管理
java·开发语言·jvm
技术猿188702783514 小时前
PHP 与 WebAssembly 的 “天然隔阂”
开发语言·php·wasm
薄荷撞~可乐4 小时前
C#Task(Api)应用
开发语言·c#
先做个垃圾出来………4 小时前
残差连接的概念与作用
人工智能·算法·机器学习·语言模型·自然语言处理