0. 前言
- 相关资料:
- 论文基本信息
- 领域:时空行为检测
- 作者单位:University of Central Florida(简称UCF,这名字,数据集啊)
- 发表时间:2017 CVPR
1. 要解决什么问题
- 属于早期的基于检测的时空行为检测,探索了基于Faster R-CNN的时序行为检测方法。
2. 用了什么方法
- 提出了T-CNN模型,总体架构如下图所示
- 第一步,将长视频(untrimmed videos)分割为固定长度的clip(如8帧)。
- 第二步,对每个clip通过TPN(tube proposal network)生成每个clip各自的tube。
- 第三步,将所有clip中的tube连接起来(即linking tube proposals)。
- 第四步,将连接得到的长tube通过TOI Pooling等操作,实现行为分类与定位。
- TPN结构
- 这一步生成的action proposal,只判断有没有行为,不判断行为类别。
- 目标:输入8帧图片,输出8个连续的bbox。
- 一些感想:在我看来,对每张图片进行检测+追踪不就可以了吗……
- 这里的思路:对8帧图片使用相同的anchor,然后分别进行 bbox reg 就能得到最终结果了(8次bbox reg的输入是一致的)。
- temporal skip pooling
- 存在的问题:3D CNN其实丢失了帧的顺序信息(order),而temporal skip pooling就是为了保留order信息。
- 具体实现:
- 8帧输入到conv5的时候temporal纬度已经变为1了,通过普通的检测方法获取bbox proporals。
- 在对上述proposal提取特征的时候,到conv2提取。因为conv2时没有对temporal纬度进行操作,可以认为conv2还保留着order信息。
- 输入 conv5 的 proposal + conv2 的 feature,通过类似于RoI Pooling的操作就能提取定长特征,用于后面的操作。
- 后面bbox reg的输入是通过 proposal + (conv2 & conv5) 提取的。
- 8次bbox reg的输入都一致。
- Linking Tube Proposals
- 目标:连接不同clip的tube。
- link的主要条件有两个:actionness(即每个clip中tube的动作得分,得分越高表示存在动作的概率越大)和overlap(即不同clip间tube的IoU,前一个tube最后一帧与后一个tube第一帧的IoU)。
- 通过公式计算前后帧tube之间的得分,按照得分高低进行连接。
- 得分公式如下:
- Action Detection
- 目标:输入上一部得到的Linked之后的tube,对tube进行行为分类。
- 由于tube长度不一样,要对所有tube提取得到定长特征,就需要使用文中提出的ToI Pooling。
3. 效果如何
- 一些结果展示。很显然,在当时这个效果是非常好的。
4. 还存在什么问题&有什么可以借鉴
-
这个不能用在online版本中。
-
思路完全就是检测的two-stage,挺有意思。