Ich hab dieses Script aus einem Tutorial.
import torch
import matplotlib.pyplot as plt
import cv2
import sys
# Load YOLOv5 model
model = torch.hub.load('ultralytics/yolov5', 'yolov5x')
# Open video capture
cap = cv2.VideoCapture("test.mp4")
threshold = 0.001
while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
# Perform object detection on the current frame
results = model(frame)
filtered_results = []
for det in results.pred[0]:
if det[4] >= threshold:
filtered_results.append(det)
if filtered_results:
results.pred[0] = torch.stack(filtered_results)
frame_with_results = results.render()[0]
# Display the frame with detected objects
cv2.imshow('Object Detection', frame_with_results)
cap.release()
cv2.destroyAllWindows()
Ich habe eine Videodatei die ist 120 MB groß und die ersten 2 Minuten ist nichts zu sehen. Kann ich das Video erst ab einem bestimmten Zeitpunkt laufen lassen? Also eine bestimmte Zeit vorspulen oder eine Anzahl an Frames?