如何实现动作识别?

人工智能 机器学习 图像识别 训练 动作识别
2021-10-24 01:01:57

例如,我想训练我的神经网络来识别动作的类型(例如在商业电影或一些现实生活中的视频中),所以我可以“询问”我的网络在哪个视频或电影中(以及在什么帧)有人正在开车、接吻、吃饭、害怕或正在打电话。

目前解决这类问题的成功方法是什么?

4个回答

关于如何实现这一点,有几种方法。

2015 年最近一项关于真实体育视频中动作识别的研究PDF使用基于特征提取(形状、帖子或上下文信息)、表示视频的字典学习和分类(BoW 框架)三个主要步骤的动作识别框架。

几个方法的例子:

  • 人体姿势的时空结构

    K. Soomro 和 AR Zamir - 动作识别 - 图

  • 关节形状运动

    K. Soomro 和 AR Zamir - 动作识别 - 图

  • 多任务稀疏学习 (MTSL)

  • 分层时空段

    K. Soomro 和 AR Zamir - 从视频帧中提取片段

  • 时空变形零件模型 (SDPM)

    K. Soomro 和 AR Zamir - 动作本地化结果

以下是基于 UCF 运动数据集对 10 个动作类进行训练的结果:

UCF 运动数据集:10 个动作类的样本帧以及以黄色显示的人类边界框注释

来源:现实体育视频中的动作识别

2012 年的这项研究使用 3D卷积神经网络 (CNN)自动识别监控视频中的人类行为。3D CNN 模型通过执行 3D 卷积从空间和时间维度中提取特征,从而捕获编码在多个相邻帧中的运动信息。LIRIS 和 Orange Labs 从 2011 年开始的研究中展示了一种非常相似的基于 3D CNN 的深度学习方法


这项2014 年的牛津研究也使用了类似的方法,但使用了包含空间和时间网络的双流 CNN,尽管训练数据有限,但仍可以实现良好的性能。它以密集光流的形式识别运动中的动作。例如:

使用 ConvNets 的光流


2007 年的另一项研究展示了一种方法,该方法通过分析视频帧,结合运动历史和人体形状变化来检测人体跌倒。它使用运动历史图像 (MHI) 来量化人的运动。

运动历史图像 (MHI)

资料来源:GitHub 上的 harishrithish7/Fall-Detection


另一种通用方法可能是使用 DNN 基于姿势进行动作检测。参见:如何实现对姿势和手势的识别?

麻省理工学院已经进行了研究并实现了一个不完整的动作视频识别版本。

使用 MATLAB、NNetworks 和大量训练视频。

我对我之前的回答提出的一组评论表明使用了多互连 NNet,与 MIT 的基于图像的 NNet 相同。

可以使用神经网络,但必须经过训练以预期网络中任何给定位置的信息(数据模式、像素或松散范围的分组,例如颜色和位置),首先必须实施视觉系统。然后是面部识别,多个部分个体的身体修复(寻找身体部位和一个人的伙伴),然后在某些状态下进行训练,你就会让它发挥作用。麻省理工学院已经进行了研究并做出了看似准确的实施。

在过去的 7 年里,我一直是一名 AI 研究员和软件工程师。