autor:mario enrique casado garcía tutores:mario martínez zarzuela francisco javier díaz pernas...

Post on 06-Feb-2015

9 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Procesamiento Frecuencial sobre GPU en CUDA para la Segmentación Bio-Inspirada de

Imágenes en Color

Autor: Mario Enrique Casado García

Tutores: Mario Martínez Zarzuela

Francisco Javier Díaz Pernas

UNIVERSIDAD DE VALLADOLID

Proyecto Fin de CarreraIngeniero Técnico de

TelecomunicaciónSistemas de Telecomunicación

ESCUELA TÉCNICA SUPERIOR DE INGENIEROS DE

TELECOMUNICACIÓN

28 de julio del 2010

2

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

3

IntroducciónMotivación y objetivos del PFC:

◦Ejecución sobre arquitecturas heterogéneas del modelo de segmentación propuesto: C for CUDA

◦Procesamiento en el dominio transformado de la frecuencia (Transformada Rápida de Fourier)

◦Conseguir ejecutar el modelo lo más rápido y preciso posible

Disminución del tiempo de procesamiento

4

Introducción Lenguajes de programación utilizados:

◦ C Programa escrito en C◦ C++ Organización del código en clases y métodos◦ C for CUDA 2.3 Ejecuciones en GPU◦ HTML Página web para el visualizado de los resultados

obtenidos◦ CSS Estilo de la página web◦ Batch Automatización de ejecuciones mediante archivo de

procesamiento por lotes

Librerías utilizadas:

◦ CUFFT 2.3 Transformaciones entre dominio duales; temporal y frecuencial

◦ OpenCV 2.0 Tratamiento de imágenes (cargar, salvar, …)

5

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamientoFrecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

6

Modelo de Segmentación de Imágenes

Modelo de segmentación propuesto:

o COS: Células tipo 1 Células tipo 2

o CSS:• BCS Color

Células simplesCélulas complejasCompeticiónCooperación

• FCS Color:CDOC

X DifusiónX Fusión de escalas

7

Modelo de Segmentación de Imágenes

Etapas:

Células tipo 1 Convoluciones separablesCélulas tipo 2 Convoluciones separablesCélulas simples Convoluciones bidimensionalesCélulas complejas Operaciones sobre células simplesCompetición Convoluciones bidimensionalesCooperación Convoluciones bidimensionalesCDOC Convoluciones separables

g gijk ijkg

ijk g gijk ijk

BE CIK

A E I

8

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

9

¿Qué tiene que cumplir el algoritmo?:

◦Maximizar el paralelismo

◦Poseer elevada intensidad aritmética

◦Minimizar las transferencias CPU/GPU

◦Aprovechar anchos de banda y memoria de la GPU

GPU ComputingMotivación:

10

GPU ComputingComparativa:GPU:Ejecución:

11

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

12

Procesamiento Frecuencial de Imágenes

Introducción:

Imagen Original

Colores primarios

Colores secundarios

13

Procesamiento Frecuencial de Imágenes

Dominio de la frecuencia:

Dominio temporal

Dominio frecuencial

FFT

IFFT

Parte Real

Parte Imaginaria

2 2logC u v

GPU CUFFT

14

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

15256x256 480x320 800x600 1024x1024

0

2

4

6

8

10

12

Kernel 7x7Kernel 11x11Kernel 23x23Kernel 35x35

250x250 450x320 800x600 1000x6000

0.10.20.30.40.50.60.70.8

Kernel 7x7Kernel 11x11Kernel 23x23Kernel 35x35

Procesamiento Frecuencial sobre GPU en CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Benchmark de convoluciones sobre GPU:

◦ Implementación de convoluciones en el dominio transformado de la frecuencia

◦ Implementación de convoluciones separables en el dominio temporal

Multiplicación frecuencial

Menor computo por pixel

a(u,v) * b(u,v) A[n,m] x B[n,m]

n x m (multi.) n + m (multi.)

Píxeles

Píxeles

Mili

segundos

Mili

segundos

16

Células simples Bucle Coop./Comp.

Células simples: Gabor par 45º Cooperación: Right 90º O2

Bucle Coop./Comp.

Competición: Fcomp 0º

Procesamiento Frecuencial sobre GPU en CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Células tipo 1 Células tipo 2 CDOC

BYon BYon BYon

Células simples Células complejas Bucle Coop./Comp.

BY impar 45º Escala S Escala S

17

Procesamiento Frecuencial sobre GPU en CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Paralelización del modelo de segmentación propuesto:

Clases implementadas en el proyecto: Utilización del código:

18

Procesamiento Frecuencial sobre GPU en CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Automatización:

19

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

20

Pruebas y ResultadosEstructura del programaEjecución del programa…….

21

Pruebas y ResultadosTiempos:

*Con una relación de imagen de 512x256

Implementación realizada Autor Tiempo empleado

C [Antón Rodríguez-08] 2700000 ms por escala

Matlab [PFC de la UV] 180000 ms

OpenGL/Cg (GPGPU) [Martínez Zarzuela-09a] 2192 ms en 256x256

C for CUDA Actual PFC *1866,377441 ms

22

Pruebas y ResultadosGPU plofiling:

23

Pruebas y Resultados“La ejecución automatizada del modelo de

segmentación sobre las 100 imágenes de test de Berkeley ronda los 8 minutos, guardando todos los canales de todas las escalas a disco

duro ”

24

ÍndiceIntroducciónModelo de Segmentación de ImágenesGPU ComputingProcesamiento Frecuencial de ImágenesProcesamiento Frecuencial sobre GPU en

CUDA para la Segmentación Bio-Inspirada de Imágenes en Color

Pruebas y ResultadosConclusiones y Líneas Futuras

25

Conclusiones y Líneas Futuras Conclusiones:

◦ Buenos resultados de segmentación

◦ Tiempos de ejecución muy bajos

◦ Segmentación de grandes cantidades de imágenes en poco tiempo (Automatización)

◦ Dificultad en el manejo de datos en frecuencia

◦ Memoria GPU limitada

◦ Difícil optimizado de los parámetros del modelo

26

Conclusiones y Líneas FuturasLíneas futuras:

◦Interfaz gráfica

◦Librería NVIDIA CUDA CUFFT

◦Modelo de segmentación

◦Procesamiento en la GPU

•CUFFT Versión 3.0cufftPlanMany()

•Manejo de números reales

•Datos en double

27

Conclusiones y Líneas FuturasLíneas futuras:

◦Interfaz gráfica

◦Librería NVIDIA CUDA CUFFT

◦Modelo de segmentación

◦Procesamiento en la GPU

•Optimizado de los parámetros del modelo

•Todos lo cálculos en frecuencia

•Implementación de la etapa de difusión

28

Conclusiones y Líneas FuturasLíneas futuras:

◦Interfaz gráfica

◦Librería NVIDIA CUDA CUFFT

◦Modelo de segmentación

◦Procesamiento en la GPU

• Optimización y reutilización de memoria en la GPU

• Depurar y optimizar el código ejecutado en GPU

• Multi-GPU

29

Conclusiones y Líneas FuturasLíneas futuras:

◦Todo ello para conseguir una disminución del tiempo de ejecución

Segmentación de video en tiempo real o quasi-real

30

¡Gracias!¡Preguntas….!

top related