Может ли кто-нибудь помочь мне в этом? Я пытаюсь использовать метод Subtracting для фона, который отлично используется при использовании метода cv2.BackgroundSubtractorMOG() в предыдущих версиях opencv.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
Не получилось ничего. –