gpt4 book ai didi

c++ - OpenCV C++ : How to slow down background adaptation of BackgroundSubtractorMOG?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:23:32 64 4
gpt4 key购买 nike

我在 OpenCV 中使用 BackgroundSubtractorMOG 来跟踪对象。当它们出现时,它工作正常,但背景会快速适应,因此我无法跟踪静态对象。我怎样才能使背景适应变慢(我不希望它完全静态,只是变慢)?

使用构造函数设置学习率不会改变:

BackgroundSubtractorMOG pBSMOG = BackgroundSubtractorMOG(???);

我该如何解决这个问题?谢谢!

最佳答案

BackgroundSubtractorMOG pBSMOG = BackgroundSubtractorMOG(int history=200, int nmixtures=5, double backgroundRatio=0.7, double noiseSigma=0);

在哪里,

  • 历史 – 历史的长度。
  • nmixtures – 高斯混合数。
  • backgroundRatio – 背景比率。
  • noiseSigma – 噪声强度(亮度或每个颜色 channel 的标准偏差)。 0 表示一些自动值。

增加history值会减慢适配速度。

OpenCV 中还有一个函数:

Ptr <BackgroundSubtractorMOG2> createBackgroundSubtractorMOG2(int
history=500, double varThreshold=16, bool detectShadows=true )

这比上一个快多了,而且它也可以消除检测阴影。

关于c++ - OpenCV C++ : How to slow down background adaptation of BackgroundSubtractorMOG?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21873757/

64 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com