Erreur ouverture vidéo avec opencv

Bonjour,

Je viens tout juste de commencer un script pour manipuler une vidéo avec opencv, après avoir juste testé d'ouvrir une vidéo dans le même dossier,

import cv2


video = cv2.VideoCapture('sp.mp4')

if not video.isOpened():
    print("reading issue")

le script me retourne déjà le message d'erreur, j'ai cherché pendant une bonne heure sans trouver de solution, quelqu'un aurait une idée de la nature du problème ?

Cordialement


Windows / Chrome 132.0.0.0

3 réponses

  1. Salut,

    C'est normal, car cv2.VideoCapture() ne prend pas en paramètre le fichier vidéo mais l'index de la cam (0 par défaut).

    cv2.VideoCapture(0)

     https://docs.opencv.org/4.x/dd/d43/tutorial_py_video_display.html

    1. Oupps, au temps pour moi, le paramètre que prend cv2.VideoCapture() peut aussi être un fichier vidéo.

      Its argument can be either the device index or the name of a video file.
  2. Modérateur

    Bonjour,

    As-tu essayé de repartir de ce tutoriel ?

    Si le problème persiste, peux-tu partager un fichier video (idéalement petit) qui met ton problème en évidence.

    import numpy as np
    import cv2 as cv
     
    cap = cv.VideoCapture('vtest.avi')
     
    while cap.isOpened():
        ret, frame = cap.read()
     
        # if frame is read correctly ret is True
        if not ret:
            print("Can't receive frame (stream end?). Exiting ...")
            break
        gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
     
        cv.imshow('frame', gray)
        if cv.waitKey(1) == ord('q'):
            break
     
    cap.release()
    cv.destroyAllWindows()

    Bonne chance 

    1. Modérateur

      Bonjour,

      Une explication possible serait que dans ton installation d'OpenCV, le format mp4 n'est pas supporté (voir cette discussion). Pour vérifier si ce format est supporté, lance :

      python -c "import cv2; print(cv2.getBuildInformation())"
      • Si tu utilises pip, essaye d'installer le module opencv-contrib-python :
      pip install opencv-contrib-python 
      • Si tu utilises anaconda, assure-toi d'avoir installé une version récente d'OpenCV :
      conda install -c conda-forge opencv
      conda install --channel https://conda.anaconda.org/menpo opencv3

      Bonne chance