目录

1.算法描述

2.仿真效果预览

3.MATLAB核心程序

4.完整MATLAB


1.算法描述

AlexNet是2012年ImageNet竞赛冠军获得者Hinton和他的学生Alex Krizhevsky设计的。也是在那年之后,更多的更深的神经网络被提出,比如优秀的vgg,GoogLeNet。 这对于传统的机器学习分类算法而言,已经相当的出色。Alexnet网络模型于2012年提出。它具有更高维度的特征提取效果和更深层次的网络结构。第一次,在训练过程中使用了退出机制来防止过度配合。其激活功能使用relu功能并支持GPU训练。Alexnet在更深更广的网络中使用CNN,其效果分类精度更高。Alexnet使用ReLU代替sigmoid,这可以更快地训练,并解决更深网络中的梯度消失问题。Alexnet使用最大池化层来避免平均池化层的模糊性影响,并且步长小于池化核心的步长。这样,池化层输出重叠,从而提高了特征的丰富性。alexnet的网络结构如下:

通常,alexnet网络模型由五个卷层和三个全连接层组成。其中,全连接层的输出可以映射1000个分类标签。Alexnet具有大量的模型参数和神经元。模型参数为60m,神经元数为650k。

输入图像为224*224*3。首先,使用96个11*11*3的卷积来进行图像卷积运算,并获得55*55*96的卷积层。然后,在响应归一化和最大池化之后,使用256个5*5*48的卷积来获得第二卷积层,并获得两个27*27*128的卷积层。在第三卷中,使用384个3*3*256的卷积核来获得13*13*192*2个卷积层。在第四卷中,使用384个3*3*192的卷积核来获得13*13*192*2的卷积层。在第五卷中,使用256个3*3*192的卷积核来获得13*13*128*2的卷积层。

AlexNet中包含了几个比较新的技术点,也首次在CNN中成功应用了ReLU、Dropout和LRN等Trick。同时AlexNet也使用了GPU进行运算加速。
AlexNet将LeNet的思想发扬光大,把CNN的基本原理应用到了很深很宽的网络中。AlexNet主要使用到的新技术点如下:
(1)成功使用ReLU作为CNN的激活函数,并验证其效果在较深的网络超过了Sigmoid,成功解决了Sigmoid在网络较深时的梯度弥散问题。虽然ReLU激活函数在很久之前就被提出了,但是直到AlexNet的出现才将其发扬光大。
(2)训练时使用Dropout随机忽略一部分神经元,以避免模型过拟合。Dropout虽有单独的论文论述,但是AlexNet将其实用化,通过实践证实了它的效果。在AlexNet中主要是最后几个全连接层使用了Dropout。
(3)在CNN中使用重叠的最大池化。此前CNN中普遍使用平均池化,AlexNet全部使用最大池化,避免平均池化的模糊化效果。并且AlexNet中提出让步长比池化核的尺寸小,这样池化层的输出之间会有重叠和覆盖,提升了特征的丰富性。
(4)提出了LRN层,对局部神经元的活动创建竞争机制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力。


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

人类自身很善于进行步态识别,在一定距离之外都有经验能够根据人的步态辨别出熟悉的人。步态识别的输入是一段行走的视频图像序列,因此其数据采集与面像识别类似,具有非侵犯性和可接受性。但是,由于序列图像的数据量较大,因此步态识别的计算复杂性比较高,处理起来也比较困难。尽管生物力学中对于步态进行了大量的研究工作,基于步态的身份鉴别的研究工作却是刚刚开始。步态识别主要提取的特征是人体每个关节的运动。到目前为止,还没有商业化的基于步态的身份鉴别系统。

2.仿真效果预览

matlab2022a仿真结果如下:

与其他生物识别相比,步态识别具有许多优点,如远距离、非接触等。为了获得良好的识别效果,虹膜识别需要目标在30厘米以内;人脸识别需要目标在3米以内;步态识别需要目标远达50m。不同的体型、头部形状、肌肉骨骼特征、运动神经敏感性、行走姿势等特征决定了步态具有更好的辨别能力。通过复杂的算法设计和海量数据训练,机器可以更好地识别这些细节。首先基于CASIA A数据库来模拟算法的性能,然后基于真实场景来模拟算法性能。CASIA A数据库是2005年1月在室内收集的最大步态数据集。视频大小为320×240,帧数为25fps。数据集中有20名行人。每个人收集了12个序列,包括4个0度序列、4个45度序列和4个90度序   列。因此,序列的总数为240。图4.1显示了CASIA A中的部分步态数据。

3.MATLAB核心程序

GEI  = zeros(RR,CC);
CNT  = 0;
for ii = 1:length(I1_0)-1if isempty(I1_0{ii})==0tmps0 = double(imresize(I1_0{ii},[RR,CC]));GEI   = GEI+tmps0;CNT   = CNT+ 1;end
end
GEI = GEI/CNT;%得到能量
GEI2(:,:,1) = GEI;
GEI2(:,:,2) = GEI;
GEI2(:,:,3) = GEI;
digitDatasetPath = ['步态能量图allt90\'];
imds = imageDatastore(digitDatasetPath,'IncludeSubfolders', true, 'LabelSource', 'foldernames');
%划分数据为训练集合验证集,训练集中每个类别包含1张图像,验证集包含其余图像的标签
numTrainFiles               = 2;%设置每个类别的训练个数
[imdsTrain,imdsValidation] = splitEachLabel(imds,10/12);
net = alexnet;rng(1);
options = trainingOptions('sgdm', ...'InitialLearnRate', 0.0015, ...'MaxEpochs', 200, ...'Shuffle', 'every-epoch', ...'ValidationData', imdsValidation, ...'ValidationFrequency', 10, ...'Verbose', false, ...'Plots', 'training-progress');
layersTransfer = net.Layers(1:end-3);
layers = [layersTransferfullyConnectedLayer(20,'WeightLearnRateFactor',20,'BiasLearnRateFactor',20)softmaxLayerclassificationLayer];
%使用训练集训练网络
net         = trainNetwork(imdsTrain, layers, options);
05_077_m

4.完整MATLAB

V

m基于AlexNet神经网络和GEI步态能量图的步态识别算法MATLAB仿真相关推荐

  1. m基于rbf神经网络和遗传算法优化的MIMO-OFDM系统信道估计算法matlab仿真

    目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 MIMO-OFDM的信道估计:时,频,空三个域都要考虑,尤其是在空域,不同天线发射的导频序列 ...

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

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 步态识别是一种新兴的生物特征识别技术,旨在通过人们走路的姿态进行身份识别,与其他的生物识别技术相比, ...

  3. m基于CNN卷积网络和GEI步态能量图的步态识别算法MATLAB仿真,测试样本采用现实拍摄的场景进行测试,带GUI界面

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 目前关于步态识别算法研究主要有两种:基于模型的方法和非基于模型的方法.基于模型的步态识别方法优点在于 ...

  4. 【调制识别】基于高阶累积量的调制方式识别算法matlab仿真,课题识别BPSK, QPSK, 16QAM, 64QAM

    目录 一.理论基础 二.核心程序 三.仿真测试结果 一.理论基础 由于数字调制信号越来越多地应用于通信信号处理领域,因此对数字信号调制识别的研究也越来越多.传统的调制识别的判决方法有:决策判决法.高阶 ...

  5. 基于miu小波变换的人体步态数据检测和识别算法matlab仿真

    目录 一.理论基础 3.2.1加速度计 3.2.2陀螺仪 3.3基于IMU设备的人体步态数据的采集 二.MATLAB仿真程序 三.仿真结果 一.理论基础 在进行数据采集的过程中,需要根据实际情况选择合 ...

  6. 基于能量检测的调制方式识别算法MATLAB仿真,识别不同SNR下的MFSK和MPSK

    UP目录 一.理论基础 二.核心程序 三.测试结果 一.理论基础 随着无线通信的快速发展,用户对通信质量的要求越来越高,同时无线设备的大幅度增长,使得频谱资源显得更加重要.认知无线电(Cognitiv ...

  7. 基于BP神经网络+HOG特征提取的视频中车辆车牌识别算法仿真

    步骤一:定位和跟踪 这里,没有直接采用之前的方案,是因为在设计的时候,发现直接采用颜色等直接特征提取然后进行二值化处理的方法,如果视频中出现颜色类似的区域,则很有可能错误的定位,例如在公交车中车牌区域 ...

  8. 基于SVM支持向量机的车牌分割识别算法matlab仿真

    目录 一.理论基础 二.核心程序 三.仿真测试结果 作者ID :fpga和matlab CSDN主页:https://blog.csdn.net/ccsss22?type=blog 擅长技术: 1.无 ...

  9. 【IHS+稀疏表示】基于IHS小波变换和稀疏表示相结合的遥感图像融合算法matlab仿真

    1.软件版本 matlab2013b 2.本算法理论知识 小波变换具有多尺度特性,其时域和频域均 具有表征信号局部特性的能力和多分辨率分析的 特点.在低频时具有高的频谱分辨率,在高频 时具有低的频谱分 ...

最新文章

  1. CUDA刷新:GPU计算生态系统
  2. 【GLib】GLib学习笔记(二):源码编译
  3. 在Ubuntu下解决E: 无法对目录 /var/lib/apt/lists/ 加锁的问题
  4. xcode 修改 infodictionary_安卓系统修改复位键生效时间
  5. iOS:通信录(完成)(18-01-18更)
  6. mysql的student是什么意思_复习mysql
  7. 绿色版本chrome设为默认浏览器
  8. MyEclipse使用阿里p3c代码规范
  9. Socket(网络编程)面试题
  10. 二、电容屏原理(1)
  11. 使用lua脚本开发wow插件(魔兽世界插件开发)
  12. MATLAB立体椭球,matlab拟合三维椭球
  13. 服务器显示board板,IBM x3650M4面板Board亮黄灯 故障维修
  14. ValueError: bad transparency mask
  15. :实用 FRIDA 进阶 --- objection :内存漫游、hook anywhere、抓包
  16. 软件测试的自我修养之学习自动化测试
  17. 【Spark NLP】第 16 章:对象字符识别(OCR)
  18. PEER地震波数据转化成lsdyna求解器格式曲线关键字方法
  19. 华为鸿蒙os对比安卓系统,华为手机鸿蒙OS 2.0、EMUI 11界面对比:安卓底层没了
  20. Oracle中sign函数的简单用法

热门文章

  1. flash转换成mp4,在线转换
  2. 谷歌搜索技巧Google Search Tips
  3. 判断一个数是否为完数
  4. 部落优势服务器,魔兽怀旧服:都说部落有优势?优势在哪?刚开始选错阵营没法转!...
  5. Ext表单组件实现用户注册
  6. 电商宝打单发货-打单设置
  7. 雷达电子战的基本内容 (02)
  8. 众创新企业落地物联网,物联网助阵台湾科技产业升级
  9. Matplotlib画词云图
  10. 启动egg项目时报错ERROR 11104 nodejs AgentWorkerDiedError [master] agent_worker#1:9544 died (code : 1, signa