elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 07:02  


Tema destacado: [Overclocking] Récords de overclock del foro

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez., EleKtro H@cker)
| | |-+  deteccion de rostros con Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: deteccion de rostros con Python  (Leído 1,152 veces)
lucasfava

Desconectado Desconectado

Mensajes: 15


Ver Perfil
deteccion de rostros con Python
« en: 18 Diciembre 2010, 01:11 »

Esto lo encontre por casualidad, buscando algo sobre manejo de hardware con python

usa la libreria  OpenCV (Open Source Computer Vision)

Código
from opencv.cv import *
from opencv.highgui import *
 
cvNamedWindow("w1", CV_WINDOW_AUTOSIZE)
captura = cvCreateCameraCapture(0)
 
def calcular( image ):
       escala = cvCreateImage(cvSize(image.width, image.height), 8, 1)
       cvCvtColor(image, escala, CV_BGR2GRAY)
       storage = cvCreateMemStorage(0)
       cvClearMemStorage(storage)
       cvEqualizeHist(escala, escala)
       cascade = cvLoadHaarClassifierCascade( 'haarcascade_frontalface_default.xml', cvSize(1,1))
       caras = cvHaarDetectObjects(escala, cascade, storage, 1.2, 2, CV_HAAR_DO_CANNY_PRUNING, cvSize(25,25))
 
       ret = []
 
       if caras:
               for cara in caras:
                       vertices_imagen = {}
                       vertices_imagen['x1'] = cara.x
                       vertices_imagen['y1'] = cara.y
                       vertices_imagen['x2'] = cara.x+cara.width
                       vertices_imagen['y2'] = cara.y+cara.height
                       ret.append( vertices_imagen )
       return ret
 
def bucle():
       global captura
 
       ancho = 160
       alto = 120
 
       frame = cvQueryFrame(captura)
       imagen = cvCreateMat(alto, ancho,cvGetElemType( frame ))
       cvResize(frame, imagen)
 
       vertices = calcular( imagen )
 
       for vertice in vertices:
               cvRectangle( imagen, cvPoint( int(vertice['x1']), vertice['y1']), cvPoint(int(vertice['x2']), int(vertice['y2'])), CV_RGB(0, 255, 0), 3, 8, 0)
 
       cvShowImage("w1", imagen)
       c = cvWaitKey(2)
 
while True:
       bucle()
 

dejo link donde lo encontre http://www.retronet.com.ar/?p=474


En línea
Yeison.Eng

Desconectado Desconectado

Mensajes: 22



Ver Perfil WWW
Re: deteccion de rostros con Python
« Respuesta #1 en: 20 Diciembre 2010, 02:09 »

Excelente!  ;-)
ya lo probé y esta definitivamente muy interesante.
mas interesante aún el archivo .xml para hacer el trabajito


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines