任何人都可以幫助我解決這個問題嗎? 我想要一個背景減法方法,用於在以前的opencv版本中使用cv2.BackgroundSubtractorMOG()方法時很好地運行。cv2.createBackgroundSubtractorMOG2()error
import cv2
backsub = cv2.createBackgroundSubtractorMOG2()
capture = cv2.VideoCapture("headcount.avi")
i = 0
if capture:
while True:
ret, frame = capture.read()
if ret:
fgmask = backsub.apply(frame, None, 0.01)
erode=cv2.erode(fgmask,Nonei,terations=3)
moments=cv2.moments(erode,True)
但是,使用的OpenCV 3.1.0即時同時使用cv2.createBackgroundSubtractorMOG2()函數,這是我發現了錯誤面臨的問題,同時施加掩碼操作
錯誤: fgmask = backsub.apply(frame,1,0.01) 錯誤:C:\ builds \ master_PackSlaveAddon-win32-vc12-static \ opencv \ modules \ python \ src2 \ cv2.cpp:163:錯誤:(-215)數據應該正常爲NULL!在函數NumpyAllocator :: allocate
嘗試用1)'fgmask = backsub.apply(幀)',或'fgmask = backsub.apply(幀,learningRate = 0.01)'或'backsub。 apply(frame,fgmask,0.01)' – Miki
沒有得到任何東西。 –