您现在的位置:首页 >> 机器学习 >> 内容

m基于CNN卷积神经网络和GEI步态能量图的步态识别算法MATLAB仿真

时间:2023/1/16 23:42:59 点击:

  核心提示:05_077_m,包括程序操作录像+说明文档+参考文献...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/Y56WlZ5x

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览



3.算法概述

         步态识别是一种新兴的生物特征识别技术,旨在通过人们走路的姿态进行身份识别,与其他的生物识别技术相比,步态识别具有非接触远距离和不容易伪装的优点。在智能视频监控领域,比图像识别更具优势。步态是指人们行走时的方式,这是一种复杂的行为特征。罪犯或许会给自己化装,不让自己身上的哪怕一根毛发掉在作案现场,但有样东西他们是很难控制的,这就是走路的姿势。英国南安普敦大学电子与计算机系的马克·尼克松教授的研究显示,人人都有截然不同的走路姿势,因为人们在肌肉的力量、肌腱和骨骼长度、骨骼密度、视觉的灵敏程度、协调能力、经历、体重、重心、肌肉或骨骼受损的程度、生理条件以及个人走路的“风格”上都存在细微差异。对一个人来说,要伪装走路姿势非常困难,不管罪犯是否带着面具自然地走向银行出纳员还是从犯罪现场逃跑,他们的步态就可以让他们露出马脚。

      卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一 。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)” 。

4.部分源码

........................................................................

if SEL == 1

digitDatasetPath = ['步态能量图0t0\'];

imds = imageDatastore(digitDatasetPath,'IncludeSubfolders', true, 'LabelSource', 'foldernames');

%划分数据为训练集合验证集,训练集中每个类别包含1张图像,验证集包含其余图像的标签

numTrainFiles               = 2;%设置每个类别的训练个数

[imdsTrain, imdsValidation] = splitEachLabel(imds,0.5);

end

if SEL == 2

digitDatasetPath = ['步态能量图0t45\'];

imds = imageDatastore(digitDatasetPath,'IncludeSubfolders', true, 'LabelSource', 'foldernames');

%划分数据为训练集合验证集,训练集中每个类别包含1张图像,验证集包含其余图像的标签

numTrainFiles               = 2;%设置每个类别的训练个数

[imdsTrain, imdsValidation] = splitEachLabel(imds,0.5);

end

..................................................

%定义卷积神经网络的基础结构

layers = [

    imageInputLayer([227 227 3]);%注意,227,227,不能改

    %第1个卷积层

    convolution2dLayer(3, 8, 'Padding', 'same');%第一个卷积层

    batchNormalizationLayer;

    reluLayer;

    maxPooling2dLayer(2, 'Stride', 2);

    %第2个卷积层

    convolution2dLayer(3, 8, 'padding', 'same');

    batchNormalizationLayer;

    reluLayer;

    maxPooling2dLayer(2, 'Stride', 2);

    %全连接层

    fullyConnectedLayer(20);

    %softmax

    softmaxLayer;

    %输出分类结果

    classificationLayer;];

%设置训练参数

options = trainingOptions('sgdm', ...

    'InitialLearnRate', 0.0001, ...

    'MaxEpochs', 200, ...

    'Shuffle', 'every-epoch', ...

    'ValidationData', imdsValidation, ...

    'ValidationFrequency', 10, ...

    'Verbose', false, ...

    'Plots', 'training-progress');

%使用训练集训练网络

net         = trainNetwork(imdsTrain, layers, options);

05_077_m

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168