Você está na página 1de 31

COMPUTAÇÃO GRÁFICA: ESTADO DA ARTE E A

PESQUISA NA USP
Eduardo Toledo Santos 1
Escola Politécnica da Universidade de São Paulo, Brasil
Depto. de Engenharia de Construção Civil – Lab. de Sistemas Integráveis (LSI)

Marcelo Knörich Zuffo 2


Escola Politécnica da Universidade de São Paulo, Brasil
Depto. de Eng. de Sistemas Eletrônicos – Lab. de Sistemas Integráveis (LSI)

Marcio Lobo Netto 3


Escola Politécnica da Universidade de São Paulo, Brasil
Depto. de Eng. de Sistemas Eletrônicos – Lab. de Sistemas Integráveis (LSI)

Roseli de Deus Lopes 4


Escola Politécnica da Universidade de São Paulo, Brasil
Depto. de Eng. de Sistemas Eletrônicos – Lab. de Sistemas Integráveis (LSI)

RESUMO

Este artigo apresenta brevemente os principais resultados alcançados nos


últimos anos na área da Computação Gráfica abrangendo, entre outros,
campos como a Realidade Virtual e o Processamento de Imagens Médicas.
Relata, da mesma forma, algumas pesquisas nesta área já realizadas ou em
desenvolvimento no Laboratório de Sistemas Integráveis da USP, um dos
principais centros de pesquisa brasileiros nestes temas.

Palavras chave: Computação Gráfica, Imagens Médicas, Realidade Virtual.

ABSTRACT

This paper briefly presents the main results reached in the last years in
Computer Graphics, including Virtual Reality and Multimedia, among other
fields. In the same way, it reports on some results in this field from past or
present research developed at the Laboratório de Sistemas Integráveis of the

1
e-mail: eduardo.toledo@poli.usp.br
2
e-mail: mkzuffo@lsi.usp.br
3
e-mail: lobonett@lsi.usp.br
4
e-mail: roseli@lsi.usp.br

1333
University of São Paulo, one of the main Brazilian research centers in these
themes.

Key words: Computer Graphics, Medical Imaging, Virtual Reality.

1 Introdução
A Computação Gráfica é a área da Ciência da Computação responsável pela criação de
“imagens bi e tridimensionais usadas para a pesquisa científica, para fins artísticos e,
nas indústrias, para projetar, testar e anunciar produtos. A Computação Gráfica
tornou os computadores mais fáceis de usar. As Interfaces Gráficas de Usuário (GUI) e
os sistemas multimídia tais como a World Wide Web, permitem aos usuários de
computador selecionar imagens para executar ordens, eliminando a necessidade de
memorizar comandos”5 . Esta definição singela da Computação Gráfica é como a ponta
de um iceberg, mostrando talvez apenas o que é mais visível desta imensa área de
pesquisa. Talvez por ser tão abrangente, subdividiu-se em inúmeros outros sub-campos
como a Multimídia, a Realidade Virtual, o Processamento de Imagens, etc.
Hoje a presença da Computação Gráfica em nosso cotidiano é constante, indo desde
o sistema CAD usado para projetar a xícara em que tomamos o café matinal, as vinhetas
do telejornal, o videogame das crianças, a interface do computador até os filmes de
animação fotorealísticos. O enorme avanço da microeletrônica permitiu o
desenvolvimento de processadores velozes o suficiente para atender às altas demandas
computacionais dos algoritmos de computação gráfica. A cada dia, é possível realizar
com mais facilidade o que antes era impensável.
A amigabilidade proporcionada pelas interfaces gráficas, cada vez mais sofisticadas
e ao mesmo tempo mais naturais, faz com que a Computação Gráfica esteja cada vez
mais próxima dos “usuários” que, muitas vezes, nem se darão conta de que estão diante
de um um produto desta ciência.
O LSI 6 - Laboratório de Sistemas Integráveis - é um dos centros de pesquisa da
Escola Politécnica da Universidade de São Paulo que há duas décadas realiza pesquisa e
desenvolvimento na área de Computação Gráfica no Brasil.
Nas demais sessões deste trabalho serão relatados um histórico e o estado atual de
algumas áreas da Computação Gráfica bem como de parte dos desenvolvimentos
recentes nesta mesma área pelos pesquisadores do LSI-USP.

2 Histórico e estado da arte


Nesta sessão, serão introduzidas e relatados brevemente o estado atual de algumas áreas
significativas da Computação Gráfica que são objeto de pesquisa no LSI-USP.
2.1 Animação
A Animação [1] corresponde à área da Computação Gráfica na qual são realizadas as
simulações dos fenômenos físicos associados ao movimento e a deformação de corpos.
Além disto é ainda a responsável por movimentar a câmera no cenário virtual gerando
5
Enciclopédia Encarta 2002, verbete Computer Graphics.
6
http://www.lsi.usp.br

1334
uma seqüência de imagens, correspondentes a assim denominada animação
computadorizada.
Uma vez realizada a modelagem geométrica dos objetos constituintes da cena, pode-
se gerar imagens dos mesmos, a partir de processos de simulação os mais variados, mas
que tem por principio gerar imagens da cena observada.
Os primeiros trabalhos nesta área basearam-se em interpolações, de modo a obter a
posição intermediaria ocupada por corpos entre duas posições conhecidas, a inicial e a
final do trecho do movimento considerado. Embora este processamento reduzisse
enormemente o trabalho manual de re-posicionamento de objetos, ele ainda era bastante
limitado. Foram então incorporados a simulação de fenômenos físicos, inicialmente a
cinemática e então a dinâmica. Desta forma passou a ser possível descrever movimentos
e deformações de corpos a partir de leis físicas e da escolha apropriada dos valores dos
parâmetros utilizados. Assim passou a ser possível por exemplo descrever o movimento
de um avião dada a sua posição inicial, a equação da sua trajetória e equações que
descrevessem a variação de sua velocidade ao longo desta mesma trajetória. A
simulação se encarregava de calcular a posição ocupada em cada instante de tempo
discreto na resolução escolhida para a simulação. Num segundo momento com a adição
das leis da dinâmica se pode descrever estes mesmos movimentos e deformações a
partir das forças atuantes sobre estes mesmos corpos. Em que pese modelos refinados
permitam simulações com alto grau de sofisticação, todos os casos considerados até
aqui se limitam à corpos passivos e cujo tratamento é muito bem conhecido. Estes são
elementos sem vontade, ou seja que não tem poder de decisão própria. Na medida em
que o grau de sofisticação das animações foi aumentando, bem como da qualidade das
imagens sintetizadas se percebeu que estas mesmas animações representavam muito
bem fenômenos físicos naturais onde não houvesse a presença de um agente vivo. Em
todos estes casos os movimentos e deformações decorrem apenas da aplicação de leis
físicas. O limite computacional é estabelecido por um lado pela dimensão do problema,
ou seja pela quantidade de objetos ou pelo grau de refinamento de suas representações
geométricas, e por outro lado pela qualidade da simulação, expressa na ordem das
equações e no passo de computação utilizados.
O próximo passo da evolução nesta área ocorreu com a incorporação do conceito de
comportamento à animação. A partir de então pode-se atribuir a um sujeito, o
personagem da animação, características pessoais e comportamentais, as quais
determinariam então as ações e movimentos a serem executados pelo mesmo. Observe-
se aqui que este novo paradigma se constrói sobre os modelos anteriores já existentes.
Pode-se dizer que o comportamento apenas descrevia a intenção, informando, na forma
de parâmetros, os simuladores dinâmicos e cinemáticos. O segundo passo neste sentido
foi dado com a incorporação do conceito de animação cognitiva. Enquanto a animação
comportamental tem por preocupação apenas controlar parâmetros dos movimentos de
modo a produzir animações mais realistas, a animação cognitiva tem por objetivo
incorporar a inteligência aos personagens permitindo a estes tomadas de decisões mais
complexas e que requeiram analise de oportunidades num espaço multidimensional.
Outra área de grande interesse para a comunidade de Computação Gráfica é a da
vida artificial. Este nome provém do início dos estudos sobre computação (Von
Neuman, Turing) e está também relacionado entre outros aos temas de automata
celulares, computabilidade, complexidade, auto-organização e entropia.

2.1.1 Vida Artificial


Esta seção discorre sobre os mais recentes avanços nas áreas de animação
comportamental e cognitiva [2], e por fim vai tratar da relação desta área com a da vida

1335
artificial. Os mais recentes trabalhos na área de animação de agentes com algum tipo de
capacidade cognitiva comprovam o grande avanço atingido nesta área. Basicamente
podemos dividir os trabalhos em dois grandes grupos, podendo ambos serem
conjugados ou não com técnicas de vida artificial.
O primeiro tem por objetivo implementar agentes inteligentes, e muitas vezes fazem
uso de uma representação física para dar ao usuário a impressão de conversar ou
interagir com um personagem virtual. Fazem parte deste grupo os avatares, que são
personagens representando tanto pessoas reais num ambiente virtual distribuído, como
personagens realmente virtuais que convivem neste mesmo ambiente. Neste grupo as
animações admitem algumas falhas, normalmente identificadas por alguma falta de
naturalidade no movimento e nas ações. Estes personagens normalmente tem que agir
em tempo real.
O segundo grupo tem por objetivo criar personagens virtuais que sejam
indistinguíveis de personagens reais, não só na sua aparência, mas também no seu
comportamento e inteligência. Neste grupo a qualidade da animação é de grande
importância e o objetivo nem sempre é o de ter personagens agindo em tempo real, mas
sim com alta verossimilhança. Estes agentes podem por exemplo ao perder o equilíbrio
durante um movimento tomar uma ação para compensar tal fato, aumentando por
exemplo a passada.
Os dois grupos acima normalmente tem seus personagens programados para
produzir os efeitos desejados, tanto de comportamento como de movimentação. Mas
podem ser combinados com os resultados de uma outra linha de pesquisa, que trabalha
no sentido de selecionar continuamente os melhores personagens e de alterar
progressivamente suas capacidades, conduzindo assim a uma evolução da espécie a que
o personagem pertence. Este modelo utiliza os conceitos de vida artificial e permite a
obtenção de personagens adequados a determinadas tarefas ou ajustados ao convívio em
determinados ambientes [3].
2.2 Processamento de Imagens Tridimensionais

O uso de volumes ou imagens 3D tem crescido significativamente, graças ao aumento


da capacidade e barateamento dos sistemas de computação, em áreas como a de
imagens médicas, visualização científica, realidade virtual e visão robótica [4][5],
criando a necessidade de novas técnicas de processamento de imagens 3D no domínio
do espaço 3D (x, y, z). O crescente uso de tele e video-conferências e outras aplicações
de vídeo, como em algumas técnicas de imagens médicas (por exemplo, vídeo-
fluoroscopia), também resultam na necessidade de processamento de imagens 3D no
domínio espaço-tempo (x, y, t). Há ainda algumas técnicas de imageamento em que
pode ser interessante explorar processamento de imagens 4D no domínio espaço-tempo
(x, y, z, t).
Udupa e Gonçalves [6] afirmam em seu panorama sobre transformações de
imagens para visualização de volumes e superfícies, “a área de filtragem para
visualização não foi ainda muito estudada”. Pun e Blake [7], representando o Grupo de
Trabalho do Eurographics sobre Relacionamentos entre Síntese e Análise de Imagens,
chamam a atenção para o fato de que a síntese e a análise de imagens evoluíram ao
longo de diferentes caminhos, e que, apesar dos dois campos terem muitos pontos em
comum, pouco intercâmbio tem ocorrido entre eles. Isto parece se confirmar ainda hoje.
Em filtragem 3D de imagens para várias aplicações, incluindo remoção de ruído, realce
e restauração; os últimos avanços em filtragem bidimensional (2D) de imagens não
foram ainda completamente estendidos para 3D.

1336
Pun e Blake também sugerem que modelos da percepção visual humana e de
análise de imagens poderiam oferecer sugestões interessantes e relevantes para a síntese
de imagens. Enquanto modelos de percepção têm sido utilizados para desenvolver
muitas técnicas de processamento de imagens 2D, poucas extensões para 3D são
encontradas na literatura.

2.2.1 Suavização e Filtragem de Ruído


Ruído é um problema comum em muitas aplicações de imageamento, donde a sua
suavização ou remoção pode ser importante, como uma etapa de pré-processamento,
para facilitar segmentações e/ou melhorar visualizações bidimensionais (fatias) ou
tridimensionais (lapidações volumétricas).
Os aspectos de degradação e borramento de bordas da média e da mediana 3x3
simples e de outros filtros de vizinhança fixa (VF) são bem conhecidos, e importância
crescente vem sendo dada a algoritmos de filtragem adaptativa que levem em conta
informação baseada em objetos e que não degradem bordas [8], [9], [10]. Chan et al.
[11] apresentam um filtro espacial- temporal com compensação de movimento no
domínio (x,y,t) para remoção de ruído dependente de sinal em fluoroscopia; este filtro
entretanto, limita-se a dois ou três quadros no eixo do tempo.
Mesmo quando se trata de dados de natureza volumétrica (como em muitas
aplicações em imagens médicas 3D), muitas das técnicas de filtragem são
implementadas numa base fatia-por-fatia (FPF), ignorando assim a correlação e
dependências de dados entre fatias quase sempre presente em dados 3D. Sauer e Liu
[12] apresentaram filtros não-estacionários sintonizados a funções de autocorrelação
locais (derivadas de informações de detecção de objetos) para remoção de ruído em
imagens tomográficas; entretanto, seus filtros foram projetados em 2D somente. Udupa
e Gonçalves [6] apresentaram várias transformações e filtros de imagens para aplicação
em visualização volumétrica de imagens médicas 3D; entretanto, o filtro Gaussiano que
eles apresentaram para remoção de ruído é implementado usando máscaras de VF
3x3x3 ou 5x5x5 somente, e desta forma não é adaptativo. Sakas et al. [13] ilustra a
necessidade de pré-processamento em dados de ultrassonografias 3D, mostra o efeito de
“escada” na visualização volumétrica quando se aplicam filtros FPF e mostra ainda
como filtros 3D fornecem melhores resultados, todavia também neste caso os filtros
empregados foram filtros da Mediana e filtros Gaussianos de VF 3x3x3, 5x5x5 ou
7x7x7, assim, também não adaptativos.
Vários filtros foram reportados na literatura para remoção de ruído em imagens 2D
usando estatísticas locais [14][15][16][17]. Enquanto o uso de estatísticas locais torna os
filtros adaptativos, estes métodos normalmente se limitam a vizinhanças pequenas e
fixas.
Paranjabe et al. [8][9] relatam sobre filtros para remoção de ruído baseados em
vizinhança adaptativa 2D utilizando estatísticas locais como média, mediana e variância
determinadas sobre regiões adaptativas de tamanho e forma variáveis. Os métodos
foram apresentados como proporcionando melhores reduções de ruído do que filtros da
média e mediana de VF e do que outros filtros de mínima média quadrática (MMQ)
adaptativa [18] e janela retangular adaptativa (JRA) [19]. Extensões destes métodos
para 3D são ainda questões em aberto.

2.2.2 Realce de Contraste


Baixo contraste e visibilidade de detalhes são problemas frequentes em imagens
médicas. Apesar de realce de imagens 2D ser bem conhecido [20], pré-processamento
para realce não é comum em visualização volumétrica. Em um dos primeiros relatos de

1337
processamento de imagens 3D, Zucker e Hummel [21] apresentaram operadores de
bordas 3x3x3 e 5x5x5. Malzbender [22] e Totsuka e Levoy [23] apontaram para a
aplicação das propriedades básicas da transformada de Fourier para o realce de
lapidações volumétricas através de pré-filtragem no domínio de Fourier (fatia-por-fatia).
Uma indicação de interesse no campo de visualização em aplicar as mais recentes
técnicas de processamento de imagen 2D é dada nos artigos de Muraki [23][24] na
aplicação de “wavelets” de diferença-de-gaussiana (DOG) 3D para representação multi-
escala de imagens 3D, com aplicações tanto em compressão de dados como em realce
de bordas e superfícies.
Técnicas Globais tais como métodos baseados em transformações de Fourier não são
capazes de se adaptarem a variações nas estruturas características ao longo do espaço de
uma dada imagem. Enquanto métodos multi-escala oferecem capacidades de sintonizar
os filtros a várias escalas de detalhe, as “wavelets” usadas são da mesma forma
funcional sobre a imagem completa; a seleção da forma apropriada da “wavelet” e da
faixa de escalas mais apropriada para uma dada imagem é uma tarefa difícil.
Morrow et al. [26] apresentou uma técnica de realce de contraste baseada em regiões
adaptativas (BRA) para melhorar a visibilidade de estruturas em mamogramas. O
método começa com a identificação de regiões adaptativas localmente que tentam se
conformar aos objetos e estruturas da imagem, obtidas através de crescimento de
regiões para cada píxel. O contraste visual (simultâneo) de cada região é calculado em
relação ao seu correspondente fundo ou envoltória, e o realce é realizado nas regiões de
acordo com faixas pré-estabelecidas de contraste (ou interesse). O método possui uma
base perceptual relacionada ao sistema visual humano em termos de contraste
simultâneo, e provê um embasamento para processamento de imagens baseado em
regiões adaptativas (PIBRA) com regiões adaptativas localmente de tamanho e forma
variável. O grupo do Prof. Rangayyan et al. na Universidade de Calgary estendeu o
conceito de PIBRA para remoção de ruído [8], [9], desborramento [27], detecção e
análise de calcificações em mamogramas [28], [29], caracterização de agudeza ou
“acutance” de uma região de interesse (RoI) [30], e compressão sem perda de imagens
médicas 2D [31].

2.2.3 Desborramento e Restauração


Enquanto imagens médicas obtidas por tomografia computadorizada de raios-X (CT) e
ressonância magnética (MR) são usualmente de alta qualidade, imagens obtidas por
outras modalidades como angiografia, fluoroscopia, ultrassom, tomografia
computadorizada por emissão de fótons simples (SPECT), tomografia por emissão de
positrons (PET) e imagens de medicina nuclear em geral são de pobre qualidade devido
a várias limitações dos sistemas de imageamento e/ou compromissos práticos entre
qualidade e dose de radiação. Imagens de SPECT, por exemplo, sofrem em qualidade
devido à pobre resolução espacial, ruído de contagem de fótons, espalhamento
(“scattering”), atenuação e borramento variante no espaço. Enquanto algumas das
modalidades citadas fornecem imagem 3D em (x,y,z), outras fornecem imagens de
vídeo que são 3D em (x,y,t); conjunto de dados quadri-dimensionais (4D) também são
possíveis em algumas aplicações de imagens em que a imagem é uma função de
(x,y,z,t). A restauração de imagens de SPECT é complicada por muitos fatores como a
variação no espaço da função de espalhamento puntual (FEP) da câmera gama e a não-
estacionaridade e estatística dependente de sinal do ruído de contagens de fótons
Poisson. A pobre qualidade de imagens SPECT e os desafios impostos pelos fatores
mencionados acima têm sido as forças de condução para inúmeros trabalhos em
restauração de imagens SPECT [32][33][34][35]. Entretanto, é mais comum encontrar o

1338
uso de filtros 2D do que 3D em processamento de imagens SPECT. BOULFELFEL et
al. [36][37][38][39] apresentaram a aplicação de vários filtros de restauração 2D e 3D
incluindo os invariantes no espaço de Wiener, Metz e equalização do espectro de
potência (EEP), bem como o variante no espaço de Kalman [38][39] para restauração
pré e pós-reconstrução de imagens SPECT. Um desafio interessante na restauração de
imagens SPECT é o de se desenvolver filtros variantes no espaço não somente para
desborrar a imagem usando FEP variante no espaço, mas também levar em
consideração as não-estacionariedades do sinal ou imagem.

2.2.4 Codificação de Imagens e Compressão de Dados


Dados de volumes ocupam grandes quantidades de espaço de armazenamento,
especialmente no caso de imagens médicas de alta resolução. Enquanto técnicas de
compressão com perda são convenientes para aplicações em vídeo, nenhuma perda é
tolerável na grande maioria das aplicações de imagens médicas. Codificação de imagens
médicas por técnicas de modelamento de predição linear tem proporcionado reduções
de 10 para aproximadamente 2,5 bits por píxel (bpp) no caso de imagens de raios-X de
alta resolução (da ordem de 4.000 x 4.000 píxels) mamográficas [40]. Todavia, no
campo de visualização volumétrica, Fowler e Yagel [41] reportam sobre taxas de
compressão da ordem de apenas 50% para compressão sem perda usando um modelo de
predição linear 3D em volumes da base de dados da Universidade da Carolina do Norte
em Chapel Hill (UNCCH). Enquanto este desempenho mostrou-se melhor do que
aqueles obtidos usando compress, zip e outras ferramentas comuns de compressão para
estas bases de dados, este está longe das taxas de compressão de imagens 2D. Uma das
razões disto pode ser a de que o preditor linear usado por Fowler e Yagel era limitado a
um preditor tipo modulação de código de pulso diferencial (DPCM) baseado em apenas
três vóxels com distância unitária de vóxel em relação ao vóxel sendo processado nas
direções (x,y,z). Extensões de modelamentos de predição linear adaptativa e otimizada
[40] para 3D parece permanecer como um ponto em aberto.
Shen e Rangayyan [31] apresentaram uma técnica de codificação de imagens sem
perda baseada em segmentação (SLIC) para compressão de imagens médicas de alta
resolução. O algoritmo do SLIC se baseia na segmentação da imagem em regiões de
níveis de cinza razoavelmente uniformes, que em seguida são codificadas usando o
padrão JBIG aplicado aos planos de bits. Compressão sem perda de imagens
mamográficas de alta resolução de 8 bpp para 1,6 bpp e de 10 bpp para 3 bpp foi
reportado, sendo estas taxas melhores do que as obtidas usando o compress, JBIG,
JPEG, e métodos baseados em predição linear. O método SLIC explora a elevada
correlação presente áreas radiologicamente uniformes em 2D. Dados volumétricos
possuem elevada correlação em 3D, assim a extensão do método SLIC para 3D é um
caminho empolgante.
2.3 Síntese de Imagens Fotorealísticas
A síntese de imagens fotorealísticas é um campo da Computação Gráfica que procura,
através de algoritmos computacionais, gerar imagens de alta qualidade, idealmente
indistinguíveis da realidade (ou de uma foto). Tem muitas aplicações, principalmente
em arquitetura, design industrial e entretenimento entre outras.
Os dois principais algoritmos usados para a síntese fotorealística de imagens são o
Ray Tracing [42] e a Radiosidade [43]. O ray tracing permite a obtenção de imagens
com reflexões múltiplas e transparências enquanto a radiosidade modela com maior
precisão a reflexão da luz em superfícies difusas. Ambos os algoritmos apresentam

1339
grande demanda de processamento quando comparados com técnicas convencionais, de
resultados menos realísticos.
O procedimento para ajustar-se as cores e texturas e também a iluminação de uma
cena a ser sintetizada é bastante experimental e, idealmente, interativo. A grande
demanda de processamento dos algoritmos de síntese fotorealística impede grande
número de iterações devido ao tempo consumido até a obtenção de cada imagem. Na
procura de uma solução para amenizar este problema, foi proposto em 1989 o algoritmo
de ray tracing parametrizado, resumido na seção seguinte.

2.3.1 Ray Tracing Parametrizado


Introduzido em 1989 por Séquin e Smyrl [44], o ray tracing parametrizado procura
eliminar a fase de cálculo de interseções, responsável por até 95% do tempo de
processamento do algoritmo de ray tracing.
Na fase de pré-processamento, este algoritmo armazena os resultados intermediários
obtidos pelo algoritmo de ray tracing convencional ao traçar as árvores de raio de cada
pixel da imagem. Na fase de processamento, o usuário pode especificar novos valores
para parâmetros como cor da superfície, coeficientes de reflexão difusa e especular,
transparência, aspereza da superfície, texturas e também cor e intensidade das fontes de
luz da cena. Extensões ao algoritmo [45] também permitem alterar a posição das fontes
de luz, parâmetros de luzes "spot", mapeamento de relevo, etc. As novas imagens são
geradas pelo algoritmo dezenas de vezes mais rápido que o ray tracing convencional,
atingindo taxas interativas em computadores paralelos [45].
A cada reavaliação, podem ser alterados quaisque r parâmetros ópticos da cena, de
quaisquer materiais, simultaneamente. Todos os pixels da imagem são recalculados.

2.4 Realidade Virtual


De forma abrangente podemos definir a realidade virtual 7 como o conjunto de métodos
e tecnologias relacionadas com a imers ão do usuário em ambientes com aparência
realística e comportamento e interação simulados pelo computador [46]. A imersão é
induzida a partir do estímulo óptico eletromecânico dos sentidos humanos (audição,
visão, tato e olfato). O sentido de imersão pode ser total ou parcial e leva em conta
também a possibilidade da composição de ambientes reais com ambientes simulados
que denominaremos de realidade aumentada.
Atualmente, as pesquisas e desenvolvimentos da realidade virtual baseiam-se
fortemente na evolução e disponibilidade dos meios eletrônicos interativos.
Principalmente, a partir do início da década de 70, a realidade virtual começou a ser
disseminada em aplicações na sociedade. A primeira aplicação relevante da realidade
virtual foi a dos simuladores de vôo militares [46]. Atualmente o governo norte-
americano gasta em torno de US$ 2 Bilhões/ano na aquisição e manutenção destes
simuladores.
A partir da década de 90, com a disponibilidade de equipamentos e periféricos de
baixo custo a realidade virtual foi largamente disseminada na sociedade, com aplicações
em diversas áreas como o entretenimento, engenharia, medicina, cultura e ciências
básicas.
Do ponto de vista do usuário, na maioria das aplicações científicas e tecnológicas, a
realidade virtual torna-se uma ferramenta poderosa de análise, ensino, interpretação e

7
O termo realidade virtual é controverso na comunidade científica por incorporar uma antítese, havendo
outras denominações como por exemplo realidade ar tificial.

1340
decisão. De forma geral podemos classificar as aplicações da realidade virtual em três
grandes áreas:
?? Missão crítica: Nesta classe de aplicações a realidade virtual tem sido
utilizada com sucesso na simulação de situações de risco ao patrimônio
material e humano. Exemplos destas aplicações são os simuladores de vôo,
simuladores cirúrgicos, simuladores de combate, simuladores aeroespaciais e
os simuladores de catástrofes como terremotos, acidentes dentre outros. A
figura 1 apresenta um simulador de transplante de medula desenvolvido
utilizando a realidade virtual (Liliane dos Santos Machado – LSI/USP).

Figura 1 - Simulador de Sutura Baseado em Realidade Virtual


?? Universos paralelos: Esta classe de aplicações envolve principalmente a
simulação de universos alternativos baseados em abstrações físicas,
biológicas e matemáticas, como a simulação de universos inacessíveis, a
simulação do macrocosmo em astrofísica, e a simulação do microcosmo em
biologia molecular, estrutura da matéria, física do estado sólido e genoma,
dentre outros.
?? Prototipagem digital: Esta classe de aplicações envolve as principais
aplicações comerciais da realidade virtual. Entre as áreas de aplicação
destacamos a petrolífera na prototipação de plataformas e canalizações em
águas profundas; a indústria automobilística e aeronáutica na análise
ergonométrica; e a indústria de construção civil na construção de maquetes
digitais para análise arquitetônica e estrutural. A figura 2 apresenta um
exemplo de prototipagem virtual na indústria automobilística.

1341
Figura 2 - Prototipagem digital do interior de um veículo

3 A pesquisa em Computação Gráfica no LSI – USP


3.1 Histórico do GCVMI
Desde 1980, aproximadamente, o Grupo de Computação Visual e Mídias Interativas
(GCVMI) do Laboratório de Sistemas Integráveis da Escola Politécnica da
Universidade de São Paulo vem estudando algoritmos e desenvolvendo equipamentos
com recursos gráficos com o objetivo de prover o Brasil de software e hardware bem
como criar mão-de-obra qualificada neste setor.
Desde a sua criação, a linha de projetos do GCVMI esteve concentrada no
desenvolvimento de sistemas gráficos de alto desempenho, deste modo o GCVMI
projetou alguns terminais gráficos como o TG1000, TG1010 e o TGX com suas
respectivas logicionarias (“software”) básicas como, por exemplo, o SPTGI – Sistemas
Programacional para Terminais Gráficos Inteligentes.
Em 1987, foi iniciado o projeto de desenvolvimento de uma família de estações
gráficas, a família EG_880X [47] [48]. O primeiro modelo, a EG_8801 [49], foi
concluído no início de 1989. O sistema operacional instalado (LSI-SO.01 [50],
compatível com UNIX V.3), bem como um núcleo gráfico (NG2D, Núcleo Gráfico
Bidimensional [51]), foram também desenvolvidos no LSI. Foram desenvolvidos dois
outros protótipos, a EG_8802 e a EG_8803. Deste projeto resultaram as dissertações
[52] e [53].
A evolução natural dos trabalhos do GCVMI foi no sentido de aprofundar os estudos
em aspectos avançados da Computação Gráfica, em particular, estudando algoritmos
para síntese Tridimensional de Imagens e para Visualização de Volumes, bem como
suas aplicações para Visualização Científica.
No caso dos estudos de algoritmos para síntese de imagens, duas frentes foram
atacadas. Uma foi a de Síntese de Imagens Fotorealistas, estudando e implementando
algoritmos como Traçado de Raios (“Ray- Tracing”) [54][55] e Radiosidade
(“Radiosity”) [56] que baseiam na simulação de modelos físicos, o que os torna bastante
exigentes em termos computacionais. A outra, foi a Síntese de Imagens Realistas para
Aplicações Interativas (em tempo real ou quase real), estudando e implementando
algoritmos como Acoplador-Z (“Z-Buffer”) que se baseiam em emulação.
Quanto à Visualização de Volumes (“Volume Visualization”) [57][58], alguns
estudos e implementações foram realizados em visualização de fatias, extração de iso-

1342
superfícies e traçado de raios para volumes. Estes estudos culminaram no
desenvolvimento de um pacote para Visualização de Volumes para Aplicações Médicas,
o RTV (“Ray-Tracer of Voxel”) [55][59], numa cooperação GCVMI- LSI com a
Unidade de computação Gráfica da Universidade de Manchester (Manchester,
Inglaterra).
À medida que estes estudos de aspectos avançados da Computação Gráfica foram
evoluindo, percebeu-se que para a utilização de técnicas cada vez mais sofisticadas, o
tempo de execução começava a se tornar proibitivo. Assim, a preocupação central
passou a ser a diminuição dos tempos envolvidos na execução destes algoritmos.
O estudo de arquiteturas de alto desempenho, particularmente processamento
paralelo, vem sendo alvo de pesquisadores em todo mundo há aproximadamente 25
anos, sendo que na década de 80 houve um grande impulso graças à viabilização dos
primeiros sistemas comerciais como o IPSC/2 e NCUBE, dentre outros [60]. A
conseqüência disto, foi que um novo desafio se apresentou: como transportar aplicações
existentes, ou mesmo, como desenvolver novas aplicações em computadores paralelos?
Centros de excelência na área de Processamento Paralelo como o CSRD da
Universidade de Illinois (Urbana-Champaign), o Centro de Computação Paralela de
Edinburg e a CALTECH (“California Institute of Technology”) dedicam de 30 a 50%
de suas equipes para pesquisa em “software” e aplicações em computadores paralelos.
Assim, o LSI-EPUSP decidiu não ficar fora desta corrida. Dentre outros
desenvolvimentos na área, como o Minissuper MS_8701 [61] (um computador de
memória compartilhada) e um compilador C paralelizant e [62] para Minissuper
MS_8701, foi iniciado em 1990 o projeto do Multicomputador TRGR [63], um
computador paralelo com memória distribuída, de fácil expansão e reconfiguração, com
recursos de apresentação gráfica. O primeiro protótipo gerado neste projeto, o
TRGR_01, com nove processadores, serviu de plataforma para diversos estudos de
paralelização como por exemplo “Um Multicomputador para Aplicações Gráficas” [64],
Avaliação do algoritmo de Ray-Tracing em Multicomputadores” [65] e “O
Multicomputador TRGR e a Paralelização da Síntese de Imagens” [66].
O projeto SMART, “Scientific Visualization for High Performance Computing
Applications” [67], submetido à Comissão da Comunidade Européia no final de 1994,
teve financiamento aprovado para janeiro de 1995 com duração de 3 anos. Informações
detalhadas sobre o projeto são encontradas em http://www.lsi.usp.br/~smart.
O ponto central do projeto SMART foi o desenvolvimento do PVV – “Parallel
Volume Visualization toolkit” [68][69] e de alguns aplicativos como o Python e o VV.
O PVV fornece biblioteca de recursos, através de uma interface de programação de
aplicações para visualização volumétrica, que incorpora mecanismos de paralelismo
explícito e implícito. Sua organização em módulos é apresentada na figura 3. O núcleo
do PVV fornece, dentre outros: recursos de iniciação, sintonia e término do sistema;
organização, representação e manipulação de dados; entrada e saída de dados;
programação paralela implícita e explícita. O módulo de manipulação contém recursos
para interpolação, cálculo de gradientes, filtros de convolução, transformações
matriciais, segmentação por crescimento de regiões. O módulo de lapidação fornece
recursos para as etapas de classificação, projeção, composição e tonalização de
volumes.

Programas Aplicativos

Lapidação Manipulação

Núcleo

1343
Figura 3 – Organização do PVV.

A aplicação Python é uma ferramenta interativa para visualização interativa de


fatias de volumes que incorpora recursos básicos para segmentação, medidas de
distâncias e áreas e observação de histogramas.
A aplicação VV é um vis ualizador tridimensional de volumes que permitem a
descrição (através de uma linguagem de descrição de cenários, cenas e opções de
lapidação denominada VVL) e lapidação (“rendering”) de cenários compostos por
dados volumétricos.
O módulo de processamento de imagens tridimensionais (PI3D) incorporou ao
PVV técnicas de processamento de imagens baseadas em regiões adaptativas
tridimensionais (3D), técnicas baseadas em regiões adaptativas bidimensionais (2D),
bem como técnicas de vizinhanças fixas 2D e 3D, para pré-processamento ou análise de
dados volumétricos em aplicações de visualização. O uso de regiões adaptativas (de
tamanho e forma variável) permite melhores adaptações de operações para objetos e
estruturas em 3D, bem como a determinação de estatísticas mais confiáveis do sinal e
do ruído para cada componente da imagem dado que maiores populações píxels ou
vóxels são usadas. O trabalho de pesquisa associado ao desenvolvimento do PI3D
permitiu revisar desenvolvimentos em processamento de imagens 2D e 3D relacionadas
com aplicações em visualização volumétrica, identificar lacunas e limitações na
presente prática de processamento de imagens para visualização volumétrica, e sugerir
alguns novos direcionamentos.
Ao longo das atividades referentes aos projetos mencionados, foram
desenvolvidas inúmeras outras atividades pelo GCVMI relevantes ao desenvolvimento
da área de Computação Gráfica, tais como; apresentação de cursos, palestras e trabalhos
em eventos técnicos e simpósios; supervisão técnica de alunos de Iniciação Científica , e
ainda, organização de eventos na área, a mencionar a “Jornada IEEE/EPUSP em
Computação Visual” (São Paulo, dezembro de 1990) e os “IV e X Simpósio Brasileiro
de computação Gráfica e Processamento de Imagens” (São Paulo, 1991 e Campos do
Jordão, 1997).

A seguir, são relatadas algumas das pesquisas recentes, desenvolvidas ou em


desenvolvimento no Grupo de Computação Visual e Mídias Interativas do LSI-USP.
3.2 Grupo de Vida Artificial - Animação Cognitiva
Projeto WOXBOT
Fabio Roberto Miranda (mestrando), João Eduardo kogler Jr. (professor doutor), Emilio Del Moral
Hernandez (professor doutor), Marcio Lobo Netto (professor doutor).
http://www.lsi.usp.br/~woxbot

O projeto WoxBot [70][71] corresponde a uma plataforma de desenvolvimento de


programas para estudos em vida artificial. Ele implementa um conjunto de módulos
correspondendo às partes componentes de um ser com capacidade semi-cognitiva. A
modularidade do sistema foi proposta de modo a fa vorecer a incorporação e ou a
substituição de alguns de seus módulos para permitir análises de diversos aspectos do
comportamento dos seres virtuais, tanto do ponto de vista individual como do coletivo.

1344
O princípio que norteou a concepção dos seres virtua is baseia-se na idéia de que
estes seres devem ser capazes de observar o ambiente em que se encontram, através de
sensores, e de tomar ações baseados apenas conclusões a que puderem chegar usando as
informações obtidas por este sensoreamento. A cognição é implementada num módulo
cujos parâmetros podem ser modificados ao longo de gerações baseado em princípios da
adaptação e evolução.
Este projeto propõe um ambiente integrado para o desenvolvimento e
aprimoramento de modelos e procedimentos para simulação de criaturas concebidas
para agir segundo paradigmas de vida artificial. O ambiente de programação foi
implementado em JAVA e disponibiliza uma arquitetura na qual personagens podem ser
criados e seu comportamento testado [72]. Um modelo de personagens foi especificado
de modo a permitir o estudo de diversos aspectos dos mesmos. O conceito utilizado
baseia-se no uso de elementos sensoriais, através dos quais os personagens são
informados a respeito da constituição e estado do mundo que habitam, incluindo-se ai
outros personagens. As informações assim capturadas são tratadas por módulos de
identificação e classificação das mesmas, que por sua vez alimentam um centro
cognitivo, onde são tomadas as decisões. O centro cognitivo é implementado atualmente
numa máquina de estados finitos que evoluem ao longo de gerações, adequando o
personagem ao seu ambiente. As ações são por fim executadas por elementos motores
que resultam por exemplo em movimento ou emissão de sons.

Figura 4 - a) Modelo representativo do robô usado como personagem da simulação;


b) Modelo do ambiente no qual se inserem os personagens virtuais, mostrando além
destes os outros objetos que compõe o mundo que habitam.

Dentre os temas de pesquisa podemos citar o uso de redes neurais para identificação
de cenários e de conceitos de evolução baseados em algoritmos genéticos para a seleção
dos personagens mais bem adaptados ao meio ambiente virtual.

1345
Figura 5 - Tela do ambiente de simulação mostrando o robô inserido no seu mundo
virtual, bem como tabelas demonstrando sua evolução para melhor se adaptar ao mundo
e assim sobreviver por mais tempo.

3.3 Grupo de Vida Artificial - Animação Cognitiva


Projeto ALIVE: Artificial Life in Virtual Environments
Rogério Perino de Oliveira Neves (mestrando), Marcio Lobo Netto (professor doutor).
http://www.lsi.usp.br/~alive

Este projeto visa a implementação de uma base computacional num contexto multi-
agente que servirá como laboratório virtual para experimentos em vida artificial. Em um
ambiente configurável e interativo, o sistema permitirá a criação de organismos virtuais
com características desejáveis para experimentos de natureza científica. No ambiente
virtual estes organismos interagem entre si e com o ambiente, produzindo resultados
úteis em estudos biológicos, sociológicos ou evolucionários. O sistema servirá ainda
como ferramenta didática para simulações, em ambiente virtual, de fenômenos
observados em biologia, estudos sobre adaptação, fenômenos emergenciais e evolutivos.
O projeto visa também construir uma base sólida para possíveis simulações
computacionais em um contexto não determinista, aplicado a simulação de organismos
reais em um ambiente artificial, obtendo resultados que antes só poderiam ser obtidos
em experimentos biológicos in-vitro, como por exemplo simulações de populações de
células, desde organismos simples como algas e colônias de bactérias até a simulação de
uma rede de neurônios reais. O projeto integra também a exibição em salas de realidade
virtual (CAVE) para uma total imersão na visualização do experimento, permitindo ao
usuário /pesquisador um total controle sobre a dinâmica e os parâmetros da simulação
em tempo de execução.

1346
Neste projeto cada organismo é representado por um DNA, e pela aplicação de
operadores baseados em algoritmos genéticos pode-se observar a adaptação destes
organismos à realidade do mundo que habitam, como disponibilidade de energia,
competição ou cooperação entre colônias, etc...

Figura 6 - Tela do controle da simulação, permitindo a definição dos vários parâmetros


da simulação. Esta interface permite descrever características dos indivíduos e
populações, bem como observar e intervir no processo de simulação.

Figura 7 - a) Tela demonstrando um momento inicial da simulação de várias populações


que competem para sobreviver num mesmo ambiente; b) Tela demonstrando um
momento da simulação na competição entre dois grupos de organismos.

3.4 Grupo de Vida Artificial - Animação Cognitiva


Projeto ALGA: Artificial Life with Genethic Algorithms
Eder Antonio Rangel Marques (mestrando), Marcio Lobo Netto (professor doutor).
http://www.lsi.usp.br/~alga

1347
Este projeto de mestrado consiste na simulação de colônias de micro-algas, mais
especificamente a "Phaeodactylum tricornutum", vivendo em condições ambientais
diversas. A opção por esta micro-alga deve-se a sua alta mutabilidade frente a mudanças
ambientais e a vasta literatura encontrada.
Alguns estudos propõem modelos que descrevem seu comportamento em relação a
vários parâmetros tais como a dependência da radiação solar na concentração de
biomassa, consumo de dióxido de carbono dissolvido, suas interações físico-químicas,
pH, temperatura, salinidade, concentração de pigmentos, transporte de membrana, e etc.
Estes trabalhos irão nos guiar na elaboração de um sistema em que tanto o ambiente
virtual quanto os seres artificiais reproduzam com fidelidade o meio e o
comportamento observados na natureza.
Será utilizada a tecnologia de sistemas multi- agentes para representação das algas
artificiais, cujo DNA será processado por algoritmos genéticos no processo evolutivo. O
ambiente virtual será implementado em linguagem Java 3D, sendo os parâmetros
relevantes, bem como suas intercorrelações, totalmente configuráveis pelo usuário.
Temos por intenção tornar este ambiente um laboratório de experimentos possibilitando
não apenas a simulação desta micro-alga mas de planctons em geral, permitindo estudos
por exemplo dos efeitos de poluentes nestas comunidades.
Este projeto poderá inda vir a ser relacionado com projetos do grupo de bio
informática, interessados em observação e análise de fenômenos “in vivo”, servindo
como base de comparação.
3.5 Síntese de Imagens Fotorealísticas
Nesta linha de pesquisa foram desenvolvidas extensões ao algoritmo de Ray Tracing
Parametrizado, procurando aliviar algumas de suas restrições. Estas extensões permitem
alterar alguns parâmetros geométricos como a posição das fontes de luz, parâmetros de
fontes de luz spot e mapeamento de revelo entre outros, mantendo o bom desempenho
do algoritmo original [45].

1348
O applet de interface executa
em qualquer navegador com
Java™ habilitado.
O usuário escolhe cores,
materiais e texturas para
quaisquer superfícies da cena,
bem como cor e intensidade
das fontes de luz.
O applet contata o Sistema
Aquila e envia-lhe os
parâmetros ajustados...

…e este os reenvia para 2


Sistema Aquila: processos mestre, um
para cada olho (imagem),
8 nós processadores: executando em 2 nós
2 PentiumPro@200MHz diferentes. Estes mestres
256 Mbytes RAM comunicam-se com 6
Interconexão Myrinet processos escravos que
estão executando em
outros nós.
Os escravos são
responsáveis pelo
recálculo da imagem.
Após completar o
processamento de uma
linha da imagem, o
processo escravo a envia
ao mestre
correspondente. Os
processadores mestre são
…projetores de vídeo cujas conectados a ...
lentes têm filtros polarizadores
com direções ortogonais. A luz
projetada atinge uma tela
prateada e reflete na direção do
observador, preservando sua
polarização. O usuário usa
óculos polarizadores com
direção combinada com as dos
filtros dos projetores, de tal
forma que cada olho enxerga
apenas a imagem de um dos...

…projetores, criando
o efeito estéreo. A
imagem projetada é
de alta qualidade,
inicialmente gerada
com ray-tracing, mas
pode ser recalculada
em poucos décimos
de segundo.

Figura 8 – Sistema de Visualização Estéreo com Rendering Interativo (RTp)

1349
Em 1997 foi desenvolvido no LSI e apresentado no Supercomputing’97 nos Estados
Unidos, um sistema para visualização estéreo de cenas tri-dimensionais foto-realísticas
com recálculo de um par de imagens em décimos de segundo (figura 8).
Atualmente está em desenvolvimento um sistema de apoio ao projeto de interiores
arquitetônicos que usará como base de software o sistema RT(p) – Ray Tracing
Parametrizado, já desenvolvido e como infraestrutura de hardware a Caverna Digital
(CAVE). Neste ambiente de Realidade Virtual, o usuário estará imerso num ambiente
interior virtual mas visualmente realístico e poderá, através de interface adequada,
alterar cores e texturas das paredes, piso, mobiliário e decoração (Figura 9). Também
poderá variar livremente a cor, intensidade, posição e tipo (global, spot) das fontes de
luz no ambiente. Com estes recursos, as características visuais de um ambiente poderão
ser vividas e experimentadas pessoalmente, antes do ambiente real ser construído
fisicamente.

Figura 9 – Duas versões do mesmo ambiente, com diferentes materiais 8 .

3.6 A CAVERNA Digital


Nesta seção apresentamos o projeto e desenvolvimento do sistema de multiprojeção
estereoscópico para aplicações imersivas da realidade virtual. Dentre os vários sistemas
de multiprojeção estereoscópicos disponíveis estamos interessados em sistemas capazes
de propiciar a imersão total do usuário no ambiente de simulação. Particularmente,
pesquisamos e desenvolve mos um sistema baseado em um cubo com projeção
estereoscópica cinco de suas paredes, o qual denominaremos de CAVERNA Digital.
Há 30 anos atrás, Ivan Sutherland propôs um artigo visionário intitulado "The
Ultimate Display" [73], estabelecendo os paradigmas da realidade virtual moderna, a
partir da publicação deste artigo, a pesquisa e desenvolvimento da realidade virtual
intensificou-se resultando nas primeiras aplicações da realidade virtual em simulação de
vôos ainda da década de 70.
Dentre as várias possibilidades de sistemas de multiprojeção imersivos, decidiu-se
implementar uma CAVERNA Digital (CAVE Automatic Virtual Environment) [74], isto
é, optou-se por um sistema de multiprojeção estereoscópico montado na forma de um
cubo, onde imagens de alta resolução são projetadas em cada uma das faces do mesmo
permitindo que usuários sejam totalmente inseridos (imersos) em uma simulação gerada
por computador (figura 10). Dentre as muitas vantagens deste tipo de sistema podemos
citar sua alta resolução, grande flexibilidade de resolução e a ampla cobertura do campo
de visão (field-of-view). Sistemas do tipo CAVERNA podem ter de 3 a 6 faces e
requerem sistemas computacionais capazes de gerar e sincronizar imagens em alta
resolução a partir da mesma base de dados gráfica.
8
Simulação. (Show-Room Virtual 3.0)

1350
3.6.1 Descrição Geral
A CAVERNA Digital implementada é composta por um cubo de dimensões 3m x
3m x 3m com projeção em 5 de suas faces (4 paredes e piso). O sistema foi projetado de
forma a cobrir todo o campo de visão de um usuário com estatura de 1,70m posicionado
em pé no centro da face inferior do cubo. Para aplicações coletivas, o sistema pode
comportar até 6 usuários no seu interior compartilhando a mesma experiência virtual
[75].
A escolha das faces do cubo onde há projeção foi baseada no potencial de uso de
aplicações relevantes para Ciências, Engenharias e Indústria brasileira (por exemplo,
setores automotivo, petrolífero, energético, aeronáutico, de saúde, de previsão numérica
de tempo, biociências e arte eletrônica).
As imagens das quatro paredes são retroprojetadas em películas de material plástico
polímero branco semi- translúcido. A retroprojeção das imagens nas três paredes fixas é
baseada em espelhos de cristal com alto índice de reflexão e planicidade; e a
retroprojeção das imagens na porta é realizada diretamente, sem a necessidade de
espelho.

3.6.2 Aspectos Arquitetônicos e Estruturais


A Figura 10a apresenta o leiaute estrutural da CAVERNA Digital e a Figura 10b
apresenta o leiaute arquitetônico da CAVERNA Digital. No projeto optou-se por
embutir totalmente os projetores e outros dispositivos ópticos eletrônicos, escondendo
do usuário final as particularidades técnicas do sistema.
Normalmente, considerando-se faces com dimensão de 3m x 3m, a resolução
mínima recomendada para cada face é de 1024 x 1024 pixels, estabelecendo um
tamanho de pixel da ordem de 3mm x 3mm. Desta forma, um aspecto crítico no projeto
estrutural foi o ajuste físico entre as faces de projeção que não deve passar de alguns
milímetros.

(a) (b)

Figura 10 - Leiaute da CAVERN A Digital

Do ponto de vista estrutural foram levados em conta aspectos como compatibilidade


eletromagnética, iluminação, isolamento acústico, controle de temperatura e umidade, e
finalmente, a possibilidade de montagem de periféricos com resposta táctil no interior
do cubo.
A estrutura do cubo é toda feita em madeira e plástico, envolvendo o uso de metal
apenas em alguns parafusos estruturais e projetores, buscando minimizar a distorção dos
campos magnéticos gerados pela maioria dos rastreadores de posição disponíveis
comercialmente.

1351
Bastidores

Projetores Servidores

Painel
de Controle

Porta
Espelhos
Atrium

Figura 11 - Leiaute em planta baixa da CAVERNA Digital 1o Andar


A experiência virtual imersiva começa antes do usuário entrar no interior do cubo
com a adaptação do sistema visual humano a intensidade de luz projetada nas faces. A
eliminação do ofuscamento é realizada através do uso de difusores de luz e da utilização
de lâmpadas com alta resposta de cor. A flexibilidade de iluminação é também
importante demandando a utilização de sistemas de iluminação heterogêneos baseados
em lâmpadas alógena e lâmpadas fluorescentes, ambos com controle automatizado de
intensidade.
A Figura 11 apresenta o leiaute em planta baixa da CAVERNA Digital. Os
bastidores da CAVERNA alojam os projetores e espelhos bem como a estrutura em
madeira. Os espelhos são utilizados para minimizar a área de bastidores bem como
minimizar o volume de ar-refrigerado, tratamento acústico e isolamento óptico das
paredes (toda a área dos bastidores é pintada de preto fosco). Para não comprometer as
características de isolamento acústico optou-se pela utilização de sistemas de ar-
condicionado de alto volume (60.000 BTUs) com baixa emissão sonora.

3.6.3 O Superservidor Gráfico SGI Onyx 3000 Infinity Reality 3


Praticamente, a totalidade de CAVERNAS Digitais atualmente disponíveis no
mundo utilizam a plataforma SGI como plataforma básica de exibição de imagens.
No caso da CAVERNA Digital, implementada, escolhemos uma configuração de
plataforma baseada num servidor Onyx 3000 com 1 Gbyte RAM e duas CPUs MIPS
R12000 400MHz, e cartão gráfico Infinity Reality 3. O sistema operacional utilizado é o
IRIX 6.5.

1352
A Figura 12 apresenta a infraestrutura computacional e periféricos atualmente
instalados e disponíveis na CAVERNA.

Figura 12 - Infraestrutura Computacional da CAVERNA Digital

3.6.4 Ambiente de Programação


Levando-se em conta a utilização de microprocessadores heterogêneos Intel e MIPS,
estamos utilizando os sistemas operacionais Windows 2000, Linux e IRIX. Um dos
principais motivos desta escolha foi a grande quantidade de aplicativos nestes três
sistemas operacionais. A maioria das aplicações comerciais estão disponível na
plataformas operacional IRIX, enquanto a grande maioria de aplicações de domínio
público estão disponíveis na plataforma operacional Linux.

3.6.5 Bibliotecas de Desenvolvimento


O ambiente de desenvolvimento de programas aplicativos para sistemas de
multiprojeção estereoscópicas é complexo, pois leva em conta aspectos como a
representação de grandes estruturas de dados, o gerenciamento de periféricos e o
mapeamento das imagens nos projetores.
Na CAVERNA Digital é necessário alimentar cinco faces de projeção. Além disso,
devido ao tamanho da tela, deve-se utilizar uma resolução suficientemente grande para
que não se note a discretização das imagens. Assim, estamos utilizando tipicamente a
resolução de 1024x1024 na freqüência de 96Hz.
O IRIS-Performer, por exemplo, é uma biblioteca gráfica de alto desempenho
desenvolvida pela SGI que opera tanto em plataformas IRIX como Linux. Esta
biblioteca permite a sincronização das imagens geradas em conjunto com a utilização de
sistemas de rastreamento, além de uma série de efeitos que podem ser produzidos pela
arquitetura gráfica e que não são facilmente acessíveis para outras plataformas de
desenvolvimento. Embora o IRIS-Performer tenha um bom potencial para o
desenvolvimento de aplicações para a CAVERNA Digital ele ainda exige do usuário um
grande grau de conhecimento de técnicas computacionais [76].

1353
A biblioteca CAVElib (www.vrco.com)é uma interface de programação de
aplicação (API) que provê o suporte geral para a construção de ambientes virtuais para
sistemas de multi- exibição imersivos e equipamentos de realidade virtual. A CAVElib
permite a configuração dos dispositivo de exibição, a sincronização dos múltiplos
processos, mapeamento das vistas estereoscópicas, comunicação com os dispositivos de
rastreamento, suporte ao modelo de câmera virtual baseado no ponto de vista do
observador e os recursos básicos de comunicação em rede entre ambientes de realidade
virtual remotos. A CAVElib permite que um simples programa seja disponibilizado para
uma grande variedade de dispositivos de exibição de realidade virtual sem a necessidade
de recompilação destes programas. Originalmente desenvolvida para estações gráficas
SGI, recentemente a CAVElib foi também disponibilizada para aglomerados de PCs.
A biblioteca CAVERNsoft G2 [77] é um conjunto de ferramentas para suportar
computação de alto desempenho e gerenciamento de grandes bases de dados que podem
ser acoplados a ambientes de realidade virtual colaborativos e imersivos. Esta biblioteca
incorpora módulos que provêm o controle total da rede no nível de sockets, a
distribuição de dados baseados em RPCs (Remote Procedure Calls), e módulos de alto
nível para a implementação de camadas de aplicação e avatares.

3.6.6 Bibliotecas de Sincronização


Para a utilização do aglomerado é necessário garantir a coerência dos dados
distribuídos entre os nós. Um dos pontos mais críticos é fazer com que os nós
manipulem o movimento dos mundos virtuais ao mesmo tempo, assim, é necessário que
as movimentações sejam trocadas rapidamente entre os nós. Para isto, está sendo
desenvolvida uma biblioteca de sincronização, denominada de DICElib, que tem o
objetivo de fazer este sincronismo a nível de aplicação [78].

3.6.7 Sistema de Multiprojeção


Para o sistema de multiprojeção são utilizados cinco projetores de alta resolução
baseados em tecnologia CRT (Cathode Rays Tubes) Electrohome Marquee 9500LC
com a eletrônica modificada pela empresa TAN 9 a fim de permitir a calibração
eletrônica e física.
No caso físico, todos os cuidados foram tomados em relação à distância entre os
projetores e as telas para que fossem iguais, os ângulos dos espelhos e a altura dos
projetores em relação ao piso. Foi realizada uma fixação eficiente dos projetores para
não haver problemas de movimentação devido à dilatação e acomodação do piso. O
sistema de calibração eletrônico destes projetores incorpora uma grande possibilidade
de ajustes para que as imagens sejam ajustadas às dimensões exatas das faces, estejam
totalmente alinhadas apresentem suas cores devidamente compatibilizadas para
proporcionar continuidade das imagens entre as faces.
Alguns cuidados adicionais devem ser tomados em relação às projeções. O principal
cuidado é o de evitar que a luz externa che gue às telas alterando a qualidade e
intensidade das projeções. Além disso, a relação entre a transparência da tela e a
intensidade luminosa dos projetores deve ser devidamente balanceada, pois se a
intensidade dos projetores for muito alta poderá se ident ificar regiões da tela mais
iluminadas onde se encontram as lentes do projetor; por outro lado, se for muito baixa, a
imagem poderá ser muito escura, o que compromete a visualização dos mundos virtuais.

9
http://www.tan.de

1354
Finalmente, um último aspecto no sistema de multiprojeção é a calibração da
projeção para evitar cintilação (hot spotting) nas telas. Este efeito de cintilação é notado
quando não há um balanceamento uniforme da distribuição de luz nas faces de projeção.

3.6.8 Sistema de Imagens Estereoscópicas


As projeções na CAVERNA Digital são feitas nas telas por retroprojeção, sendo que
no piso a projeção é direta. Contudo, uma simples projeção não induz ao usuário o
efeito estereoscópico. Para induzir no usuário a sensação de imersão com visão em
profundidade, é utilizado um sistema de estereoscopia ativa, necessitando da geração de
uma imagem para cada olho do observador [79].
A disponibilidade da estereoscopia na maioria das CAVERNAS Digitais é baseada
em sistemas ativos, onde é necessário enviar um sinal de sincronização para os óculos
do usuário, para estes comutarem a abertura de suas lentes, ou seja, quando o
computador estiver gerando a imagens para o olho esquerdo deverá ser enviado um
comando para os óculos fecharem a lente do olho direito, e vice- versa. Devido ao fato
de que normalmente o sistema visual humano consegue detectar transições em
freqüências inferiores a 60 Hz, é necessário produzir imagens a 120 Hz ou seja 60 Hz
para cada olho.
Utilizando o servidor gráfico Onyx III estamos conseguindo imagens de qualidade
com freqüências de 96Hz, ou seja 48 Hz para cada olho.

3.6.9 Rastreamento de Posição


Para o controle de navegação e posicionamento da CAVERNA Digital é necessário
que o sistema de rastreamento de posição seja o mais transparente possível para o
usuário. Para isto são utilizados sistemas de rastreamento eletromagnéticos, que
conseguem detectar a posição e orientação de elementos no espaço tridimensional.
Com o sistema de rastreamento é possível localizar a posição do usuário e recalcular
a projeção das imagens para o ponto de vista dele. Além disso, mediante um sistema
conhecido como varinha (wand) o qual consiste de uma varinha eletrônica com botões
oo usuário navegar interativamente no ambiente virtual.

3.6.10 Sistema de Gerenciamento


Estação de Controle ORION
Devido a grande diversidade de recursos da CAVERNA Digital o seu gerenciamento
torna-se complexo. Para tanto propusemos uma inovação que é o estação de controle
chamado de ORION. Este estação é basicamente uma mesa com uma série de
dispositivos integrados, destacando-se a série de monitores, um teclado e mouse e um
conjunto de pequenas alavancas para controle de áudio, iluminação, comutação de
teclado e mouse. A estação de controle ORION é apresentada na Figura 13.

1355
Figura 13 - A Caverna Digital e Estação de Controle ORION

Programa de Controle SIRIUS


Para o controle de todo ambiente da CAVERNA, propusemos o desenvolvimento de
um programa de controle denominado SIRIUS.
Considerando-se a heterogeneidade do sistema, optou-se também por uma interface
independente de arquitetura. A solução proposta é baseada em um servidor acionado
mediante aplicativos em Java, sendo assim possível controlar remotamente todos os
recursos disponíveis no ambiente.
A Figura 14 apresenta a interface de usuário da Ferramenta SIRIUS. Um contexto é
o conjunto de parâmetros de iluminação, mapeamento de vídeo, situação dos projetores,
calibração dos rastreadores e distribuição de áudio. Os contextos podem ser modificados
e armazenados pelo usuário.
Gerenciamento de Comutação de Vídeo
A CAVERNA Digital utiliza um sistema de geração de sinal de vídeo analógico,
baseado no padrão de sinal RGBHV ( três canais de cor: R vermelho, G verde e B azul e
dois canais de sincronismo: H horizontal e V vertical). Levando-se em conta a
disponibilidade de diferentes fontes de sinal de vídeo (servidores SGI e PLÊIADES)
existe a necessidade de se comutar as entradas dos projetores para o servidor gráfico
utilizado, esta necessidade impôs o uso de um comutador de vídeo onde é possível se
escolher diversas entradas e diversas saídas. Um aspecto importante é a capacidade
deste comutador de vídeo de ser controlado remotamente por uma porta serial comum.

1356
Figura 14 - Tela da Interface de Gerenciamento SIRIUS

Gerenciamento dos Projetores


Os projetores possuem interfaces de comunicação serial que permitem o controle
remoto por computador, uma das principais aplicações desta facilidade é permitir que os
projetores sejam ligados e desligados remotamente, aumentando consideravelmente sua
vida útil.
Gerenciamento de Áudio
O sistema de gerenciamento de áudio é muito similar ao sistema de vídeo. Também
existe a necessidade de se comutar o sinal dentre os vários sistemas. Contudo devido às
várias soluções de mercado, este necessita de uma mesa de som para se escolher os
diversos canais de entrada e as respectivas saídas.
Como sistema de saída existem duas soluções, a primeira é gerar o som em caixas
amplificadas espalhadas estrategicamente na CAVERNA Digital, outra possibilidade é a
utilização de um fone de ouvido sem fio, e o som gerado nele sendo baseado na posição
do observador que é conhecida através do sistema de rastreamento.

3.6.11 Conclusões
Sistemas de realidade virtual baseados em multiprojeção estereoscópica baseados no
paradigma de CAVERNA Digital são ferramentas importantes utilizadas em várias
aplicações da engenharia e ciências. Esta seção apresentou as várias decisões de projeto
e inovações relacionadas com a implementação da primeira CAVERNA Digital da
América Latina.
A diversidade de recursos existentes na CAVERNA Digital proporcionam um
enorme potencial de aplicabilidade e pesquisa nas diversas áreas do conhecimento
humano. A Figura 15 apresenta usuários no interior da CAVERNA utilizando-se de
algumas aplicações já disponibilizadas.

1357
Figura 15 - Usuário no Ambiente Imersivo da CAVERNA Digital

Dentre os vários desafios ainda em aberto, destacam-se a disponibilidade de


ambientes de programação mais eficientes e ambientes de computação mais poderosos.
De forma geral, a reação de usuários leigos ao primeiro contato com a CAVERNA
Digital é de curiosidade, e tão logo o sistema é ligado, percebe-se uma rápida
familiarização do usuário com o sistema, atingindo assim um dos objetivos do projeto
da CAVERNA que é o desenvo lvimento de interfaces intuitivas.
Finalmente, dois focos de pesquisa devem ser considerados na direção do uso mais
disseminado deste tipo de tecnologia Digital no cotidiano: o desenvolvimento de
sistemas de autoestereoscopia, eliminando-se assim o único elemento invasivo ao
usuário que são os óculos polarizadores; e a minimização dos custos associados, sendo
que uma possibilidade muito promissora é a substituição da atual tecnologia de projeção
CRT pela tecnologia de projeção DLP.

4 Considerações Finais

Hoje a Computação Gráfica tem menos de 40 anos mas já é uma área bastante madura
da Ciência da Computação. Por outro lado, claramente ainda está na sua infância pelo
enorme potencial ainda a ser explorado com o desenvolvimento da microeletrônica. A
Multimídia, ou a hipermídia, que apresentou crescimento explosivo junto com a
popularização da Internet é uma das derivações da Computação Gráfica.
A disponibilidade de processadores cada vez mais rápidos, bem como de
memória de grande capacidade a custos reduzidos têm ampliado cada vez mais o uso da
Computação Gráfica em todos os setores da vida humana. O desenvolvimento de

1358
processadores gráficos tem permitido também atingir desempenho extraordinário com
equipamentos de uso doméstico como é o caso dos videogames.
No futuro veremos cada vez mais filmes com animação fotorealística, interfaces
inteligentes e amigáveis, ambientes virtuais.
O LSI/USP tem contribuído nos últimos 20 anos para o desenvolvimento da
Computação Gráfica, usualmente de forma aplicada como convém a uma Escola de
Engenharia, onde se insere, inicialmente com o desenvolvimento de hardware gráfico e,
nos dias de hoje, atuando nos limiares do conhecimento, com a Realidade Virtual e o
imageamento médico.
Esperamos com ansiedade os próximos 20 anos de pesquisa.

Agradecimentos
A todos os alunos, de iniciação científica, mestrado e doutorado, que nestes anos tanto
contribuíram com a pesquisa e desenvolvimento realizada no âmbito do Grupo de
Computação Visual e Mídias Interativas do LSI.

Referências
[1] PARENT, Richard, Computer Animation: Algorithms and Techniques, The Morgan
Kaufmann Series in Computer Graphics and Geometric Modeling, Brian A. Barsky
Series Editor, August 2001.
[2] NETTO, M. L. and KOGLER Jr, J. E. editors, Special Issue on Artificial Life.
Computers & Graphics – an international journal on computer graphics, Elsevier
Science, november 2001.
[3] MIRANDA, F. R. et al, An Artificial Life Approach for the Animation of Cognitive
Characters. Computers & Graphics – an international journal on computer graphics,
Elsevier Science, november 2001.
[4] KAUFMAN, A. A tutorial on volume visualization, IEEE Computer Society Press,
Los Alamitos, CA, 1990.
[5] UDUPA, J. K. HERMAN, G. T., 3D imaging in medicine, CRC Press, Boca Raton,
FL, 1991.
[6] UDUPA, J. K., GONÇALVES, R. J., Imaging transforms for visualizing surfaces
and volumes, J. Digital Imaging 6(4), p. 213-236, Nov. 1993.
[7] PUN, T. and BLAKE, E., “Relationships between image synthesis and analysis:
Towards unification”, Computer Graphics Forum 9, p. 149-163, 1990.
[8] PARANJAPE, R. B., RABIE, T. F., RANGAYYAN, R. M., Image restoration by
adaptive neighborhood noise subtraction, Applied Optics p. 2861-2869, 10, May
1994.
[9] PARANJAPE, R. B., RANGAYYAN, R. M., MORROW, W. M., Adaptive
Neighborhood Mean and Median Image Filtering, Journal of Electronic Imaging
3(4), p. 360-367, Oct. 1994.
[10] SAINT-MARC, P., CHEN, J.-S., MEDIONI, G. Adaptive smoothing: A general
tool for early vision, IEEE Trans. Pattern Analysis and Machine Vision 13(6) p.
514-529, June 1991.
[11] CHAN, C. L., KATSAGGELOS, A. K., SAHAKIAN, A. V., Image sequence
filtering in quantum-limited noise with applications to low-dose fluoroscopy, IEEE
Trans. Medical Imaging 12(3), p. 610-621, Sept. 1993.
[12] SAUER, K., LIU, B. , Nonstationary filtering of transmission tomograms in high
photon counting noise, IEEE Trans. Medical Imaging 10(3), p. 445-452, Sept. 1991.

1359
[13] SAKAS, G., SCHREYER, L., GRIMM, M. Case Study: Pre-Processing,
Segmenting and Volume Rendering 3D Ultrasonic Data, IEEE Computer Graphics
and Applications, Vol. 15, No. 4, p. 47-54, July 1995.
[14] JIANG, S.-S. SAWCHUK, A.A. Noise updating repeated Wiener filter and
other adaptive noise smoothing filters using local image statistics, Applied Optics
25(14) p. 2326-2337, July 1986.
[15] KUAN, D.T., SAWCHUK, A.A. STRAND, T.C., CHAVEL, P. , Adaptive noise
smoothing filter for images with signal-dependent noise, IEEE Trans. Pattern
Analysis and Machine Intelligence 7(2) p. 165-177, March 1985.
[16] LEE, J.S. Digital image enhancement and Noise Filtering by use of local
statistics, IEEE Trans. Pattern Analysis and Machine Intelligence PAMI-2, No. 2 p.
165-168, March 1980.
[17] NADERI, F., SAWCHUK, A.A. Estimation of images degraded by film-grain
noise, Applied Optics 17(8) p. 1228-1237, April 1978.
[18] MAHESH, B. SONG, W.-J., PEARLMAN, W.A. Adaptive estimators for
filtering noisy images, Opt. Eng. 29 p. 489-494, 1990.
[19] HADHOUD, M. M., THOMAS, D.W. The two-dimensional adaptive LMS
(TDLMS) algorithm, IEEE Trans. Circuits and Systems 35 p. 485-494, 1988.
[20] GONZALEZ, R. C., WOODS, R. E. Digital Image Processing, Addison
Wesley, Sept. 1993.
[21] ZUCKER, S. W., HUMMEL, R. A., A Three-Dimensional Edge Operator, IEEE
Trans. On Pattern Analysis and Machine Intelligence PAMI-3, No. 3 p. 324-331,
May 1981.
[22] MALZBENDER, T. Fourier volume rendering, ACM Trans. Computer
Graphics, 12, (3), p. 233-250, July 1993.
[23] TOTSUKA, T., LEVOY, M. Frequency domain volume rendering, Proc.
SIGGRAPH'93, ACM SIGGRAPH, Anaheim, CA, Aug, 1993.
[24] MURAKI, S. Volume data and wavelet transforms, IEEE Computer Graphics
and Applications, 13(4), p. 50-56 , 1993.
[25] MURAKI, S. Multiscale 3D edge representation of volume data by a DOG
wavelet, p. 35-42 in Proc. 1994 Symp. Volume Visualization, IEEE-ACM,
Washington D.C., Oct. 1994.
[26] MORROW, W.M., PARANJAPE, R.B., RANGAYYAN, R.M., DESAUTELS,
J.E.L. Region-based contrast enhancement of mammograms, IEEE Transactions on
Medical Imaging 11(3) p.392-406, Sept. 1992.
[27] RABIE, T. F. RANGAYYAN, R. M. , PARANJAPE, R. B. Adaptive-
neighborhood image deblurring, Journal of Electronic Imaging 3(4) p. 368-378,
Oct. 1994.
[28] SHEN, L. RANGAYYAN, R. M., DESAUTELS, J. E. L. Detection and
classification of mammographic calcifications, Int. Journal of Pattern Recognition
and Artificial Intelligence Vol. 7(6), p. 1403-1416, World Scientific Publishing
Company, 1993
[29] SHEN, L. RANGAYYAN, R. M., DESAUTELS, J. E. L. Application of shape
analysis to mammographic calcifications, IEEE Trans. on Medical Imaging, Vol.
13(2), June 1994, p. 263-274.
[30] SHEN, L., RANGAYYAN, R.M. A segmentation-based lossless image coding
method for compression of medical images, p. 974-982 in Proc. SPIE vol. 2501
Conference on Visual Communication and Image Processing, SPIE, Taipei, Taiwan,
May 1995.

1360
[31] SHEN L. , RANGAYYAN, R.M. A segmentation-based lossless image coding
method for compression of medical images, p. 974-982 in Proc. SPIE vol. 2501
Conference on Visual Communication and Image Processing, SPIE, Taipei, Taiwan,
May 1995.
[32] GLICK, S. J. KING, M. A., KNESAUREK, K. An Investigation of the 3D
Modulation Transfer Function Used in 3D Post-Reconstruction Restoration
Filtering Of SPECT Imaging, p.107-122, Information Processing in Medical
Imaging, ed. J. Llacer, Wiley-Liss, New York, 1991.
[33] KING, M. A. DOHERTY, P. W. SCHWINGER, R. B. PENNEY, B. C. ,.
BIANCO, J. A Digital Restoration of Indium-111 and Iodine-123 SPECT Images
with Optimized Metz Filters, J. Nucl. Med. 27 p.1327-1336, 1986.
[34] KING, M. A. PENNEY, B. C., GLICK, S. J. An Image-Dependent Metz Filter
for Nuclear Medicine Images, J. Nucl. Med. 29 p.1980-1989, 1988.
[35] YANCH, J. C. FLOWER, M. A., WEBB S. A Comparison of Deconvolution
and Windowed Subtraction Techniques for Scatter Compensation in SPECT, IEEE
Trans. Med. Imaging 7 p. 13-20, 1988.
[36] BOULFELFEL, D. Restoration of Nuclear Medicine Images, Ph.D. Thesis,
Department of Electrical and Computer Engineering, The University of Calgary,
Alberta, Canada, Nov. 1992.
[37] BOULFELFEL, D. RANGAYYAN, R.M. HAHN, L.J., KLOIBER, R. Use of
the geometric mean of opposing planar projections in pre-reconstruction
restoration of SPECT images, Physics in Medicine and Biology, 37 (10), p.1915-
1929, 1992.
[38] BOULFELFEL, D. RANGAYYAN, R.M. HAHN, L.J. KLOIBER, R.,
KUDUVALLI, G.R. Two-dimensional Restoration of Single Photon Emission
Computed Tomography Images using the Kalman Filter, IEEE Trans. on Medical
Imaging, 13(1) p. 102-109, March 1994.
[39] BOULFELF EL., D. RANGAYYAN, R. M., HAHN, L. J., Kloiber, R. Three-
dimensional restoration of single photon emission computed tomography images
using the Kalman-Metz filter, p.98-105 in Computerized Tomography - Proc. Fourth
International Symposium on Computerized Tomogrphy, Novosibirsk, Russia, VSP
BV, The Netherlands, 1995.
[40] KUDUVALLI, G.R., RANGAYYAN, R.M. Performance analysis of reversible
image compression techniques for high-resolution digital teleradiology, IEEE
Transactions on Medical Imaging 11(3) p.430-445, Sept. 1992.
[41] FOWLER, J. E. YAGEL, R. Lossless compression of volume data, Proc. 1994
Symp. Volume Visualization, IEEE-ACM, Washington D.C. (Oct. 1994).
[42] WHITTED, T. An Improved Illumination Model for Shaded Display. Comm. of
the ACM, v. 23, n.6, p. 343-349, 1980.
[43] COHEN, M. F. ; WALLACE, J. R. Radiosity and Realistic Image Synthesis.
Cambridge, Academic Press, 1993.
[44] SÉQUIN, C. ; SMYRL, E. Parameterized Ray Tracing. Computer Graphics,
v.23, n.3, p.307-314, 1989.
[45] SANTOS, E. T. Extensões ao Algoritmo de Ray Tracing Parametrizado. Tese
de Doutoramento, Departamento de Engenharia Eletrônica, Escola Politécnica da
USP, 1998.
[46] FOLEY, J. D. ; DAM, A. V. ; FEINER, S. K. ; HUGHES, J. F. Computer
Graphics - Principles and Practice. 2 nd. Ed. Addison-Wesley Publishing Company,
1990.

1361
[47] LOBO, NETTO, M; MACEDO, M.F; LOPES, R,D. EG_880X – documentação
de implementação. 5 volumes (relatório técnico Interno LSI-EPUSP) , 1998.
[48] LOBO , NETTO, M. Concepção e aplicação da família de estações gráficas
EG880X. In: Anais do II Simpósio Brasileiro de Computação Gráfica e
Processamento de Imagens (SBAC – PP). Águas de Lindóia – SP, abril de 1989.
[49] NOIJE, W. V.; HERNANDEZ, E, D.;LOBO NETTO,M. A estação de trabalho
EG_8801 e seu estudo em PAC para microeletrônica. In: SIMPÓSIO
BRASILEIRO DE CONCEPÇÃO DE CIRCUITOS INTEGRADOS, 3º, Gramado,
RS, abril de 1998.
[50] MIDORIKAWA, E. T.; KNOP, F.; BRANCO, R, D.;YU,W, K. LSI-SO.01 – um
sistema operacional multiprocessador. In: SIMPÓSIO BRASILEIRO DE
ARQUITETURA DE COMPUTADORES – PROCESSAMENTO PARALELO, 2º,
SBAC-PP-88. Àguas de Lindóia, SPAnais. v.1, p.3.A.1.1-3.A.1.6. , 1988.
[51] HERNANDEZ, E. D. M.; LOPES, R.D.; ZUFFO, M.K.; SIMOYA, N.T.;
MELLY, MYLENE; PEREIRA, P.A.B. Núcleo gráfico bidimencional (ng2d) –
documentaçài de implementação. São Paulo, LSI- EPUSP, 6 volumes. (Relatório
Técnico Interno LSI-EPUSP) , 1988.
[52] LOBO NETTO, M. Considerações de projeto de Arquitetura e processadores
para estações de trabalho. São Paulo, Dissertação (Mestrado) Escola Politécnica,
Universidade de São Paulo, 1990.
[53] HERNANDEZ, E. D. M. Estações de trabalho e a geração e apresentação de
imagens gráficas. São Paulo. Dissertação (Mestrado) – Escola Politécnica,
Universidade de São Paulo, 1990.
[54] SANTOS E. T. Changing Some Geometric Parameters in Parameterized Ray
Tracing. Anais do VII SIBGRAPI - Simpósio Brasileiro de Computação Gráfica e
Processamento de Imagens, Curitiba-PR, 1994.
[55] ZUFFO, M. K. Um Multiprocessador para Aplicação Gráficas. São Paulo.
134p. Dissertação (Mestrado) – Escola Politécnica, Universidade de São Paulo,
1993.
[56] GOMBATA, C. T.; ZUFFO, M. K. Radiosidade – geração de imagens
fotorealistas. In: CONGRESSO DE INICIAÇÃO CIENTÍFICA E TECNOLÓGICA
EM ENGENHARIA, 8º, CICTE-92, São Carlos, SP, dez. 1992. Resumo.
[57] ELVINS, T. T. Volume visualization. Eurographics UK Chapter. Tutorial.
University of Leeds, 1991.
[58] Introduction to volume visualization. In: SIGGRAPH’91 – 18 International
Conference on Computer Graphics and Interactive Techniques, Las Vegas, USA,
Aug. 1991. Course Notes.
[59] ZUFFO, M. K. et al. RTV – Ray-tracer de voxels – documentação de
especificação e implementação. São Paulo (Relatório Técnico Interno LSI-EPUSP),
1993.
[60] Proceedings of ICPPP – International Conference on Parallel Processing, 1999.
[61] KOFUJI, S. T.; HUMMEL C. G.; GROSSMANN, F.; ZUFFO, J. A. Projeto
minissupercomputador: características gerais do sistema MS_8701. In: SIMPÓSIO
BRASILEIRO DE ARQUITETURA DE COMPUTADORES –
PROCESSAMENTO PARALELO, 2º. SBAC-PP-88. Àguas de Lindóia, SP, 1988..
[62] SATO, L. M. CPAR: Programação paralela em multicomputadores. In:
JORNADA EPUSP/IEEE EM SISTEMAS DE COMPUTAÇÃO DE ALTO
DESEMPENHO, São Paulo, p.71-91, 1991

1362
[63] LOPES,R. D.; ZUFFO, M. K. Documento de especificação e projeto do módulo
básico do multicomputador TRGR. (Relatório Técnico Interno LSI- EPUSP). Jan.
1991.
[64] ZUFFO, M. K. Um Multicomputador para Aplicações Gráficas, Dissertação de
Mestrado. Escola Politécnica da Universidade de São Paulo, São Paulo, 1993.
[65] SANTOS, E. T. Avaliação do Algoritmo de Ray Tracing em
Multicomputadores. Dissertação de Mestrado. São Paulo-SP, EPUSP, 1994.
[66] LOPES, R. D. O Multicomputador TRGR e a Paralelização da Síntese de
Imagens, Dissertação de Mestrado. Escola Politécnica da Universidade de São
Paulo, São Paulo, 1993.
[67] M. K. ZUFFO, S.S. LARKIN, A.J. Grant, T. HEWITT, R.D. LOPES, SMART –
Scientific Visualization for High Performance Computing Applications, projeto
financiado pela Comissão da Comunidade Européia – ITDC 225, 1994.
[68] M. K. ZUFFO, A.J. GRANT, R.D. LOPES, E.T. SANTOS, J.A. ZUFFO, A
Programming Environment for High-Performance Volume Visualization
Applications, Computer & Graphics, 20(3) p. 385-394 (1996).
[69] M. K. ZUFFO, A.J. GRANT, R.D. LOPES, E.T. SANTOS, SMART – Scientific
Visualization for High Performance Computing Applications. (to be submitted).
[70] MIRANDA, F. R. et al, ARENA and WOXBOT: First Steps Towards Virtual
World Simulations. Proceedings of SIBGRAPI 2001 - XIV Brazilian Symposium on
Computer Graphics and Image Processing, Florianópolis, Brazil, Cctober 2001 –
IEEE Computer Society Press.
[71] MIRANDA, F. R. et al, ARENA and WOXBOT: Some Steps Towards the
Animation of Cognitive Characters Acting in a Virtual World. Proceedings of the
10th EPCG-Portuguese Computer Graphics Meeting, Lisbon, Portugal, Oct. 2001.
[72] NETTO, M. L. et al, WOXBOT: a Wide Open Extensible Robot for Virtual
World Simulations. Computer Graphics & Geometry - Internet Journal, vol.2
num.4 Moscow, Russia, January 2001.
[73] SUTHERLAND, Ivan E. A Head Mounted Three Dimensional Display,
Proceedings of the AFIPS Fall Joint Computer Conferences, Washington DC,
Thompson Books, 757-764, 1968.
[74] CRUZ-NEIRA, C., SANDIN, D.J., DEFANTI, T.A. Surround-screen
projection-based virtual reality: The design and Implementation of the CAVE. In
SIGGRAPH 1993. ACM SIGGRAPH, Anaheim, July 1993.
[75] DISZ, T. Introduction - The CAVE: family of Virtual Reality devices, Argonne
National Laboratory, Proceedings of the USENIX Windows NT Workshop, Seattle,
Washington, USA. August 1997.
[76] ROHLF, J. e HELMAN, J. IRIS Performer: A High Performance
Multiprocessing Toolkit for Real-Time 3D Graphics, SIGGRAPH'94, Orlando,
Florida, p.381-394, July 1994.
[77] PARK, K. S., CHO, Y. J., KRISHNAPRASAD, N. K., SCHARVER, C.,
LEWIS, M. J., Leigh, J., JOHNSON, A. E. CAVERNsoft G2: A Toolkit for High
Performance Tele-Immersive Collaboration. ACM 7th Annual Symposium on
Virtual Reality Software & Technology (VRST), Seoul, Korea, 2000.
[78] SINGHAL, S. e ZYDA, M. Networked virtual enviroments : design and
implementation, Addison Wesley, 1999.
[79] DAI, P., ECKEL G., GÖBEL, M., HASENBRINK, F., LALIOTI, V.,
LECHNER, U., STRASSNER, J., TRAMBEREND, H., WESCHE, G., Virtual
Spaces: VR Projection System Technologies and Applications, Tutorial Notes,
Eurographics '97, 75 pages, Budapest 1997.

1363

Você também pode gostar