收藏 分享(赏)

IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc

上传人:fmgc7290 文档编号:7117975 上传时间:2019-05-06 格式:DOC 页数:6 大小:459.50KB
下载 相关 举报
IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc_第1页
第1页 / 共6页
IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc_第2页
第2页 / 共6页
IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc_第3页
第3页 / 共6页
IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc_第4页
第4页 / 共6页
IMPA–Instituto de Matemática Pura e Aplicada Estrada Dona Castorina, 110–22460320 Rio de Janeiro.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、Operaes Booleanas na Modelagem por PontosHeloisa Reis Leal1, Waldemar Celes2, Luiz Velho11IMPA Instituto de Matemtica Pura e AplicadaEstrada Dona Castorina, 110 22460-320 Rio de Janeiro, RJ2Departamento de Informtica Pontifcia Universidade Catlica do Rio de JaneiroRua Marqus de So Vicente, 225, Gvea

2、 22453-900 Rio de Janeiro, RJ, celesinf.puc-rio.br, lvelhoimpa.brAbstract. This article presents an overview of point-based representation and of two recent works that explore interactive boolean operations on point-based models: the work by Adams and Dutr and the work by Pauly et. Al Also presents

3、the implementation of the algorithm proposed by Adams and Dutr with some improvements, and compares this implementation with the work by Pauly et. al Resumo. Este artigo apresenta uma breve viso de modelagem por pontos e de dois trabalhos que exploram as operaes booleanas neste tipo de modelagem: o

4、trabalho de Adams e Dutr e o trabalho de Pauly et. al. Apresenta tambm a implementao do algoritmo proposto em Adams e Dutr com algumas melhorias e uma comparao com o mtodo de Pauly et. al1. IntroduoA modelagem por pontos comeou a ser largamente explorada nesta dcada e trata-se de uma rea muito promi

5、ssora em computao grfica dadas s vrias e grandes vantagens em relao aos outros tipos de representao como malhas poligonais. Dentre as principais vantagens temos: grande simplicidade e flexibilidade, boa performance, robustez. Mas, o fator que mais impulsionou o seu grande desenvolvimento nesta dcada

6、, que ela a melhor opo para tratar os dados de sada de equipamentos de aquisio de modelos 3D. O uso destes equipamentos tem aumentado muito, sua tecnologia tem progredido bastante e eles tm se tornado mais baratos. A tendncia que o uso destes equipamentos se torne o mais utilizado meio de obteno de

7、modelos 3D. No trabalho com modelos 3D, freqentemente so usadas as operaes booleanas, que so operaes de unio, interseo ou diferena para criar novos modelos ou para alter-los. A simplicidade da representao por pontos permite que as operaes booleanas sejam realizadas com facilidade se compararmos com

8、a realizao destas em outros tipos de representao. Dois recentes trabalhos exploram estas operaes na modelagem por pontos: o trabalho de Adams e Dutr2 e o trabalho de Pauly et. al3. As contribuies dadas por este trabalho so: um breve viso sobre modelagem por pontos; apresentao dos trabalhos de Adams

9、e Dutr e do trabalho de Pauly et. al.; propostas de melhorias ao algoritmo proposto por Adams e Dutr e a comparao dos mtodos de Pauly e de Adams e Dutr.2. Modelagem por PontosUm modelo por pontos representa um objeto atravs de seu contorno. um tipo de representao B-Rep (Boundary Representation). Est

10、e contorno consiste em uma superfcie 2D posicionada no espao 3D. Na modelagem por pontos, ela representada por um conjunto de pontos 3D que so uma amostragem dos (infinitos) pontos que formam a superfcie contnua (Figura 1a). Figura 1: a) Modelo por pontos e sua visualizao b) surfels na superfcieEste

11、s pontos so denominados surfels e podem conter, alm da posio 3D, outras informaes como cor e coordenadas de textura. Se a amostragem no for uniforme, o surfel contm a informao do raio de alcance que o raio de um disco cujo centro a posio do surfel. O surfel pode tambm conter o vetor normal superfcie

12、 e assim o surfel pode ser visto como um disco orientado (Figura 1b). Esta amostragem pode ser obtida por um processo de aquisio que consiste em obter uma amostragem de pontos da superfcie do objeto real por meio de equipamentos como, por exemplo, o scanner 3D. Este processo pode ser dividido em trs

13、 partes: aquisio da geometria, aquisio da textura e correo de falhas da aquisio (a aquisio da geometria deixa freqentemente buracos no modelo devido a rudos no processo ou impossibilidade de aquisio de determinadas partes de uma superfcie). Para visualizao de um modelo por pontos, a idia inicial foi

14、 construir uma malha de polgonos a partir dos surfels e renderiz-la. Mas esta construo de malhas a partir dos surfels um processo muito caro e lento, principalmente para modelos complexos. Na tentativa de obter uma visualizao interativa esto sendo estudadas tcnicas que utilizam surfels como primitiv

15、a de visualizao. Segundo estas novas tcnicas, a visualizao do modelo por pontos pode ser dividida nas seguintes etapas: projeo em perspectiva de cada ponto do modelo na tela (anlogo projeo de vrtices dos tringulos na malha triangular); processo de shading realizado para cada ponto visvel; e por ltim

16、o, a imagem deve ser reconstruda sem buracos, pois podem haver pixels que no “receberam” projeo de nenhum ponto.3. Operaes Booleanas com PontosFigura 2: a. objetos A e B b. A U B: Af + Bf c. A B: Af + Bd d. A B: Ad + BdSejam A, B(Figura 2), objetos 3D slidos modelados por pontos, temos os seguintes

17、elementos: Af (superfcie de A que est fora de B); Ad (superfcie de A dentro de B); Bf (superfcie de B fora de A); Bd (superfcie de B dentro de A). O resultado das operaes booleanas entre A e B esto mostradas na Figura 2. Lembrando que estas superfcies so conjuntos de surfels, para determinar os elem

18、entos acima necessria a classificao de um surfel (que pode se resumir classificao de um ponto que o seu centro) de uma superfcie como “dentro“ ou “fora“ de um outro modelo. Tanto o mtodo de Pauly como o de Dutr utilizam a seguinte regra para esta classificao (que chamamos neste trabalho de Regra 2):

19、 Regra 2: Dado um ponto x qualquer, um volume V determinado por uma superfcie de contorno S, uma amostragem P da superfcie S, um ponto p P que a amostra mais prxima a x, um vetor np normal S em p e orientado para fora de S, temos que: (x p) np 0 x V .Ou seja, para classificar um ponto x em relao a u

20、m modelo, verificamos o produto interno entre a normal em p (surfel mais prximo a x) e o vetor (x - p): se este produto interno for maior que zero, x no pertence ao volume V e ser classificado como “fora“; seno ser classificado como “dentro“. Mais informalmente: se a normal em p apontar para a direo

21、 oposta a x, x ser classificado como “dentro“, seno “fora“.4. Mtodo de PaulyO modelo de Pauly uma estrutura hbrida de pontos com a representao implcita Moving Least Squares - MLS. Esta estrutura usada para fazer operaes booleanas, e tambm operaes de free-form (no abordadas neste trabalho). Para oper

22、aes booleanas, a representao MLS permite que a curva de interseo entre os modelos seja reconstruda e surfels sejam colocados nesta. O algoritmo classifica surfels de um modelo como “dentro” ou “fora” de outro modelo. Pauly estende esta classificao para modelos que no so slidos. Ele considera que mes

23、mo um modelo no slido divide o espao da cena (espao em que se encontra o modelo) em dois sub-espaos: dentro (os vetores normais apontam para direo oposta a este sub-espao) ou fora do modelo (os vetores normais apontam para este sub-espao). Para determinar esta classificao, Pauly utiliza a Regra 2, p

24、esquisando o surfel mais prximo. Para pesquisa do surfel mais prximo, o mtodo usa a estrutura kd-tree e tambm o algoritmo ANN e uma esfera que contm pontos com a mesma classificao.5. Mtodo de Adams e DutrEste mtodo utiliza uma octree que subdivide o espao do modelo em trs: fora, dentro ou no contorn

25、o do modelo. Estes espaos so determinados pela classificao dos ns da octree a partir da Regra 2 acima citada. Figura 3: a) quadtree classificada b) n subdividido c) tratamento da aresta viva criada uma octree para cada modelo. Os ns da octree so, ento, classificados como “dentro”, “fora” e “contorno

26、” (n que contm surfels). O n vazio classificado por um de seus vizinhos. Se s possui vizinhos vazios, ele fica com a classificao destes, seno o n classificado de acordo com o surfel do n vizinho que est mais prximo ao n a ser classificado. Se a normal deste surfel aponta para o n vazio a ser classif

27、icado, ento ele classificado como “fora”, seno ele classificado como “dentro”. Em geral, os ns “contorno” so subdivididos em trs partes: uma que est fora do modelo, uma que est dentro do modelo e uma terceira que contm os surfels (Figura 4 b). Para classificar A em relao a B, inicialmente feita uma

28、avaliao da posio de A em relao a B. A e B podem estar nas seguintes situaes: A no intersecta B; A intersecta apenas ns “fora” de B; A intersecta apenas ns “dentro” de B; A intersecta ns “fora” e ns “dentro” de B. No primeiro e no segundo caso, todos os surfels de A so classificados como “fora”; no t

29、erceiro caso, como “dentro” e no quarto caso, temos que descer a rvore classificando seus ns filhos.Os surfels de A que intersectam surfels de B so classificados como “interseo”. Se eles no forem includos no modelo resultado, o slido resultado ter buracos. Se eles forem includos sem algum tratamento

30、, eles no representaro adequadamente a regio. O tratamento de interseo proposto por Adams e Dutr no s evita os buracos, mas tambm cria uma forma de renderizao de “arestas vivas“. A colocao de vrios pequenos surfels na regio da interseo permite esta correta renderizao das “arestas vivas”. Desta forma

31、 o problema das “arestas vivas“ resolvido na modelagem. (Figura 3c).6. Melhorias Propostas e ResultadosPara este trabalho, usamos o mtodo de Dutr e propomos as melhorias: fazemos a classificao da octree durante a sua criao; a classificao da octree foi otimizada classificando-se os cantos dos seus ns

32、 como dentro ou fora do modelo.Este algoritmo foi implementado na forma de um plugin para o software PointShop 3D. O plugin foi desenvolvido na linguagem C e no sistema operacional Windows. Os testes foram feitos em um PC x86 Family 6, 261600 KB de RAM, sem placa grfica; sistema operacional Windows

33、2000. A Figura 4 mostra o resultado das operaes de unio, interseo e diferena. A Tabela 1 mostra os tempos de processamento.Figura 4-Modelo do PointShop Igea e resultado da unio, interseo e diferena.OperaoCriao das Octrees (seg) Classificao (seg) Criao do resultado (seg)Total (seg)Unio 3,9375 1,324 1

34、,8925 7,154Interseo 3,8585 1,585 0,9547 6,3982Diferena 3,99875 1,504 1,729 7,29475Tabela 1- Mdia dos tempos de processamento para as operaes com duas Igeas7.Comparao entre os dois mtodos e conclusoEm termos de tempo de processamento, comparamos o plugin de Pauly com o nosso plugin e verificamos empi

35、ricamente que os dois mtodos apresentam tempos bastante similares. Entretanto, o tempo de processamento do algoritmo aqui implementado ainda pode ser melhorado com o uso do mtodo TINN (que foi proposto em Adams) e com uma otimizao no uso de octrees (Sara F. Frisken citado em 1).Em termos conceituais

36、, vamos fazer a comparao do uso do que chamamos aqui de Regra 2, do tratamento de interseo, e do tratamento de “arestas vivas”. Aparentemente os dois algoritmos so bastante parecidos, um usa octrees e o outro usa kd-tree. Mas existe uma diferena conceitual entre dois que merece ser destacada. O algo

37、ritmo aqui implementado (mtodo de Dutr) usa a Regra 2 para classificao dos ns de uma octree e armazena esta octree classificada. Assim na maioria dos casos no ser necessrio encontrar o surfel mais prximo para classficao. O uso desta octree classificada levanta uma questo que no foi citada no trabalh

38、o de Adams e Dutr que a proximidade desta estrutura (armazenada) de octree classificada com uma representao volumtrica do objeto. Sendo assim, esta estrutura pode ser aproveitada para outras funes alm da classificao dos surfels. Por exemplo, podemos ter uma aproximao do volume de uma cena, somando o

39、s volumes aproximados dos modelos que a compem. Outra importante diferena entre os dois trabalhos que o mtodo de Pauly aplica-se a modelos slidos ou no slidos, enquanto que o mtodo de Adams e Dutr aplica-se somente a modelos slidos.Quanto ao tratamento de interseo, em termos de visualizao todos os d

40、ois resolvem bem o problema. Entretanto, o tratamento de Adams e Dutr no depende da renderizao sendo, portanto, mais portvel. Alm disso, uma desvantagem do mtodo de Pauly o uso da representao implcita MLS do objeto para obter os pontos exatamente na curva de interseo, o que torna o tratamento de int

41、erseo mais complexo e no traz vantagem significativa para este tratamento de interseo.Conclumos ento, que o mtodo de Adams e Dutr apresenta as seguintes vantagens em relao ao de Pauly: a estrutura de octree classificada, alm de ser usada para classificao, fornece informaes adicionais como volume apr

42、oximado do objeto; o tempo de processamento no mtodo de Adams e Dutr tende a ser melhor que no mtodo de Pauly, se implementadas as melhorias citadas e se colocssemos em considerao o uso da representao implcita MLS; o tratamento de interseo de Adams e Dutr apresenta a vantagem da portabilidade, ou se

43、ja, ir funcionar independente do algoritmo de renderizao utilizado. E as vantagens do mtodo de Pauly em relao ao de Adams e Dutr: a colocao de surfels exatamente na curva de interseo e a possibilidade de trabalhar com modelos slidos ou no slidos.Referncias1 LEAL, HELOISA REIS (2004). Operaes Boolean

44、as em Modelagem por Pontos. Dissertao de Mestrado, Departamento de Informtica/PUCRio.2 ADAMS, B.; DUTR, P. Interactive Boolean Operations on Surfel-Bounded Solids. Proceedings of SIGGRAPH 2003, San Diego, USA, 2003.3 PAULY, M.; KEISER, R.; KOBBELT, L.; GROSS, M. Shape Modeling with Point-Sampled Geometry. SIGGRAPH 2003, Computer Graphics Proceedings, Annual Conference Series. ACM Press / ACM SIGGRAPH, 2003.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报