【笔记】Action Recognition from video (一)

xiaoxiao2021-02-28  129

一.      视频内容

人物+场景+动作+语音

二.      传统手工特征-iDT

1.      密集采样:DT方法通过网格划分的方式在图片的多个尺度上分别密集采样特征点

2.      去除特征点:去除一些特征点(此处的方法是计算每个像素点自相关矩阵的特征值,并设置阈值去除低于阈值的特征点。阈值由下式决定:T=0.001×maxiImin(λ1i,λ2i))

3.      在时间序列上跟踪这些特征点: 是通过计算特征点邻域内的光流中指来得到特征点的运动方向的。

4.      轨迹获得:某个特征点在连续的L帧图像上的位置即构成了一段轨迹(Pt,Pt+1,...,Pt+L),后续的特征提取即沿着各个轨迹进行。由于特征点的跟踪存在漂移现象,故长时间的跟踪是不可靠的,所以每L帧要重新密集采样一次特征点,重新进行跟踪。

5.      运动/结构描述子:存在着大量的轨迹,每段轨迹都对应着一组特征(trajectory,HOG,HOF,MBH),因此需要对这些特征组进行编码,得到一个定长的编码特征来进行最后的视频分类。DT算法中使用Bagof Features方法进行特征的编码,在训练完码书后,对每个视频的特征组进行编码,就可以得到视频对应的特征。

6.      分类:SVM-训练多类分类器。

iDT算法主要改进在于对光流图像的优化,特征正则化方式的改进以及特征编码方式的改进:

1.      估计相机运动估计来消除背景上的光流以及轨迹=利用前后帧图像计算投影变换矩阵

图像中人的动作可能比较显著,人身上的匹配点对会使得投影矩阵的估计不准确。因此iDT算法中使用一个huamandetectorDL)检测人的位置框,并去除该框中的匹配点对。从而使得人的运动不影响投影矩阵的估计。

2.      HOF,HOGMBH特征采取了L1正则化后再对特征的每个维度开平方的方法

3.      Fisher Vector编码

Fisher Vector同样也是先用大量特征训练码书,再用码书对特征进行编码。????

iDT代码注释和介绍//下载opencvffmpeg

http://blog.csdn.net/wzmsltw/article/details/53221179

CVPR2015中的”Action Recognition withTrajectory-Pooled Deep-Convolutional Descriptors”的思路就是沿着轨迹利用CNN提取特征

 

三.      Deep Learning

基于单帧的识别方法: 将视频进行截帧,某一帧通过CNN获得一个识别结果, 学习视频时间域上的表达是提高视频识别的主要因素.

基于CNN扩展网络的识别方法:CNN框架中寻找时间域上的某个模式来表达局部运动信息,从而获得总体识别性能的提升。

双路CNN的识别方法:上面一个就是普通的单帧的CNN,而且文章当中提到了,这个CNN是在 ImageNet的数据上pre-train,然后在视频数据上对最后一层进行调参。下面的一个CNN网络,就是把连续几帧的光流叠起来作为CNN的输入。

 =====================================================================================================================================

Kinect视频识别

一. 手势

8个通用的手势:挥手(wave),悬浮按钮(hoverbutton),磁吸按钮(magnet button),推按钮(pushbutton),磁吸幻灯片(magnetic slide),通用暂停(universalpause),垂直滚动条(vertical scrolling)和滑动(swipping)

基于算法的手势识别、基于神经网络的手势识别和基于样本库的手势识别。

转载请注明原文地址: https://www.6miu.com/read-29766.html

最新回复(0)