La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

UNIVERSIDAD DE LAS FUERZAS ARMADAS - ESPE

Presentaciones similares


Presentación del tema: "UNIVERSIDAD DE LAS FUERZAS ARMADAS - ESPE"— Transcripción de la presentación:

1 UNIVERSIDAD DE LAS FUERZAS ARMADAS - ESPE
DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA CARRERA DE INGENIERÍA EN ELECTRÓNICA Y TELECOMUNICACIONES DETECCIÓN DE ROSTROS EN ESCENAS DE VIDEO UTILIZANDO HERRAMIENTAS GPU-CUDA. ANDRÉS ALBERTO CEVALLOS ROMERO SANGOLQUÍ, FEBRERO 2017

2 ÍNDICE Introducción Antecedentes Justificación
Objetivos General Específicos Marco Teórico Procesamiento de Imágenes y vídeo Unidades de procesamiento Gráfico GPU CUDA Algoritmo Viola-Jones 3. Diseño e Implementación Diagrama de bloques Diseño de la Aplicación 4. Pruebas y Resultados Pruebas Operativas Toma de datos Resultados 5. Conclusiones y Recomendaciones 6. Trabajos Futuros

3 Antecedentes Antecedentes En el campo de visión por computadora se investiga diferentes métodos con el fin de adquirir, procesar, y analizar información de imágenes y video para que puedan ser tratados y reconocidos por una máquina, la cual utiliza herramientas para realizar reconocimiento de objetos, restauración de imágenes, reconstrucción de escenas de vídeo, detección de eventos, tecnologías que son utilizadas por diferentes áreas de investigación, como la inteligencia artificial, el control automático o robótica, la neurobiología, la óptica, entre otras; con la intención de mejorar aspectos de sus técnicasy optimizaciones.

4 Justificación Justificación
El proceso de detección y reconocimiento de eventos, requiere que las escenas de video sean procesadas en tiempo real, motivo por el cual es necesario utilizar equipos de cómputo de alto rendimiento. Una alternativa tecnológica muy económica es la utilización de Unidades de Procesamiento Gráfico (GPU) con procesamiento en paralelo CUDA . La manera de aprovechar las diferentes herramientas computacionales para obtener mejores resultados, requiere un desarrollo tanto en software como en hardware, por tal motivo el estudio del funcionamiento de las tarjetas gráficas y su desarrollo por medio de su mecanismo de programación, la arquitectura CUDA, es la base para mejorar el rendimiento de programas especializados que requieran paralelismo y procesamiento en tiempo real.

5 Objetivo General Desarrollar una aplicación para la detección de rostros en escenas de video que integre MATLAB bajo un entorno CUDA de la tarjeta gráfica NVIDIA

6 Objetivos Específicos
Analizar el estado del arte acerca del algoritmo Viola-Jones para la detección de rostros. Realizar el procesamiento de secuencias de vídeo utilizando herramientas computacionales de alto rendimiento. Analizar los datos adquiridos y realizar una comparación de tiempos de procesamiento obtenidos mediante herramientas tradicionales de la CPU y mediante el tratamiento en paralelo de la unidad de procesamiento gráfico. Evaluar el tiempo de procesamiento mediante la variación del número de núcleos de la arquitectura CUDA

7 CUDA (Compute Unified Device Architecture)
Arquitectura de cálculo paralelo Desarrollado por NVIDIA diseñada conjuntamente a niveles de hardware y software Aprovechar la gran potencia computacional de la GPU Proporcionar un incremento en el rendimiento del sistema. Banda de 250 kbps 2,4 GHz y 250 kbps 915 MHz

8 Estructura CUDA HARDWARE SOFTWARE FIRMWARE

9 Hilos CUDA

10 Interacción MATLAB CUDA
La utilización de MATLAB para el computo en la GPU permite acelerar aplicaciones y procesos. Matlab brinda la facilidad de tomar ventaja de la tecnología de computación GPU-CUDA sin la necesidad de aprender las complejidades de las arquitecturas GPU o bibliotecas de computación GPU de bajo nivel. Métodos de Interacción Funciones de matlab incorporadas para la GPU Interacción mediante funciones propias de Matlab gpuArray, gather Utilización del Parallel Computing Toolbox Utilización de CUDA Mex Files Realizando la llamada a la función correspondiente de CUDA

11 Parámetros Necesarios
Tarjeta Gráfica Nvidia GPU Compute Capability

12 Algoritmo Viola-Jones
Algoritmo de detección de rostros mediante tres aspectos fundamentales. Imagen Integral. Adaboost. Clasificadores. Descripción del algoritmoritmo

13

14 Subregiones de la Imagen integral
Detección de rasgos

15 Clasificadores en cascada

16 Métodos y materiales Características cámara web

17 Características tarjeta Nvidia Geforce GTX 950M

18 Diagrama De Bloques de la Aplicación

19 Compatibilidad de programas
Verificación de la versión toolkit CUDA instalada

20 Verificación de las especificaciones de la GPU desde Matlab

21

22 Detección de rostros Falsos Positivos

23 Pruebas con 7 rostros

24 Pruebas Operativas Comparación de tiempo de ejecución en multiplicación de matrices.

25 Tiempo de ejecución entre núcleos procesamiento de 200 frames.

26

27 Tiempo de ejecución entre núcleos procesamiento de 300 frames.

28

29 Tiempo de ejecución entre núcleos procesamiento de 300 frames.

30

31 Conclusiones y Recomendaciones
Se muestra que la tarjeta gráfica Geforce GTX950M mediante su arquitectura CUDA y el uso de parámetros de medición como: la cantidad de información, efectividad de detección con diferente cantidad de frames y variando el número de muestras analizadas, es un recurso efectivo para el procesamiento de imágenes ya que mejora en el tiempo de ejecución de 1229,36 s a 605,86 s. Se observa que se puede obtener mejores resultados al utilizar todaslas capacidades disponibles de la GPU en comparación al procesador del computador. En el desarrollo del proyecto se llama a la ejecución de un kernel CUDA para utilizar el algoritmo y realizar el barrido de los pixeles en cada frame. En operaciones matriciales implementadas en la GPU el uso de las funciones de tipo gpuArray optimizaron el tiempo de ejecución desde la creación de elementos hasta el proceso operacional donde el uso conjunto de Matlab y CUDA forman una herramienta potencial en la utilización de aplicaciones multicore, al encontrar el mecanismo de interacción que mas convenga para la ejecución.

32 El algoritmo Viola Jones permite la detección de rostros con una tasa aceptable de muestras positivas, el procesamiento realizado en la GPU mejoró el rendimiento del algoritmo levemente al reducir la tasa de falsos positivos de 1,53 a 0,55 en comparación con el CPU, dichas pruebas fueron realizadas bajo las mismas características de posicionamiento facial frente a la cámara web en las escenas de vídeo. La adquisición de frames para el proceso de detección del algoritmo fue realizada de manera serial por el procesador y de forma paralela en la GPU programada en lenguaje C, a una tasa de 30 fps y analizados uno a uno en bloques establecidos de 200, 300, 500 y 1000 frames. Al combinar dichas plataformas permitió aprovechar las características más robustas de cada una, el tratamiento de imágenes y vídeo de Matlab y el trabajo multitarea o multiprocesamiento realizado por CUDA haciendo uso de sus núcleos, bloques e hilos.

33 Inicialmente se realizó el proyecto con un computador con características del procesador de 32 bits lo cual limita ciertas funciones de desarrollo de CUDA, como la utilización de herramientas NSIGHT para la visualización y análisis del comportamiento del código; de la misma manera no permitió la instalación de una versión de Matlab reciente en las cuales las características habilitadas para la GPU están más desarrolladas en cuanto al uso de funciones, comandos y distintos tipos de datos. El programa realizado es la base para la utilización de CUDA en la optimización de algoritmos de detección, ya que la velocidad de implementación es hasta 10 veces más rápida, un aspecto fundamental en el proceso de reconocimiento inteligente y visión por computadora. La compatibilidad que presenta CUDA con los diferentes ambientes de desarrollo y su relativa facilidad de implementación al presentar un lenguaje de programación disponible para estructuras C, C ++, Fortran y Phyton entre otros, permiten la utilización del IDE Visual Studio 2015 y el uso de librerías opencv que facilitan el manejo de herramientas de visión artificial y reconocimiento facial.

34 Recomendaciones Para obtener los datos correctamente, al comparar el tiempo de procesamiento, es importante tener en cuenta que las pruebas deben ser realizadas bajo las mismas características con respecto a los rostros que van a ser detectados por el algoritmo, estos deben estar en posición frontal a la cámara ya que de esta manera se puede evitar los falsos positivos y detecciones erróneas o nulas. Previo a la fase de desarrollo de la aplicación se deben verificar los requisitos para asegurar la compatibilidad entre programas, sistema operativo y diferentes drivers de la tarjeta NVIDIA. Verificar la capacidad computacional de la tarjeta Geforce según la versión utilizada de Matlab, se requiere una mínima de 1.3 para versiones hasta r2014a y en versiones superiores se debe utilizar 2.0 o más por razones de compatibilidad. Para aplicaciones de alta carga computacional se recomienda trabajar con una alta memoria RAM, para que el procesamiento de instrucciones y acceso a memoria se realice de una manera más rápida y no existan limitaciones de almacenamiento de datos y uso de memoria.

35 Trabajos Futuros Eliminación de falsos positivos del algoritmo así como la certeza de la existencia o no de un rostro, para esto se necesita el estudio en campos de aprendizaje de máquina, para el desarrollo e implementación Implementación de las GPU en el campo de la computación de alto rendimiento (HPC), el cual se sustenta en el desarrollo de problemas computacionales mediante clusters, los cuales combinan rendimiento, disponibilidad y escalabilidad. El equipamiento de clusters con GPU permitiría la optimización de cálculos mediante la computación de propósito general en unidades de procesamiento gráfico GPGPU. El campo de la vídeo vigilancia tiene distintos propósitos entre los cuales la detección de rostros y objetos son de los más relevantes, para lo cual se plantea la utilización de la tecnología de Face Tracking y Pattern Recognition los cuales con la ayuda de la arquitectura CUDA mejorarían el tiempo de procesamiento de este tipo de algoritmos y sus relacionados.

36 GRACIAS POR SU ATENCIÓN


Descargar ppt "UNIVERSIDAD DE LAS FUERZAS ARMADAS - ESPE"

Presentaciones similares


Anuncios Google