Background modeling using univariate Gaussian density function.

I need to expose background model from 10 consequtive frames, not a video. Also, I need to display both mean and standard deviation images. I got stuck because I could not find any similar project for reference. Thanks in advance.

답변 (1개)

yanqi liu
yanqi liu 2021년 12월 24일
yes,sir,may be use createBackgroundSubtractorMOG2,such as
import cv2 as cv
import numpy as np
vid = cv.VideoCapture("D:/Program Files/Polyspace/R2019a/toolbox/images/imdata/traffic.avi")
mog = cv.createBackgroundSubtractorMOG2()
se = cv.getStructuringElement(cv.MORPH_RECT, (3, 3))
while True:
ret, imi = vid.read()
if ret is True:
fm = mog.apply(imi)
ret, bw = cv.threshold(fm, 220, 255, cv.THRESH_BINARY)
bw = cv.morphologyEx(bw, cv.MORPH_OPEN, se)
bg = mog.getBackgroundImage()
cv.imshow("left_bg&right_frame",np.concatenate((bg, imi), axis=1))
c = cv.waitKey(50)
else:
break
cv.destroyAllWindows()

댓글 수: 2

Burak Karakus
Burak Karakus 2021년 12월 24일
편집: Burak Karakus 2021년 12월 24일
Sir, how could I modify this for consecutive frames as input? Should I use a for loop with createBackgroundSubtractorMOG2 instructor? I want to evaluate density value of each pixel using mean and standard deviation parameters via Gaussian density function? Thank you for your interest.
yes,sir,may be upload your video file to make some analysis. this is use python opencv method to process

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Convert Image Type에 대해 자세히 알아보기

제품

릴리스

R2018a

질문:

2021년 12월 23일

댓글:

2021년 12월 27일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by