1. 程式人生 > >Activity Recognition行為識別

Activity Recognition行為識別

     

Activity Recognition行為識別

分類: Computer Vision 8459人閱讀 評論(28) 收藏 舉報 【原文地址: http://blog.csdn.net/abcjennifer/article/details/7976145】   

暑假聽了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>


暑假聽了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>