Merge pull request #8342 from grundman:patch-1

pull/8508/head
Vadim Pisarevsky 8 years ago
commit 2409924dbc
  1. 16
      modules/video/src/bgfg_gaussmix2.cpp

@ -693,11 +693,16 @@ public:
//go through all modes
//////
//renormalize weights
totalWeight = 1.f/totalWeight;
// Renormalize weights. In the special case that the pixel does
// not agree with any modes, set weights to zero (a new mode will be added below).
float invWeight = 0.f;
if (std::abs(totalWeight) > FLT_EPSILON) {
invWeight = 1.f/totalWeight;
}
for( int mode = 0; mode < nmodes; mode++ )
{
gmm[mode].weight *= totalWeight;
gmm[mode].weight *= invWeight;
}
//make new mode if needed and exit
@ -900,7 +905,10 @@ void BackgroundSubtractorMOG2Impl::getBackgroundImage_intern(OutputArray backgro
if(totalWeight > backgroundRatio)
break;
}
float invWeight = 1.f/totalWeight;
float invWeight = 0.f;
if (std::abs(totalWeight) > FLT_EPSILON) {
invWeight = 1.f/totalWeight;
}
meanBackground.at<Vec<T,CN> >(row, col) = Vec<T,CN>(meanVal * invWeight);
meanVal = 0.f;

Loading…
Cancel
Save