Aplicaci - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Aplicaci

Description:

Title: Presentaci n de PowerPoint Last modified by: Administrador Created Date: 1/1/1601 12:00:00 AM Document presentation format: Presentaci n en pantalla – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 35
Provided by: elaiUpmEs
Category:
Tags: aplicaci

less

Transcript and Presenter's Notes

Title: Aplicaci


1
Aplicación para la visualización de imágenes 2D y
3D empleando VTK
  • Nuria Paniagua

2
Sumario del proyecto
  • Objetivos
  • Imágenes .pic obtenidas del confocal
  • Reconstrucción de imágenes 3D
  • VTK (Visualization Toolkit)
  • Reconstrucción de imágenes con VTK
  • Algoritmo visualización 2D y 3D
  • Aplicación GUI con MFC
  • Ventana de visualización de imágenes 2D y 3D

3
1. Objetivos
  • Reconstrucción tridimensional
  • Funcionamiento y uso de librerías VTK
  • Algoritmo de visualización 2D y 3D
  • Aplicación GUI a partir de MFC

4
2. Imágenes .pic obtenidas del confocal
  1. Microscopia confocal
  2. Obtención de imágenes 3D

5
2.1 Microscopia confocal
  • Microscopio óptico
  • Microscopio confocal

6
Microscopio confocal
  • Diafragma de detección (elimina luz del plano
    focal)
  • Diafragma de iluminación

7
2.2 Obtención de imágenes 3D
  1. Adquisición de imágenes 3D con el microscopio
    confocal
  2. Archivos .pic

8
Obtención de imágenes 3D obtenidas del confocal
  • Imágenes obtenidas del confocal son siempre
    imágenes digitales
  • Los fotodetectores transforman la señal lumínica
    en señal eléctrica que mediante el sistema
    informático acoplado se traduce en un píxel
  • Píxel
  • Localización tridimensional del punto excitado
  • La intensidad lumínica de dicho punto
  • Almacenamiento de imágenes digitales en ficheros
    gráficos

9
Archivos .pic
  • Ficheros gráficos que almacenan imágenes
    digitalizadas
  • Formato
  • Cabecera datos relativos al gráfico que se
    almacena (ancho, alto,relación entre píxel y
    unidad de medida, unidad de medida, tipo de
    imagen (color o blanco y negro), codificación del
    color, método de compresión si lo hay)
  • Datos del gráfico o de la imagen digitalizada.
  • Almacenan
  • Imagen digitalizada por fichero en tonos de gris
    o en color
  • Secuencia de imágenes en cada fichero

10
Secuencia de imágenes
  • Formato del fichero
  • Cabecera 6 enteros (4 bytes cada uno)
  • Slices cada una de las imágenes que contiene el
    fichero (en tonos de gris)
  • Formato de los datos de las imágenes
  • Matriz de bytes sin comprimir, por cada unos de
    los diferentes slices que componen la
    imagen,donde se almacena el valor de los píxeles
    por filas

11
Posición y significado de cada byte
12
3. Reconstrucción de imágenes 3D
  1. Introducción
  2. Fases de la reconstrucción tridimensional

13
3.1 Reconstrucción tridimensional
  • Visualización de datos basada en el uso de
    algoritmos que transformen estos
  • Clasificación de algoritmos según
  • Estructura efectos que la transformación tiene
    en la topología y geometría del dataset
  • Tipo tipo de dataset sobre el que operan los
    algoritmos
  • Escalares técnica de contorneado

14
Técnica de contorneado
  • Construir límites entre regiones distintas de
    valores de datos constantes
  • Estos límites corresponden a líneas de contorno
    (en 2D) y superficies (en 3D)

15
3.2 Fases de la reconstrucción tridimensional
  • a) Marching cubes
  • b) Reducción puntos de mallado
  • c) Suavizado del mallado

16
a) Marching cubes
  • Cada punto de la malla del dataset tiene un valor
    escalar asociado
  • Cada superficie tiene un valor de contorno
    constante
  • Un contorno sólo puede atravesar una celda de un
    número finito de formas
  • Se elabora una tabla de casos que enumera todos
    los estados topológicos posibles de una celda,
    dadas las combinaciones de valores escalares en
    los puntos de la celda

17
b) Reducción de puntos de mallado
  • A 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
  • La interpolación en cada arista debe realizarse
    en la misma dirección
  • Si no se cumple, pueden generarse puntos que no
    coincidan exactamente debido al redondeo
    numérico, y no serán fusionados correctamente

18
c) Suavizado del mallado
  • Para una celda existen 256 combinaciones de
    valores escalares dadas por los estados de los 8
    vértices
  • Pueden reducirse a 15 por rotaciones y simetrías
  • Aparecen casos ambiguos en el contorneo
  • Pueden aparecer huecos en la superficie según
    el caso elegido

19
4. VTK (Visualization Toolkit)
  1. VTK
  2. CMake
  3. Arquitectura de VTK en C

20
4.1 VTK
  • Librerías de código libre basadas en la
    programación orientada a objetos
  • Subsistemas componentes
  • Librería de clases en C
  • Intérpretes para la manipulación de las clases
  • Visualización, procesamiento de imágenes,
    creación de objetos gráficos en 2D y 3D

21
4.2 CMake
  • Herramienta multiplataforma de código libre
  • Configurar y dirigir proceso de construcción de
    aplicaciones
  • Ficheros CMakeLists.txt para describir proceso de
    construcción y establecer dependencias
  • Crea ficheros necesarios para compilar la
    aplicación
  • Compilar VTK y trabajar con herramientas propias
    de la plataforma empleada

22
4.3 Arquitectura de VTK
  • Modelos de objetos
  • a) Graphics model
  • b) Visualization model

23
a) Graphics model
  • Transformación de datos gráficos en imágenes
  • Objetos principales
  • vtkActor
  • vtkCamera
  • vtkLight
  • vtkMapper
  • vtkRenderer
  • vtkRenderWindow
  • vtkRenderWindowInteractor

24
b) Visualization model
  • Crea datos gráficos a partir de la información
    aportada
  • Objetos principales
  • vtkDataObject Datos estructurados llamados
    dataset (estructura geométrica y topológica de
    puntos y celdas y atributos asociados)
  • Process object Algoritmos del sistema llamados
    filtros. Junto con los anteriores porman los
    pipelines de visualización

25
Tipos de process objects
  • a) Fuentes Generan datos leyendo o construyendo
    uno o más data objects
  • b) FiltrosTransforman varios data objects en la
    entrada, y generar uno o más data objects en la
    salida
  • c) Mappers Transforman los data objects en datos
    gráficos, que son renderizados posteriormente
  • Se enlazan formando el pipeline

26
Pipeline

  • render
  • fuente gt filtro gt mapper gt 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 por el actor

27
5 Reconstrucción de imágenes con VTK
  • Creación de imágenes tridimensionales a partir de
    imágenes bidimensionales de cortes transversales
  • Programa para visualizar, por separado o
    conjuntamente, las diferentes superficies que
    componen un cuerpo
  • Construcción de un pipeline genérico útil para
    diferentes casos

28
Creación de una aplicación
  • 1. Construir un pipeline de datos para procesar
    los datos
  • Conectar
  • Fuentes (crear datos)
  • Filtros (procesar datos)
  • Mappers (transformar datos en gráficos)

29
Creación de una aplicación
  • 2. Crear los objetos gráficos para interpretar
    esos datos
  • Ventada de renderización para trabajar en ella
  • Render
  • Interactor (interactuar con los datos)
  • Uno o más actores (cada uno unido a un mapper)
  • Renderizar

30
Algoritmo visualización 2D y 3D
31
Algoritmo visualización 2D y 3D
32
6. Aplicación GUI con MFC
  1. Introducción
  2. Programación con Visual C
  3. Librería de clases MFC

33
6.1 GUI
  • GUI (Interfaz gráfica de usuario)
  • Windows (entorno multitarea basado en ventanas,
    que representan programas)
  • Desarrollo de programas mediante una librería de
    rutinas y funciones que permiten gestionar
    componentes como menús, diálogos, ventanas, etc.

34
6.2 Programación con Visual C
  • Entorno integrado de desarrollo que permite la
    programación orientada a objetos (POO)
    conjuntamente con el sistema de desarrollo de
    Windows denominado API
  • Incluye herramientas de desarrollo como un editor
    de texto, compilador,depurador, visor de datos y
    pendencias, etc
Write a Comment
User Comments (0)
About PowerShow.com