750 likes | 871 Views
Introdução à Visualização Volumétrica. por Roberto de Beauclair Seixas, IMPA Anselmo Cardoso de Paiva, UFMA Marcelo Gattass, PUC-Rio. Visualização Volumétrica. Conjunto de técnicas para visualização de dados associados a regiões de um volume
E N D
Introdução à Visualização Volumétrica por Roberto de Beauclair Seixas, IMPA Anselmo Cardoso de Paiva, UFMA Marcelo Gattass, PUC-Rio
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].
Radiografia Padrão (Raios X) 2K x 2K x 2 Bytes 4 chapas Angiografia: 40 chapas
Tomografia Computadorizada (TC) Receptores Raio X
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)
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.
Ressonância Magnética Nuclear (MR) Grande campomagnético Mesa comtrilhos
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.
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.
Imagem MR 512 x 512 x 2 Bytes 30 fatias/exame
Imagem de Ultra-som 512 x 512 x 1 Byte
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
* Formação de um traço sísmico
Reconstrução das Fatias volume das fatias (slices) Ys Xs Zs
Classificação do Voxel Voxel Osso 1.0 Músculo opacidade Gordura Branco Vermelho Amarelo Ar densidade
Tipos de Dados • Enumeráveis (material, litologia, ...) • Escalares (temperatura, pressão, ...) • Vetoriais (velocidade, aceleração, ...) • Tensoriais (tensão, deformação, ...)
Estrutura dos Dados Grade Retilínea (x[i],y[j],z[k]) Grade Regular (i*dx, j*dy,k*dz) Grade Cartesiana (i, j, k) Grade Não Estruturada {(x[i],y[i],z[i]) , e=(v1, v2 , v3)} Grade Estruturada (x[i,j,k],y[i,j,k],z[i,j,k]) Grade Estruturada por blocos
valores interpolados 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
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
Rendering Direto • Mapeamento dos elementos de volume direto no espaço da imagem • Apropriados para a visualização de objetos amorfos • Mais lentos
Volume de dados Raios Plano da imagem Algoritmo ray-casting • Ordem da imagem. • para cada pixel • lance um raio e encontre os voxels que são interceptados • fim para
plano de visualização y volume dos raios x z volume dos slices Lançamento dos Raios raio
Partição dos Raios x ta z tb voxel y amostra t=min(x,y,z)
Interpolação (xa, ya, za) x,i z,k y,j
vi+1,j,k vi +1,j,k +1 x y vi,j,k +1 vi,j,k z v vi+1,j+1,k+1 vi+1,j+1,k vi,j +1,k +1 vi,j+1,k Interpolação no voxel
Osso Branco (255,255,255) Músculo Vermelho (255,0,0) Amarelo Gordura (255,255,0) ar 255 0 Classificação do Voxel Voxel tons e opacidade cor 1.0 velocidade ou densidade 0 255 amplitude
Estimativa do vetor normal 1a ordem 2a ordem
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
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
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 ) a1r1 g = a0 g0+(1-a0 ) a1g1 b = a0 b0+(1-a0 ) a1b1 a = a0 +(1-a0 ) a1
Composição no raio ray Cin Cout
Tripod exy exz ezy y + + exy= (Dy)x + (-Dx)y+cxy ezy= (Dy)z +(-Dz)y+cyz - - (x0+Dx,y0 +Dy,z0 +Dz) x (x0,y0,z0) - + exz= (Dz)x + (-Dx)z+cxz z
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
Caminhamento discreto Bresenham Cohen
Efeito da amostragem Bresenham Tripod
Partição celular Volume de dados Plano da uma amostra no meio da partição imagem Voxel Partição marcador da partição
Partição na grade z (ia ,ja ,0) tzi= ta tyi tzf tyf=tb y (ib ,Ny ,kb)
Partição celular: algoritmo Dados: txi,tyi,tzi, txf,tyf,tzf, nx,ny,nz dtx = txf/nx; dty = tyf/ny; dtz = tzf/nz; tx=txi; ty=tyi; tz=tzi; t1 = min(tx,ty,tz) e w é o eixo do mínimo n=nx+ny+nz; while ( n > 0) tw += dtw; n--; t2 = min(tx,ty,tz) e w é o eixo do mínimo Sample ((t1+t2)/2); t1=t2;
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
amostragem inicial primeira subdivisão subdivisão final segunda subdivisão pixels sendo visitados pixels já visitados Refinamento Progresivo
2x2 8x8 16x16 4x4 256x256 32x32 64x64 128x128 Refinamento Progressivo: Exemplo
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]
Raio que calcula a cor de um pixel ( i,j ) I = I(x,y,z,-t,) = radiância ou intensidade específica num ponto (x,y,z) ou t nadireção -t, na freqüência . L ta Imagem (x, y, z) I t tb t Volume