参考代码:frtm-vos
1. 概述
导读:这篇文章针对视频分割问题提出了一种新的算法frtm-vos,这个算法主要由两个部分组成:target appearance model(文中也叫:light-weight discriminative target model)和segmentation model。这两个子模块分别完成粗略目标分割图的生成和精细分割图的生成,对于target appearance model它通过在infer的时候使用快速收敛的优化算法(GN-CG,Gauss-Newton based strategy - Conjugate Gradient descent)为网络提供粗糙但是生成内容鲁棒的引导,之后后面的segmentation model就用去迭代(使用了backbone的多层特征)生成更加精细的分割结果,由于并没有什么复杂的网络结构并且在线优化也是使用快速优化的算法其整体运行速度还是很快的(手机部署估计是个坑-_-||)。
文章提出的分割算法是半监督的,需要在infer开始的时候提供首帧的标注(但是在一些分割网络中也能通过一些技术手段实现不提供),而文章中的粗略分割模块首先就是在这一帧标注上进行训练,生成粗糙的分割结果。因而文章的数据处理的三个阶段可以描述为下图中表示的3列所示:
2. 方法设计
2.1 整体流程
文章提出的方法其流程见下图所示:
文章提出的流程主要划分为3个部分:
- 1)backbone部分:这部分在给定输入图像的前提下生成对应的特征图: x = F ( I ) x=F(I) x=F(I);
- 2)target model部分:这部分是通过两层卷积构建的粗糙分割网络部分,用以提供上文中提到的粗糙且鲁棒的分割图,这部分在第一帧的时候会进行一轮初始的优化,之后就是用上图中的存储记忆 M M M进行优化了(避免目标移动带来的影响): s = D ( x ; w ) s=D(x;w) s=D(x;w);
- 3)segmentation model部分:这部分是在不同stage的特征上进行分割结果精细优化,从而得到网络最后输出的精细分割结果: y = S ( s , x ; θ ) y=S(s,x;\theta) y=S(s,x;θ);
2.2 Target Model
模块数学表达:
这部分用于生成粗糙的分割结果,这个东西特别轻量级,就是使用两层卷积实现的,因而这部分的输出就可以使用下面的数学描述进行表达:
s = D ( x ; w ) = w 2 ∗ ( w 1 ∗ x ) s=D(x;w)=w_2*(w_1*x) s=D(x;w)=w2∗(w1∗x)
损失函数定义:
对于这个网络的学习其采用的损失函数就是平方损失函数:
L D w ; M = ∑ k γ k ∣ ∣ v k ⋅ ( y k − U ( D ( x k ) ) ) ∣ ∣