Advertisement
sombruxo

Untitled

May 12th, 2025
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.36 KB | Source Code | 0 0
  1. import yt_dlp
  2. import cv2
  3. from ultralytics import YOLO
  4.  
  5. url = "https://www.youtube.com/watch?v=ApFoXMqbCxU"
  6. ydl_opts = {'quiet': True, 'format': 'best'}
  7. with yt_dlp.YoutubeDL(ydl_opts) as ydl:
  8.     info = ydl.extract_info(url, download=False)
  9.     stream_url = info['url']
  10.  
  11. # Load a model
  12. model = YOLO("yolo11m.pt")  # load an official model
  13. #model = YOLO("best.pt")  # load an official model
  14.  
  15. # Ahora intentar abrirla con OpenCV (puede o no funcionar)
  16. cap = cv2.VideoCapture(stream_url)
  17.  
  18. while cap.isOpened():
  19.     ret, frame = cap.read()
  20.     if not ret:
  21.         break
  22.  
  23.     # Predict with the model
  24.     results = model(frame)  # predict on an image
  25.  
  26.     # Access the results
  27.     for result in results:
  28.         boxes = result.boxes
  29.         for box in boxes:
  30.             x1, y1, x2, y2 = map(int, box.xyxy[0])  # Coordenadas del bounding box
  31.             conf = box.conf[0].item()  # Confianza
  32.             cls = int(box.cls[0])  # Clase detectada
  33.  
  34.             # Dibujar rectángulo y texto en la imagen
  35.             cv2.rectangle(frame, (x1, y1), (x2, y2), (0, 255, 0), 2)
  36.             cv2.putText(frame, f"Clase {cls} ({conf:.2f})", (x1, y1 - 10),
  37.                         cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
  38.  
  39.         cv2.imshow("Imagen", frame)
  40.  
  41.     if cv2.waitKey(1) & 0xFF == ord('q'):
  42.         break
  43.  
  44. cap.release()
  45. cv2.destroyAllWindows()
  46.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement