Fixed BackgroundSubstractorMOG2 in opencv_video.

The number of gaussians involved in a mixture is supposed
to be dynamically adjusted. After being increased, the number
of gaussians can't be reduced anymore.

It seems to be a regression as the legacy code
located in modules/legacy/src/bgfg_gaussmix.cpp allows to reduce
such number of gaussians.
This commit is contained in:
Gilles Rochefort 2016-05-29 17:25:02 +02:00
parent eca752368b
commit 9e53f03968

View File

@ -594,7 +594,7 @@ public:
//internal:
bool fitsPDF = false;//if it remains zero a new GMM mode will be added
int nmodes = modesUsed[x], nNewModes = nmodes;//current number of modes in GMM
int nmodes = modesUsed[x];//current number of modes in GMM
float totalWeight = 0.f;
float* mean_m = mean;
@ -700,8 +700,6 @@ public:
gmm[mode].weight *= totalWeight;
}
nmodes = nNewModes;
//make new mode if needed and exit
if( !fitsPDF && alphaT > 0.f )
{