Capturando imagens da webcam com Python

Rapaz, há quanto tempo não posto aqui. 😛

Me surgiu a ideia de capturar pela webcam do notebook a imagem de quem logou no meu computador (futuramente tentarei implementar caso tente logar sem sucesso). Fuçando no google achei este exemplo usando PyGame.

#! /usr/bin/python

import pygame, sys
import pygame.camera
import time

WEBCAM_DIR = "/home/simasware/Imagens/Webcam"

pygame.init()
pygame.camera.init()
cam = pygame.camera.Camera("/dev/video0", (640,480))

# pegando foto da webcam

cam.start()
image = cam.get_image()
cam.stop

timestamp = time.strftime("%d-%m-%Y_%H-%M-%S", time.localtime())
filename = "%s/%s.jpg" % (WEBCAM_DIR, timestamp)

# salvando a imagem
pygame.image.save(image, filename)

print "Salvo"

Pensei em colocar no topo da imagem capturada a data e hora. Pesquisando achei a função blit:


# imprime a data/hora na imagem

font = pygame.font.SysFont("monospace",15) #carrega fonte
label = font.render(timestamp, 1, (255,255,255)) #renderiza
image.blit(label, (16,16)) #imprime o texto na imagem capturada pela webcam

Pra instalar o PyGame no Ubuntu basta rodar no bash:


sudo apt-get install python-pygame

Resultado:

18-10-2014_00-29-04

Anúncios