基于Matlab的视频人体动作识别,Matlab实现

时间:2024-03-22 08:30:50

        博主简介: 专注、专一于Matlab图像处理学习、交流,matlab图像代码代做/项目合作可以联系(QQ:3249726188

        个人主页:Matlab_ImagePro-CSDN博客

        原则:代码均由本人编写完成,非中介,提供有偿Matlab算法代码编程服务,不从事不违反涉及学术原则的事。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        本次分享的是基于Matlab的视频人体动作识别算法,用matlab实现。(有疑问或者想交流细节的QQ:3249726188

        一、案例背景介绍

         前期博主分享了视频运动目标检测、目标跟踪、识别等相关算法,前期博文链接如下:

        基于背景差法的运动目标检测(车辆检测)(基于背景差法的运动目标检测(车辆检测),Matlab实现-CSDN博客

        基于高斯模型的运动目标检测(车辆检测)(基于高斯模型的运动目标检测(车辆检测),Matlab实现-CSDN博客

        基于时空上下文(STC)的运动目标跟踪算法(基于时空上下文(STC)的运动目标跟踪算法,Matlab实现-CSDN博客

        基于LBP和KNN的人面表情识别(基于LBP和KNN的人面表情识别,Matlab实现-CSDN博客

        这次分享的是视频识别相关的算法,基于Matlab的视频人体动作识别算法。

       二、算法原理概述

        这次分享的视频人体动作识别算法主要内容包括两大部分,第一部分是对运动的人体目标进行检测分割,第二部分是对检测到的人体进行动作的识别。

        第一部分,运动目标检测分割

        这部分是采用背景差检测分割算法,分割出运动的人体目标,背景差运动目标检测算法在前期博文中比较详细做过介绍,这样不再细说了。

        第二部分,动作识别算法

        本次动作识别算法用的形状特征算法:傅里叶描述子算法。傅立叶描述子是分析和识别物体形状的重要方法之一。傅立叶描述子 (FD ) 是物体形状边界曲线的傅立叶变换系数, 它是物体边界曲线信号的频域分析的结果。根据傅立叶变换的性质, 傅立叶描述子与形状的尺度、 方向和曲线的起始点 P 0 位置有关。因此需要对傅立叶描述子进行归一化, 使用具有旋转、 平移和尺度不变性的归一化傅立叶描述子 (NFD ) 来识别物体的形状。具体算法流程详见附件文档。这里不对傅里叶算法流程进行细述了。

        三、算法流程

        1、读取视频,获取视频帧

        2、对获取到的视频帧图像,背景差运动目标检测法,得到运行目标的人体二值图

        3、对于步骤二获取到的二值图,用傅里叶描述子算法获取形状特征。

        4、分类,将步骤三的特征与训练图库(动作训练图库)的形状特征进行对比分类,使用的是KNN算法,得到识别结果。

        5、根据识别到的动作类型,直接标记在视频上,当前帧识别完成,继续处理下一帧。

        四、Matlab实现效果

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

专注、专一于Matlab图像处理学习、交流、代做

QQ:3249726188