我想使用这段代码
fgbg = cv2.createBackgroundSubtractorMOG2(detectShadows=True)
cap = cv2.VideoCapture('drunker-1.mp4')
while True:
grabed, img = cap.read()
if not grabed:
break
ori = img.copy()
gray = cv2.cvtColor(ori, cv2.COLOR_BGR2GRAY)
img = fgbg.apply(gray)
ret, img = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)从这段视频中提取人体:
https://www.youtube.com/watch?v=Xvj4Ud-RKrM但是我得到了这样的结果:

这完全是乱七八糟的,我认为这是由光影变化引起的,那么如何减少这些噪音呢?提前谢谢!
发布于 2017-05-10 18:08:59
在进行背景差分之前,可以尝试使用GaussianBlur模糊图像:
Imgproc.GaussianBlur(resize_blur_Img, resize_blur_Img, new Size(9, 9), 2, 2);https://stackoverflow.com/questions/43773204
复制相似问题