Capturar foto con Python



     style="display:inline-block;width:728px;height:90px"
     data-ad-client="ca-pub-5126364088863607"
     data-ad-slot="9520827110">



Pequeño programa que tiene como función capturar lo que ve la cámara web de tu equipo ya sea Desktop o notebook, lo que se necesita para que funcione correctamente el programa son lo siguiente.
Dentro del comprimido video Capture existen carpetas para todas las versiones de python del 2.6 y posteriores. dentro de la carpeta python26 copiar las carpetas Dlls y lib luego pegarlas en la direcion donde se instalo python 2.6. Por defecto python se instala en C:/Python26


Código Fuente:

import pygame #importa pygame
import pygame.camera #importa camera desde video capture
from pygame.locals import* #importa comandos locales

lok = 1 #bandera
nsize = (640,480) #tamaño pantalla
pygame.init() #iniciar pygame
pygame.camera.init() #inicia camara
cl = pygame.camera.list_cameras() #arreglo de camaras
cam = pygame.camera.Camera(cl[0],nsize) #selecciona la camara

cam.start() #camara iniciada

sc = pygame.display.set_mode((800,600)) #seteo de pantalla pricipal
sn = pygame.Surface(nsize) #se crea una superficie
sy = pygame.Surface(nsize) #se crea una superficie

while lok: #ciclo principal
    ev = pygame.event.get() #camptura los eventos ocurridos
    sn = cam.get_image(sn) #setea la imagen de la camara en superficie sn
    sy = pygame.transform.scale(sn,(130,100)) #la imagen capturada la redimenciona
    for e in ev: #for encargado de recorrel el vector de eventos en caso de que aya ocurrido alguno
        if e.type == QUIT or (e.type == KEYDOWN and e.key == K_ESCAPE):
           cam.stop() #si la tecla presionada fue escape o presiono la 'X' de la ventana se sale el programa
           lok = 0 #sale del ciclo principal
        if e.type == KEYDOWN and e.key == K_s: #si tecla presionada fue 's'
           pygame.image.save(sy,'foto.jpg') #guarda imagen en directorio del programa ejecutado
    sc.blit(sn,(0,0)) #pinta la ventana con la imagen que captura camamara
    pygame.display.flip() #refresca pantalla

Entradas más populares de este blog

Convertir decimal a binario, octal y hexadecima

Crear servicio web en Visual C# (WebService)