BackgroundSubtractorMOG灵敏度

时间:2012-09-30 05:24:44

标签: c++ opencv computer-vision

我正在使用我声明的背景减法器:

BackgroundSubtractorMOG subtractor;

现在我想将减法器与非默认参数一起使用。我在以下声明中尝试了多个参数值组合:

BackgroundSubtractorMOG subtractor = BackgroundSubtractorMOG(100, 10, 0.9 20);

但是,我看不出subtractor产生的前景蒙版有任何差异,好像参数没有效果。

我没有正确设置参数吗?设置它们的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

我有同样的问题,似乎构造函数提供的参数不会影响检测器,我使用默认参数获得了良好的背景减法,但性能也很差。我使用名为BackgroundSubtractorMOG2的变体获得了更好的性能结果,您可以像使用BackgroundSubtractorMOG一样使用它。 cv::BackgroundSubtractorMOG2 mog; //--Update Background mog(frame,foreground,0.01);

答案 1 :(得分:1)

当您获得前景蒙版时,您是否设置了learningRate?在我用于Android应用程序的java版OpenCV中,我按如下方式生成前景蒙版:

subtractor.apply(mRgb, mFGMask, 0.1);

0.1的学习率非常快。我认为将输出模板完全调暗到黑屏需要10帧。