文章来源
关键点
- 采用two-stream的全卷积神经网络结构,结合视频中的形态信息和运动信息,实现pixel-level的分割。
- 考虑到缺少大量视频数据库中pixel-level的分割标记,因此采用ImageNet图像分割数据库结合视频数据库中的弱标记(bounding box),生成视频序列的pixel-level的分割标记。
如何使用视频序列中的运动信息?
- 在propagation和交互式分割技术中,通常很依赖每一帧中的形态信息。运动信息仅仅用来传递分割结果和加强分割结果的时间一致性。
- 在全自动分割技术中,首先利用运动信息初始化分割,使得分割定位在运动物体周围。然后通过形态信息在序列中实现物体的追踪。
因此现有的方法将运动信息和形态信息作为前后/不连续的处理过程,并没有并行有效的融合这两种信息。
算法
个人认为文中采用的方法并不是end-to-end的训练,而是采用stage-wise的训练方法:首先(利用ImageNet)得到形态信息的分割模型,然后对于training videos生成pixel-level的标注,用来训练运动信息的模型。最后再将这两个stream融合形成分割结果。- appearance stream
其实本质上就是DeepLab V3的结构,处理原始图像输入,得到仅仅考虑形态信息的分割结果。 - motion stream
输入为光流场信息,训练motion stream的目标是将光流场信息映射为分割结果。但是其关键问题是这样的训练集(视频序列才能得到光流场)不容易得到。所以需要采用一定的方法自己生成训练集(这部分读者感兴趣可以读原文),然后再用这个训练集训练motion stream。 - fusion model
首先需要明确:分割结果是可靠的,当 a) appearance stream或者motion stream以一个很大的置信度分割;b) 其两者结合有很大的置信度。因此我们采用三个独立并行的分支:a) 分别对应appearance stream和motion stream的输出 b) 和上面a)的结构一样在后面采用逐项素乘积来获得融合的输出。
注意:我们需要appearance stream和motion stream都有一个独立的很好的预测,因此fusion model没有在early stage就融合。最后利用少量真正的视频分割的标注来训练fusion model(并不是完全的端对端的训练的方式)。
- appearance stream
总结
这篇文章应该是第一个在CNN领域同时利用appearance 和 motion 信息来实现分割的方法,其实我们在看这篇文章的时候个人认为这样的网络构架是需要重点学习的,至于如何bootstrap生成pseudo标注根据不同的应用不一定是必须的。