背景建模或前景检测之PBAS

本文是根据M. Hofmann等人在2012年的IEEE Workshop on Change Detection上发表的“Background Segmentation with Feedback: The Pixel-Based Adaptive Segmenter”,并结合自己的理解而成的,论文转载请注明出处:。 Pixel-Based Adaptive Segmenter(PBAS)检测算法,从思路和框架上看,该算法是结合了SACON和VIBE两个算法的优势,,并进行了一些细微的改进而成的,算法在检测性能上优于SACON和VIBE。可能有些朋友对SACON和VIBE不熟,下面首先分别简单介绍下SACON和VIBE算法。

(1)SACON算法 SACON算法通过保存视频序列的前N帧作为背景模型,对于newly coming像素,则根据式(1)与背景模型比较:

其中, Tr是一个阈值,用于表示像素值间的差异,c表示通道,对于三通道,则表示(r,g,b)。然后,进一步通过式(2)来判断是前景还是背景:

其中,Tn是阈值,一般取值2/3N*Tr即可。以上即为SACON算法的基本思想,而对于背景更新等其他细节,可以参考文献:Background subtraction based on a robust consensus method。

(2)VIBE算法 采用了一种全新的思想来进行目标的检测,将随机原理引用到目标检测。其基本思想是对于每个像素,在半径为R的范围内进行随机采样,作为该像素点的背景模型,默认采样点为20。接着,对于新进来的像素,将其值与背景模型比较,如果下式大于或等于#min(默认取值为2):

则将该像素判为背景像素,否则为前景。

而在背景模型更新方面,VIBE采用随机选取背景模型中的一个像素点,以一定的概率用当前帧的像素值来替换,并将当前帧的像素值以一定的概率融入到背景模型的邻域中。实验表明,VIBE算法不仅计算复杂度低、速度快、而且准确率高,尤其是作者提出VIBE+后,VIBE算法的性能得到了进一步的提高。更详细的内容请参考论文Background Subtraction: Experiments and Improvements for ViBe或。

有点跑题,还是回到正题来。为了对PBAS有一个正题的印象,我们来看PBAS算法的diagram,如下图所示:

图的左边分别是像素分类的决策阈值更新、背景模型更新率的更新;图的右边是背景模型及背景模型邻域的更新。在背景建模阶段,PBAS算法采用类似SACON算法背景建模的方法,收集前N帧像素以及梯度幅值作为背景模型。新来像素与背景模型比较,比较方法如下式:

其中Bk(xi)表示背景模型中的像素,R(xi)表示像素阈值,#min表示最小的匹配数目,F(xi)=1表示前景。

下面重点来介绍下R(xi),这也是本文的一个重点。

跟传统的全局阈值不一样,在PBAS算法中,每个像素的阈值都是像素相关的,不同位置的判断阈值可能不一样。PBAS算法通过计算前N帧的前N个距离的最小值的平均值来决定各个像素的阈值。具体来说,就是用D(xi)={ D1(xi),D2(xi),…Dn(xi)}表示最小距离矩阵,其中D(xi)= Min( dist(I(xi),Bj(xi))), j=1,2…N。 则对于每个像素来说,其N个最小值的平均值为:

对应的判断阈值R(xi)则通过下式来计算:

勇于接受自己的失败,告诉自己,这就是自己的现实,

背景建模或前景检测之PBAS

相关文章:

你感兴趣的文章:

标签云: