Он принимает поток, сгенерированный протоколом RTSP, и обрабатывает его с помощью алгоритма машинного обучения, но он не работает должным образом, алгоритм медленен при обработке кадров, поэтому я пытаюсь сохранить поток в небольшие видео, но я получаю очень малая частота кадров 1FPS, и когда я пытаюсь сэкономить 1 минуту, это дает мне только 15 секунд, когда я использую IP-камеру hikvision, вот код, который я использую.
import time
import cv2
import numpy as np
import cv2
import imutils
from imutils.object_detection import non_max_suppression
import datetime
import numpy as np
import cv2 as cv
capture_duration = 60
for i in range(1,4):
cap = cv2.VideoCapture("rtsp://admin:admin123@192.168.1.2:554/cam/realmonitor?channel=1&subtype=0")
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH) )
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT) )
size = (width, height)
fourcc = cv2.VideoWriter_fourcc(*'XVID')
name=( str(i)+'.mp4')
out = cv2.VideoWriter(name, fourcc, 10.0, size)
start_time = time.time()
while(int(time.time() - start_time) < capture_duration):
_, frame = cap.read()
#cv2.imshow('Recording...', frame)
out.write(frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
out.release()
cv2.destroyAllWindows()