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

相关推荐
DICOM医学影像2 分钟前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
kisshuan123966 分钟前
YOLO11-RevCol_声呐图像多目标检测_人员水雷飞机船舶识别与定位
人工智能·目标检测·计算机视觉
Data_agent13 分钟前
Python 编程实战:函数与模块化编程及内置模块探索
开发语言·python
new_zhou13 分钟前
vs2019+qt工程中生成dump文件及调试
开发语言·qt·visual studio·dump调试
lkbhua莱克瓦2413 分钟前
人工智能(AI)形象介绍
人工智能·ai
shangjian00714 分钟前
AI大模型-核心概念-深度学习
人工智能·深度学习
十铭忘16 分钟前
windows系统python开源项目环境配置1
人工智能·python
PeterClerk18 分钟前
RAG 评估入门:Recall@k、MRR、nDCG、Faithfulness
人工智能·深度学习·机器学习·语言模型·自然语言处理
Generalzy32 分钟前
langchain deepagent框架
人工智能·python·langchain
栈与堆38 分钟前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表