cv2.videocapture.read() ne retourne pas un tableau numpy

J'ai ce code en essayant de capturer une image de ma webcam sur le raspberry pi, et l'enregistrer comme une image. J'utilise opencv 2, mais j'obtiens des erreurs étranges lorsque j'exécute le code..

import time
import sys
from subprocess import call
import cv2

cam = cv2.VideoCapture()

while True:
        cam.open(-1)
        image = cam.read()
        cv2.imwrite("current.jpeg",image)
        time.sleep(10);

C'est ce que le programme retourne:

VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument

Traceback (most recent call last):
  File "kvamskogen.py", line 18, in <module>
    cv2.imwrite("current.jpeg",image)
TypeError: <unknown> is not a numpy array

Quel est le problème ici?

"Vous pouvez ignorer le ftp de la partie, et les lignes commentées." - vous devez modifier la pertinence de pièces puis à aider les gens qui essaient de vous aider. Plutôt qu'une) à la sortie de code supplémentaire dans votre exemple, et b) expliquer pourquoi il n'est pas pertinent. Voir sscce.org

OriginalL'auteur GrixM | 2012-12-21