VIBE:一种通用的视频帧序列背景去除算法
论文:ViBe: A universal background subtraction algorithm for video sequences
作者:Olivier Barnich and Marc Van Droogenbroeck
一、初始化像素空间背景模型
1、选择第一帧图片初始化空间背景模型
2、对于第一帧图片中的每个像素v(x))建立空间背景模型作为初始的背景模型,方法是在v(x)的8邻居像素中随机选择N次,论文中N=20;得到像素v(x)的空间背景模型M_(v(x))。
M_v(x) ={v_1,v_2,…,v_N} (公式1)
二、前景与背景像素分割
到了第二帧或者第k帧,首先根据背景模型筛选前景点和背景点
1、以像素v(x)为例,建立一个以像素点v(x)圆心,以R为半径(R=20)的球空间S_R (v(x))。
S_R (v(x))={v_1,v_2,…,v_k} (公式2)
这里R为像素颜色空间中的欧式距离,以RGB颜色空间为例,像素(b1,g1,r1)与像素(b2,g2,r2)的在颜色空间的欧式距离为:
D=√(〖(b_2-b_1)〗2+〖(g_2-g_1)〗2+〖(r_2-r_1)〗^2 ) (公式3)
2、求该像素的空间模型M_v(x) 与球空间S_R (v(x))中元素的交集
#min={M_v(x) ∩S_R (v(x))} (公式4)
3、如果#min大于某个阈值(论文中取2)则认为像素v(x)为背景点。
三、更新背景模型
还是第二步中的这一帧,坚持三个原则:(1)无记忆更新策略(2)随机时间子采样(3)空间邻域更新策略。
1、无记忆更新策略
(1)只更新属于背景的像素的空间背景模型;
(2)随机选择背景模型中的像素进行更新(中间图更新了v1,右边图更新了v3),每个像素都有同等的概率被更新,经过dt时间后,背景模型中每一个像素被保留的概率为P(t,t+dt)=e-ln(N/(N-1))dt;
2、随机时间子采样
(1)不必为每个新帧更新背景模型,当一个像素点被分类为背景时,它有1/φ(论文φ=16)的概率更新背景模型。
(2)前景点计数达到临界值时,将其变为背景,并有1/ φ的概率去更新自己的模型样本值。
3、空间领域更新策略
针对某个像素V值空间背景模型M(v(x)),如果决策使用v(x)’来更新背景模型中的某个像素样本,则还将从像素V的8个邻域中随机选择一个邻居像素V’,用v(x)’使用之前的策略随机更新V’的空间背景模型中的某个像素值。