2016-06-10 50 views
0

我無法理解cv2.BackgroundSubtractorMOG和cv2.BackgroundSubtractorMOG2的參數是什麼意思。參數opencv背景減法器MOG和MOG2

我已經通過正式文件,這個頁面消失了 - http://docs.opencv.org/2.4/modules/video/doc/motion_analysis_and_object_tracking.html?highlight=backgroundsubtractormog#backgroundsubtractormog-backgroundsubtractormog

並通過堆棧溢出頁 - How to use cv::BackgroundSubtractorMOG in OpenCV?

,但我無法理解如何操作參數,以獲得良好的前景提取。

有人請解釋我這些函數的參數究竟是什麼意思?

P.S.我使用的是2.4.9版本的opencv和2.7.11以上的python。

+0

這些是從算法導出的類,通過給定的文檔,以便撇渣,你需要沿着繼承樹的一個或兩個步驟找到適用的參數,而不是必須使用值得推薦的那些值來「獲得良好的前景提取」。 – Dilettant

+0

@Dilettant先生,請你詳細解釋一下參數的用法,或者分享一下我可以在繼承樹上走的地方。官方文件不包含任何這樣的細節,也沒有任何相關的博客。即使默認參數也很難找到。你可以在這方面幫助我嗎? –

+0

不客氣。在你提供的鏈接例如。 '歷史 - 歷史的長度。nmixtures - 高斯混合的數量。backgroundRatio - 背景比率。noiseSigma - Noise(背景噪聲) - 背景噪聲。強度)。並且:默認構造函數將所有參數設置爲默認值。這看起來很有希望。操作符方法和繼承在下面直接描述,不是嗎? HTH – Dilettant

回答

0

使用這些參數你可以消除mog2中的shaodw。
它比MOG背景減法器更好

fgmask = fgbg.apply(幀,fgmask,0.005)
這些參數可以消除陰影

+0

你能解釋一下參數0.005是什麼值嗎? –

+0

請解釋你的答案背後的理由。我們想更多地瞭解它爲什麼起作用,而不僅僅是如何去做。 (更不用說它似乎不適用於我。) – Acoop

+0

0.005設定學習率。學習速率值可能難以調整。如果這個值不適合你,那麼嘗試另一個值(例如0.01,0.1等)。重複幾次,看看其中一個學習率是否有效。 – user3731622