1

我正在使用 BackgroundSubtractorMOG2 提取前景,我需要设置值 nShadowDetection=0 和 fTau=0.5 以去除阴影。

   BackgroundSubtractorMOG2 bg_model;//(100, 3, 0.3, 5);             
   bg_model.set("bShadowDetection",true);
   bg_model.set("nShadowDetection",0); 
   bg_model.set("fTau",0.5);           

但看起来我无法在 OpenCV 2.4 及更高版本中设置 nShadowDetection 和 fTau,因为它们是受保护的,当我运行它时它会给我一个错误。

bg_model.nShadowDetection=0;

甚至不编译,因为成员受到保护。

4

1 回答 1

1

尝试 setInt、setDouble 和 setBool,它们对我来说很好用

bg_model.setInt("nmixtures", 3);

bg_model.setBool("detectShadows", false);

bg_model.setDouble("fTau", 0.5);

最好的!

于 2015-02-18T10:32:02.067 回答