An Interactive System for Heterogeneous 3D Volumetric Data Visualization
|
|
- Henry Chapman
- 5 years ago
- Views:
Transcription
1 The 5th International Conference on Computer Science & Education Hefei, China. August 24 27, 2010 ThP13.10 An Interactive System for Heterogeneous 3D Volumetric Data Visualization Huanhuan Xu 1,2, Wuyi Yu 3,LiWei 3, Ning Zhang 3, and Xin Li 1,2,* 1 Electrical & Computer Engineering,Louisiana State University,Baton Rouge, LA 70803, USA 2 Center for Computation & Technology,Louisiana State University,Baton Rouge, LA 70803, USA 3 Department of Automation, Xiamen University, Xiamen, Fujian ,China * xinli@lsu.edu Abstract With the development of 3D scanning and imaging technologies, large amount of 3D surface and volumetric geometric data have been routinely collected these days. Compared with surface data, volumetric data are usually equipped with rich material, texture, intensity, and other heterogeneous structural information in their interior regions. Effectively visualizing such information can be very important since it facilitates many data analysis tasks. This paper studies the effective visualization of heterogeneous volumetric data which can have not only geometry but also other equipped scalar fields. We have developed an interactive system that can efficiently visualize the geometry and scalar field simultaneously via different cross-sections. A simple data structure used for handling large-scale 3D data is presented. Vector fields on the volumetric data such as 3D mapping, B-Spline fitting and fitting error field can also be effectively visualized in our framework. Effectiveness of our system is demonstrated and compared with existing volumetric data rendering system. Index Terms Volumetric Model Visualization, Volumetric Mapping Visualization, B-Spline Fitting Visualization, Tetrahedral Mesh Cutting. I. INTRODUCTION The inside compositions of the object play an important role for people to understand the object. Technology, at its most basic level, seeks to understand how the world behaves. Over the past three decades, computer graphics methods have fueled a growing understanding of physical phenomena, which in true have helped scientists and engineers substantially improve the quality of life. Since some objects have too complicated structures and it is difficult for people to analyze the behaviors of these objects, the visualization techniques can help human better observe and understand them. The rapid advancement of 3D scanning techniques makes it easier to acquire massive 3D data nowadays. 3-D scientific visualization has made a major impact on the display of properties or behaviors of these data. It is a reference work for professionals who use computing techniques to simulate/analyze data, and for the academic and software communities who support them. Many engineering design and analysis applications share common components of modeling, analysis, and the visualization of results. These terms describe a process which is as shown in Figure 1. In such an environment, the analysis itself may govern geometric changes, and the results can be visualized as the analysis proceeds. Within this Fig. 1. The current trend towards an integrated design, analysis and visualization environment framework, one can still describe the individual components of this analysis cycle as modeling, analysis or visualization activities [6]. To produce things better, faster, and less expensively than before, visualization tools have evolved to help scientists and engineers understand more about how things behave. In the process we have gained an insight into a whole new realm of information which has heretofore been hidden from us. In this paper, we develop an effective way to visualize heterogeneous 3D volumetric models and their application, such as mapping and fitting. Our algorithm works for general polygonal meshes, although in the remaining part of paper we only illustrate the algorithm on tetrahedral and hexahedral meshes. The main contributions of this work is that (1) We build an efficient mesh representation data structure for interactive visualization of large-scale 3D heterogenous data. (2) Upon our data structure, we develop a real time rendering system, where given a reference point and a normal direction, the corresponding cross-section is visualized to illustrate interior structure of a volumetric model. (3) The cut regions are triangulated and interpolated smoothly and efficiently, so that scalar fields and vector fields can be nicely illustrated by color-encoding or texture mapping. II. ALGORITHM DESIGN In this section, we will give the detail information for our algorithm according to the data structure we used and the processing steps of the algorithm /10/$ IEEE 1745
2 A. Data structure A well know data structure for representing tetrahedral meshes is the half-face structure, where vertices, half-edges, edges, half-faces, faces, and tetrahedra elements are linked together for efficient topological and geometric local traversals. However, half-face data structure stores about 3 to 4 times larger storage space to trade for efficiency in geometric processing. For large-scale models, it costs a lot of space as well as time to visualize different cross-sections using this structure. Meanwhile, main functional of the viewer is just to efficiently retrieve different regions of the model, without the necessity of frequent updating. A much simpler data structure is adequate for our application. We are only saving vertices position and their relationship with their tetrahedra. Using KDtree to organize all the tetrahedrons of the object improves the efficiency of tetrahedral traversal. B. Get a Cutting Plane We design a user-friendly GUI for the cross-section visualization. On this GUI, users can chose the coordinates of the original point and the normal which can determine a cutting plane uniquely. When we get the original point, expressed as p 0 =(x 0,y 0,z 0 ) and the normal direction n =(a, b, c) of a cutting plane, the cutting plane can be formulated as a(x x 0 )+b(y y 0 )+c(z z 0 )=0, (1) C. Tetrahedron Classification A cutting plane passing through a volumetric model represented by a tetrahedral mesh, all tetrahedra can be classified into three categories: 1) Below the cutting plane; 2) above the cutting plane); and 3) intersected by the cutting plane. For tetrahedra type 1), they form several connected components and we will directly render their boundary triangles. For tetrahedra type 3), we will render part of them after the intersection computation. Simply, we can put the coordinates of vertexes form each tetrahedron into the left side of the equation (1). By checking which sides all tetrahedral vertices locate, with respect to the cutting plane, we can straightforwardly get the type of each tetrahedron. However, in common situation, there are enormous tetrahedra in a tetrahedral mesh representation of a big volumetric model. If whenever a cutting pane is given, or is adjusted, we need to iterate through all the tetrahedra to check the type then determine the rendering strategy, the system will be very slow due to such a large computational burden. To improve the efficiency, we design a preprocessing procedure for all tetrahedra so that the type of tetrahedrons can be determined faster. The system speed can significantly improve. First, we compute the bounding sphere BS i for each tetrahedron T i. The bounding sphere of a tetrahedron is a hyper-sphere that completely encompasses the tetrahedron. The main motivation for the usage of bounding sphere is due to the following observations: If a tetrahedron T i intersects with a plane, its bounding sphere BS i must intersect with the plane as well. The tetrahedron is type 3 in this case. If a bounding sphere BS i intersects with a plane, the intersection of tetrahedron it encompasses may not. So when we find all intersected spheres, we need to further determine the type each tetrahedron. If a bounding sphere BS i doesn t intersect with a plane, the tetrahedron it encompasses will not intersect with the plane either. The tetrahedron is either type 1 or 2. In this paper, we simply use the mean of the coordinates of four vertices in each tetrahedron as the center C i of bounding sphere. And the radius R i of bounding sphere is the max distance from vertices to center. Fig. 2 shows an example of bounding sphere. Fig. 2. This figure shows a tetrahedron with its bounding sphere. The red point is the center of bounding sphere, and the green line is the radius of the bounding sphere Second, we compute the item D i of each bounding sphere BS i. and D i =(ax i + by i + cz i + d)/ a 2 + b 2 + c 2, (2) d = (ax 0 + by 0 + cz 0 ), (3) where x i,y i,z i is the coordinates of sphere center. As it shows in the equation, D i means the distance from the sphere center of BS i to the cutting plane. And we could get the side of sphere center by D i : { inside D i 0 (x i,y i,z i )is (4) outside D i > 0 Only using D i is not enough to know the side of whole bounding sphere. We define two other items K1 i and K2 i for each bounding sphere: and K1 i = D i R i, (5) K2 i = D i + R i, (6) When K1 i > 0, the bounding sphere is outside the cutting panel; if K2 i < 0, the bounding sphere is inside the cutting panel. Here we need two KD trees for getting the tetrahedrons of type 1 and 2 robustly. We insert all the tetrahedrons into KD tree T 1 and T 2 according to their value of K1 i and K2 i, By traveling the nodes of right sub-tree in T 1 whose K1 i value is close to 0, we can easily get all nodes outside the cutting panel. We save these tetrahedrons into a set S out.in 1746
3 the same way, we can get the inside tetrahedrons from T 2 and put them into set S in. We define another set S all including all the tetrahedrons in the model. The set S inter contains the tetrahedrons had the possibility of intersection and it can be described as: shows, when we find edge AD, we can find the next face ACD using the same method. We mark the intersection B,C,D along this path. Thus we can get a section B C D. S inter = S all S in S out, (7) The further calculation of intersecting points for S inter will be described in following step. Our method will have a good performance in real time operations with the user only translating the cutting plane later. When user move the panel along normal direction, and the changed cutting panel P is: a(x x 0 )+b(y y 0 )+c(z z 0 )=Δd, (8) and D i of each bounding sphere is: D i = D i Δd/ a 2 + b 2 + c 2, (9) changed K1 i, K2 i should be: K1 i = D i R i Δd/ a 2 + b 2 + c 2, (10) K2 i = D i + R i Δd/ a 2 + b 2 + c 2, (11) In the classifying step, we do not need to rebuild KD trees according to the new value. For getting S out, the condition K1 i > 0 equals K1 i > Δd/ a 2 + b 2 + c 2, and we can get the outside tetrahedrons by traveling the right sub-tree of node whose value is closest to Δd/ a 2 + b 2 + c 2 in T 1 ; for S in, the condition K2 i < 0 equals K2 i < Δd/ a 2 + b 2 + c 2, and we can get the outside tetrahedrons by traveling the left sub-tree of node whose value is close to Δd/ a 2 + b 2 + c 2 in T 2.So we can easily get the classification of tetrahedra by traveling original KD trees, rather than rebuild the trees; it becomes more efficient. D. Computing Intersection In the classification step, we get a classification of all tetrahedra in the model. And we get a set of tetrahedra which is probably intersected. We further check their intersection situations by putting the coordinates of the vertexes it contains into the left side of formula 1. If the values are all larger than 0, the tetrahedron is outside the cutting plane. Meanwhile, if the values are all less than 0, the tetrahedron is inside the cutting plane. In the case of the tetrahedrons whose vertexes values are not all larger or less than 0, then tetrahedron is intersected by the cutting plane. We need a intersection computation process for these tetrahedra. Suppose a tetrahedron is called ABCD. Any three of the four vertices build a face of the tetrahedron. We get one face arbitrarily, for example, face ABC. We estimate its location relationship with the cutting plane. When we find the first edge that gets intersected by the cutting plane, edge AB for example, we call the intersection point B. Then turn to the next face ABD by rotate around the axis of edge AB. As the Figure 3 Fig. 3. The intersection points for one tetrahedron. (a)the original tetrahedron (b) three intersection points for the tetrahedron (c) four intersection points for the tetrahedron In this step, we must compute the points of intersection, like B,C,D. It is computing intersection of a line and a plane. From the two vertices of an edge, we can get the equation of the line. Compute the equation of line and the equation of plane together, we can get the intersecting point. Once the section B,C,D is computed, we need to make the triangle coherently oriented. The expression is used: n(b D C ) n(cuttingplane) > 0. If the normal of the section satisfy the expression, it keeps unchanged. Otherwise, we flip it over. There are two cases on intersections when the bounding sphere is intersected by the cutting plane: three intersection points and four intersection points. We discussed the threepoint-intersected case above, while the four-point-intersected case can be handled similarly, only one more edge needs to be checked. Tetrahedra are checked by searching the KD-tree. And we get vertices of the intersected planar triangle mesh, and they together compose the tessellation of the entire crosssection, for the subsequent visualization. III. IMPLEMENTATION AND DISCUSSION We implemented our algorithm under Microsoft Visual Studio platform using FLTK for GUI design, and using OPENGL for graphics [1]. Time complexity analysis. When given a cutting plane, we arrange all tetrahedral in the KD-tree which takes an O(n log n) offline preprocessing. When translating the cutting plane, we find all intersected tetrahedral/hexahedral cells in the KD-tree which takes O(log n) time. For the intersected tetrahedron or hexahedron, our algorithm takes O(1) operations to get the polygon on the intersection plane. Therefore, extracting the entire polygonal mesh for rendering on the intersection plane needs O(k) time, where k is the number of intersected cells. In whole, our complexity of intersection computation is reduced to O(logn + k). IV. EXPERIMENTAL RESULTS For input tetrahedron data, we use color coding scheme to visualize these scalar(vector) field. One way we get the scalar(vector) field is computer distance fields. Another way is to generate noise model for tetrahedron data. In the following, 1747
4 we applied our algorithm into tetrahedron mapping and tetrahedron fitting. When we handle tetrahedron mapping, we use distance field as our scalar field. When we handle tetrahedron fitting, we use noise generating model to visualize. For models represented by hexahedral meshes, they can be cut using a similar scheme. Distance field. Let S be a surface in R 3. Then the distance field of a surface S is a scalar function D S : R 3 R such that for all p R 3, D s (p) =sign(p).min{d(p, q) q S}, where { 1 if p inside, sign(p) = +1 if p outside. In other words, D s tells for any point p the distance to the closet point on the surface S [2]. A. Heterogenous 3D Volumetrical Data In this section, we applied our algorithm to visualize heterogenous 3D volumetrical data directly, and using distance filed as our scalar field. Figure 4(a,b) shows using our algorithm to visualize Omontondo model with different cutting-plane. Figure 4(d,e) shows using our algorithm to visualize Sphere model with different cutting-plane. We also compare our algorithm with the previous algorithm which is based on volume grid, Figure 4(c,f) shows using previous algorithm to visualize the Omontondo and sphere objects. Through this comparison, it can be seen that our algorithm has following advantages: 1. In the previous algorithm we can only cut the objects along with X-axis, Y-axis and Z-axis. While in our algorithm, the users can define random cutting plane describe to a normal and an original point. This improvement can help us to get more information from 3D objects. 2. The biggest disadvantage of method based on volume grid is the disconnect along edge. While in our new algorithm, it avoid this problem very successful. B. Mapping 3D Volumetrical Data In this section, we applied our algorithm to visualize 3D mapping effects. For the volumetric mapping method, we adopt the algorithm from [5], [4], [3] which use MFS to do volumetric mapping and get accurate and efficient results. Figure 5 shows the original 3D model, and we are going to map a 3D cube to a 3D head. The number of vertices of these two data is 500K. Figure 6 shows the mapping effects using our algorithm. The Figure 6(a) shows the original field of the cube, the red means the larger value, the blues means the smallest value. The color bar on the top of the cube shows the range of value.the Figure 6(b) shows the distances of the head model. Since we map the cube to the head, then in the cube we could see a head distance field. Figure 6(c) shows using our algorithm to visualize the mapping effect, which express the mapping effect very clearly and pretty. Fig. 5. The original cube model and head model (a)the cube model (b) The head model C. Fitting 3D Volumetrical Data In this section, we apply our algorithm to the visualize B- Spline fitting effect which requires highly precise. We generate noise vector(scalar)field for head model (500K). Figure 7(a)(d) shows the original field for noise head model with different cutting-plane. Figure 7(b)(e) shows the fitting results using B- spline method to fit original noise head model. Figure 7(c)(f) shows the error field of this fitting. Through our visualization method, it is easy for us to analyze which part has larger fitting error (the red means bigger value, the blue means smaller value). For example, in here, we could see the ear of the head has larger error value than other part. Then we could refine the ear part to improve the whole fitting effect. V. CONCLUSION We have presented an effective system to visualize heterogenous 3D volumetric data. 3D volumetric data and their scalar/vector fields are visualized via sequential cross-sections decided by users interactively. Our simple data structure and clipping/interpolating algorithm guaranties the efficiency of this system. The developed system can be a useful tool for many 3D heterogeneous data processing and modeling tasks. ACKNOWLEDGMENT Volumetric data are from Stanford Shape Repository and Aim@Shape Repository. This work is supported by Louisiana Board of Regents Research Competitive Subprogram (RCS) LEQSF( )-RD-A-06 and PFund: NSF(2009)-PFUND Huanhuan Xu is supported in part by the Mark and Carolyn Guidry doctoral fellowhsip from Electrical and Computer Engineering Department of LSU. REFERENCES [1] D.Shreiner, M. Woo, J.Neider, and T.Davis. OpenGL(R) Programming Guide: The Official Guide to Learning OpenGL(R). Addison-Wesley Professional; 6 edition, [2] E. Langetepe and G. Zachmann. Geometric Data Structures for Computer Graphics. A K Peters, Ltd. Wellesley, Massachusetts, [3] X. Li, X. Guo, H. Wang, Y. He, X. Gu, and H. Qin. Harmonic volumetric mapping for solid modeling applications. In Proc. ACM symp. on Solid and physical modeling, pages , [4] X. Li, X. Guo, H. Wang, Y. He, X. Gu, and H. Qin. Meshless harmonic volumetric mapping using fundamental solution methods. IEEE Trans. on Automation Science and Engineering, 6, [5] X. Li, H.H. Xu, S.H. Wan, Z. Yin, and W.Y. Yu. Feature-aligned harmonic volumetric mapping using mfs. Computer Graphics, 34, [6] R.S.Gallagher. Computer Visualization. CRC Press,
5 Fig. 4. Visualizing Omotondo model using the current system (a,b,d,e) and previous system (c,f). Fig. 6. Cube Mapping of the Max-Planck Model. (a) color-encoded distance field of polycube; (b) distance field of the Max-Planck; (c) Visualizing transferred distance field (induced by the volumetric mapping) upon the cube domain. Fig. 7. The noise fitting field for head model (a,d)the original field for head model with different cutting plane (b,e) the fitting results for head model using B-Spline (c) the fitting error field. 1749
Data Representation in Visualisation
Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have
More informationSkull Assembly and Completion using Template-based Surface Matching
Skull Assembly and Completion using Template-based Surface Matching Li Wei, Wei Yu, Maoqing Li 1 Xin Li* 2 1 School of Information Science and Technology Xiamen University 2 Department of Electrical and
More informationPhysically-Based Modeling and Animation. University of Missouri at Columbia
Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids
More informationRay Tracing Acceleration Data Structures
Ray Tracing Acceleration Data Structures Sumair Ahmed October 29, 2009 Ray Tracing is very time-consuming because of the ray-object intersection calculations. With the brute force method, each ray has
More informationComputer Graphics Ray Casting. Matthias Teschner
Computer Graphics Ray Casting Matthias Teschner Outline Context Implicit surfaces Parametric surfaces Combined objects Triangles Axis-aligned boxes Iso-surfaces in grids Summary University of Freiburg
More information9. Three Dimensional Object Representations
9. Three Dimensional Object Representations Methods: Polygon and Quadric surfaces: For simple Euclidean objects Spline surfaces and construction: For curved surfaces Procedural methods: Eg. Fractals, Particle
More informationHomework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?
Homework 1: Questions/Comments? Implicit Surfaces,, & Volumetric Data Structures Loop Subdivision Shirley, Fundamentals of Computer Graphics Loop Subdivision SIGGRAPH 2000 course notes Subdivision for
More informationCSG obj. oper3. obj1 obj2 obj3. obj5. obj4
Solid Modeling Solid: Boundary + Interior Volume occupied by geometry Solid representation schemes Constructive Solid Geometry (CSG) Boundary representations (B-reps) Space-partition representations Operations
More informationIEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 6, NO. 3, JULY
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 6, NO. 3, JULY 2009 409 Meshless Harmonic Volumetric Mapping Using Fundamental Solution Methods Xin Li, Member, IEEE, Xiaohu Guo, Member, IEEE,
More informationClipping. CSC 7443: Scientific Information Visualization
Clipping Clipping to See Inside Obscuring critical information contained in a volume data Contour displays show only exterior visible surfaces Isosurfaces can hide other isosurfaces Other displays can
More informationLecture notes: Object modeling
Lecture notes: Object modeling One of the classic problems in computer vision is to construct a model of an object from an image of the object. An object model has the following general principles: Compact
More informationTopology Preserving Tetrahedral Decomposition of Trilinear Cell
Topology Preserving Tetrahedral Decomposition of Trilinear Cell Bong-Soo Sohn Department of Computer Engineering, Kyungpook National University Daegu 702-701, South Korea bongbong@knu.ac.kr http://bh.knu.ac.kr/
More informationTiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research
Tiling Three-Dimensional Space with Simplices Shankar Krishnan AT&T Labs - Research What is a Tiling? Partition of an infinite space into pieces having a finite number of distinct shapes usually Euclidean
More informationNew Reliable Algorithm of Ray Tracing. through Hexahedral Mesh
Applied Mathematical Sciences, Vol. 8, 2014, no. 24, 1171-1176 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ams.2014.4159 New Reliable Algorithm of Ray Tracing through Hexahedral Mesh R. P.
More information13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY
13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY Lecture 23 Dr. W. Cho Prof. N. M. Patrikalakis Copyright c 2003 Massachusetts Institute of Technology Contents 23 F.E. and B.E. Meshing Algorithms 2
More informationContours & Implicit Modelling 4
Brief Recap Contouring & Implicit Modelling Contouring Implicit Functions Visualisation Lecture 8 lecture 6 Marching Cubes lecture 3 visualisation of a Quadric toby.breckon@ed.ac.uk Computer Vision Lab.
More informationData Visualization (DSC 530/CIS )
Data Visualization (DSC 530/CIS 60-0) Isosurfaces & Volume Rendering Dr. David Koop Fields & Grids Fields: - Values come from a continuous domain, infinitely many values - Sampled at certain positions
More informationProcessing 3D Surface Data
Processing 3D Surface Data Computer Animation and Visualisation Lecture 12 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing
More informationMulti-Scale Free-Form Surface Description
Multi-Scale Free-Form Surface Description Farzin Mokhtarian, Nasser Khalili and Peter Yuen Centre for Vision Speech and Signal Processing Dept. of Electronic and Electrical Engineering University of Surrey,
More informationComputer Graphics 7 - Rasterisation
Computer Graphics 7 - Rasterisation Tom Thorne Slides courtesy of Taku Komura www.inf.ed.ac.uk/teaching/courses/cg Overview Line rasterisation Polygon rasterisation Mean value coordinates Decomposing polygons
More informationSurface and Solid Geometry. 3D Polygons
Surface and Solid Geometry D olygons Once we know our plane equation: Ax + By + Cz + D = 0, we still need to manage the truncation which leads to the polygon itself Functionally, we will need to do this
More informationCPSC / Sonny Chan - University of Calgary. Collision Detection II
CPSC 599.86 / 601.86 Sonny Chan - University of Calgary Collision Detection II Outline Broad phase collision detection: - Problem definition and motivation - Bounding volume hierarchies - Spatial partitioning
More informationCS452/552; EE465/505. Clipping & Scan Conversion
CS452/552; EE465/505 Clipping & Scan Conversion 3-31 15 Outline! From Geometry to Pixels: Overview Clipping (continued) Scan conversion Read: Angel, Chapter 8, 8.1-8.9 Project#1 due: this week Lab4 due:
More informationComputing Visibility. Backface Culling for General Visibility. One More Trick with Planes. BSP Trees Ray Casting Depth Buffering Quiz
Computing Visibility BSP Trees Ray Casting Depth Buffering Quiz Power of Plane Equations We ve gotten a lot of mileage out of one simple equation. Basis for D outcode-clipping Basis for plane-at-a-time
More information9. Visible-Surface Detection Methods
9. Visible-Surface Detection Methods More information about Modelling and Perspective Viewing: Before going to visible surface detection, we first review and discuss the followings: 1. Modelling Transformation:
More informationSpherical Maze Generation
Spherical Maze Generation Xue Li 1 and David Mount 2 1 Department of Computer Science, University of Maryland, College Park echolixue@gmail.com 2 Department of Computer Science, University of Maryland,
More informationACGV 2008, Lecture 1 Tuesday January 22, 2008
Advanced Computer Graphics and Visualization Spring 2008 Ch 1: Introduction Ch 4: The Visualization Pipeline Ch 5: Basic Data Representation Organization, Spring 2008 Stefan Seipel Filip Malmberg Mats
More information1. Mesh Coloring a.) Assign unique color to each polygon based on the polygon id.
1. Mesh Coloring a.) Assign unique color to each polygon based on the polygon id. Figure 1: The dragon model is shown rendered using a coloring scheme based on coloring each triangle face according to
More informationL1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming
L1 - Introduction Contents Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming 1 Definitions Computer-Aided Design (CAD) The technology concerned with the
More informationContours & Implicit Modelling 1
Contouring & Implicit Modelling Visualisation Lecture 8 Institute for Perception, Action & Behaviour School of Informatics Contours & Implicit Modelling 1 Brief Recap Contouring Implicit Functions lecture
More informationGeneralized PolyCube Trivariate Splines
Generalized PolyCube Trivariate Splines Bo Li Department of Computer Science Stony Brook University (SUNY) Stony Brook, New York, 11790 bli@cs.sunysb.edu Xin Li Department of Electrical & Computer Engineering
More informationSurface Reconstruction. Gianpaolo Palma
Surface Reconstruction Gianpaolo Palma Surface reconstruction Input Point cloud With or without normals Examples: multi-view stereo, union of range scan vertices Range scans Each scan is a triangular mesh
More informationGeometric Queries for Ray Tracing
CSCI 420 Computer Graphics Lecture 16 Geometric Queries for Ray Tracing Ray-Surface Intersection Barycentric Coordinates [Angel Ch. 11] Jernej Barbic University of Southern California 1 Ray-Surface Intersections
More informationSimplified Mesh Generation from Renders. Thorvald Natvig
Simplified Mesh Generation from Renders Thorvald Natvig Department of Computer and Information Science (IDI) Norwegian University of Science and Technology (NTNU) Sem Sælandsvei 7-9, NO-7491 Trondheim
More information8.1 Geometric Queries for Ray Tracing
Fall 2017 CSCI 420: Computer Graphics 8.1 Geometric Queries for Ray Tracing Hao Li http://cs420.hao-li.com 1 Outline Ray-Surface Intersections Special cases: sphere, polygon Barycentric coordinates 2 Outline
More informationSpectral Surface Reconstruction from Noisy Point Clouds
Spectral Surface Reconstruction from Noisy Point Clouds 1. Briefly summarize the paper s contributions. Does it address a new problem? Does it present a new approach? Does it show new types of results?
More informationLecture 25 of 41. Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees
Spatial Sorting: Binary Space Partitioning Quadtrees & Octrees William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre Public
More informationAdvanced 3D-Data Structures
Advanced 3D-Data Structures Eduard Gröller, Martin Haidacher Institute of Computer Graphics and Algorithms Vienna University of Technology Motivation For different data sources and applications different
More informationLATEST TRENDS on APPLIED MATHEMATICS, SIMULATION, MODELLING
3D surface reconstruction of objects by using stereoscopic viewing Baki Koyuncu, Kurtuluş Küllü bkoyuncu@ankara.edu.tr kkullu@eng.ankara.edu.tr Computer Engineering Department, Ankara University, Ankara,
More informationUniversiteit Leiden Computer Science
Universiteit Leiden Computer Science Optimizing octree updates for visibility determination on dynamic scenes Name: Hans Wortel Student-no: 0607940 Date: 28/07/2011 1st supervisor: Dr. Michael Lew 2nd
More informationMeshless Modeling, Animating, and Simulating Point-Based Geometry
Meshless Modeling, Animating, and Simulating Point-Based Geometry Xiaohu Guo SUNY @ Stony Brook Email: xguo@cs.sunysb.edu http://www.cs.sunysb.edu/~xguo Graphics Primitives - Points The emergence of points
More informationIntersection of an Oriented Box and a Cone
Intersection of an Oriented Box and a Cone David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International
More informationLinear Complexity Hexahedral Mesh Generation
Linear Complexity Hexahedral Mesh Generation David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 http://www.ics.uci.edu/ eppstein/ Tech. Report 95-51
More informationProcessing 3D Surface Data
Processing 3D Surface Data Computer Animation and Visualisation Lecture 17 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing
More information2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into
2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel
More informationGeometric Representations. Stelian Coros
Geometric Representations Stelian Coros Geometric Representations Languages for describing shape Boundary representations Polygonal meshes Subdivision surfaces Implicit surfaces Volumetric models Parametric
More informationCollision Detection based on Spatial Partitioning
Simulation in Computer Graphics Collision Detection based on Spatial Partitioning Matthias Teschner Computer Science Department University of Freiburg Outline introduction uniform grid Octree and k-d tree
More informationVisualizer An implicit surface rendering application
June 01, 2004 Visualizer An implicit surface rendering application Derek Gerstmann - C1405511 MSc Computer Animation NCCA Bournemouth University OVERVIEW OF APPLICATION Visualizer is an interactive application
More informationScalar Algorithms: Contouring
Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Last Lecture...
More informationCIS 467/602-01: Data Visualization
CIS 467/60-01: Data Visualization Isosurfacing and Volume Rendering Dr. David Koop Fields and Grids Fields: values come from a continuous domain, infinitely many values - Sampled at certain positions to
More informationDiscrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Part I : Solid geometry
Discrete representations of geometric objects: Features, data structures and adequacy for dynamic simulation. Surfaces Part I : Solid geometry hachar Fleishman Tel Aviv University David Levin Claudio T.
More informationRay Tracing. Foley & Van Dam, Chapters 15 and 16
Ray Tracing Foley & Van Dam, Chapters 15 and 16 Ray Tracing Visible Surface Ray Tracing (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Ray Tracing Determine visibility
More informationRay Tracing Foley & Van Dam, Chapters 15 and 16
Foley & Van Dam, Chapters 15 and 16 (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Determine visibility of a surface by tracing rays of light from the viewer s eye
More informationHandles. The justification: For a 0 genus triangle mesh we can write the formula as follows:
Handles A handle in a 3d mesh is a through hole. The number of handles can be extracted of the genus of the 3d mesh. Genus is the number of times we can cut 2k edges without disconnecting the 3d mesh.
More informationCOMP Preliminaries Jan. 6, 2015
Lecture 1 Computer graphics, broadly defined, is a set of methods for using computers to create and manipulate images. There are many applications of computer graphics including entertainment (games, cinema,
More informationMeshes and Manifolds. Computer Graphics CMU /15-662
Meshes and Manifolds Computer Graphics CMU 15-462/15-662 Fractal Quiz Last time: overview of geometry Many types of geometry in nature Geometry Demand sophisticated representations Two major categories:
More informationGrade VIII. Mathematics Geometry Notes. #GrowWithGreen
Grade VIII Mathematics Geometry Notes #GrowWithGreen Polygons can be classified according to their number of sides (or vertices). The sum of all the interior angles of an n -sided polygon is given by,
More informationS U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T
S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T Copyright 2018 Sung-eui Yoon, KAIST freely available on the internet http://sglab.kaist.ac.kr/~sungeui/render
More informationTopological Issues in Hexahedral Meshing
Topological Issues in Hexahedral Meshing David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science Outline I. What is meshing? Problem statement Types of mesh Quality issues
More informationAlgorithms for GIS. Spatial data: Models and representation (part I) Laura Toma. Bowdoin College
Algorithms for GIS Spatial data: Models and representation (part I) Laura Toma Bowdoin College Outline Spatial data in GIS applications Point data Networks Terrains Planar maps and meshes Data structures
More informationSUMMARY. CS380: Introduction to Computer Graphics Ray tracing Chapter 20. Min H. Kim KAIST School of Computing 18/05/29. Modeling
CS380: Introduction to Computer Graphics Ray tracing Chapter 20 Min H. Kim KAIST School of Computing Modeling SUMMARY 2 1 Types of coordinate function Explicit function: Line example: Implicit function:
More informationSimulation in Computer Graphics Space Subdivision. Matthias Teschner
Simulation in Computer Graphics Space Subdivision Matthias Teschner Outline Introduction Uniform grid Octree and k-d tree BSP tree University of Freiburg Computer Science Department 2 Model Partitioning
More informationVolume Illumination and Segmentation
Volume Illumination and Segmentation Computer Animation and Visualisation Lecture 13 Institute for Perception, Action & Behaviour School of Informatics Overview Volume illumination Segmentation Volume
More informationTopics and things to know about them:
Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will
More informationAlgebraic Geometry of Segmentation and Tracking
Ma191b Winter 2017 Geometry of Neuroscience Geometry of lines in 3-space and Segmentation and Tracking This lecture is based on the papers: Reference: Marco Pellegrini, Ray shooting and lines in space.
More informationA Hole-Filling Algorithm for Triangular Meshes. Abstract
A Hole-Filling Algorithm for Triangular Meshes Lavanya Sita Tekumalla, Elaine Cohen UUCS-04-019 School of Computing University of Utah Salt Lake City, UT 84112 USA December 20, 2004 Abstract Data obtained
More informationSurgical Cutting on a Multimodal Object Representation
Surgical Cutting on a Multimodal Object Representation Lenka Jeřábková and Torsten Kuhlen Virtual Reality Group, RWTH Aachen University, 52074 Aachen Email: jerabkova@rz.rwth-aachen.de Abstract. In this
More informationChapter 4. Chapter 4. Computer Graphics 2006/2007 Chapter 4. Introduction to 3D 1
Chapter 4 Chapter 4 Chapter 4. Introduction to 3D graphics 4.1 Scene traversal 4.2 Modeling transformation 4.3 Viewing transformation 4.4 Clipping 4.5 Hidden faces removal 4.6 Projection 4.7 Lighting 4.8
More informationCS 532: 3D Computer Vision 14 th Set of Notes
1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating
More informationContouring and Isosurfaces. Ronald Peikert SciVis Contouring 2-1
Contouring and Isosurfaces Ronald Peikert SciVis 2007 - Contouring 2-1 What are contours? Set of points where the scalar field s has a given value c: Examples in 2D: height contours on maps isobars on
More informationIsosurface Rendering. CSC 7443: Scientific Information Visualization
Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form
More informationCS488. Visible-Surface Determination. Luc RENAMBOT
CS488 Visible-Surface Determination Luc RENAMBOT 1 Visible-Surface Determination So far in the class we have dealt mostly with simple wireframe drawings of the models The main reason for this is so that
More informationLecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13
Lecture 17: Solid Modeling... a cubit on the one side, and a cubit on the other side Exodus 26:13 Who is on the LORD's side? Exodus 32:26 1. Solid Representations A solid is a 3-dimensional shape with
More informationTriangle Rasterization
Triangle Rasterization Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 2/07/07 1 From last time Lines and planes Culling View frustum culling Back-face culling Occlusion culling
More informationBrain Surface Conformal Spherical Mapping
Brain Surface Conformal Spherical Mapping Min Zhang Department of Industrial Engineering, Arizona State University mzhang33@asu.edu Abstract It is well known and proved that any genus zero surface can
More informationGraphics and Interaction Rendering pipeline & object modelling
433-324 Graphics and Interaction Rendering pipeline & object modelling Department of Computer Science and Software Engineering The Lecture outline Introduction to Modelling Polygonal geometry The rendering
More informationHidden surface removal. Computer Graphics
Lecture Hidden Surface Removal and Rasterization Taku Komura Hidden surface removal Drawing polygonal faces on screen consumes CPU cycles Illumination We cannot see every surface in scene We don t want
More informationTutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass
Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass University of California, Davis, USA http://www.cs.ucdavis.edu/~koehl/ims2017/ What is a shape? A shape is a 2-manifold with a Riemannian
More informationProcessing 3D Surface Data
Processing 3D Surface Data Computer Animation and Visualisation Lecture 15 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing
More informationScalar Field Visualization I
Scalar Field Visualization I What is a Scalar Field? The approximation of certain scalar function in space f(x,y,z). Image source: blimpyb.com f What is a Scalar Field? The approximation of certain scalar
More informationOutline of the presentation
Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz Outline of the presentation My work up to now Surfaces of Building Practice
More informationMethod of taking into account constructional and technological casting modifications in solidification simulations
A R C H I V E S of F O U N D R Y E N G I N E E R I N G Published quarterly as the organ of the Foundry Commission of the Polish Academy of Sciences ISSN (1897-3310) Volume 10 Issue 4/2010 147 152 28/4
More informationPlanar Graphs and Surfaces. Graphs 2 1/58
Planar Graphs and Surfaces Graphs 2 1/58 Last time we discussed the Four Color Theorem, which says that any map can be colored with at most 4 colors and not have two regions that share a border having
More informationData Visualization (DSC 530/CIS )
Data Visualization (DSC 530/CIS 60-01) Scalar Visualization Dr. David Koop Online JavaScript Resources http://learnjsdata.com/ Good coverage of data wrangling using JavaScript Fields in Visualization Scalar
More informationThe Humble Tetrahedron
The Humble Tetrahedron C. Godsalve email:seagods@hotmail.com November 4, 010 In this article, it is assumed that the reader understands Cartesian coordinates, basic vectors, trigonometry, and a bit of
More information11/1/13. Polygon Meshes and Implicit Surfaces. Shape Representations. Polygon Models in OpenGL. Modeling Complex Shapes
CSCI 420 Computer Graphics Lecture 7 and Constructive Solid Geometry [Angel Ch. 12.1-12.3] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible,
More information8.B. The result of Regiomontanus on tetrahedra
8.B. The result of Regiomontanus on tetrahedra We have already mentioned that Plato s theory that the five regular polyhedra represent the fundamental elements of nature, and in supplement (3.D) to the
More informationGeometric Modeling in Graphics
Geometric Modeling in Graphics Part 2: Meshes properties Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Meshes properties Working with DCEL representation One connected component with simple
More informationCompression of Tetrahedral Meshes
Compression of Tetrahedral Meshes Geometry Processing CS 7960 Louis Bavoil 01/19/2006 Outline Corner Table Edgebreaker Efficiency Edgebreaker with Boundary Corner Table Two arrays of integers: V and O
More informationMgr. ubomíra Tomková GEOMETRY
GEOMETRY NAMING ANGLES: any angle less than 90º is an acute angle any angle equal to 90º is a right angle any angle between 90º and 80º is an obtuse angle any angle between 80º and 60º is a reflex angle
More informationSolid Modeling. Thomas Funkhouser Princeton University C0S 426, Fall Represent solid interiors of objects
Solid Modeling Thomas Funkhouser Princeton University C0S 426, Fall 2000 Solid Modeling Represent solid interiors of objects Surface may not be described explicitly Visible Human (National Library of Medicine)
More informationRay Tracer I: Ray Casting Due date: 12:00pm December 3, 2001
Computer graphics Assignment 5 1 Overview Ray Tracer I: Ray Casting Due date: 12:00pm December 3, 2001 In this assignment you will implement the camera and several primitive objects for a ray tracer. We
More informationPolygon Meshes and Implicit Surfaces
CSCI 420 Computer Graphics Lecture 9 Polygon Meshes and Implicit Surfaces Polygon Meshes Implicit Surfaces Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California 1 Modeling
More informationOn a nested refinement of anisotropic tetrahedral grids under Hessian metrics
On a nested refinement of anisotropic tetrahedral grids under Hessian metrics Shangyou Zhang Abstract Anisotropic grids, having drastically different grid sizes in different directions, are efficient and
More informationParallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece
Parallel Computation of Spherical Parameterizations for Mesh Analysis Th. Athanasiadis and I. Fudos, Greece Introduction Mesh parameterization is a powerful geometry processing tool Applications Remeshing
More informationPolygon Meshes and Implicit Surfaces
CSCI 420 Computer Graphics Lecture 9 and Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible, but how
More informationMesh Repairing and Simplification. Gianpaolo Palma
Mesh Repairing and Simplification Gianpaolo Palma Mesh Repairing Removal of artifacts from geometric model such that it becomes suitable for further processing Input: a generic 3D model Output: (hopefully)a
More informationComputer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011
Computer Graphics 1 Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons in
More informationCIS 4930/ SCIENTIFICVISUALIZATION
CIS 4930/6930-902 SCIENTIFICVISUALIZATION ISOSURFACING Paul Rosen Assistant Professor University of South Florida slides credits Tricoche and Meyer ADMINISTRATIVE Read (or watch video): Kieffer et al,
More informationimplicit surfaces, approximate implicitization, B-splines, A- patches, surface fitting
24. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE ZBYNĚK ŠÍR FITTING OF PIECEWISE POLYNOMIAL IMPLICIT SURFACES Abstrakt In our contribution we discuss the possibility of an efficient fitting of piecewise
More information