2017-05-04 20 views
0

私はこのビデオから人体を抽出OpenCVのMOG2の背景には、多くのノイズ

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 

を、私はこのようになりました: enter image description here

これは完全で乱雑ですが、私はそれが光と影の変化によって引き起こされたと考えていますので、これらのノイズを減らす方法はありますか?

答えて

0

あなたは、バックグラウンド減算の前にGaussianBlurを使用して画像をぼかすしようとすることができます:

Imgproc.GaussianBlur(resize_blur_Img, resize_blur_Img, new Size(9, 9), 2, 2); 
関連する問題