• 大小: 3KB
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-05-28
  • 语言: Matlab
  • 标签: matlab  

资源简介

基于模糊逻辑的步态识别算法的matlab程序,可以识别人行走时的步态描述

资源截图

代码片段和文件信息

%建立模糊控制算法  
a = newfis(‘Gait recognition‘);  

Limit = zeros(61);
Limit([12]1) = [034];
Press_0 = Limit([12]1);
Limit([34]1) = [013];
Press_1 = Limit([34]1);
Limit([56]1) = [053];
Press_2 = Limit([56]1);

a = addvar(a‘input‘‘press_0‘Press_0);  
a = addmf(a‘input‘1‘NS‘‘trimf‘[-2.52.57.5]);  
a = addmf(a‘input‘1‘NB‘‘trimf‘[-102050]);  
a = addvar(a‘input‘‘press_1‘Press_1); 
a = addmf(a‘input‘2‘NS‘‘trimf‘[-339]);  
a = addmf(a‘input‘2‘NB‘‘trimf‘[21018]); 
a = addvar(a‘input‘‘press_2‘Press_2);
a = addmf(a‘input‘3‘NS‘‘trimf‘[-5515]);  
a = addmf(a‘input‘3‘NB‘‘trimf‘[-123276]);
    
a = addvar(a‘output‘‘phase‘[17]);  
a = addmf(a‘output‘1‘HO‘‘trimf‘[113]);  
a = addmf(a‘output‘1‘ST‘‘trimf‘[135]);  
a = addmf(a‘output‘1‘AO‘‘trimf‘[357]);  
a = addmf(a‘output‘1‘SW‘‘trimf‘[577]);       
   
%建立模糊规则  
rulelist=[1 1 1 4 1 1;  
          1 1 2 1 1 1;  
          1 2 1 3 1 1;  
          1 2 2 1 1 1;  
          2 1 1 3 1 1;
          2 1 2 2 1 1;
          2 2 1 3 1 1;
          2 2 2 2 1 1];  
a = addrule(arulelist);  
   
%设置反模糊化算法  
a1 = setfis(a‘DefuzzMethod‘‘mom‘);  
writefis(a1‘gait‘);  
a2 = readfis(‘gait‘);  
  
figure(1);plotmf(a‘input‘1);grid on;
figure(2);plotmf(a‘input‘2);grid on;
figure(3);plotmf(a‘input‘3);grid on;
figure(4);plotmf(a‘output‘1);grid on;

评论

共有 条评论