暑假听了computer vision的一个Summer School,里面Jason J. Corso讲了他们运用Low-Mid-High层次结构进行Video Understanding 和 Activity Recognition的方法,受益颇深,在这里把他的方法总结一下:

-------------------------------------------------------------------------------------------------

1. 层次结构表示:

  • 底层part 重用
  • 每个object都是一个由有向和无向边连接起来的混合图
  • 底层通过非线性学习让原子节点形成时空线、平面和区域

人的活动呢,就是这些object在中层和高层连接的混合图

-------------------------------------------------------------------------------------------------

2. Motion Perception——STS

Different action stimulate different subpopulation of cells.

-------------------------------------------------------------------------------------------------

3. Activity Recognition

Corso的方法:

  • Low-Level:底层最effective的做法是Bag of Features,特征为bottom-up / low level的时空特征,随着时间和层次不断update。通过模版进行底层object检测;
  • Mid-Level:中间层从images中检测、跟踪2D骨架pose,并通过背景内容分析动态pose;
  • High-Level:高层活动组合方法为,将不同时间点的feature组成时间-概率模型。时间上进行feature的时空跟踪,概率上根据组成语法进行概率模型的组合。
  • Recognition的另一种表示方法:Segmentation

思想:建立Space-Time Patch Descriptors,组成visual Words直方图,建立多通道分类器。

找出shikongHarris角点:

要求在feature上进行Densely Sample而非Sparse Sample。

提取Action Feature:f,用HOG/HOF描述

Space-Time Patch描述子形成histogram。每个histogram,是特征点在x,y,t三个分量上的直方图。

但是采用HOG、HOF存在问题,就是只能从前后帧去看,而不能考虑整个球的特征变化。出于这一想法,提出了HOG3D, 该特征在BMVC08中有文章进行具体描述,此处不予赘述,大家有兴趣去看文章吧。

-------------------------------------------------------------------------------------------------

4. 行为轨迹

采用 KLT: Kanade-Lucas-Tomasi Feature Tracker 进行特征点的跟踪,可作为局部特征检测的辅助手段。

  • Trajectories by Local Keypoint Tracking
  • Use Dense Trajectory(Dense sampling can improve object recognition and action recognition)
  • CVPR 2011 Wang et al. “Action Recognition by Dense Trajectories.”中提出了一种方法,用一个单密度光流场跟踪轨迹
  • 用HOG/HOF/MBH进行轨迹点描述

-------------------------------------------------------------------------------------------------

5. Action Bank

图中所示为Action bank的基本思想<CVPR 2012: Action Bank: A High-Level Representation of Activity in Video>

Action bank :

 
二维图像识别问题中,object bank的分bin统计方法,视频中的action bank就是搞成三维统计(加一维时间)
 
 
  • classifier 使用SVM分类器:
e.g. 对于打篮球这个action,根据高层表现,将jumping ,throwing, running 加入正样本,将biking,fencing,drumming加入负样本,用SVM进行打篮球二类分类训练。
 
PS: 作者曾使用L1-Regularization 和 随机森林,都没有明显的改善。
 
 
  • 实现Action Bank的建立:

1.  选取UCF上的50个action,KTH上6个action和visint.org上的digging action,组成205 templates totally

2.  每个action选择3-6个不同视角、style或运动节奏的examples

3.  平均分辨率:50×120pixel;40-50frames/example

简单的说呢,就是根据不同视角、style和运动节奏来描述一个templates,由此组成了205个模版,描述57个action。

  • 关于模版
1.  只要一个新的视点/运动节奏/style被找到了,就选择该模板
2.  每个template都由人工裁剪到时空范围内都有human action的大小
 
Action Bank分类结果:

-------------------------------------------------------------------------------------------------

6.  基于Human Pose方法的Activity 识别

  • 将人分为不同part,进行各部分的姿势估计可以清晰的进行model描述。

  • 3D Human Pose Estimation:

-------------------------------------------------------------------------------------------------

7.  基于Parts的Human Pose Estimation

模型结合了局部appearance和对称结构,有多篇文章涉及模型估计:

Pictorial Structures (Fischler & Elschlager 73, Felzenswalb and Huttenlocher 00) 
Cardboard People (Yu et al 96) 
Body Plans (Forsyth & Fleck 97)  
Active Appearance Models (Cootes & Taylor 98) 
Constellation Models (Burl et all 98, Fergus et al 03)

采用deformable part model

Slide credit: D. Ramanan.  Method is from Yang and Ramanan, CVPR 2011.

Result:

  • Dynamic Pose based Activity Recognition
1. For skeletal pose, we construct a k-means codebook of 1000 visual words from 24-dimensional skeletal pose data using Euclidean distance. For dynamic pose, we construct codebook using our specific distance function.  
2. For classification we use many one-versus-one histogram intersection kernel SVMs. 
3. 处理dynamic pose和全局context都在动的情况,用 HoG3D and Dense Trajectory可得better效果。      

-------------------------------------------------------------------------------------------------

9.视频分割:Beyond Points for Video Understanding

标准方法:

  • meanshift
  • Graph-Based
  • Hierarchical graph-based
  • Nystrom normalized cuts
  • Segmentation by weighted aggregation

ECCV 2012 Xu, Xiong and Corso的方法:将视频看做一个流,根据流向和时间上的马尔科夫假设建立一个估计构架,进行video分割。

Segmentation: S = {S1, S2, ... , Sm}

Input Video: V = {V1, V2, ... , Vm}(时间序列上的输入流)

取S*=arg min E(S|V)

在一个layer的分割中采取:

在整个hierarchy中采取同样假设:

<ECCV 2012 Xu, Xiong and Corso>

from: http://blog.csdn.net/abcjennifer/article/details/7976145

Activity Recognition行为识别的更多相关文章

  1. Heterogeneity Activity Recognition Data Set类别

    Heterogeneity Activity Recognition Data Set:https://archive.ics.uci.edu/ml/datasets/Heterogeneity+Ac ...

  2. Host–Parasite(主从关系): Graph LSTM-in-LSTM for Group Activity Recognition

    This article aims to tackle the problem of group activity recognition in the multiple-person scene. ...

  3. Recent papers on Action Recognition | 行为识别最新论文

    CVPR2019 1.An Attention Enhanced Graph Convolutional LSTM Network for Skeleton-Based Action Recognit ...

  4. Face Recognition 人脸识别该如何测试

    猪圈子,一个有个性的订阅号 01 测量人脸识别的主要性能指标有 1.误识率(False;Accept;Rate;FAR):这是将其他人误作指定人员的概率; 2.拒识率(False;RejectRate ...

  5. PokerNet-poker recognition: 扑克识别 (6)

    文章目录 准备 最终结果 未来改进 准备 机器: Titan XP 12GB, 64GB RAM, 机器非常强,可靠. 下次有机会购买RTX 2080 Ti 试试 最终结果 错误率可以达到万分之一,非 ...

  6. 基于Deep Learning 的视频识别方法概览

    深度学习在最近十来年特别火,几乎是带动AI浪潮的最大贡献者.互联网视频在最近几年也特别火,短视频.视频直播等各种新型UGC模式牢牢抓住了用户的消费心里,成为互联网吸金的又一利器.当这两个火碰在一起,会 ...

  7. 行为识别(action recognition)相关资料

    转自:http://blog.csdn.net/kezunhai/article/details/50176209 ================华丽分割线=================这部分来 ...

  8. 【计算机视觉】行为识别(action recognition)相关资料

    ================华丽分割线=================这部分来自知乎==================== 链接:http://www.zhihu.com/question/3 ...

  9. android第一行代码-3.activity之间的调用跟数据传递

    前面两节所有应用都是同一个activity中的,是时候讲activity之间交互的操作了,此后会涉及到intent这个概念,这也算一个新的里程碑开始. 主要内容包括intent的使用,以及activi ...

随机推荐

  1. HTML5表单学习笔记

    表单在网页设计中的作用非常重要,HTML5又增加了表单方面的诸多功能,包括增加input输入类型,input属性,form元素,form属性等,解决了我们以前比较头疼或者繁琐的功能. 新增的输入类型 ...

  2. SASS学习笔记_02

    导入 当模块化布局的时候 导入头和尾 私有化 不生成css文件 文件名前面加下划线   结果   嵌套导入   导入css文件 不推荐   注释 和默认变量值

  3. 我是IT小小鸟

    我是IT小小鸟读后感 世界上没有一蹴而就的成功者,只有头悬梁锥刺股的奋斗者.蜉蝣向往大鹏的辉煌,却不曾知大鹏以往的汗水.蜉蝣之所以为蜉蝣,是因为它犹如井底之蛙,目光短浅,之盲目地羡慕成功者,而大鹏之所 ...

  4. vmware workstation 10.0

    2013.9.3 vmware workstation 10.0 build 1295980新增功能– 可以将windows 8.1物理pc转变为虚拟机:unity模式增强,与windows 8.1 ...

  5. netty 粘包问题处理

    netty 粘包问题处理 key words: netty 粘包 解包 半包 TCP 一般TCP粘包/拆包解决办法 定长消息,例如每个报文长度固定,不够补空格 使用回车换行符分割,在包尾加上分割符,例 ...

  6. 【BZOJ】【2809】【APIO2012】派遣dispatching

    贪心/可并堆 跪了……我这么弱果然还是应该回家种红薯去…… 考虑选人的时候,每个人对答案的贡献其实是一样的,都是1,那么我们就贪心地去选花钱少的就好啦~ 具体的做法:倒着枚举(因为有b[i]<i ...

  7. Oracle 时间处理(加减)

    一. 类似SQL SERVER中DateAdd select sysdate,add_months(sysdate,12) from dual;        --加1年 select sysdate ...

  8. 关于Web与JS

    Web包含的范围比较广, JS只是代码逻辑而已. Web比如HTTP Message, SOAP Message, 浏览器流程,工具等. 不仅仅是代码.

  9. Unity bundle的制作和使用

    原地址:http://unity3d.9ria.com/?p=2863 Unity有个很好的功能,大致是很多专注于PC的engine没有提供的(因为没有必要),就是能加载主包外的资源,这个主包外的资源 ...

  10. SGU101

    Dominoes – game played with small, rectangular blocks of wood or other material, each identified by ...