Informática II para Bachillerato (CLAVE-NUM)

Enero-Julio 2015



 

Proyecto 5 

Opción 5 Hasta 3 de calificación

La detección de caras(face detection) es un caso específico de la detección de objetos. La detección de caras es un proceso por el cual la computadora ubica los rostros presentes en una imagen o un vídeo. Aunque para el ser humano es un proceso inmediato, pareciese una tarea sencilla, sin embargo en la computadora es un gran problema bastante complicado, actualmente existen diferentes métodos para poder realizar la detección de caras por computadora.

Ejemplo

Algunos datos obtenidos de wiki:

Fue hacia los años 70 cuando aparecieron los primeros algoritmos, basados en técnicas heurísticas y antropométricas, pero no eran muy eficientes ya que fallaban bastante y eran muy sensibles a cambios. La investigación se dejó de lado porque todavía no tenía utilidad. Fue en los años 90 cuando, gracias al desarrollo de la tecnología y al descubrimiento de aplicaciones útiles, se reanudó la investigación. De los modelos anteriores, el que se utiliza actualmente son los métodos basados en el aspecto ya que son los que dan mejor resultados. Esto es debido a que en función de la variabilidad de la colección de imágenes o muestras con las que se realiza el entrenamiento obtendrán detectores con tasas altas de detección y bajas tasas de falso positivos. Además de una gran robustez, presentan una eficiencia en el sistema de detección y reducción del coste computacional. Aunque la detección de caras tiene muchas aplicaciones, es en el campo de la fotografía digital donde más se acerca al público. Fujifilm fue la primera empresa anunciando la nueva tecnología en 2004, pero fue Nikon, en 2005, la primera que sacó al mercado una cámara utilizando este sistema. Actualmente, la mayoría de cámaras lo incorporan.

Según las condiciones en la que se encuentre la imagen durante el proceso de detección se pueden prsentar ciertos problemas. En muchos casos la luminosidad no es la adecuada, aparecen elementos extraños, las caras están de perfil, tapadas por algún elemento o por alguna otra cara o en un ángulo complicado.

Se pueden distinguir cuatro grandes categorías de métodos de detección de caras:

  • basados en el conocimiento
  • en caracteres invariantes
  • basados en plantillas
  • en apariencia
  • Métodos basados en el conocimiento Este métodos representan las técnicas de detección de caras que se basan en una serie de reglas previas definidas por la persona que quiere hacer la detección. Se definen una serie de características sobre las caras detectar (forma de la cabeza, dos ojos, una nariz...). Esto puede suponer un problema y es que si estas reglas son muy generales, el resultado de una búsqueda en imágenes donde no hay caras, seguramente el resultado dirá que si hay caras y además una cantidad elevada. En el caso en que las reglas establecidas sean muy específicas posiblemente también aparezcan problemas ya que el resultado de la detección será muy bajo.

    Métodos basados en caracteres invariantes Estos métodos utilizan como punto de referencia el color de la piel y la textura, el problema que supone aplicar estos métodos es que si en la imagen aparece ruido o diferentes condiciones de iluminación el algoritmo aplicado no funcionará correctamente. Si se utiliza el color de la piel, los algoritmos que utilizan toda la gama de colores tienen mejor resultado que los que utilizan una escala de grises.

    Métodos basados en plantillas Estos métodos modelan geométricamente la forma del objeto. Las plantillas son las componentes básicas como por ejemplo círculos, elipses... Una vez están definidas las plantillas se evalúa la correspondencia entre la cara y la plantilla. Las principales técnicas son las plantillas deformables y los contornos activos.

    Métodos basados en apariencia Esta técnica en un principio no necesita el conocimiento de las características de la cara de la imagen que se quiere detectar. En los algoritmos utilizados en estos métodos aparecen los conceptos de entrenamiento y de aprendizaje.

    Este algoritmo no se bien aun como fucniona pero estoy interesado en explorarlo:

    Algoritmo Viola & Jones Este algoritmo tiene un coste computacional muy bajo, y consta de dos partes principales: clasificador en cascada, que garantiza una discriminación rápida y un entrenador de clasificadores basado en Adaboost. Viola Jones tiene una probabilidad de verdaderos positivos del 99.9% y una probabilidad de falso positivos del 3.33%,4 y a diferencia de otros algoritmos utilizados en métodos de caracteres invariantes procesa sólo la información presente en una imagen en escala de grises. No utiliza directamente la imagen sino que utiliza una representación de la imagen llamada imagen integral.5 Para determinar si en una imagen se encuentra una cara o no, el algoritmo divide la imagen integral en subregiones de tamaños diferentes y utiliza una serie de clasificadores (clasificadores en cascada), cada una con un conjunto de características visuales. En cada clasificador se determina si la subregión es una cara o no. La utilización de este algoritmo supone un ahorro de tiempo considerable ya que no serán procesadas subregiones de la imagen que no se sepa con certeza que contienen una cara y sólo se invertirá tiempo en aquellas subregiones que posiblemente si contengan una cara. Este detector se ha hecho muy popular debido a su velocidad a la hora de detectar las caras en imágenes y para su implementación en la librería OpenCV.

    Algunos articulos y links utiles(trataré de agregar unos cuantos más):

  • face_detection.pdf
  • Detección


  • Referencias:
    1. QA63 L6644. Mark Levi, The Mathematical Mechanic: using physical reasoning to solve problems. 2009.
    2. QA76 .8 M3 T36. TAPIA RODRIGUEZ, MAXIMO,CURSO DE MATLAB / MAXIMO TAPIA RODRIGUEZ,GUANAJUATO, GTO. : CIMAT, 1996
    3. QA76 .6 P34. PALM III, WILLIAM J. INTRODUCTION TO MATLAB FOR ENGINEERS / WILLIAM J. PALM III. BOSTON ; MCGRAW-HILL. MCGRAWHILL'S BEST. 1998
    4. T385 N33. NAKAMURA, SHOICHIRO. ANALISIS NUMERICO Y VERIFICACION GRAFICA CON MATLAB / SHOICHIRO NAKAMURA. MEXICO : PEARSON EDUCATION. 1997
    Valid XHTML 1.0 Strict

    Last update on 25/03/2015

    Nº de visitas desde el 03/11/2011: contador de visitas para blog