视频检测之:GOSUS算法 —— Grassmannian Online Subspace Updates with Structured-sparsity
来源:互联网 发布:网络变压器品牌 编辑:程序博客网 时间:2024/06/14 23:30
文献来源: Xu J, Ithapu V K, Mukherjee L, et al. GOSUS: Grassmannian online subspace updates with structured-sparsity[C]//Proceedings of the IEEE International Conference on Computer Vision. 2013: 3376-3383.
题目分析 —— Overview and Highlight
Grassmannian 是什么?
简单来说,Grassmannian 是 manifold learning 衍生出来的名词。在 GOSUS 算法中,我们认为背景信号(也就是压缩感知角度理解的待估计的信号)是 lie on 在 grassmannian 流体上的,也表示子空间由一组正交基张成 I = UUT。后面算法具体在更新子空间 U 时,正是利用了 grassmannian 的这个特点,保证了 online 处理每一帧图像能够有效更新子空间。Online 是什么?
所谓online处理是指,相对于基于传统RPCA的视频检测方法,online 的方式不需要一次处理整个 batch 的数据,而是一帧一帧的对于视频流进行“在线”的处理方式。 这种 online 的方式能够降低内存消耗和数据处理的计算量,从而达到实时处理的效果。Subspace Update 是什么?
subspace update 其实就是 subspace tracking 算法另一种说法。 在 GOSUS 中,认为背景区域(low-rank的特征)是依赖于一个子空间 subspace,而且给定某图像帧的背景,可以用子空间的基的线性组合表示。因此对于 online 的视频图像帧处理方法,就是不断的更新背景的子空间来适应新来的 图像帧 的背景估计。这也就是整个算法的一个关键——如何更新子空间。Structured-sparsity 是什么?
依旧是老生常谈的问题,在 block-sparsity based RPCA 方法里面也提到,利用 structured-sparsity 对前景信号进行正则化能够引入空间先验知识。注意的一个误区(博主之前有过的误区):所有的structured-sparsity 的空间先验并不是对于整个图像区域都有要求的空间连续,而是对于很有可能是前景区域的部分才加入 structured-sparsity 正则化。包括 block-sparsity based RPCA 和 GOSUS 算法,一般都是需要先有一个粗的提取结果或者 superpixel 的结果,再对这样的粗提取结果的区域进行 structured-sparsity 正则化。 在本文 structured-sparsity 对应的是 对 group 结构进行 2,1 范数约束。
综述
在 online subspace learning 框架中,我们认为信号是由两部分构成。
- main effect 部分。这个部分和子空间相关,可以认为 main effect 信号由子空间张成。
- residual error 部分。 原始信号往往不能完全的 fit 到 main effect 信号上面,因此存在对应的 residual error 部分。为了使该残差项尽可能小,传统算法对该项有稀疏性惩罚。
然而现有的这些方法无法面对具有连续运动的背景的情况,造成子空间估计的不稳定,而且前景区域也会存在这散乱分布在整个图像区域内的椒盐噪声状的区域。博主理解是,算法子空间的不准确计算导致无法对背景的运动部分建模,使得动态背景被误认为前景区域。因此将此残差项考虑结构连续性而不仅仅作为 noise 项,有助于 main effect 信号的估计,且对于视频检测问题更加贴切。
思路还是和 block-sparsity RPCA 相似,对可能的前景区域的粗估计是很重要的,这样的粗估计也就形成 误差项 的 structured-sparsity 信息。往往这样的粗估计反映了不同的实际需求。
Highlight
- 展示了如何在定义在Grassmainnian 流体上的优化问题中,引入 structured-sparsity 正则化信息。
- 利用 ADMM 的策略对优化问题进行求解。
算法详解
模型建立
其中 n 是每一帧图像中像素的个数,m 是图像帧数。
背景 B 的每一帧可以由子空间 U 的基的线性组合表示,同时子空间的基也是 n 维向量。需要注意的是子空间中基的个数一般远远小于 n,因为相邻视频帧的对应背景变化相对不大,仅仅需要很少的自由度(也就是子空间中基的个数)就可以 recover 出来。U 具有正交的结构,且 lie on n 维的 Grassmannian manifold 上。现在对于 online 版本而言,。 v 是当前的视频帧 ; 是不能由 子空间 U support 的对应误差项,x 也是需要进行 structured-sparsity 正则化的目标。我们的目标是求得对于每一帧的 U, w, x :
Structured-sparsity
对于背景分离问题,前景区域的纹理特征或者颜色特征往往具有均质性,所有反映在模型的建立上为具有结构特征的连续性,用 structured-sparsity 来描述。具体来说,这些结构性的 group 表现在一些图像上的滑动窗,或者通过前处理得到的 super-pixel 结构(这些往往对应于具有视觉有效性的区域)。这些 group 形成对角阵 D,反映对应像素是否包含在 group 内。因此惩罚项:
这个惩罚项对应的 group 可以是 overlapping 的,也可以是 disjoint 的。本质上,惩罚项是 2,1 范数,其效果是使得 group 内的像素具有相近的 weight,且让尽可能少的 group 被选中。值得注意的: D 矩阵的选取是和特定的应用需求有关。优化方法
由于是视频序列问题,因此对于当前帧图像的处理,可以考虑之前处理的图像帧的结果。这点尤其反映在对子空间 U 的优化上。 由于 U 矩阵具有酉矩阵的特点,因此 cost function 并不是 convex 的,因此对于 U 的优化是比较难的。但是考虑到 U 是处于 Grassmainnian 流体上的,在图像帧与帧之间并不会有非常大的差别,因此对于特定图像帧上 U 的求解是采用 update 的方式,在前一帧得到的 U 的基础上进行更新。
Fix U ,对 w 和 x 进行求解(凸问题求解有效)。采用ADMM框架进行求解,注意其中加入松弛变量,引入对应约束条件。同时优化多个变量较难,因此采用交替优化的方式,迭代的固定其他的优化,然后反复迭代最后收敛到最优解。
- Fix w 和 x,对 U 进行更新(利用Grassmainnian流体的特点)。注意求解当中要保证 U 的正交性。
总结
总的来说, GOSUS 算法提供了 RPCA 的 online 版本的 GRASTS 的扩展版本,相比于 GRASTS 的优势在于能够考虑结构稀疏性,以 Grassmainnian 流体的方式更新矩阵 U,从而得到实时且较好的视频检测效果。
- 视频检测之:GOSUS算法 —— Grassmannian Online Subspace Updates with Structured-sparsity
- 视频前背景分离论文之(2) GOSUS: Grassmannian Online Subspace Updates with Structured-sparsity
- JMLR11-Learning with Structured Sparsity
- 结构化稀疏----Learning with Structured Sparsity(学习与结构化稀疏)
- 视频检测之: DECOLOR 算法
- Learning Structured Sparsity in Deep Neural Networks
- 压缩感知——SP(subspace pursuit)重构算法前言翻译
- 深度学习笔记——理论与推导之Structured Learning【Learning with Hidden Information】(九)
- 深度学习笔记——理论与推导之Structured Learning【Structured Linear Model】(六)
- 深度学习笔记——理论与推导之Structured Learning【Structured SVM】(七)
- 离线检测之navigator.onLine
- 聚类小练习2——FSC(Fuzzy subspace clustering)
- structured streaming ——wordcounts_kafka
- 视频前背景分离论文之(3) Group Sparsity in Nonnegative Matrix Factorization
- 视频黑场检测算法
- 神经网络压缩(4) Learning Structured Sparsity in Deep Neural Networks
- non-linear stationary subspace analysis with application to video classification
- 笔记:Learning Robust and Discriminative Subspace With Low-Rank Constraints
- C++中虚继承的作用及底层实现原理
- HDU 2546 饭卡(01背包)
- grpc简易教程 go server+php client
- Javaweb基础----过滤器filter(转发)
- Ubuntu16.04安装QQ在处理时有错误发生: wine-qqintl
- 视频检测之:GOSUS算法 —— Grassmannian Online Subspace Updates with Structured-sparsity
- 关于排序算法(持续更新)
- Android ANR产生原因和解决办法
- 4.2线程局部变量(Thread-Local Variables)
- 计算机中的科学计数法
- python实现进度条
- 【C#】Lambda表达式
- LightOJ 1074 Extended Traffic(SPFA+负环)
- mySQL创建表时添加表和列的注释,以及查看表和列的注释