La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

“Desarrollo de algoritmos de procesamiento de imágenes con VTK”

Presentaciones similares


Presentación del tema: "“Desarrollo de algoritmos de procesamiento de imágenes con VTK”"— Transcripción de la presentación:

1 “Desarrollo de algoritmos de procesamiento de imágenes con VTK”
Autor: Ignacio Berzal Moreno GVA-ELAI.UPM

2 Objetivos: Visión general de las herramientas de visualización de imágenes Estudio de VTK Reconstrucción 3D (Marching Cubes) Visualización 3D de imágenes biomédicas obtenidas con microscopio confocal Técnicas de filtrado de difusión Desarrollo de una aplicación según el modelo UML GVA-ELAI.UPM

3 1- HERRAMIENTAS DE VISUALIZACIÓN DE IMÁGENES
MATLAB SDC ITK Openmoxis MPI VTK Paraview GVA-ELAI.UPM

4 VTK (Visualization Toolkit)
Librerías de código libre basadas en la programación orientada a objetos Visualización, procesamiento de imágenes, creación de objetos gráficos en 2D y 3D Constituido por dos subsistemas: Librería de clases en C++ “Intérpretes” para la manipulación de las clases en Java, Tcl/Tk y Python GVA-ELAI.UPM

5 Instalación de VTK Instalación binaria Instalación del código fuente
Realizar aplicaciones mediante librerías precompiladas Recomendada para usuarios Ventaja: Rápida instalación Instalación del código fuente Elaborar librerías propias Recomendada para creadores de software Inconveniente: Instalación lenta Ventaja: mejora tiempo de compilación GVA-ELAI.UPM

6 Arquitectura de VTK Modelos de objetos: Graphics model
Transforma datos gráficos en imágenes Visualization model Crea datos gráficos GVA-ELAI.UPM

7 Graphics model Objetos principales:
vtkActor: representa el objeto renderizado vtkCamera: posición y orientación de la imagen vtkMapper: representación geométrica del actor vtkRenderer: controla la renderización vtkRenderWindow:ventana de renderización vtkRenderWindowInteractor: interactua con la escena GVA-ELAI.UPM

8 Visualization model Tipos básicos de objetos: vtkDataObject:
Conjunto genérico de datos Si están estructurados se llaman dataset vtkProcessObject: Fuentes: Construyen o leen los data objects Filtros: Conectan los data objects Mappers: transforman los data objects en datos gráficos Se enlazan formando un pipeline GVA-ELAI.UPM

9 Ejecución del pipeline
render fuente > filtro > mapper > actor - El render inicia la petición de datos, que se comunica a través del pipeline - Las partes del pipeline que no estén actualizadas son reejecutadas - Una vez actualizados los datos al final del pipeline, son rederizados a travès del actor GVA-ELAI.UPM

10 Creación de una aplicación
1. Construir un pipeline de datos para procesar los datos: - Conectar fuentes, filtros y mappers 2. Crear los objetos gráficos para interpretar esos datos: - Crear una ventada de renderización, un render, y un interactor - Renderizar GVA-ELAI.UPM

11 2- FASES DE LA RECONSTRUCCIÓN 3D
Conversión del dominio de adquisición al mallado (marching cubes) Reducción de puntos de mallado GVA-ELAI.UPM

12 Conversión del dominio de adquisición al mallado (marching cubes)
Cada superficie tiene un valor de contorno constante El dataset de la imagen se divide en una malla de celdas tridimensionales, con un valor escalar en cada punto Se elabora una tabla de casos que enumera todos los estados topológicos posibles de una celda, según los valores escalares de sus puntos GVA-ELAI.UPM

13 Pasos de marching cubes
Cálculo del estado interior o exterior de cada vértice de una celda Creación de un índice con el estado binario de cada vértice en un bit separado (8 bits) Uso del índice para buscar el estado topológico de la celda en la tabla de casos Cálculo de la posición de la superficie (por interpolación) para cada arista según la tabla de casos Paso a la siguiente celda GVA-ELAI.UPM

14 Reducción de puntos de mallado
Al tratar cada celda por separado pueden crearse vértices y aristas duplicados en los límites comunes Se eliminan empleando una técnica de fusión de puntos coincidentes GVA-ELAI.UPM

15 3- APLICACIONES SOBRE UNA PILA DE IMAGENES DEL CONFOCAL
Creación de imágenes tridimensionales, a partir de imágenes en dos dimensiones de cortes transversales obtenidas mediante un microscopio confocal Construcción de un pipeline genérico útil para diferentes casos GVA-ELAI.UPM

16 Pipeline de pila de imagen
El filtro DataSpacing describe el valor de cada píxel y la distancia entre los cortes DataVOI selecciona la región de interés SetTransform define como disponer el dato en memoria para que el modelo resultante se vea de frente, manteniendo la correspondencia derecha-izquierda GVA-ELAI.UPM

17 GVA-ELAI.UPM

18 GVA-ELAI.UPM

19 Filtrado dependiente de las características del area a procesar Tipos:
4- FILTRADO DE DIFUSIÓN Filtrado dependiente de las características del area a procesar Tipos: Isotrópico: Acentúa el proceso de difusión en las zonas homogéneas y preserva los bordes Anisotrópico: Realiza un realce puntual del ruido GVA-ELAI.UPM

20 Combinación de difusión isotrópica y anisotrópica
Útil en imágenes con mucho ruido Eliminación previa del ruido con difusión isotrópica Realce posterior de patrones en el ruido con difusión anisotrópica GVA-ELAI.UPM

21 Resultados combinados (en 2D)
- Imagen ruidosa - Imagen filtrada GVA-ELAI.UPM

22 Resultados combinados (en 3D)
- Imagen original Imagen filtrada GVA-ELAI.UPM

23 5- APLICACIÓN “DIFUSIÓN2D3D”
Aplicación software para visualización y filtrado de imágenes 2D y 3D Implementada en lenguaje C++ con VTK Creada mediante modelado UML GVA-ELAI.UPM

24 Modelado UML (Lenguaje Unificado de Modelado): Objetivos
Representar sistemas completos, no sólo la parte software, usando conceptos orientados a objetos Establecer relaciones explícitas entre conceptos y código ejecutable Crear un lenguaje de modelado utilizable por humanos y máquinas Visualizar, especificar, construir y documentar los productos de un sistema software GVA-ELAI.UPM

25 Modelado visual Capturar las partes esenciales del sistema, mediante la abstracción Plasmación mediante notación gráfica Ventajas: Mayor rigor en la especificación Verificación y validación del modelo Independencia del lenguaje de implementación GVA-ELAI.UPM

26 Diagramas UML Representación gráfica de un conjunto de elementos con sus relaciones Casos de uso: Interacción con el sistema Clases: Relaciones entre las clases Secuencia: Interacción entre los objetos GVA-ELAI.UPM

27 Herramienta Rational Rose
Herramienta CASE para el modelado visual con UML Permite especificar, analizar y diseñar el sistema antes de codificarlo Generación de código a partir de los modelos Ingeniería inversa GVA-ELAI.UPM

28 Aplicación “difusión2D3D” : Documentación
Visión y alcance: carácterísticas principales, requerimientos, etc Casos de uso: requisitos funcionales. Actores, curso de éxito, excepciones, etc GVA-ELAI.UPM

29 Casos de uso de la aplicación
Visualizar 2D Visualizar 3D Filtrar Difusión 2D Filtrar Difusión 3D GVA-ELAI.UPM

30 Creación de la aplicación mediante Rational Rose
Creación del proyecto Creación de casos de uso Elaboración de diagramas UML Generación de código Ingeniería inversa GVA-ELAI.UPM

31 GVA-ELAI.UPM

32 GVA-ELAI.UPM

33 Clases de la aplicación
GVA-ELAI.UPM

34 Clases de visualización / filtrado 2D
Parámetros de visualización: Nombre de la imagen en 2D con extensión .jpg Parámetros de filtrado de difusión: Factor de difusión Umbral de difusión Número de iteraciones GVA-ELAI.UPM

35 Clases de visualización / filtrado 3D
Mismos parámetros que en las clases 2D, añadiendo: El archivo de imagen debe ser de extensión .pic Indicar el número de rodajas para formar la imagen 3D ( primera y última) GVA-ELAI.UPM

36 Clase vistaFiltradoDifusión2D3D
Encargada de gestionar el programa Interacciona con el usuario mediante un menú de opciones Accede al resto de clases y establece sus parámetros GVA-ELAI.UPM

37 6- CONCLUSIONES Aportaciones Futuras mejoras GVA-ELAI.UPM

38 Aportaciones Análisis de VTK como herramienta de visualización
La reconstrucción y filtrado de imágenes 3D tiene gran interés en el campo de la biomedicina Importancia del modelado UML en la ingeniería del software (reutilización de código) GVA-ELAI.UPM

39 Mejoras Estudio de otras herramientas de visualización distintas de VTK, y comparativa Ahondar en el estudio de las técnicas de filtrado y reconstrucción de imágenes GVA-ELAI.UPM

40 Mejoras en la aplicación “difusión2D3D”
Creación de un GUI (Grafical User Interface) para interaccionar con el usuario Procesamiento distribuido del filtrado de difusión Utilización de otros tipos de filtros GVA-ELAI.UPM


Descargar ppt "“Desarrollo de algoritmos de procesamiento de imágenes con VTK”"

Presentaciones similares


Anuncios Google