Monday, June 29, 2015

opencv背景相減法

  • 背景減除(BS)是一種常見和廣泛使用的技術,用於產生前景,移動中的物體的像素的二值圖像,通過使用靜態相機。
  • 正如其名稱所暗示的,BS計算執行當前影像和背景模型之間的影像做減法。
  • 把攝像頭捕捉的圖像第一幀作为背景,以後的每一幀都減去背景幀,這样減去之後剩下的就是多出來的特征物體(要偵測的物體)的部分。
  • 背景建模包括兩個主要步驟:
    1. 後台初始化
    2. 背景更新



import numpy as np
import cv2

cap = cv2.VideoCapture(0)

fgbg = cv2.BackgroundSubtractorMOG()

while(1):
    ret, frame = cap.read()

    fgmask = fgbg.apply(frame)

    cv2.imshow('frame',fgmask)
    k = cv2.waitKey(30) & 0xff
    if k == 27:
        break

cap.release()
cv2.destroyAllWindows()

參考資料:
http://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_video/py_bg_subtraction/py_bg_subtraction.html
http://docs.opencv.org/master/d1/dc5/tutorial_background_subtraction.html

No comments:

Post a Comment