Быстрое усреднение видео по OpenCV - PullRequest
0 голосов
/ 01 марта 2020

У меня есть простой python код, который выполняет усреднение видеокадров и сохраняет снимок экрана до окончания видео:

c = cv2.VideoCapture(video)
_,f = c.read()
avg1 = np.float32(f)
avg2 = np.float32(f)
frame_count = int(c.get(cv2.CAP_PROP_FRAME_COUNT))
cframe = 0
while(1):
    _,f = c.read()
    cv2.accumulateWeighted(f,avg1,0.01)
    cv2.accumulateWeighted(f,avg2,0.005)
    res1 = cv2.convertScaleAbs(avg1)
    res2 = cv2.convertScaleAbs(avg2)
    cframe += 1
    if cframe == frame_count - int((frame_count/100)*10):
        cv2.imwrite(frame_s, adjusted2)
        break

cv2.destroyAllWindows()
c.release()

Очевидно, это время выполнения кода, которое длится всю продолжительность видео. Мой вопрос: есть ли какая-нибудь техника, которую я могу сделать такой процесс более быстрым и эффективным способом? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...