Erreur ouverture vidéo avec opencv

Acnologiaf Messages postés 12 Statut Membre -  
mamiemando Messages postés 34169 Statut Modérateur -

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

A voir également:

3 réponses

Diablo76 Messages postés 268 Statut Membre 85
 

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

0
Diablo76 Messages postés 268 Statut Membre 85
 

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.
0
mamiemando Messages postés 34169 Statut Modérateur 7 885
 

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 

0
mamiemando Messages postés 34169 Statut Modérateur 7 885
 

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

0