它采用 RTSP 协议生成的流并使用机器学习算法对其进行处理,但效果不佳,该算法处理帧的速度很慢,因此我试图将流保存到小视频中,但我得到的帧速率非常小1FPS,当我尝试保存 1 分钟时,使用 IP 摄像头海康威视只给了我 15 秒这是正在使用的代码。
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()