2009 年,Marc Van Droogenbroeck 等人提出了一种新的背景建模法: ViBe(Visual Background Extractor)算法。Vibe 是一种通用的运动目标检测算法,对于视频流类型、颜色空间、场景内容没有特定要求。 ViBe: A universal background subtraction algorithm for video sequences
既然是背景建模,就必须解决一个问题,那就是怎么描述背景,ViBe将连续视频序列的背景定义为图像中每个像素位置的像素值的集合,这个集合的个数是可调整的,默认为20。
初始化是建立背景模型的过程,一般的检测算法需要一定长度的视频序列学习完成,影响了检测的实时性,而且当视频画面突然变化时,重新学习背景模型需要较长时间。 ViBe算法主要是利用单帧视频序列初始化背景模型,对于一个像素点,结合相邻像素点拥有相近像素值的空间分布特性,随机的选择它的邻域点的像素值作为它的模型样本值。
在当前建立的背景下,存在每个像素位置的样本点集合,数量为N=20。对于一个新位置的像素点,如果满足下列条件,将属于背景:
