Visualização de terrenos em GPU

Documentos relacionados
Visualização de terrenos em GPU

Visualização de terrenos em GPU

QuadLOD: Uma Estrutura para a Visualização Interativa de Terrenos

5 Renderização de terreno usando processo local paralelo em GPU

Professor: Anselmo Montenegro Conteúdo (aula 7): - Noções de estruturas de dados topológicas. Instituto de Computação - UFF

Implementação de algoritmos para consultas de segmentos em janelas

5 Resultados Experimentais

2 Técnicas e Trabalhos Relacionados

Explorando aplicações que usam a geração de vértices em GPU

2 Conceitos Básicos e Trabalhos Relacionados

Triangulação de Delauney

Visualização Interativa de Modelos Massivos de Engenharia na Indústria de Petróleo com o Algoritmo de Voxels Distantes

Frustum Culling Híbrido Utilizando CPU e GPU. Aluno: Eduardo Telles Carlos Orientador: Alberto Raposo Co-Orientador: Marcelo Gattass

Computação Gráfica. Representação e Modelagem

Resumo. Computação Gráfica: Uma Proposta de Plano Pedagógico. Áreas Correlatas. Definição. Uma Visão Integrada da C.G.

Computação Gráfica e Áreas Correlatas

5 Resultados. 5.1 Modelos usados nos testes

IMPLEMENTAÇÃO E OTIMIZAÇÃO DE UMA BOUNDING INTERVAL HIERARCHY PARA UM RAYTRACER DE TEMPO REAL USANDO CUDA

Um Algoritmo para a Visualização de um Terreno com Objetos

Geração Procedural de Terrenos em GPU

4 Impostores com Relevo

4 Algoritmo de Visualização

5 Resultados e Aplicações

3 Visualização de TetraQuads

Introdução. 1 Introdução

Computação Gráfica - 11

5 Qualidade dos Resultados

Modelagem Geométrica. André Tavares da Silva. Capítulo 12 do Foley Capítulo 4 de Azevedo e Conci Capítulo 11 de Mortenson

vértices dessas células. Exemplos de malhas estruturadas e não-estruturadas são apresentados na Figura 2.

6 Resultados Estratégias Consideradas

INF 1771 Inteligência Artificial

Esse tipo de visualização sempre exige uma preocupação adicional com eficiência pois o número de polígonos necessário para representar fielmente a

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas

Banco de Dados Espaciais

UNIVERSIDADE FEDERAL FLUMINENSE Pedro Martins Menezes. Um estudo dos estágios dos pipelines gráficos

Introdução Introdução

Remoção de Superfícies Escondidas

INF 1366 Computação Gráfica Interativa. Anti-Aliasing; Eliminação de Superfícies Escondidas. Alberto B. Raposo

Visualização Distribuída utilizando Agrupamentos de PCs 10

Teorema da Galeria de Arte e Triangularização de Polígonos e Pontos no Plano

Computação Gráfica e Áreas Correlatas

MNT: MODELAGEM NUMÉRICA DE TERRENOS

é a saida do melhor individuo. A configuração de parâmetros da

Fundamentos de Computação Gráfica. Visualização e Navegação em Tempo Real

Simplificação e Multiresolução em Modelos Baseados em Pontos

4 Implementação em CPU

São Carlos, 01 de outubro 2010 THE R* - TREE : AN EFFICIENT AND ROBUST ACCESS METHOD FOR POINTS AND RECTANGLES+

UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA DEPARTAMENTO DE INFORMÁTICA. Visualização de Terrenos em Tempo Real

Geometria Computacional - Notas de aulas. André Guedes

INF 2063 Visualização de Modelos Massivos Trabalho de Pesquisa

5 Implementação e resultados

Detecção Hierárquica de Colisão em Ambientes 3D

3.1 Linha de Produção Utilizada

5 Resultados Experimentais

SISTEMAS DE INFORMAÇÃO GEOGRÁFICA SIG FORMATOS DE REPRESENTAÇÃO DE DADOS FORMATO VETORIAL

Segmentação local. geralmente baseados em análise de descontinuidade ou similaridade de valores digitais.

Árvores. SCC-214 Projeto de Algoritmos. Thiago A. S. Pardo. Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral

EXTRAÇÃO DE SILHUETAS EM DADOS VOLUMÉTRICOS

Renderização em Tempo Real de Pêlos Aplicados Sobre Malhas Tridimensionais Arbitrárias Obtidas de Objetos Reais

2 Algoritmos de Visibilidade

Capítulo 3. Descrição e visualização do modelo 25

Os dados bidimensionais são muito utilizados em várias aplicações de computação gráfica. Em geral, essas aplicações são desenvolvidas para permitir a

1.1(a): Malha de triângulos aproximando a forma de um golfinho. 1.1(b): Barco modelado com superfícies paramétricas (neste caso, NURBS).

Definição 2.1 (Malha) Uma malha é uma estrutura topológica e geométrica

TRATAMENTO EFICIENTE DE VISIBILIDADE ATRAVÉS DE ÁRVORES DE VOLUMES ENVOLVENTES. Mauricio Hofmam

5 Frustum culling em GPU

Operações Booleanas na Modelagem por Pontos

Um método de sobreposição de mapas mais eficiente para a TerraLib

Algoritmos e estruturas espaciais

Universidade Estadual do Oeste do Parana - UNIOESTE Jhonata R.de Peder Marcelo Schuck

Survey de técnicas. detalhadas: Análise e Comparação

Introdução à Computação Gráfica

INF 2063 Tópicos em CG III

Aplicação de Tags em Objetos de Sistemas de Visualização em Tempo Real

INF 2063 Visualização de Modelos Massivos

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

INF 2063 Visualização de Modelos Massivos Trabalho de Pesquisa

Métodos Numéricos para Geração de Malhas SME0250. Poligonização. Afonso Paiva ICMC-USP

Triangulação Mapeamento em Viewport Modelação Geométrica

INF2610 Renderização em Tempo Real. Waldemar Celes. 23 de Março de 2017

INSTITUTO NACIONAL DE PESQUISAS ESPACIAIS PROGRAMA DE PÓS-GRADUAÇÃO EM SENSORIAMENTO REMOTO DIVISÃO DE PROCESSAMENTO DE IMAGENS

Banco de dados Brasil

Determinação de Superfícies Visíveis

Implementação de um escalonador de processos em GPU

Engenharia Informática Computação Gráfica

Leapfrog Geo 3.1. Notas técnicas da versão

Computaçã. Visão Geral. Sistema Gráfico. Computação Gráfica. Pixels. Sistema Gráfico e o Frame Buffer. Introdução à Computação Gráfica

de petróleo. Um novo domínio chamado computação de propósito geral em processadores gráficos (GPGPU) surgiu quando os pipelines de gráficos de

INF 2063 Tópicos em CG III

3 Modelo de Reservatórios Naturais de Petróleo

Departamento de Matemática

3 Fundamentos. 3.1 Pipeline de renderização em OpenGL

5 Comparação e Resultados

Carlos Vinícius Sousa de Oliveira rio.br. Orientador: Prof. Marcelo Gattass

Reconstrução de cenas a partir de imagens através de Escultura do Espaço por Refinamento Adaptativo

B-tree. B-Trees. Estrutura do nodo da B-tree. Balanceamento. Disposição dos elementos ordenados na B-tree. Exemplo de uma B-tree de ordem 3

1 Introdução. I know because I must know. It's my purpose. It's the reason I'm here. (The Matrix) 1.1 Objetivos do trabalho

CAPÍTULO 4 IMPLEMENTAÇÃO COMPUTACIONAL NA SIMULAÇÃO DE CORRIDAS DE DETRITOS

GEOPROCESSAMENTO SIAD,

Transcrição:

Visualização de terrenos em GPU Leonardo Martins { lmartins@inf.puc-rio.br} Disciplina: Visualização de Modelos Massivos Professor: Alberto Raposo

Sumário Introdução Objetivos Visão geral Hierarquia de malhas Balanceamento Renderização Resultados Conclusões/trabalhos futuros Referências

Introdução Visualizar terrenos grandes de forma eficiente e com qualidade permanece sendo um grande desafio. Imagens de satélite da ordem de bilhões de amostras estão disponíveis A capacidade de processamento e armazenamento das máquinas atuais cresce na mesma proporção da capacidade de resolução dos scanners e displays Terrenos estão presentes em um grande número de aplicações computacionais, tais como GIS, jogos e simuladores de vôo. Técnicas de visualização tais como LoD (Level of Detail) e culling ajudam a reduzir o número de primitivas e a aumentar a taxa de exibição de quadros.

Introdução Propriedades desejadas em algoritmos de visualização de terrenos (Bösch et al, 2009) Suporte a LoD Renderização de alta-perfomance Exibição contínua Recuperação rápida de dados Armazenamento compacto Acesso direto aos dados Simplicidade Pré-processamento rápido

Objetivo Implementar através da GPU um visualizador de terrenos Taxas de exibição aceitáveis Qualidade Gerenciamento de memória GPU-Friendly High-Quality Terrain Rendering Schneider and Westermann, 2006

Visão geral Pre-processamento Divide-se o terreno em tiles e para cada um é gerado um conjunto discreto de LoDs através de uma hierarquia de malhas (quad-tree) Execução Não é feita nenhuma re-triangulação de malha Reduzida a necessidade de largura de banda (menos triângulos)

Hierarquia de malhas Um dado campo de alturas H: N² Z pode ser aproximado por uma malha triangular sobre um domínio 2D. A superfície define uma reconstrução H de H. A qualidade da reconstrução pode ser medida através de uma métrica de erro que se estendem por todo o domínio espacial δ: R x R R A hierarquia é dita aninhada em relação à triangulação O triângulo no nível i está inteiramente contido no de nível i+1 Dessa forma, tal hierarquia pode ser inteiramente gerada por uma quadtree

Hierarquia de malhas Para cada nó da árvore, verifica-se a necessidade de subdivisão através do seguinte critério Se o desvio padrão das alturas dos pontos contidos no nó for maior do que um valor s d préestabelecido, subdivide o nó Caso contrário, trata-se de um nó folha

Hierarquia de malhas

Balanceamento Uma quadtree é dita balanceada se quaisquer dois quadrados vizinhos diferem no máximo de um fator dois; desta forma em uma quadtree balanceada, quaisquer duas folhas cujos quadrados são vizinhos, tem profundidades diferindo no máximo de 1. Não balanceada Balanceada

Balanceamento Verificar se um quadrado s precisa ser dividido 1. Obter os vizinhos norte, sul, leste, oeste. 2. Dado um quadrado S verificamos seu vizinho norte por exemplo. 3. Verificamos se é folha 3.1. Caso negativo, verificamos os filhos cujos lados sejam adjacentes ao lado do quadrado S e verifica se são folhas. Caso negativo, divide-se S e acrescentam os quatros filhos na lista para ser analisados. 4. Caso o vizinho norte não satisfaça as condições para divisão de S, tomam-se os demais vizinhos.

Geração de Malhas Malha obtida com quadtree não balanceada Malha obtida com quadtree balanceada

Renderização A hierarquia de malhas permite que os tiles sejam enviados progressivamente a GPU Na GPU, rendering de tempo real em alta qualidade é realizado através de uma estrutura de dados apropriada Ao mesmo tempo, a CPU realiza o frustum culling e os cálculos de LoD para cada tile

Renderização

Renderização Para cada tile, calcula-se o bounding box para operações de frustum culling Para cada quadro, tiles visíveis são ordenados em ordem de profundidade para aproveitar o teste de profundidade anterior e evitar sobredesenhos Para cada tile visível, o LoD apropriado é computado via CPU.

Renderização Para achar o LoD adequado para cada tile, utilizou-se uma métrica linear basada na distância da câmera até o centro do tile LoD = ( LevelMaximo 1)*( dis tan cia * dis tan ciamaxima) dis tan ciamaxima

Implementação Implementação da malha hierárquica através de uma quadtree balanceada Dado um nível da hierarquia, retorna a malha correspondente Divisão do dado em tiles Cada tile representado por uma quadtree Formato binário para armazenamento em disco Implementação em GPU Linguagem Cg NVIDIA GeForce 9600 GT

Implementação Para evitar descontinuidades entre os tiles, usou-se a informação de altura fornecida pelo dado completo, de maneira que pontos coincidentes da quadtree tenham sempre o mesmo valor de z.

Resultados G. Canyon, AZ (16k x 16k) 4x4 5x5 6x6 7x7 tempo 1min 16 s 1 min 14 s 1 min 15 s 1 min 35 s FPS 5 9 7 7

Resultados G. Canyon, AZ (16k x 16k)

Resultados

Resultados - Grand Canyon, AZ (4096 x 2048)

Conclusões A criação de uma hierarquia a partir dos pontos do mapa de altura permite um refinamento adaptativo que permite maior eficiência na visualização desse mapa Entretanto, diversas melhorias podem ser implementadas no presente trabalho de maneira a acelerar o processo de rendering de dados cada vez maiores, assim como aumentar a qualidade da visualização Implementação do LoD contínuo Gerenciamento de memória eficiente para reduzir o tempo de acesso a disco Investigar outras métricas para determinar o LoD de um tile Cálculo de normais e iluminação na GPU

Referências GPU-Friendly High-Quality Terrain Rendering. Schneider and Westermann, 2006 M. de Berg, M. van Kreveld, M. Overmars, O. Schwarzkopf, Computational Geometry: Algorithms and Applications, Springer-Verlag, 1997. RASTeR: Simple and Efficient Terrain Rendering on the GPU. Bösch, Goswami and Pajarola, 2009. http://www.vterrain.org/lod/papers/ http://lodbook.com/terrain/