运动检测与跟踪_混合高斯背景建模
2017-04-06 21:37
323 查看
在运动检测中,经常使用背景差分的方法来检测视频序列中的运动物体。要做到准确稳定的检测,背景模型的建立与更新是至关重要的一步。
之前查阅这方面文献时,看到的一片关于混合高斯背景模型的背景建模方法。
一、理论
混合高斯背景建模是基于像素样本统计信息的背景表示方法,利用像素在较长时间内大量样本值的概率密度等统计信息(如模式数量、每个模式的均值和标准差)表示背景,然后使用统计差分(如3σ原则)进行目标像素判断,可以对复杂动态背景进行建模,计算量较大。
在混合高斯背景模型中,认为像素之间的颜色信息互不相关,对各像素点的处理都是相互独立的。对于视频图像中的每一个像素点,其值在序列图像中的变化可看作是不断产生像素值的随机过程,即用高斯分布来描述每个像素点的颜色呈现规律【单模态(单峰),多模态(多峰)】。
对于多峰高斯分布模型,图像的每一个像素点按不同权值的多个高斯分布的叠加来建模,每种高斯分布对应一个可能产生像素点所呈现颜色的状态,各个高斯分布的权值和分布参数随时间更新。当处理彩色图像时,假定图像像素点R、G、B三色通道相互独立并具有相同的方差。对于随机变量X的观测数据集{x1,x2,…,xN},xt=(rt,gt,bt)为t时刻像素的样本,则单个采样点xt其服从的混合高斯分布概率密度函数:
其中k为分布模式总数,η(xt,μi,t, τi,t)为t时刻第i个高斯分布,μi,t为其均值,τi,t为其协方差矩阵,δi,t为方差,I为三维单位矩阵,ωi,t为t时刻第i个高斯分布的权重。
详细算法流程:
二 代码实现
OpenCV中实现了两个版本的高斯混合背景/前景分割方法(Gaussian Mixture-based Background/Foreground Segmentation Algorithm),调用接口很明朗,效果也很好。
可以查阅 : bgfg_gaussmix.cpp
之前查阅这方面文献时,看到的一片关于混合高斯背景模型的背景建模方法。
一、理论
混合高斯背景建模是基于像素样本统计信息的背景表示方法,利用像素在较长时间内大量样本值的概率密度等统计信息(如模式数量、每个模式的均值和标准差)表示背景,然后使用统计差分(如3σ原则)进行目标像素判断,可以对复杂动态背景进行建模,计算量较大。
在混合高斯背景模型中,认为像素之间的颜色信息互不相关,对各像素点的处理都是相互独立的。对于视频图像中的每一个像素点,其值在序列图像中的变化可看作是不断产生像素值的随机过程,即用高斯分布来描述每个像素点的颜色呈现规律【单模态(单峰),多模态(多峰)】。
对于多峰高斯分布模型,图像的每一个像素点按不同权值的多个高斯分布的叠加来建模,每种高斯分布对应一个可能产生像素点所呈现颜色的状态,各个高斯分布的权值和分布参数随时间更新。当处理彩色图像时,假定图像像素点R、G、B三色通道相互独立并具有相同的方差。对于随机变量X的观测数据集{x1,x2,…,xN},xt=(rt,gt,bt)为t时刻像素的样本,则单个采样点xt其服从的混合高斯分布概率密度函数:
其中k为分布模式总数,η(xt,μi,t, τi,t)为t时刻第i个高斯分布,μi,t为其均值,τi,t为其协方差矩阵,δi,t为方差,I为三维单位矩阵,ωi,t为t时刻第i个高斯分布的权重。
详细算法流程:
二 代码实现
OpenCV中实现了两个版本的高斯混合背景/前景分割方法(Gaussian Mixture-based Background/Foreground Segmentation Algorithm),调用接口很明朗,效果也很好。
可以查阅 : bgfg_gaussmix.cpp
相关文章推荐
- 混合高斯背景建模-视频的运动目标检测
- 运动目标检测_混合高斯背景建模
- 车辆前景检测算法——GMM(高斯混合背景建模)
- 背景建模与前景检测(一)——混合高斯GMM
- 运动目标检测_单高斯背景建模
- 运动目标的背景建模-混合高斯背景建模和KNN模型建模的OpenCV代码实现
- 将用于视频运动检测的单高斯背景建模算法移植于YUV颜色空间
- 基于平均背景建模的运动目标检测
- 高斯混合背景建模的改进方案
- 混合高斯背景建模理解
- 混合高斯背景建模
- 运动目标检测知识整理(背景建模 VIBE 背景差分 帧间差分 光流 HOG Adaboost SVM 显著性检测)
- 混合高斯背景建模理解(原创)
- 背景建模--高斯混合模型
- 混合高斯背景建模
- 改进的混合高斯背景建模
- 混合高斯背景建模
- 运动检测(前景检测)(入门学习背景建模)
- 混合高斯背景建模原理及实现
- 高斯混合背景建模