MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS

Slides:



Advertisements
Presentaciones similares
Agenda ¿Qué es Big Data? ¿Por qué usar Big Data? ¿Quién usa Big Data? Hadoop Arquitectura de Hadoop.
Advertisements

Ciclo de Vida de Desarrollo de los Sistemas de Información
Diseño y análisis de algoritmos
Diseño y análisis de algoritmos
Arquitectura de Sistema de E/S
DISEÑO DE EXPERIMENTOS
Dentro del grupo de investigación TELETECNO se desarrollo el proyecto el cual esta dirigido al estudio y aplicación de tecnología inalámbrica wifi y su.
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Stuart Pérez A12729.
INSTITUTO TECNOLOGICO DE MINATITLAN
Sistemas operativos y traductores
Utilización de la plataforma Hadoop para implementar un programa distribuido que permita encontrar las paredes de células de la epidermis de plantas modificadas.
Presentado por: Lenin Isaías Escobar Mendoza
Búsquedas avanzadas en la Wikipedia
Sistema de Agrupamiento y Búsqueda de Contenidos de la Blogosfera de la ESPOL, Utilizando Hadoop como Plataforma de Procesamiento Masivo y Escalable de.
EXTRACCION DE CARACTERISITCAS Y COMPARACION DE UNA HUELLA DIGITAL
Sistema Para GENERAR gráficas a partir de logs tcpdump usando Hadoop
Danilo Yáñez Alarcón. Avance II
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Janny David Vilac Salazar David Alejandro Gallo Moya
M. en C. ANDRÉS GERARDO FUENTES COVARRUBIAS
Gestión de Entrada / Salida
Denisse Cayetano – Christian Rivadeneira
David G. Lowe Distinctive Image Features from Scale-Invariant Keypoints Aradí Rosales Cruz Visión de alto nivel Enrique Sucar.
Autor: Alberto Luengo Cabanillas
Direcciones físicas y direcciones virtuales (lógicas)
Procesamiento paralelo
Algoritmos.
DISEÑO DE SOFTWARE 1ª. Parte
DATA WAREHOUSE Equipo 9.
(Organización y Manejo de Archivos)
Programacion Web Practica 1 Estudio de la aplicación distribuida: Apache Hadoop.
Presentado por:  Andrés Cantos Rivadeneira  Bolívar Elbert Pontón “MÓDULO DE RECOMENDACIONES DE PÁGINAS A VISITAR EN LA WIKIPEDIA, BASADO EN LAS APORTACIONES.
Sistema Organizador de Invitaciones, Eventos y Memos basado en una aplicación Cliente – Servidor SOIEM TESIS DE GRADO FIEC – ESPOL 2007 Christian Vulgarin.
Detección de Silencio Basado en Umbral de Energía Auto-Ajustable Redes de Alta Velocidad Presentan:Felipe Galaz Cristian Romero Profesora: Marta Barría.
Metodología para solución de problemas
INTEGRANTES: JOHN CARRIEL GOMEZ EVELYN CASTRO FLORES ELIANA MORA SUAREZ.
PROGRAMACIÓN PARALELA Modelos de programación paralela Modelos computacionales Paradigmas de programación paralela Programación en memoria compartida:
CARPLATE Reconocimiento del marco de la matrícula de un coche
Una introducción a la computación evolutiva
Integrantes: Jorge Herrera M. Carlos Rodríguez R..
ASOPROJECT Componentes del grupo: - Alberto Díaz Gil - Miguel Ángel Llorente Gracía - Javier E. Yépez Hualde.
Memoria virtual.
Informe de Materia de Graduación “Uso de la plataforma Pig sobre Hadoop como alternativa a una RDBMS para el análisis de datos masivos. Prueba de concepto.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
Agenda  Introducción  Relevamientos de tecnologías Objetivos de la fase de relevamiento de tecnologías Principales tecnologías disponibles -OpenMosix,
Introducción al análisis de expresiones
Cloud Computing July Palma L..
SISTEMAS OPERATIVOS.
Elaboración de algoritmos usando lógica de programación
Clasificación Computador
RESEARCH ON ALGORITHMS OF DATA MINING UNDER CLOUD COMPUTING ENVIRONMENT BY FEI LONG KEVIN FLORES ALVAREZ INF-252.
DESARROLLO DE APLICACIONES PARA AMBIENTES DISTRIBUÍDOS ALUMNOS: MARIANA MIGNÓN RÉDING CARLOS ANTONIO CARRASCO MARTÍNEZ PROFESOR: DR. JOSÉ BERNARDO PARRA.
ESCULA NORMAL “PROFR. DARÍO RODRÍGUEZ CRUZ” LIC
Desarrollo de lógica algorítmica.
Edwin Oliveros.  El diseño de sistemas consiste en la transformación del modelo de diseño, que toma en cuenta los requerimientos no funcionales y las.
TEMA: RESPONSABILIDAD DE ERRORES
REVISION Y AUDITORIA.
CON DETECCIÓN DE MOVIMIENTO USANDO IMÁGENES IMPLEMENTADO EN LABVIEW JORGE LEÓN JUAN SANCHEZ ESPOL 2010.
Software para la gestión inteligente y sostenible de la energía Pablo Carrasco Ortega Área de energía Instituto Tecnológico de Galicia Vigo, 23 de septiembre.
Reconocimiento de cara basado en “espectrocara”
Graficas de control de variables  Aplicación: Todos aquellos estudios que es necesario analizar funcionamiento de procesos Todos aquellos estudios que.
INFERENCIA ESTADÍSTICA
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Desarrollo de un decoder de video H
Comenzando con las ideas de Barry Boehm y Scott Shultz, James Martin desarrolló el Rapid Application Development durante los años 1980 en IBM y finalmente.
Optativa II Carlos Quilumbaqui. ¿Qué es Big Data? Big Data son grandes en cantidad, se capturan a un índice rápido, y son estructurados o no estructurados,
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Instituto de Ciencias y Humanidades Tabasco. El software Coordinar el uso del hardware Coordinar el uso del hardware Ejercer el control Programas de aplicación.
Transcripción de la presentación:

MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS FaceFinder MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS

Introducción Los algoritmos utilizados para el procesamiento de imágenes son de complejidad computacional alta. Por esto decidimos implementar un módulo que aprovechara los beneficios del procesamiento en paralelo. Procesamiento de imágenes es de computacional alta por la cantidad de datos a procesar y las operaciones que se hacen sobre los mismos.

Objetivos Demostrar que Hadoop es una plataforma eficiente para el procesamiento masivo de imágenes. Comprobar que implementar una solución de procesamiento masivo de imágenes resulta sencillo y muy poco costoso. Demostrar que Hadoop además de ser una plataforma eficiente para el procesamiento masivo de archivos de texto, también lo es para el procesamiento masivo de imágenes.

Marco Teórico: Detección Facial Reconocimiento Facial

Detección Facial La detección facial es un método cuyo objetivo es determinar si en una imagen existen o no rostros. En general pueden ser agrupadas como tareas de clasificación de patrones. Tareas de clasificación de patrones: Se extraen características que luego son comparadas con un modelo establecido. Viola y Jones el entrenamiento del clasificador se hace tomando como base características tipo Haar (Haar-like features) que describen la clase del objeto para la que se hará el entrenamiento.  Así pueden detectarse otro tipo de objetos en la imagen y no solo rostros.

Reconocimiento Facial Consiste en identificar o verificar una persona a partir de una imagen o un cuadro de video. Reconocimiento por geometría facial. Incorporando todos estos datos numéricos obtenidos se crea una plantilla única. Geométrica facial: Uno de los métodos para realizar esto es mediante la comparación de distancias entre ciertas características faciales claves específicamente seleccionadas tales como ojos, nariz y boca, además el ángulo del maxilar, frente y distancias de varias porciones del rostro.

Plataforma Procesamiento Distribuido Hadoop MapReduce

Hadoop Plataforma de procesamiento distribuido. Proyecto de Apache Software Foundation. Implementado en JAVA. Hadoop Distributed File System: HDFS MapReduce: Modelo para Programación Distribuida. Fase Map: Toma la entrada y lo divide en sub problemas Fase Reduce: Agrupa los resultados. (clave/valor) MapReduce es un modelo de programación y un framework para escribir aplicaciones que procesen rápidamente grandes cantidades de datos en paralelo sobre grandes grupos de computadoras. Se especifica una función map que procesa un par clave/valor para generar una colección de pares clave/valor, y una función reduce que agrupa todos los valores intermedios asociados con la misma clave intermedia. Los programas implementados con este estilo son automáticamente paralelizados y ejecutados en un clúster de gran tamaño.

MapReduce Ejemplo de un trabajo WordCount

Sistema de Archivos Distribuido: Hadoop DFS HDFS es altamente tolerante a fallos Está diseñado para ser implementado en hardware de bajo costo. Proporciona acceso de alto rendimiento de datos de aplicación. Los tamaños de bloques de archivos usado por HDFS es de 64 MB. Compresión gzip, lzo.

Hadoop Pipes Librería que permite usar Hadoop DFS y poder escribir el Mapper y el Reducer en C++ Hadoop Pipes convierte los datos a bytes y los envía vía socket. El trabajo puede consistir en la combinación entre C++ y Java Pipes uses sockets as the channel over which the tasktracker communicates with the process running the C++ map or reduce function. JNI is not used. Unlike the Java interface, keys and values in the C++ interface are byte buffers, represented as Standard Template Library (STL) strings

Amazon Web Services: AWS Amazon Elastic Compute Cloud (EC2) Se puede obtener poder de cómputo y procesamiento de manera variable. Flexibilidad para elegir cualquier plataforma de desarrollo o modelo de programación. Amazon Elastic MapReduce Hadoop está instalado y preconfigurado en la infraestructura de amazon. Interfaz web para manejar instancias. Beneficios Rentabilidad Confiabilidad Seguridad

Diseño Diseño Detalles de Implementación

Diseño

Implementación WholeFileInputFormat Lee el archivo de entrada en su totalidad. Difiere de los formatos de entrada convencionales. Memoria Cache Distribuida de Hadoop. Obtención de Plantillas (Templates) Comparando las Plantillas El resultado es el valor de similitud entre las 2. Cuando se trata de procesar multimedia muchas veces se deben hacer concesiones y balancear calidad de resultado con rendimiento, dependiendo de las necesidades que se tengan. En nuestro caso decidimos que para asegurar en cierta medida la calidad del resultado y no comprometer el rendimiento, los archivos deben ser de no menos de 512x512 píxeles.

Implementación: Resultado El resultado representa el porcentaje de similitud. Si el resultado supera el umbral es emitido hacia la fase Reduce. El valor de umbral es obtenido estableciendo la Tasa de Aceptación de Falsos Positivos (FAR)

Pruebas Realizadas

Aplicación de Escritorio Error al tratar de entontrar un rostro entre 1000 imágenes.

Pruebas Conjunto de Datos Cerca de 15600 imágenes de estudiantes de ESPOL. Aproximadamente 800 MB.

Prueba Incrementando # de Imágenes

Prueba Incrementando # de Nodos

Conclusiones y Recomendaciones

Conclusiones La plataforma Hadoop es capaz de procesar gran cantidad de imágenes eficientemente. El tiempo de ejecución disminuye de manera potencial con el aumento de nodos. La precisión de los resultados de reconocimiento facial dependen mucho de las condiciones de iluminación, rotación del rostro y calidad de la imagen.

Recomendaciones A partir del presente trabajo podría construirse una interfaz gráfica para este módulo. Se recomienda utilizar como entrada una imagen que contenga en su gran mayoría el rostro del individuo y que sea mayor a 512 x 512 pixeles.

¿Preguntas? Gracias