数据集:参考收藏夹
论文:基于深度学习的人体行为识别
发展背景以及现状
基于模型的方法,通过人工或半监督的方法来定义行为的数学模型。然后匹配观测值和模型的匹配。(模型准确决定了是否能准确识别出来行为)
- 隐马尔科夫模型
- Dimitrios 使用混合隐马尔可夫模型
- 基于人体 3D 星型骨架模型。
基于相似性度量的方法,不显示定义人体行为的数学模型,而是从运动图像序列数据中学习各种人体行为。根据学习结果,在测试视频中,对行为进行分类。
- Meng GRN_BCM(gene regulatory network based bienenstock. cooper. and munro spiking neural networks model)方法构建行为模型,从而识别人体行为。
- Dollar 通过稀疏时空特征识别人体行为。
优劣:基于模型的方法,对于人体行为种类较多的情况下,难以建立准确的模型。基于相似性度量的行为识别方法,由于图像环境背景的复杂性,增加了学习行为的难度。
Moez 通过 3D CNN 识别人体行为
本文提出 DBNs(deep belief networks)深度信念网络
论文:Two-Stream RNN/CNN for Action Recognition in 3D Videos
To summarize, our contributions in this paper are:
• A novel RNN structure is proposed, which converges13 times faster during training and costs 20% lesscomputational power at each forward pass, comparedto a normal LSTM;
• Two fusion methods, i.e. decision fusion and feature fusion, are proposed to combine the proposed RNNstructure and a 3D-CNN structure [8]. The decisionfusion is easier to use, while the feature fusion hassuperior performance.
- 本论文的方法除了需要 RGB 图像之外,还需要 3D 的 Skeleton 信息。这确实能够提高检测的准确性,但是 3D skeleton 数据的获取,成为了另一个问题了。
CNN,
RNN,
LSTM,
论文:Sequential Deep Learning for Human Action Recognition - Liris-5228(http://liris.cnrs.fr/Documents/Liris-5228.pdf)
对人行为的识别可以从关注点上,有一定的区分:
- 轨迹的识别
- 身体动作的识别(身体作为整体)
- 关节动作的识别(需要分析身体的各个部位和关节)
- 面部表情的识别
如果引入周围的环境,还涉及到:
- 场景环境的识别
- 人与人,人与物互动的识别
论文:ACTION_RECOGNITION_USING_VISUAL_ATTENTION_1511.04119(http://shikharsharma.com/projects/action-recognition-attention/)(https://arxiv.org/abs/1511.04119)
- Attention Model
- RNN
- Long Short-Term Memory (LSTM) units
Dataset:
UCF-11(YouTube Action), ( http://crcv.ucf.edu/data/UCF101.php )
HMDB-51,
Hollywood2
Download the code and tried to run it. But I don't know the format of his configuration file.
论文:Recurrent_Models_of_Visual_Attention(https://arxiv.org/pdf/1406.6247v1.pdf)
论文:Joint Action Recognition and Pose Estimation From Video
还是比较新的论文,看摘要是采用了姿态和动作估计结合的方式。简单的看了应该是“预定义模型的”,没有采用深度学习。
论文:Model-based Human Action Recognition (https://www.youtube.com/watch?v=lhUfo4Cyfgs)
基于预先建模的行为识别。但是比较老了的一篇论文了。
论文:Real-time Action Recognition by Spatiotemporal Semantic and StructuralForests(https://www.youtube.com/watch?v=eD5b8d7hV6E)
剑桥的一篇论文,但是比较老了,2010 年的。而且,没有采用深度学习的方法。
论文:2D Action Recognition Serves 3D Human Pose Estimation(https://www.youtube.com/watch?v=ajswsWVWQvY)
相关但是略微有些老的文章,把多张图的动作识别结果,作为 3D 动作估计的输入?
论文:Coupled Action Recognition and Pose Estimation from Multiple Views(https://www.youtube.com/watch?v=2UCX41U6z-M)
从多视图来估计动作,和上面的一篇采用的方法比较类似,比较老了。
论文:Efficient Human Pose Estimation from Single Depth Images(https://www.youtube.com/watch?v=ZXI6gko7kG4)
通过深度信息来进行动作估计。好像是微软研究院做的,很不错,但是需要类似于 kinect 的设备。
论文:
Xu_Efficient_Hand_Pose_2013_ICCV_paper,
Robust 3D Hand Pose Estimation in Single Depth Images, from Single-View CNN to Multi-View CNNs,(https://www.youtube.com/watch?v=hVlwE1yF8-c)
通过深度信息来进行手势动作的估计。
开源项目:
// github 测试 KTH 数据集的代码
// matlab 代码,使用 KTH 测试数据,但是没有 training 源码
// Human Action Recognition using KTH Dataset
// 与论文 [ACTION_RECOGNITION_USING_VISUAL_ATTENTION_1511.04119] 配套的代码
// 姿态估计的源码 (https://www.youtube.com/watch?v=pW6nZXeWlGM)
// two stream
// 这个库是关于 action-recognition 的资料汇总
一些其他的方法:
Kmeans,
KNN,
资料网站:
// 一本书 Computer Vision — ECCV 2012. Workshops and Demonstrations: Florence
// 一个计算科学和信息网站
// 发表论文预印版的网站
教学视频:// youtube 上的一个系列讲座 https://www.youtube.com/watch?v=ecbeIRVqD7g
教学视频:
// youtube 上的一个讲座 Human Action Recognition,比较好的入门讲座 2012年
Mr. Ivan Laptev
INRIA, WILLOW, ENS/INRIA/CNRS UMR 8548, Laboratoire d'Informatique, École Normale Supérieure, Paris
1 视频中提到,只通过一些点,是无法判断一个人的行为的。同理,仅仅通过一张静态图片,有时候也很难确定人的行为。但是,如果是通过一些点的动画,人就可以进行一些行为理解。 这和吴恩达讲解的机器学习理论有互通之处。
吴恩达提到,如果想知道,提供给机器的信息是否足以完成其学习,可以通过人主观的来判断,当前的信息,人是否可以做出一定的推断。如果人可以,那么说明信息量是足够的。如果人都不可以,那机器也很难推断。
疑问:但是,这里有一个问题,就是人在真实环境判断行为的时候,显然不会单单只凭借人相关的信息,也会根据环境信息来判断。这样的环境信息,如何让机器来一起学习呢??场景信息也很重要。scene。
2 对于行为检测,可能有许多方向。目前可知道的方向是:
2.1 对于预先定义的一些行为,进行识别检测。
2.2 对于异常行为进行检测。未必需要定义具体的行为类别,但是可以判断出异常。
3 图像时 2D 的,但实际的信息是 3D 的。所以,信息一定会有一定程度的丢失。这在估计人的姿态的时候,还是有一定的影响。但是,人脑(人眼)接受的信息也基本上是 2d 的。也许可以采用 3d 姿态估计。如果使用 kinect 采集到 3D 的信息,那么姿态估计要容易很多,而且效果也更好。如果采用 2D 的话,则仍然比较困难。
4 作者也提到,pose != action
5 估计动作可以根据:shape,motion(移动轨迹),motion 的估计,可以提供更多的语义,但我们目前还做不到。图像里介绍了一下光流法。
Demo 演示资料:
1 https://www.youtube.com/watch?v=lhUfo4Cyfgs 检测站立,行走,坐,躺,弯腰 的演示。
3 https://www.youtube.com/watch?v=eD5b8d7hV6E (Real-time Action Recognition by Spatiotemporal Semantic and Structural Forests.pdf)
5 https://www.youtube.com/watch?v=hHHmWmJG9Rw 异常行为状态检测
6 https://www.youtube.com/watch?v=xKz5DxDWawI An Efficient Star Skeleton Extraction for Human Action Recognition Using Hidden Markov Models
付费资料:
// Deep learning based human behavior recognition in industrial workflows