Proyecto Fin De Carrera “Estimación De Parámetros En Resonancia Magnética De Difusión Sobre Gpu”
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDAD DE VALLADOLID ESCUELA TÉCNICA SUPERIOR DE INGENIEROS DE TELECOMUNICACIÓN PROYECTO FIN DE CARRERA INGENIERO TÉCNICO DE TELECOMUNICACIÓN TELEMÁTICA “ESTIMACIÓN DE PARÁMETROS EN RESONANCIA MAGNÉTICA DE DIFUSIÓN SOBRE GPU” Autor: Silvia Pedrón Hermosa Tutor: Federico Simmross Wattenberg, Santiago Aja Fernández Septiembre de 2015 PROYECTO FIN DE CARRERA Ingeniería Técnica de Telecomunicación, Telemática 2 | P á g i n a “Procesado de Imagen por Resonancia Magnética con Tensores de Difusión implementado sobre GPU en OpenCL” Título: Estimación de parámetros en Resonancia Magnética de Difusión sobre GPU Autor: Silvia Pedrón Hermosa Tutores: Federico Simmross Wattenberg Santiago Aja Fernández Departamentos: Ingeniería Telemática Teoría de la Señal y Comunicaciones Miembros del tribunal Presidente: Carlos Alberola López Secretario: Federico Simmross Wattenberg Vocal: Santiago Aja Fernández Suplente: Marcos Martín Fernández Fecha de lectura: 11 de Septiembre de 2015 Calificación: P á g i n a | 3 PROYECTO FIN DE CARRERA Ingeniería Técnica de Telecomunicación, Telemática 4 | P á g i n a “Procesado de Imagen por Resonancia Magnética con Tensores de Difusión implementado sobre GPU en OpenCL” ÍNDICE GENERAL Índice General ........................................................................................................................................................ 5 Índice de Figuras ................................................................................................................................................... 9 Índice de Tablas ................................................................................................................................................... 11 Índice de Ecuaciones ......................................................................................................................................... 13 Índice de Códigos ................................................................................................................................................ 15 Agradecimientos ................................................................................................................................................. 17 Resumen ................................................................................................................................................................. 19 Abstract ................................................................................................................................................................... 21 1. Introducción ................................................................................................................................................ 23 1.1. Objetivos ............................................................................................................................... 25 1.2. Fases y métodos................................................................................................................. 26 1.3. Medios ................................................................................................................................... 27 2. Arquitecturas orientadas al procesamiento gráfico ................................................................... 29 2.1. Evolución de las tarjetas gráficas ............................................................................... 29 2.1.1. Primera etapa: Resoluciones y colores ............................................................. 29 2.1.2. Segunda etapa: Aceleradoras 3D ......................................................................... 32 2.1.3. Tercera etapa: Programables ................................................................................ 33 2.2. Arquitecturas Hardware: CPU y GPU ........................................................................ 35 2.3. Arquitectura de una GPU ............................................................................................... 39 2.3.1. Evolución de aplicaciones gráficas ..................................................................... 39 P á g i n a | 5 PROYECTO FIN DE CARRERA Ingeniería Técnica de Telecomunicación, Telemática 2.3.2. Pipeline – Funcionamiento básico de GPU ....................................................... 41 2.3.3. GPGPU ............................................................................................................................. 44 2.3.4. Características de la tarjeta gráfica .................................................................... 46 3. Diffusion Magnetic resonance imaginG (DMRI) ........................................................................... 49 3.1. Principio físico .................................................................................................................... 49 3.2. DWI ......................................................................................................................................... 52 3.3. Procesado de DTI (Diffusion tensor imaging) ........................................................ 56 3.3.1. Interpretación de los datos del tensor .............................................................. 56 3.3.2. Estimación de tensores ........................................................................................... 59 3.3.3. Visualización bidimensional y reconstrucción de las fibras .................... 60 3.4. Análisis de la materia blanca con DTI ....................................................................... 63 3.4.1. VBM (Voxel – Based Morphometry) .................................................................. 64 3.4.2. TBSS (Tract-Based Spatial Statics) ..................................................................... 65 4. Análisis de los Modelos de programación para GPGPU............................................................. 69 4.1. Arquitectura CUDA ........................................................................................................... 69 4.1.1. Un coprocesador multi-hilo ................................................................................... 71 4.1.2. Agrupación de hilos .................................................................................................. 72 4.1.3. Modelo de memoria .................................................................................................. 74 4.1.4. Gestión de kernels y organización de flujos.................................................... 75 4.2. Arquitectura de OpenCL ................................................................................................. 77 4.2.1. Arquitectura conceptual ......................................................................................... 77 4.2.2. Modelo de paralelismo a nivel de datos ........................................................... 78 4.2.3. Modelo de memoria .................................................................................................. 79 4.2.4. Gestión de kernels y dispositivos ......................................................................... 81 4.3. CUDA vs OpenCL ................................................................................................................ 82 5. Análisis de la aplicación .......................................................................................................................... 85 5.1. Mínimos cuadrados .......................................................................................................... 85 5.2. Desarrollo de la secuencia de Stejskal - Tanner ................................................... 86 6. Diseño e implementación ...................................................................................................................... 89 6.1. Cabecera................................................................................................................................ 89 6.1.1. Type ................................................................................................................................. 89 6.1.2. Dimension ...................................................................................................................... 90 6 | P á g i n a “Procesado de Imagen por Resonancia Magnética con Tensores de Difusión implementado sobre GPU en OpenCL” 6.1.3. Space................................................................................................................................ 90 6.1.4. Sizes ................................................................................................................................. 90 6.1.5. Thicknesses .................................................................................................................... 90 6.1.6. Kinds ................................................................................................................................ 90 6.1.7. Endian ............................................................................................................................. 91 6.1.8. Encoding ........................................................................................................................ 91 6.1.9. Data file .......................................................................................................................... 91 6.1.10. Modality ....................................................................................................................... 91 6.1.11. DWMRI_b-value .......................................................................................................