4

我只是想知道这个函数CvBGStatModel()是如何工作的。我的意思是说用于此的算法是什么,以及与平均和帧差算法相比,它如何提供更好的结果。

提前致谢。

4

1 回答 1

3

CvBGStatModel() 是一个类,而不是一个函数。例如,您可以像这样创建此类:

IplImage* temp = NULL;
temp = cvLoadImage( "temp.jpg" );
CvBGStatModel* background_model = cvCreateGaussianBGModel(temp);

您必须调用一个函数才能更新背景/前景模型(参见示例):

cvUpdateBGStatModel( temp, background_model );

“与平均和帧差算法相比,它如何提供更好的结果”

因为它将像素信息存储为能够更好地表示该像素的高斯分布的混合。这意味着在几帧期间改变其值的像素不会被视为前景,只要更好地表示它的高斯被视为背景。高斯是加权的。最长的高斯分布被认为是背景,它的权重就越大。帧差异算法只考虑帧之间的差异,而不考虑这些差异的一致性/可信度。

于 2012-05-31T11:39:30.760 回答