Siempre creciendo, siempre aprendiendo. Cultura Maker.

Ratio: 0 / 5

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

Ok, estoy en  medio de la redacción de la serie de artículos intentando dar una visión para aprendices (básica y funcional, sobre todo) de Open CV en Python, y una de las cosas que quiero explicar en ella es la posibilidad de trabajar con librerías haarcascade que pueden detectar e incluso reconocer rasgos faciales. Como eso puede alargarse en el tiempo, y yo ahora mismo tengo que recoger a mis chiquillas del cole, no quiero dejar pasar la oportunidad de mostraros el código que podéis implementar para hacer esta tontuna:

 

 

 

Es una chorradica, pero espectacular. La idea es ir revisando las imágenes que envía la webcam, y si en algún momento detecta un rostro, recuadrarlo con un rectángulo, y reducir el tamaño de la ventana para que encaje con dicho rectángulo. Dicho de otro modo: tenemos una ventana dinámica que se redimensiona según acerquemos o alejemos nuestros jetos de la webcam.

 

Ya te digo que ando algo corto de tiempo. Aquí os dejo el código para que trasteéis. Cualquier duda, tiráis de comentario o me venís al Twitter: www.twitter.com/antoniotecnocr

 

import numpy as np
import cv2

cap = cv2.VideoCapture(0)
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')



while(True):
    imagen=cv2.imread('logoOriginal.jpg')
    ret, frame = cap.read()

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    faces = face_cascade.detectMultiScale(gray, 1.3, 5)
    for (x,y,w,h) in faces:
        cv2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)
        roi=frame[x:x+w,y:y+h]
        

   
    cv2.imshow('frame',roi)
    if cv2.waitKey(1) &0xFF == ord('q'):
        break


cap.release()
cv2.destroyAllWindows()

Comparte este post

Submit to FacebookSubmit to Google PlusSubmit to TwitterSubmit to LinkedInEnviar a Menéame

Escribir un comentario


Código de seguridad
Refescar

Mientras navegas por esta web, posiblemente interactuemos con tu equipo mediante el uso de cookies. La actual legislación de la UE (European Union) me obliga a informarte de ello, caminante. We use cookies to improve our website and your experience when using it. Cookies used for the essential operation of this site have already been set. To find out more about the cookies we use and how to delete them, see our privacy policy.

  I accept cookies from this site.
EU Cookie Directive Module Information