learningRate = learningRate >= 0.0f && nframes_ > 1 ? learningRate : 1.0f / std::min(2 * nframes_, history);
CV_Assert(learningRate >= 0.0f);
- if (learningRate > 0.0f)
- mog2_gpu(frame, frame.channels(), fgmask, bgmodelUsedModes_, weight_, variance_, mean_, learningRate, -learningRate * fCT, bShadowDetection, StreamAccessor::getStream(stream));
+ mog2_gpu(frame, frame.channels(), fgmask, bgmodelUsedModes_, weight_, variance_, mean_, learningRate, -learningRate * fCT, bShadowDetection, StreamAccessor::getStream(stream));
}
void cv::gpu::MOG2_GPU::getBackgroundImage(GpuMat& backgroundImage, Stream& stream) const
else if (iterations > 1 && countNonZero(_kernel) == _kernel.rows * _kernel.cols)\r
{\r
anchor = Point(anchor.x * iterations, anchor.y * iterations);\r
- kernel = getStructuringElement(MORPH_RECT, Size(ksize.width + iterations * (ksize.width - 1),\r
- ksize.height + iterations * (ksize.height - 1)), anchor);\r
+ kernel = getStructuringElement(MORPH_RECT,\r
+ Size(ksize.width + (iterations - 1) * (ksize.width - 1),\r
+ ksize.height + (iterations - 1) * (ksize.height - 1)),\r
+ anchor);\r
iterations = 1;\r
}\r
else\r
{
return fabs(v) > numeric_limits<float>::epsilon();
}
- /*bool notNull(double v)
- {
- return fabs(v) > numeric_limits<double>::epsilon();
- }*/
class GHT_Pos : public GeneralizedHough
{