vibe是一种像素级的前景检测算法,实时性高,内存占有率低,前景检测准确率高。只需要一帧就可以完成初始化。

一种背景提取算法至少要考虑三方面问题:

  1. 模型是什么,它如何工作的
  2. 模型如何初始化
  3. 模型如何随时间进行更新

下面从上述三点对Vibe算法进行描述:

模型是什么,它又是如何工作的

将背景提取看成是分类问题,根据所选颜色空间中的邻域对新像素值进行分类。
Background Segmentation算法之Vibe
对每个像素建模,如图中像素υ(x)\upsilon \left ( x \right ),它的样本模型就是 M(x)={υ1,υ2,...,υn}M\left ( x\right )=\left \{\upsilon _{1},\upsilon _{2},...,\upsilon _{n}\right \}.通过比较在半径为R的圆内,存在多少个它对应的样本像素点个数。
Background Segmentation算法之Vibe
当圆内样本点个数达到预设的阈值(文章中设置为2)时,则可以判断新像素点为背景。

模型初始化

从一张图像进行初始化,克服了突然光照带来的影响。(环境发生改变,之前的背景模型可以丢弃,立刻开始新的模型初始化)

利用这个信息 neighboring pixels share a similar temporal distribution ,l利用用每个像素的空间邻域中的值填充像素模型。如下图:
Background Segmentation算法之Vibe
可以对每个像素领域进行N次采用,获取设定的大小为N的初始化的样本值。
这种方式也存在缺点: he presence of a moving object in the first frame will introduce an artifact commonly called a ghost . 就是说,如果初始化帧存在移动物体(前景),后续的分割将存在"鬼影”。
the ghost is caused by the unfortunate initialization of pixel models with samples coming from the moving object

模型更新

参考:

1. https://blog.csdn.net/zhangping1987/article/details/51860654?depth_1- utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
2. ViBe: A universal background subtraction algorithm for video sequences

相关文章:

  • 2021-06-05
  • 2021-06-02
  • 2021-12-20
  • 2021-10-26
  • 2022-12-23
  • 2021-09-23
  • 2021-05-24
猜你喜欢
  • 2021-06-09
  • 2022-01-24
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
  • 2021-09-17
相关资源
相似解决方案