visualization toolkit - vtk sel 710 – arquiteturas especiais para proces- samento e visualização...
TRANSCRIPT
Visualization Toolkit - VTKVisualization Toolkit - VTK
SEL 710 – Arquiteturas especiais para SEL 710 – Arquiteturas especiais para proces-samento e visualização de imagens proces-samento e visualização de imagens digitaisdigitais
SEMINÁRIOSEMINÁRIO
ALUNOS:ALUNOS:
Edilson Carlos CaritáEdilson Carlos Caritá
Luciene Cavalcanti RodriguesLuciene Cavalcanti Rodrigues
Caracterizando Visualização de Caracterizando Visualização de DadosDados
• Para criar modelos de dados úteis e pode-rosos sistemas de visualização é preciso conhecer algo sobre a natureza dos dados.
• Outra característica é se a estrutura é regu-lar ou irregular (estruturada ou não).
• Dimensão topológica – várias: 0D (pontos), 1D (curvas), 2D (superfícies), 3D (volumes) e até grandes regiões dimensionais.
• A escolha da representação é importante porque ela afeta a habilidade da interface para dados externos e completa a atuação do sistema de visualização.
Existem alguns critérios:
• compacto
• eficiente
Critério de visualizaçãoCritério de visualização
• mapeável
• cobertura mínima
Visualization Toolkit (VTK)Visualization Toolkit (VTK)
• O VTK é um software de código aberto, ori- entado a objeto para desenvolvimento de sistemas gráficos.
• Possui dois subsistemas básicos:
• biblioteca da classe do compilador C ++
• interpretador (classes Java, TCL e Python)
Visualization Toolkit (VTK)Visualization Toolkit (VTK)
A vantagem da arquitetura é poder construir algoritmos eficientes na linguagem do compilador C++ e reter características de desenvolvimento de código rápido de lin-guagens interpretadas.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Módulo GráficoMódulo Gráfico
Módulo gráfico do VTK (objetos mais comuns):
• vtkActor, vtkActor2D, vtkVolume;
• vtkLight;
• vtkCamera
• vtkProperty, vtkProperty2D
• vtkMapper, Mapper2D
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Módulo GráficoMódulo Gráfico
Módulo gráfico do VTK (objetos mais comuns):
• vtkTransform
• vtkLookupTable, vtkColorTransferFunction
• vtkRenderer
• vtkRenderWindow
• vtkRenderWindowInteractor
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Módulo GráficoMódulo Gráfico
• vtkLightvtkLight (luzes) – controla a manipulação da iluminação de uma cena 3D.
• vtkCameravtkCamera (câmera) – controla como a geometria 3D é projetada na imagem 2D durante o processo de renderização.
• vtkMappervtkMapper (mapeador) – em conjunto com a lookup table (vtkLookupTable) é usado para transformar e renderizar geometrias.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Módulo GráficoMódulo Gráfico
• vtkRendervtkRender (renderizadores) e vtkRenderWindowsvtkRenderWindows (janelas de renderização) – administram a interface gráfica entre a máquina e o sistema de janelamento do computador.
•vtkRenderWindowInteractorvtkRenderWindowInteractor – permitir a manipulação da cena.
• A regra do “pipeline” de visualização é transformar informação em dados gráficos.
• O VTK utiliza aproximação do fluxo de dados para transformar informação em dados gráficos:
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Modelo GráficoModelo Gráfico
• vtkTensors
• vtkFieldData
• vtkDataArray
•vtkDataObject
• vtkProcessObject
• vtkScalars
• vtkVectors
• vtkNormals
Visualization Toolkit (VTK)Visualization Toolkit (VTK)DATASETDATASET
São os objetos de dados na visualização. O dataset é uma forma abstrata.
O datasetdataset consiste de duas partes: estrutura organizacional e atributos
A estruturaestrutura tem duas partes: topologia e geometria.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)DATASETDATASET
• TopologiaTopologia é o conjunto de propriedades, cons- tante inferior e certas transformações geomé-tricas.
• GeometriaGeometria é o instanciamento da topologia, a especificação de posicionamento no espaço 3D.
• Atributos DatasetAtributos Dataset são informações complementares associadas com geometria ou topologia.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)DATASETDATASET
•A estruturaestrutura consiste de: células e pontos.
• As célulascélulas especificam a topologia e os pontospontos especificam a geometria.
• AtributosAtributos podem ser: escalares, vetores, normais, coordenadas de textura, “tensors” e até mesmo dados definidos pelo usuário.
•A definição da estrutura de um dataset é coleção de células e pontos.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Tipos de CélulasTipos de Células
• CélulasCélulas são os blocos fundamentais para a construção de sistemas de visualização. Definidas para especificar um tipo em combinação com um lista ordenada de pontos.
• CélulasCélulas podem variar em dimensão topológica. Vértices, linhas, triângulos e tetraedros são exemplos de 0, 1, 2 e 3 dimensões.
• CélulasCélulas podem ser primárias ou compostas.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Tipos de CélulasTipos de Células
• Os tipos de células do VTK são:
• vertex
• polyvertex
• line
• polyline
• triangule
• triangule strip
• quatrilateral
• pixel
• polygon
• tetrahedron
• hexahedron
• voxel
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Tipos de CélulasTipos de Células
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Outros tipos de CélulasOutros tipos de Células
• Existem outros tipos que podem ser adiciona- dos através de bibliotecas, mas uma alternativa é decompor os tipos de células entre combina- ções com os tipos existem.
• Pirâmide – decomposição de dois tetraedros;
• Wedge – decomposição entre três tetraedros.
• Quadratic quadrilateral - 4 quadriláteros com um vértice no centro.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Outros tipos de CélulasOutros tipos de Células
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Atributos de DadosAtributos de Dados
• AtributoAtributo de dados é a informação associada com a estrutura do “dataset”. Inclui geometria e topologia
• AtributosAtributos de dados são muitas vezes associa-dos com pontos e células, mas podem ser com- ponentes de células tais como arestas ou faces.
• Os atributosatributos de dados podem ser tratados como n-dimensões.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Atributos de DadosAtributos de Dados
• ScalarsScalars – é a formas mais simples e comum de visualização de dados.
• VectorsVectors – possui magnitude e direção.
• NormalsNormals – são vetores de direção. Vetores de magnitude.
• Texture coordinatesTexture coordinates – são usadas para mapear um ponto no espaço cartesiano entre um espaço de textura em 1, 2 ou 3 dimensões.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Atributos de DadosAtributos de Dados
• TensorsTensors – são generalizações matemáticas complexas de vetores e matrizes.
• user-defineduser-defined – outros dados que podem ser mapeados entre os atributos de dados.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Tipos de DATASETTipos de DATASET
Os tipos de dataset são:
• unstructured points;
• polygonal data;
• unstructured grid.
• structured points;
• rectilinear grid;
• structured grid;
DatasetDataset consiste de uma estrutura organizacional mais atributos de dados associados a esta estrutura.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Representação DATASETRepresentação DATASET
• Cinco datasetsdatasets são implementados no VTK:
• vtkPolyData;
• vtkStructuredPoints;
• vtkStructuredGrid;
• vtkRectilinearGrid;
• vtkUnstructuredGrid.
Visualization Toolkit (VTK)Visualization Toolkit (VTK)Representação DATASETRepresentação DATASET
DatasetDataset de pontos não estruturados não é implementado, mas pode ser representados usando vtkPolyDatavtkPolyData ou vtkUnstructuredGridvtkUnstructuredGrid
Visualization Toolkit (VTK)Visualization Toolkit (VTK)BibliografiaBibliografia
Schroeder, Will; Martin, Kenneth; Lorensen, William. The Visualization Toolkit. 2.ed. New Jersey: Prentice Hall PRT, 1997.
Schroeder, William J. et al. The VTK User’s Guide. Kitware, 2000.
www.kitware.com