Introdu - PowerPoint PPT Presentation

1 / 75
About This Presentation
Title:

Introdu

Description:

Title: Visualiza o Cinet fica Author: Marcelo Gattass Last modified by: Marcelo Gattass Created Date: 7/21/1995 7:26:48 PM Document presentation format – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 76
Provided by: Marcelo127
Category:

less

Transcript and Presenter's Notes

Title: Introdu


1
Introdução à Visualização Volumétrica
  • por
  • Roberto de Beauclair Seixas, IMPA
  • Anselmo Cardoso de Paiva, UFMA
  • Marcelo Gattass, PUC-Rio

2
Visualização Volumétrica
  • Conjunto de técnicas para visualização de dados
    associados a regiões de um volume
  • Objetivo exibição do interior de objetos
    volumétricos, a fim de explorar sua estrutura (ou
    falta dela) e facilitar sua compreensão
    McCormick, 1987.

3
Radiografia Padrão (Raios X)
2K x 2K x 2 Bytes 4 chapas Angiografia 40 chapas
4
Tomografia Computadorizada (TC)
Receptores
Raio X
5
Exemplos de Imagens de TC
Normalmente 512 x 512 de 1/2 a 2 mm
Exame de 5 a 30 min.
Números em unidades de Hounsfield (HU)
6
Problemas da TC
  • Pequena resolução temporal para movimento
    cardíaco
  • Presença de artefatos inerentes ao método de
    aquisição
  • Resolução espacial relativamente pequena
  • Inabilidade de detecção de doenças em estágios
    incipientes que não tenha resultado ainda em
    significantes alterações dos coeficientes de
    densidade dos tecidos.

7
Ressonância Magnética Nuclear (MR)
Grande campomagnético
Mesa comtrilhos
8
Principais Vantagens de MR
  • Produzem contraste de tecidos moles superior as
    outras modalidades, sem a necessidade de agentes
    de contraste externo
  • Permitem a detecção de doenças anteriormente ao
    aparecimento de grandes mudanças anatômicas ou
    fisiológicas
  • Fornecem também informação fisiológica e
    funcional
  • As imagens podem ser adquiridas em planos
    arbitrários, através de manipulação eletrônica
    sem necessidade de mudanças na postura do
    paciente
  • A ausência de radiação ionizante permite a
    realização de estudos freqüentes sobre o paciente.

9
Desvantagens de MR
  • Dificuldades no estudo de calcificações
  • Suscetibilidade a movimentos do paciente durante
    a aquisição, por ser um processo lento
  • Impossibilidade de aquisição de dados de
    pacientes em sistemas artificiais de suporte a
    vida (UTI)
  • Inexistência de uma escala de valores absolutos
    para um determinado conjunto de dados
  • Alto custo.

10
Imagem MR
512 x 512 x 2 Bytes 30 fatias/exame
11
Ultra-som
12
Imagem de Ultra-som
512 x 512 x 1 Byte
13
Medicina Nuclear
Câmera Gama
galium scan
bone scan
SPECT (Single Photon Emission Computed
Tomography) PET (Positron Emission
Tomography) 256 x 256 x 2 Bytes
14
Exames Médicos
15
Sísmica
16
Formação de um traço sísmico
17
Seção Sísmica
18
Reconstrução das Fatias
volume das fatias (slices)
Ys
Xs
Zs
19
Classificação do Voxel
Voxel
Osso
1.0
Músculo
opacidade
Gordura
Branco
Vermelho
Amarelo
Ar
densidade
20
Tipos de Dados
  • Enumeráveis (material, litologia, ...)
  • Escalares (temperatura, pressão, ...)
  • Vetoriais (velocidade, aceleração, ...)
  • Tensoriais (tensão, deformação, ...)

21
Estrutura dos Dados
Grade Retilínea (xi,yj,zk)
Grade Cartesiana (i, j, k)
Grade Regular (idx, jdy,kdz)
Grade Não Estruturada (xi,yi,zi) ,
e(v1, v2 , v3)
Grade Estruturada (xi,j,k,yi,j,k,zi,j,k)
Grade Estruturada por blocos
22
Interpolação
  • Matriz de células
  • interpolação trilinear
  • imagens mais suaves
  • Matriz de voxels
  • análogo 3D do pixel
  • (i, j, k)

voxels
pontos da grade
pontos da grade
valor
valor
x
x
23
Métodos de Visualização
  • Indiretos por extração de superfícies implícitas
  • representação por polígonos Zbuffer
  • dados menores
  • precisa ser refeito quando muda a classificação
  • dificuldade de modelar objetos amorfos
  • Diretos por modelos de iluminação volumétrica
  • geração de imagens diretamente a partir dos dados
    volumétricos
  • visualização de múltiplas características,
    inclusive de dados amorfos
  • grande volume de dados
  • não usa (por enquanto) hardware gráfico

24
Rendering Direto
  • Mapeamento dos elementos de volume direto no
    espaço da imagem
  • Apropriados para a visualização de objetos
    amorfos
  • Mais lentos

25
Algoritmo ray-casting
  • Ordem da imagem.
  • para cada pixel
  • lance um raio e encontre os voxels que são
    interceptados
  • fim para

26
Lançamento dos Raios
raio
27
Partição dos Raios
x
ta
z
tb
voxel
y
amostra
?tmin(?x,?y,?z)
28
Interpolação
x,i
(xa, ya, za)
z,k
y,j
29
Interpolação no voxel
30
Classificação do Voxel
Voxel
tons e opacidade
cor
1.0
velocidade ou densidade
0
255
amplitude
31
Diferentes Funções de Transferência
32
Sensibilidade à função de transferência
33
Iluminação de um voxel
34
Estimativa do vetor normal

1a ordem
2a ordem
35
Interpolações em Visualização Volumétrica
Phong
Debrin
Gouraud
aC interpolada
normal
aC do voxel
interpolada
cor interpolada
normal
cor do
voxel
do
voxel
36
Etapa de Composição
  • Para cada raio
  • gera amostras de cor Cl (pi) e opacidades a(pi)
  • reamostragem dos dados dos voxels, em k amostras
    igualmente espaçadas
  • Processo de acumulação
  • I t Ib (1-t)I0
  • I0 cor do objeto
  • Ib cor do fundo
  • I cor resultante
  • t coeficiente de transparência

37
Influência de um Voxel
r0 g0 b0 a0
r1 g1 b1 a1
r 0 g 0 b 0 a 0
r a0 r0 g a0 g0 b a0 b0 a a0
r a0 r0(1-a0 ) a1 r1 g a0 g0(1-a0 ) a1
g1 b a0 b0(1-a0 ) a1 b1 a a0 (1-a0 ) a1
38
Composição no raio
ray
Cin
Cout
39
Tripod
exy
exz
ezy
y


?
exy (Dy)x (-Dx)y cxy
ezy (Dy)z (-Dz)y cyz
?
-
-
(x0Dx,y0 Dy,z0 Dz)
x
(x0,y0,z0)
-

?
exz (Dz)x (-Dx)z cxz
z
40
Valor inicial e incremento
x
y
z
(1/2,1/2,1/2)
exy (Dy)x (-Dx)y cxy
(Dy-Dx)/2
Dy
-Dx
-Dx
exz (Dz)x (-Dx)z cxz
(Dz-Dx)/2
Dz
Dy
ezy (Dy)z (-Dz)y cyz
(Dy-Dz)/2
-Dz
41
Caminhamento discreto
Bresenham
Cohen
42
Efeito da amostragem
Bresenham
Tripod
43
Partição celular
Volume
de dados
Plano da
uma amostra no meio da partição
imagem
Voxel
Partição
marcador da partição
44
Partição na grade
z
(ia ,ja ,0)
tzi ta
tyi
tzf
tyftb
y
(ib ,Ny ,kb)
45
Partição celular algoritmo
Dados txi,tyi,tzi, txf,tyf,tzf, nx,ny,nz dtx
txf/nx dty tyf/ny dtz tzf/nz txtxi
tytyi tztzi t1 min(tx,ty,tz) e w é o
eixo do mínimo nnxnynz while ( n gt 0
) tw dtw n-- t2 min(tx,ty,tz) e w
é o eixo do mínimo Sample ((t1t2)/2) t1t2

46
Otimizações
  • Velocidade
  • Refinamento progressivo
  • Terminação adaptativa do raio
  • Estruturas Hieráquicas
  • Qualidade da imagem
  • aumento do número de amostra no raio
  • lançamento de mais raios
  • melhora esquema de interpolação

47
Refinamento Progresivo
48
Refinamento Progressivo Exemplo
49
Algoritmo Ray Casting
  • Alto custo computacional
  • Apresenta todo o conjunto de dados
  • Facilmente paralelizável
  • Utilizado quando se deseja imagens de alta
    qualidade Elvins,1992

50
Raio que calcula a cor de um pixel
(
i,j
)
L
I I(x,y,z,-t,?) radiância ou intensidade
específica num ponto (x,y,z) ou t na direção -t,
na freqüência ?.
ta
Imagem
(x, y, z)
I
t
tb
t
Volume
51
Um pouco de física
I(x,n,?) c h ? ? (x,n,?)
c velocidade da luz (2.997925x108 m/s), h
constante de Planck (6.626x10-34 J.s), ?
freqüência da luz (4.3x1014 a 7.5x1014 Hz ou
s-1) ? (x,n,?) densidade de fótons na
freqüência ? no ponto x, na dir n e (m-3 sr
-1). Unidade de I J/s m-2 sr-1 W/m2 sr
52
Modelo de absorção
n número de partículas
a área das partículas pR2
r densidade n/vol n/(As Ds)
53
Aproximação para cor de um pixel
Um modelo simples para determinação da cor de um
pixel considera todos os fótons emitidos em sua
direção no volume correspondente a seu raio, ou
seja
54
Integrando numericamente
Partição t0 ta ? t1 ? t2 ? ? tn-1 ? tn tb
55
Estimando a contribuição da partição
Ck intensidade refletida da fonte na partição k
através da área Ap ak t (tk) Dtk opacidade
(núm. de partículas) da partição k
56
Shading pelo modelo de Phong
R
V
N
L
tk
t
57
Shading por partículas Kajiya
V
L
tk
t
58
Aproximando a absorção
59
Compondo de trás para a frente
cor cn-1alfan-1 for (in-2 igt0 i--)
cor cialfai(1-alfai)cor
60
Operadores do OpenGL
glBlendFunc(GL SRC ALPHA, GL ONE MINUS SRC ALPHA)
cor cn-1alfan-1 for (in-2 igt0 i--)
cor cialfaicor(1-alfai)
61
Compondo de frente para atrás
cor c0alfa0 trp 1- alfa0 for (i1
iltn trpgttol i) cor trp(cialfai)
trp (1-alfai)
62
Compondo fatias duas a duas
Cfront , afront
Cback , aback
cor c0alfa0 opc alfa0 for (i1 iltn
opclt1-tol i) cor (1-opc)(cialfai
) opc (1-opc)alfai
Cnew , anew
63
Problemas de re-amostragem
C
C1
0
0
1
1
0
0
1
1
a
a1
C
C0.75
0
0
1
1
0.5
0
0
1.0
?
0
0.5
0
1.0
0
0
1
1
a
a1
64
Re-amostragem da cor ponderada
a C
C1
0
0
1
1
0
0
1
1
a
a1
a C
C1
0
0
1
1
0.5
0
0
1.0
?
0
0.5
0
1.0
0
0
1
1
a
a1
65
Splatting (Westover,1990)
  • projeção de voxel equivale a atirar uma bola de
    neve num prato de vidro
  • contribuição da neve decresce com distância ao
    centro
  • região de influência de voxel no espaço da imagem
    é constante, a menos de uma translação

66
Splatting
  • Algoritmo
  • transformação ordem para percorrer o volume
  • iluminação modelo local
  • reconstrução determina a porção da imagem
    influenciada por cada voxel
  • determinação da visibilidade compõe as
    contribuições acumuladas em um buffer

67
Reconstrução do volume
t
(x,y,z)
x
(i,j,k)
z
y
68
Footprint
centro da projeção
footprint
69
Grade de espaçamentos diferentes
T-1
x
z
T-1(x)x
y
70
Shear-Warp (Lacroute, 1995)
intermediate image scanline
1. shear resample
3. warp resample
2. project composite
voxel scanline
intermediate image
final image
71
Esquema
shear
viewing rays
warp
image plane
Mview Mwarp2D Mshear3D
72
Otimização
voxel scanline
Resampling and Composition
intermediate image scanline
skip
work
skip
work
skip
Voxel with a 0
Opaque pixel
Voxel with a gt 0
Non opaque pixel
73
Volume rendering with textures
74
3D texture volume rendering
  • Load the volume data into a 3D texture. This
    processing is done once for a particular data
    volume.
  • Choose the number of slices. Usually this matches
    the texel dimensions of the volume data cube.
  • Find the desired viewpoint and view direction
  • Compute a series of polygons that cut through the
    data perpendicular to the direction of view. Use
    texture coordinate generation to texture the
    slice properly with respect to the 3D texture
    data.
  • Use the texture transform matrix to set the
    desired orientation the textured images on the
    slices.
  • Render each slice as a textured polygon, from
    back to front.
  • As the viewpoint and direction of view changes,
    recompute the data slice positions and update the
    texture transformation matrix as necessary.

75
2D texture volume rendering
  • Generate the three sets of 2D textures from the
    volume data. Each set of 2D textures is oriented
    perpendicular to one of volumes major axes. This
    processing is done once for a particular data
    volume.
  • Choose the number of slices. Usually this matches
    the texel dimensions of the volume data cube.
  • Find the desired viewpoint and view direction.
  • Find the set of 2D textures most perpendicular to
    the direction of view. Generate data slice
    polygons parallel to the 2D texture set chosen.
    Use texture coordinate generation to texture each
    slice properly with respect to its corre-sponding
    2D texture in the texture set.
  • Use the texture transform matrix to set the
    desired orientation the textured images on the
    slices.
  • Render each slice as a textured polygon, from
    back to front. A blend operation is performed at
    each slice the type of blend depends on the
    desired effect.
  • As the viewpoint and direction of view changes,
    recompute the data slice positions and update the
    texture transformation matrix as necessary.
    Always orient the data slices to the 2D texture
    set that is most closely aligned with it.
Write a Comment
User Comments (0)
About PowerShow.com