В формате OpenCV на Python cv2.Параметры BackgroundSubtractor

резюме

похоже, что изменение параметров BackgroundSubtractorMOG не влияет на результаты алгоритма.

Я usign Python: 2.7.6 / Anaconda 2.1.0 (64-бит)
OpenCV: '2.4.10'
ОС: Windows 7 x64

параметры по умолчанию для алгоритма являются:

history=200, nmixtures=5, backgroundRatio=0.7

Итак, создание фонового вычитателя с разными параметрами должно давать разные результаты. Но я всегда получаю тот же результат (маска переднего плана) с параметрами по умолчанию и пользовательскими параметрами.


воспроизведение проблемы

сначала создайте два фоновых объекта вычитателя с разными параметрами:

bg1 = cv2.BackgroundSubtractorMOG()
bg2 = cv2.BackgroundSubtractorMOG(history=3, nmixtures=5, backgroundRatio=0.0001)

создать 2 объекта "VideoCaptrue":

cap = cv2.VideoCapture('video.mp4')
cap2 = cv2.VideoCapture('different_video.mp4')

1 ответов


я обнаружил, что (начиная с некоторой версии OpenCV), когда я вызываю метод apply С