2

我正在尝试使用 MOG 背景减法,但“历史”功能似乎不起作用。
OpenCV 2.4.13
Python (2.7.6)

观察:该程序似乎将其捕获的第一帧用于所有未来的背景减法。
期望:背景应该根据“历史”参数慢慢演变,这样如果相机角度发生变化,或者如果人/物体离开视野,“背景”图像也会相应变化。

import cv2
import numpy as np

cap = cv2.VideoCapture(0)
mog = cv2.BackgroundSubtractorMOG(history=10, nmixtures=5, backgroundRatio=0.25)

while True:
    ret, img1 = cap.read()

    if ret is True:
        cv2.imshow("original", img1)

        img_mog = mog.apply(img1)
        cv2.imshow("mog", img_mog)

    if cv2.waitKey(10) & 0xFF == ord(q):
        break

video_capture.release()
cv2.destroyAllWindows()

预先感谢您的帮助!

4

0 回答 0