Prendre une photo sous python avec une caméra USB logitech

Fermé
Yero - 26 janv. 2018 à 14:19
 noks - 26 janv. 2018 à 21:15
Bonjour,

Je suis actuellement en trein de crée un programme sous python afion de prendre une photo avec ma caméra; Le programme fonctionne parfaitement mise a part 1 chose : il fonctionne 1 fois sur 10 (facon de parler) et d'est chiant !!

from PIL import Image
from PIL.Image import *
import os
import pygame, sys

from PIL import Image

from pygame.locals import *
import pygame.camera

width = 352
height = 288

pygame.init() #initialise pygame
pygame.camera.init()
cam = pygame.camera.Camera("/dev/video0",(width,height))
cam.start()

windowSurfaceObj = pygame.display.set_mode((width,height),1,16) #Programme la fenètre
pygame.display.set_caption('Camera')

#Prendre la photo
image = cam.get_image()

#Affiche la photo prise par la caméra dans la fenètre
catSurfaceObj = image
windowSurfaceObj.blit(catSurfaceObj,(0,0))
pygame.display.update()

Lorsque ça ne fonctionne pas, il m'indique le message suivant :

Traceback (most recent call last):
File "/home/pi/PTUT/PROGRAMMES GRANDE LONGUEUR/Programme permetrtant de prendre une photo 1 fois sur 2 et de la mettre en noir et blanc.py", line 17, in <module>
cam.start()
SystemError: ioctl(VIDIOC_S_FMT) failure: no supported formats

J'ai tout tenté, rien ne fonctionne; Si vous avez des idées.. Merci à vous !



A voir également:

1 réponse

J'ai testé rapidement, chez moi cela fonctionne très bien avec la webcam d'un ordinateur portable.

Comme évidemment il n'y a pas de boucle, la fenêtre pygame se ferme de suite, en placant la portion de ton code qui concerne l'affichage du périphérique, tout va très bien, il y a bien une lecture continue.

Je suppose que ton problème se situe à ce niveau, et si non, il y a des chances que cela concerne le périphérique en lui-même, et là, ça semble plus ardu d'identifier ce qui provoque cette erreur.
1