PbModel是基于概率模型的背景差分算法,其基本思想是像素点会因光照变化、运动物体经过产生多种颜色值,但是一段时间内,像素点处于静止状态的时间会比处于运动状态的时间长。因而一段时间内,像素点某个颜色值出现的概率会高于其他颜色值,高概率的颜色值即为该像素点的背景值。
创新点
1.关注基于概率的背景模型的内存占用率和计算复杂度
基于概率的背景模型是常用的背景建模方法,但是现有一些算法,其内存占用率高,计算复杂度大。
该算法利用聚类减少内存占用率,将像素点可能出现的颜色值,按距离聚类,以聚类中心代替颜色值,从而减少内存占用率。
利用不固定长度的帧序列建立背景模型,由于许多像素点一般都处于静止状态,只需要少量的帧序列就可以确定高概率的颜色值(即背景值),选取一个计算初始帧序列长度,从而确定大部分的背景值,然后针对少量的背景值,继续统计,并减小判断是否为高概率的阈值,保证算法的收敛,最终建立起完整的背景模型。
2.关注于前景检测的判定阈值
分析背景差分图像的直方图信息,利用直方图的变化曲线来确定判定阈值,采用直方图变化曲线的波谷位置作为判定阈值。
基本框架图
主要步骤:
1.建立背景模型
1).初始化像素的聚类集合,C表示聚类里包含像素的数目,nxy表示聚类标号,x、y表示像素点位置。
2).计算当前像素与像素聚类集合的距离,并计算最小距离和对应的聚类。
3).判断最小距离是否小于阈值,若小于,则更新对应聚类,否则,新建一个聚类,添加到聚类集合中。
4).判断是否到初始帧序号Fn,若达到,则计算像素各个聚类的概率,并求最大概率的聚类,否则,继续跳转步骤2)处理下一帧。
5).判断最大概率是否大于阈值,若大于,则设置对应聚类的中心为该像素点的背景值。
6).调整背景建模速度,根据帧序号调整阈值大小,帧序号越大,阈值越小。
7).跳转步骤2)处理下一帧,直到所有像素点的背景值确定。
2.前景检测过程
1).计算当前帧序与背景的差分图像。
2).计算差分图像的直方图信息。
3).平滑各个通道的直方图信息。
4).计算各个通道的阈值大小。
5).计算差值图像的阈值。
6).利用阈值判定像是否为前景。
3.背景模型更新
背景模型更新采用简单的图像混合算法,利用新像素值和背景模型的像素值的加权和,替换背景模型的像素值。
其中,(Rs,Gs,Bs)为当前像素值,(RB,GB,BB)为背像像素值,n为背景模型更新学习因子控制参数。
参考资料:
A Robust Object Segmentation System Using a Probability-Based Background Extraction Algorithm