我只是想知道这个函数CvBGStatModel()是如何工作的。我的意思是说用于此的算法是什么,以及与平均和帧差算法相比,它如何提供更好的结果。
提前致谢。
我只是想知道这个函数CvBGStatModel()是如何工作的。我的意思是说用于此的算法是什么,以及与平均和帧差算法相比,它如何提供更好的结果。
提前致谢。
CvBGStatModel() 是一个类,而不是一个函数。例如,您可以像这样创建此类:
IplImage* temp = NULL;
temp = cvLoadImage( "temp.jpg" );
CvBGStatModel* background_model = cvCreateGaussianBGModel(temp);
您必须调用一个函数才能更新背景/前景模型(参见示例):
cvUpdateBGStatModel( temp, background_model );
“与平均和帧差算法相比,它如何提供更好的结果”
因为它将像素信息存储为能够更好地表示该像素的高斯分布的混合。这意味着在几帧期间改变其值的像素不会被视为前景,只要更好地表示它的高斯被视为背景。高斯是加权的。最长的高斯分布被认为是背景,它的权重就越大。帧差异算法只考虑帧之间的差异,而不考虑这些差异的一致性/可信度。