CSE 554 Lecture 6: Fairing and Simplification
|
|
- Esmond Dean
- 5 years ago
- Views:
Transcription
1 CSE 554 Lecture 6: Fairing and Simplification Fall 2012 CSE554 Fairing and simplification Slide 1 Review Iso-contours in grayscale images and volumes Piece-wise linear representations Polylines (2D) and meshes (3D) Primal and dual methods Marching Squares (2D) and Cubes (3D) Dual Contouring (2D,3D) Acceleration using trees Quadtree (2D), Octree (3D) Interval trees CSE554 Fairing and simplification Slide 2 1
2 Geometry Processing Fairing (smoothing) Relocating vertices to achieve a smoother appearance Simplification Reducing vertex count Deformation Relocating vertices guided by user interaction or to fit onto a target CSE554 Fairing and simplification Slide 3 Points and Vectors Same representation x, y or x, y, z 2 Y p 1, 2 p 2, 2 v 1, 2 v 1, 2 Different meaning: 1 2 x Point: a fixed location (relative to {0,0} or {0,0,0}) Vector: a direction and magnitude No location (any location is possible) CSE554 Fairing and simplification Slide 4 2
3 Point Operations Subtraction Result is a vector p 2 p 1 v p 2 x p 1x,p 2y p 1y Addition with a vector v p 2 Result is a point p 1 v p 2 p 1 x v x,p 1 y v y p 1 Can points add? Not yet CSE554 Fairing and simplification Slide 5 Vector Operations Addition/Subtraction Result is a vector v 1 v 2 v 1 x v 2x,v 1y v 2y v 2 Scaling by a scalar Result is a vector s v s v x,s v y Magnitude Result is a scalar v v 2 2 x v y v 1 v v 1 s* v v 2 A unit vector: v 1 To make a unit vector (normalization): v v CSE554 Fairing and simplification Slide 6 3
4 Adding Points Affine combinations Weighted addition of points where all weights sum to 1 n w i p i p, n where w i 1 p 1 v 2 p 2 Result is another point Same as adding scaled vectors to a point v 3 p v4 n n w i p i n n w i p i p 1 w i v i p 1 w i p 1 p 3 p 4 CSE554 Fairing and simplification Slide 7 Adding Points Affine combinations: examples Mid-point of two points p p 1 p 2 2 Linear interpolation of two points p 1 p 1 p 2 p p 1 p 2 p 1 p 1 p 2 Centroid of multiple points n p p i n p 1 p 2 p p 3 p 4 CSE554 Fairing and simplification Slide 8 4
5 Geometry Processing Fairing (smoothing) Relocating vertices to achieve a smoother appearance Simplification Reducing vertex count CSE554 Fairing and simplification Slide 9 Fairing (2D) Reducing bumpiness by changing the vertex locations CSE554 Fairing and simplification Slide 10 5
6 Fairing (2D) What is a bump? A vertex far from the mid-point of its two neighbors A big bump A small bump CSE554 Fairing and simplification Slide 11 Fairing (2D) Fairing by mid-point averaging Moving each vertex towards the mid-point of its two neighbors Using linear interpolation : some value between 0 and 1 Iterative fairing Controls how far p moves away from p At each iteration, update all vertices using locations in the previous iteration A p' 1 p p 1 p 2 close to 1 will create oscillation Typically p 1 p' p 1 p 2 p 1 p 2 2 CSE554 Fairing and simplification Slide 12 6
7 Fairing (2D) Drawback The initial shape is shrunk! 100 iterations 200 iterations 400 iterations CSE554 Fairing and simplification Slide 13 Fairing (2D) Non-shrinking mid-point averaging [Taubin 1995] Alternate between two kinds of iterations with different Odd iterations: Odd 0.5 (positive) Shrinking the shape Even iterations: Even 1 1 : typically 0.1 Odd (negative) Expanding the shape CSE554 Fairing and simplification Slide 14 7
8 Fairing (2D) The initial shape is no longer shrunk The result converges with increasing iterations 100 iterations 200 iterations 400 iterations CSE554 Fairing and simplification Slide 15 Fairing (3D) Fairing by centroid averaging Moving each vertex towards the centroid of its edge-adjacent neighbors (called the 1-ring neighbors) Linear interpolation p 1 p 5 m p i p' 1 p m centroid p 2 p p 4 Iterative, non-shrinking fairing Alternate between shrinking and expanding p 3 Same choices of as in 2D Each iteration updates all vertices using locations in the previous iteration CSE554 Fairing and simplification Slide 16 8
9 Fairing (3D) Example: fairing iso-surface of a binary volume CSE554 Fairing and simplification Slide 17 Fairing Implementation Tips At each iteration, keep two copies of locations of all vertices Store the smoothed location of each vertex in another list separate from the current locations Building an adjacency table storing the neighbors of each vertex would be helpful, but not necessary Initialize the centroid as {0,0,0} at each vertex, and its neighbor count as 0. For each triangle, add the coordinates of each vertex to the centroids stored at the other two vertices and increment their neighbor count. The neighbor count is twice the actual # of edge neighbors For each vertex, divide the centroid by its neighbor count. CSE554 Fairing and simplification Slide 18 9
10 More Vector Operations Dot product (in both 2D and 3D) Result is a scalar v 1 v 2 v 1 v 2 Cos In coordinates (simple!) v 1 a 2D: 3D: v 1 v 2 v 1 x v 2x v 1y v 2y v 1 v 2 v 1 x v 2x v 1y v 2y v 1z v 2z v 2 Matrix product between a row and a column vector CSE554 Fairing and simplification Slide 19 More Vector Operations Uses of dot products Angle between vectors: ArcCos v 1 v 2 v 1 v 2 v 1 a Orthogonal: v 1 v 2 0 v 2 Projected length of v 1 onto v 2 : h v 1 v 2 v 2 v 1 h v 2 CSE554 Fairing and simplification Slide 20 10
11 More Vector Operations Cross product (only in 3D) Result is another 3D vector Direction: Normal to the plane where both vectors lie (right-hand rule) Magnitude: v 1 v 2 v 1 v 2 Sin In coordinates: v 1 v 2 v 1 y v 2z v 1z v 2y,v 1z v 2x v 1x v 2z,v 1x v 2y v 1y v 2x v1 v2 a v 2 v 1 CSE554 Fairing and simplification Slide 21 More Vector Operations Uses of cross products Getting the normal vector of the plane E.g., the normal of a triangle formed by v 1 v 2 Computing area of the triangle formed by v 1 v 2 v 1 v 2 Area 2 v1 v2 v 2 Testing if vectors are parallel: v 1 v 2 0 v 1 CSE554 Fairing and simplification Slide 22 11
12 More Vector Operations Dot Product Cross Product Distributive? v v 1 v 2 v v 1 v v 2 v v 1 v 2 v v 1 v v 2 Commutative? v 1 v 2 v 2 v 1 v 1 v 2 v 2 v 1 (Sign change!) Associative? v 1 v 2 v 3 v 1 v 2 v 3 v 1 v 2 v 3 CSE554 Fairing and simplification Slide 23 Geometry Processing Fairing (smoothing) Relocating vertices to achieve a smoother appearance Simplification Reducing vertex count CSE554 Fairing and simplification Slide 24 12
13 Simplification (2D) Representing the shape with fewer vertices (and edges) 200 vertices 50 vertices CSE554 Fairing and simplification Slide 25 Simplification (2D) If I want to replace two vertices with one, where should it be? CSE554 Fairing and simplification Slide 26 13
14 Simplification (2D) If I want to replace two vertices with one, where should it be? Shortest distances to the supporting lines of involved edges After replacement: CSE554 Fairing and simplification Slide 27 Simplification (2D) Distance to a line Line represented as a point q on the line, and a perpendicular unit vector (the normal) n To get n: take a vector {x,y} along the line, n is {-y,x} followed by normalization Distance from any point p to the line: p q n Projection of vector (p-q) onto n This distance has a sign Above or under of the line n p We will use the distance squared Line q CSE554 Fairing and simplification Slide 28 14
15 Simplification (2D) Closed point to multiple lines Sum of squared distances from p to all lines (Quadratic Error Metric, QEM) Input lines: q 1, n 1,..., q m, n m m QEM p p q i n i 2 We want to find the p with the minimum QEM Since QEM is a convex quadratic function of p, the minimizing p is where the derivative of QEM is zero, which is a linear equation QEM p p 0 CSE554 Fairing and simplification Slide 29 Simplification (2D) Minimizing QEM Writing QEM in matrix form m QEM p p q i n i 2 p p x p y Row vector Matrix transpose QEM p p a p T 2p b c [Eq. 1] Matrix (dot) product a m n i x n ix m n i x n iy m n i x n iy n i y n iy m b m n i x n i q i m n i y n i q i m c n i q i 2 2x2 matrix 1x2 column vector Scalar CSE554 Fairing and simplification Slide 30 15
16 Simplification (2D) Minimizing QEM QEM p p a p T 2p b c Solving the zero-derivative equation: QEM p p 2 a p T 2 b 0 a p T b [Eq. 2] m n i x n ix n i x n iy m m n i x n iy n i y n iy m p x p y m n i x n i q i n i y n i q i m A linear system with 2 equations and 2 unknowns (p x,p y ) Using Gaussian elimination, or matrix inversion: p T a 1 b CSE554 Fairing and simplification Slide 31 Simplification (2D) What vertices to merge first? Pick the ones that lie on flat regions, or whose replacing vertex introduces least QEM error. CSE554 Fairing and simplification Slide 32 16
17 Simplification (2D) The algorithm Step 1: For each edge, compute the best vertex location to replace that edge, and the QEM at that location. Store that location (called minimizer) and its QEM with the edge. CSE554 Fairing and simplification Slide 33 Simplification (2D) The algorithm Step 1: For each edge, compute the best vertex location to replace that edge, and the QEM at that location. Store that location (called minimizer) and its QEM with the edge. Step 2: Pick the edge with the lowest QEM and collapse it to its minimizer. Update the minimizers and QEMs of the re-connected edges. CSE554 Fairing and simplification Slide 34 17
18 Simplification (2D) The algorithm Step 1: For each edge, compute the best vertex location to replace that edge, and the QEM at that location. Store that location (called minimizer) and its QEM with the edge. Step 2: Pick the edge with the lowest QEM and collapse it to its minimizer. Update the minimizers and QEMs of the re-connected edges. CSE554 Fairing and simplification Slide 35 Simplification (2D) The algorithm Step 1: For each edge, compute the best vertex location to replace that edge, and the QEM at that location. Store that location (called minimizer) and its QEM with the edge. Step 2: Pick the edge with the lowest QEM and collapse it to its minimizer. Update the minimizers and QEMs of the re-connected edges. Step 3: Repeat step 2, until a desired number of vertices is left. CSE554 Fairing and simplification Slide 36 18
19 Simplification (2D) The algorithm Step 1: For each edge, compute the best vertex location to replace that edge, and the QEM at that location. Store that location (called minimizer) and its QEM with the edge. Step 2: Pick the edge with the lowest QEM and collapse it to its minimizer. Update the minimizers and QEMs of the re-connected edges. Step 3: Repeat step 2, until a desired number of vertices is left. CSE554 Fairing and simplification Slide 37 Simplification (2D) Step 1: Computing minimizer and QEM on an edge Consider supporting lines of this edge and adjacent edges Compute and store at the edge: The minimizing location p (Eq. 2) QEM (substitute p into Eq. 1) Used for edge selection in Step 2 p QEM coefficients (a, b, c) Used for fast update in Step 2 Stored at the edge: a, b, c, p, QEM p CSE554 Fairing and simplification Slide 38 19
20 Simplification (2D) Step 2: Collapsing an edge Remove the edge and its vertices a 1, b 1, c 1, p 1, QEM p 1 a, b, c, p, QEM p a 2, b 2, c 2, p 2,QEM p 2 Re-connect two neighbor edges to the minimizer of the removed edge For each re-connected edge: Increment its coefficients by that of the removed edge The coefficients are additive! Re-compute its minimizer and QEM a a 1, b b 1, c c 1, p 1,QEM p 1 p Collapse a a 2, b b 2, c c 2, p 2,QEM p 2 p 1,p 2 : new minimizer locations computed from the updated coefficients CSE554 Fairing and simplification Slide 39 Simplification (3D) The algorithm is similar to 2D Replace two edge-adjacent vertices by one vertex Placing new vertices closest to supporting planes of adjacent triangles Prioritize collapses based on QEM CSE554 Fairing and simplification Slide 40 20
21 Simplification (3D) Distance to a plane (similar to the line case) Plane represented as a point q on the plane, and a unit normal vector n For a triangle: n is the cross-product of two edge vectors Distance from any point p to the plane: p q n Projection of vector (p-q) onto n This distance has a sign n above or below the plane p We use its square q CSE554 Fairing and simplification Slide 41 Simplification (3D) Closest point to multiple planes Input planes: q 1,n 1,..., q m, n m QEM (same as in 2D) m QEM p p q i n i 2 In matrix form: p p x p y p z QEM p p a p T 2p b c a b m c m n i x n ix n i y n ix m m n i z n ix m n i x n iy n i y n iy m m m n i x n i q i n i y n i q i m m n i z n i q i n i q i 2 n i z n iy 3x3 matrix 1x3 column vector Scalar m n i x n iz n i y n iz m m n i z n iz Find p that minimizes QEM: a p T b A linear system with 3 equations and 3 unknowns (p x,p y,p z ) CSE554 Fairing and simplification Slide 42 21
22 Simplification (3D) Step 1: Computing minimizer and QEM on an edge Consider supporting planes of all triangles adjacent to the edge Compute and store at the edge: The minimizing location p QEM[p] QEM coefficients (a, b, c) The supporting planes for all shaded triangles should be considered when computing the minimizer of the middle edge. CSE554 Fairing and simplification Slide 43 Simplification (3D) Step 2: Collapsing an edge Degenerate triangles after collapse Remove the edge with least QEM Re-connect neighbor triangles and edges to the minimizer of the removed edge Remove degenerate triangles Remove duplicate edges For each re-connected edge: Increment its coefficients by that of the removed edge Re-compute its minimizer and QEM Duplicate edges after collapse Collapse CSE554 Fairing and simplification Slide 44 22
23 Simplification (3D) Example: 5600 vertices 500 vertices CSE554 Fairing and simplification Slide 45 Further Readings Fairing: A signal processing approach to fair surface design, by G. Taubin (1995) No-shrinking centroid-averaging Google citations > 1000 Simplification: Surface simplification using quadric error metrics, by M. Garland and P. Heckbert (1997) Edge-collapse simplification Google citations > 2000 CSE554 Fairing and simplification Slide 46 23
Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles
Mesh Simplification Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies for efficient
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 informationCGAL. Mesh Simplification. (Slides from Tom Funkhouser, Adam Finkelstein)
CGAL Mesh Simplification (Slides from Tom Funkhouser, Adam Finkelstein) Siddhartha Chaudhuri http://www.cse.iitb.ac.in/~cs749 In a nutshell Problem: Meshes have too many polygons for storage, rendering,
More informationGeometric Features for Non-photorealistiic Rendering
CS348a: Computer Graphics Handout # 6 Geometric Modeling and Processing Stanford University Monday, 27 February 2017 Homework #4: Due Date: Mesh simplification and expressive rendering [95 points] Wednesday,
More informationMulti-View Matching & Mesh Generation. Qixing Huang Feb. 13 th 2017
Multi-View Matching & Mesh Generation Qixing Huang Feb. 13 th 2017 Geometry Reconstruction Pipeline RANSAC --- facts Sampling Feature point detection [Gelfand et al. 05, Huang et al. 06] Correspondences
More informationMesh Decimation. Mark Pauly
Mesh Decimation Mark Pauly Applications Oversampled 3D scan data ~150k triangles ~80k triangles Mark Pauly - ETH Zurich 280 Applications Overtessellation: E.g. iso-surface extraction Mark Pauly - ETH Zurich
More informationMesh Simplification. Mesh Simplification. Mesh Simplification Goals. Mesh Simplification Motivation. Vertex Clustering. Mesh Simplification Overview
Mesh Simplification Mesh Simplification Adam Finkelstein Princeton University COS 56, Fall 008 Slides from: Funkhouser Division, Viewpoint, Cohen Mesh Simplification Motivation Interactive visualization
More informationGeometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data
Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Copyright 2010 Gotsman, Pauly Page 1 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies
More informationSurface Simplification Using Quadric Error Metrics
Surface Simplification Using Quadric Error Metrics Authors: Michael Garland & Paul Heckbert Presented by: Niu Xiaozhen Disclaimer: Some slides are modified from original slides, which were designed by
More informationProgressive Mesh. Reddy Sambavaram Insomniac Games
Progressive Mesh Reddy Sambavaram Insomniac Games LOD Schemes Artist made LODs (time consuming, old but effective way) ViewDependentMesh (usually used for very large complicated meshes. CAD apps. Probably
More informationAppearance Preservation
CS 283 Advanced Computer Graphics Mesh Simplification James F. O Brien Professor U.C. Berkeley Based on slides by Ravi Ramamoorthi 1 Appearance Preservation Caltech & Stanford Graphics Labs and Jonathan
More informationA NON-TRIGONOMETRIC, PSEUDO AREA PRESERVING, POLYLINE SMOOTHING ALGORITHM
A NON-TRIGONOMETRIC, PSEUDO AREA PRESERVING, POLYLINE SMOOTHING ALGORITHM Wayne Brown and Leemon Baird Department of Computer Science The United States Air Force Academy 2354 Fairchild Dr., Suite 6G- USAF
More informationAs a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.
II.4 Surface Simplification 37 II.4 Surface Simplification In applications it is often necessary to simplify the data or its representation. One reason is measurement noise, which we would like to eliminate,
More informationShape from LIDAR Data. Univ. of Florida
Shape from LIDAR Data Yusuf Sahillioğlu Alper Üngör Univ. of Florida 1. Introduction LIght Detection And Ranging systems, LIDAR, are capable of acquiring data to produce accurate digital elevation models
More informationAll the Polygons You Can Eat. Doug Rogers Developer Relations
All the Polygons You Can Eat Doug Rogers Developer Relations doug@nvidia.com Future of Games Very high resolution models 20,000 triangles per model Lots of them Complex Lighting Equations Floating point
More information521493S Computer Graphics Exercise 2 Solution (Chapters 4-5)
5493S Computer Graphics Exercise Solution (Chapters 4-5). Given two nonparallel, three-dimensional vectors u and v, how can we form an orthogonal coordinate system in which u is one of the basis vectors?
More informationGeometry Processing & Geometric Queries. Computer Graphics CMU /15-662
Geometry Processing & Geometric Queries Computer Graphics CMU 15-462/15-662 Last time: Meshes & Manifolds Mathematical description of geometry - simplifying assumption: manifold - for polygon meshes: fans,
More informationMulti-level Partition of Unity Implicits
Multi-level Partition of Unity Implicits Diego Salume October 23 rd, 2013 Author: Ohtake, et.al. Overview Goal: Use multi-level partition of unity (MPU) implicit surface to construct surface models. 3
More informationXPM 2D Transformations Week 2, Lecture 3
CS 430/585 Computer Graphics I XPM 2D Transformations Week 2, Lecture 3 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel
More informationTo Do. Resources. Algorithm Outline. Simplifications. Advanced Computer Graphics (Spring 2013) Surface Simplification: Goals (Garland)
Advanced omputer Graphics (Spring 213) S 283, Lecture 6: Quadric Error Metrics Ravi Ramamoorthi To Do Assignment 1, Due Feb 22. Should have made some serious progress by end of week This lecture reviews
More informationGEOMETRIC TOOLS FOR COMPUTER GRAPHICS
GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W
More informationXPM 2D Transformations Week 2, Lecture 3
CS 430/585 Computer Graphics I XPM 2D Transformations Week 2, Lecture 3 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel
More informationMesh and Mesh Simplification
Slide Credit: Mirela Ben-Chen Mesh and Mesh Simplification Qixing Huang Mar. 21 st 2018 Mesh DataStructures Data Structures What should bestored? Geometry: 3D coordinates Attributes e.g. normal, color,
More informationFast marching methods
1 Fast marching methods Lecture 3 Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry of non-rigid shapes Stanford University, Winter 2009 Metric discretization 2 Approach I:
More informationCS 130 Final. Fall 2015
CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying
More informationVector Algebra Transformations. Lecture 4
Vector Algebra Transformations Lecture 4 Cornell CS4620 Fall 2008 Lecture 4 2008 Steve Marschner 1 Geometry A part of mathematics concerned with questions of size, shape, and relative positions of figures
More informationThe goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a
The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with
More informationX Std. Topic Content Expected Learning Outcomes Mode of Transaction
X Std COMMON SYLLABUS 2009 - MATHEMATICS I. Theory of Sets ii. Properties of operations on sets iii. De Morgan s lawsverification using example Venn diagram iv. Formula for n( AÈBÈ C) v. Functions To revise
More information2D Object Definition (1/3)
2D Object Definition (1/3) Lines and Polylines Lines drawn between ordered points to create more complex forms called polylines Same first and last point make closed polyline or polygon Can intersect itself
More informationViewing with Computers (OpenGL)
We can now return to three-dimension?', graphics from a computer perspective. Because viewing in computer graphics is based on the synthetic-camera model, we should be able to construct any of the classical
More informationMesh data structures. Abstract. 1 Introduction. 2 Method. 2.1 Implement the half edge mesh LIU TNM
Mesh data structures Fredrik Salomonsson fresa517@student.liu.se LIU TNM079 2010-05-28 Abstract When dealing with meshes containing large amount of triangles or quadrilaterals one need to have some kind
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 informationFor each question, indicate whether the statement is true or false by circling T or F, respectively.
True/False For each question, indicate whether the statement is true or false by circling T or F, respectively. 1. (T/F) Rasterization occurs before vertex transformation in the graphics pipeline. 2. (T/F)
More informationIntroduction to Computer Graphics
Introduction to Computer Graphics 2016 Spring National Cheng Kung University Instructors: Min-Chun Hu 胡敏君 Shih-Chin Weng 翁士欽 ( 西基電腦動畫 ) Data Representation Curves and Surfaces Limitations of Polygons Inherently
More informationCSCI 4620/8626. Coordinate Reference Frames
CSCI 4620/8626 Computer Graphics Graphics Output Primitives Last update: 2014-02-03 Coordinate Reference Frames To describe a picture, the world-coordinate reference frame (2D or 3D) must be selected.
More informationCT5510: Computer Graphics. Transformation BOCHANG MOON
CT5510: Computer Graphics Transformation BOCHANG MOON 2D Translation Transformations such as rotation and scale can be represented using a matrix M.., How about translation? No way to express this using
More informationScientific Visualization Example exam questions with commented answers
Scientific Visualization Example exam questions with commented answers The theoretical part of this course is evaluated by means of a multiple- choice exam. The questions cover the material mentioned during
More informationPrecalculus Notes: Unit 7 Systems of Equations and Matrices
Date: 7.1, 7. Solving Systems of Equations: Graphing, Substitution, Elimination Syllabus Objectives: 8.1 The student will solve a given system of equations or system of inequalities. Solution of a System
More informationMesh Decimation Using VTK
Mesh Decimation Using VTK Michael Knapp knapp@cg.tuwien.ac.at Institute of Computer Graphics and Algorithms Vienna University of Technology Abstract This paper describes general mesh decimation methods
More informationTransforms. COMP 575/770 Spring 2013
Transforms COMP 575/770 Spring 2013 Transforming Geometry Given any set of points S Could be a 2D shape, a 3D object A transform is a function T that modifies all points in S: T S S T v v S Different transforms
More informationGeometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation
Geometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation and the type of an object. Even simple scaling turns a
More informationWatertight Planar Surface Reconstruction of Voxel Data
Watertight Planar Surface Reconstruction of Voxel Data Eric Turner CS 284 Final Project Report December 13, 2012 1. Introduction There are many scenarios where a 3D shape is represented by a voxel occupancy
More informationGraphics and Interaction Transformation geometry and homogeneous coordinates
433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation
More informationCOMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates
COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation
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 informationLast week. Machiraju/Zhang/Möller
Last week Machiraju/Zhang/Möller 1 Overview of a graphics system Output device Input devices Image formed and stored in frame buffer Machiraju/Zhang/Möller 2 Introduction to CG Torsten Möller 3 Ray tracing:
More informationScalar Field Visualization. Some slices used by Prof. Mike Bailey
Scalar Field Visualization Some slices used by Prof. Mike Bailey Scalar Fields The approximation of certain scalar function in space f(x,y,z). Most of time, they come in as some scalar values defined on
More informationConvex Polygon Generation
Convex Polygon Generation critterai.org /projects/nmgen_study/polygen.html This page describes the forth stage in building a navigation mesh, the generation of convex polygons from the simple polygons
More informationSung-Eui Yoon ( 윤성의 )
CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and
More informationHomework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves
Computer Graphics Instructor: Brian Curless CSEP 557 Autumn 2016 Homework #2 Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves Assigned: Wednesday, Nov 16 th Due: Wednesday, Nov 30
More informationECE 600, Dr. Farag, Summer 09
ECE 6 Summer29 Course Supplements. Lecture 4 Curves and Surfaces Aly A. Farag University of Louisville Acknowledgements: Help with these slides were provided by Shireen Elhabian A smile is a curve that
More informationFinal Project, Digital Geometry Processing
Final Project, Digital Geometry Processing Shayan Hoshyari Student #: 81382153 December 2016 Introduction In this project an adaptive surface remesher has been developed based on the paper [1]. An algorithm
More informationSpecial Topics in Visualization
Special Topics in Visualization Final Project Report Dual contouring of Hermite Data Submitted By S M Shahed Nejhum 8589-1199 May 19, 2008 Introduction Iso-surface extraction from 3D volumetric data is
More information16.410/413 Principles of Autonomy and Decision Making
16.410/413 Principles of Autonomy and Decision Making Lecture 17: The Simplex Method Emilio Frazzoli Aeronautics and Astronautics Massachusetts Institute of Technology November 10, 2010 Frazzoli (MIT)
More informationCSE 554 Lecture 5: Contouring (faster)
CSE 554 Lecture 5: Contouring (faster) Fall 2016 CSE554 Contouring II Slide 1 Review Iso-contours Points where a function evaluates to be a given value (iso-value) Smooth thresholded boundaries Contouring
More informationCourse Number 432/433 Title Algebra II (A & B) H Grade # of Days 120
Whitman-Hanson Regional High School provides all students with a high- quality education in order to develop reflective, concerned citizens and contributing members of the global community. Course Number
More informationCHAPTER 1 Graphics Systems and Models 3
?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........
More informationSubdivision Surfaces
Subdivision Surfaces 1 Geometric Modeling Sometimes need more than polygon meshes Smooth surfaces Traditional geometric modeling used NURBS Non uniform rational B-Spline Demo 2 Problems with NURBS A single
More informationIntro to Modeling Modeling in 3D
Intro to Modeling Modeling in 3D Polygon sets can approximate more complex shapes as discretized surfaces 2 1 2 3 Curve surfaces in 3D Sphere, ellipsoids, etc Curved Surfaces Modeling in 3D ) ( 2 2 2 2
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 informationProblems of Plane analytic geometry
1) Consider the vectors u(16, 1) and v( 1, 1). Find out a vector w perpendicular (orthogonal) to v and verifies u w = 0. 2) Consider the vectors u( 6, p) and v(10, 2). Find out the value(s) of parameter
More informationEfficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees
Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Alexander Greß and Reinhard Klein University of Bonn Institute of Computer Science II Römerstraße 164, 53117 Bonn, Germany
More informationLarge Mesh Deformation Using the Volumetric Graph Laplacian
Large Mesh Deformation Using the Volumetric Graph Laplacian Kun Zhou1 Jin Huang2 John Snyder3 Xinguo Liu1 Hujun Bao2 Baining Guo1 Heung-Yeung Shum1 1 Microsoft Research Asia 2 Zhejiang University 3 Microsoft
More informationBarycentric Coordinates and Parameterization
Barycentric Coordinates and Parameterization Center of Mass Geometric center of object Center of Mass Geometric center of object Object can be balanced on CoM How to calculate? Finding the Center of Mass
More informationSolid Modeling. Michael Kazhdan ( /657) HB , FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al.
Solid Modeling Michael Kazhdan (601.457/657) HB 10.15 10.17, 10.22 FvDFH 12.1, 12.2, 12.6, 12.7 Marching Cubes, Lorensen et al. 1987 Announcement OpenGL review session: When: Today @ 9:00 PM Where: Malone
More informationA Comparison of Mesh Simplification Algorithms
A Comparison of Mesh Simplification Algorithms Nicole Ortega Project Summary, Group 16 Browser Based Constructive Solid Geometry for Anatomical Models - Orthotics for cerebral palsy patients - Fusiform
More informationCS 536 Computer Graphics Intro to Curves Week 1, Lecture 2
CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 Outline Math review Introduction to 2D curves
More informationClick on the topic to go to the page
Click on the topic to go to the page A B C 3D Pythagoras 3D Trigonometry and Pythagoras accuracy calculation with bounds 164 addition of decimals 389 of fractions 269 of money 457 of negative numbers of
More informationParameterization. Michael S. Floater. November 10, 2011
Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point
More informationCSC Computer Graphics
// CSC. Computer Graphics Lecture Kasun@dscs.sjp.ac.lk Department of Computer Science University of Sri Jayewardanepura Polygon Filling Scan-Line Polygon Fill Algorithm Span Flood-Fill Algorithm Inside-outside
More informationDIRECT EXTRACTION OF NORMAL MAPS FROM VOLUME DATA. A Thesis. Presented to. the Faculty of California Polytechnic State University.
DIRECT EXTRACTION OF NORMAL MAPS FROM VOLUME DATA A Thesis Presented to the Faculty of California Polytechnic State University San Luis Obispo In Partial Fulfillment of the Requirements for the Degree
More informationMarching Squares Algorithm. Can you summarize the marching squares algorithm based on what we just discussed?
Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we just discussed? Marching Squares Algorithm Can you summarize the marching squares algorithm based on what we
More informationLecture 16: Computer Vision
CS4442/9542b: Artificial Intelligence II Prof. Olga Veksler Lecture 16: Computer Vision Motion Slides are from Steve Seitz (UW), David Jacobs (UMD) Outline Motion Estimation Motion Field Optical Flow Field
More informationGame Mathematics. (12 Week Lesson Plan)
Game Mathematics (12 Week Lesson Plan) Lesson 1: Set Theory Textbook: Chapter One (pgs. 1 15) We begin the course by introducing the student to a new vocabulary and set of rules that will be foundational
More informationBroad field that includes low-level operations as well as complex high-level algorithms
Image processing About Broad field that includes low-level operations as well as complex high-level algorithms Low-level image processing Computer vision Computational photography Several procedures and
More informationScanning Real World Objects without Worries 3D Reconstruction
Scanning Real World Objects without Worries 3D Reconstruction 1. Overview Feng Li 308262 Kuan Tian 308263 This document is written for the 3D reconstruction part in the course Scanning real world objects
More informationComputer Graphics II
Computer Graphics II Autumn 2018-2019 Outline 1 Transformations Outline Transformations 1 Transformations Orthogonal Projections Suppose we want to project a point x onto a plane given by its unit-length
More informationThe basics of rigidity
The basics of rigidity Lectures I and II Session on Granular Matter Institut Henri Poincaré R. Connelly Cornell University Department of Mathematics 1 What determines rigidity? 2 What determines rigidity?
More informationIntroduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama
Introduction to Computer Graphics Modeling (3) April 27, 2017 Kenshi Takayama Solid modeling 2 Solid models Thin shapes represented by single polygons Unorientable Clear definition of inside & outside
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 informationCurves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification
Last Time? Adjacency Data Structures Curves & Surfaces Geometric & topologic information Dynamic allocation Efficiency of access Mesh Simplification edge collapse/vertex split geomorphs progressive transmission
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 informationMachine Learning for Signal Processing Lecture 4: Optimization
Machine Learning for Signal Processing Lecture 4: Optimization 13 Sep 2015 Instructor: Bhiksha Raj (slides largely by Najim Dehak, JHU) 11-755/18-797 1 Index 1. The problem of optimization 2. Direct optimization
More informationDigital Image Processing
Digital Image Processing Lecture # 4 Digital Image Fundamentals - II ALI JAVED Lecturer SOFTWARE ENGINEERING DEPARTMENT U.E.T TAXILA Email:: ali.javed@uettaxila.edu.pk Office Room #:: 7 Presentation Outline
More informationDigital Geometry Processing. Computer Graphics CMU /15-662
Digital Geometry Processing Computer Graphics CMU 15-462/15-662 Last time: Meshes & Manifolds Mathematical description of geometry - simplifying assumption: manifold - for polygon meshes: fans, not fins
More informationSupport Vector Machines.
Support Vector Machines srihari@buffalo.edu SVM Discussion Overview 1. Overview of SVMs 2. Margin Geometry 3. SVM Optimization 4. Overlapping Distributions 5. Relationship to Logistic Regression 6. Dealing
More informationEfficient Minimization of New Quadric Metric for Simplifying Meshes with Appearance Attributes
Efficient Minimization of New Quadric Metric for Simplifying Meshes with Appearance Attributes (Addendum to IEEE Visualization 1999 paper) Hugues Hoppe Steve Marschner June 2000 Technical Report MSR-TR-2000-64
More informationGeneralized barycentric coordinates
Generalized barycentric coordinates Michael S. Floater August 20, 2012 In this lecture, we review the definitions and properties of barycentric coordinates on triangles, and study generalizations to convex,
More informationCHAPTER - 10 STRAIGHT LINES Slope or gradient of a line is defined as m = tan, ( 90 ), where is angle which the line makes with positive direction of x-axis measured in anticlockwise direction, 0 < 180
More informationMath January, Non-rigid transformations. Parent function New function Scale factor
Non-rigid transformations In non-rigid transformations, the shape of a function is modified, either stretched or shrunk. We will call the number which tells us how much it is changed the scale factor,
More informationSummer Review for Students Entering Pre-Calculus with Trigonometry. TI-84 Plus Graphing Calculator is required for this course.
1. Using Function Notation and Identifying Domain and Range 2. Multiplying Polynomials and Solving Quadratics 3. Solving with Trig Ratios and Pythagorean Theorem 4. Multiplying and Dividing Rational Expressions
More informationÇANKAYA UNIVERSITY Department of Industrial Engineering SPRING SEMESTER
TECHNIQUES FOR CONTINOUS SPACE LOCATION PROBLEMS Continuous space location models determine the optimal location of one or more facilities on a two-dimensional plane. The obvious disadvantage is that the
More informationEdge and local feature detection - 2. Importance of edge detection in computer vision
Edge and local feature detection Gradient based edge detection Edge detection by function fitting Second derivative edge detectors Edge linking and the construction of the chain graph Edge and local feature
More informationcoding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight
Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image
More informationData Analysis 3. Support Vector Machines. Jan Platoš October 30, 2017
Data Analysis 3 Support Vector Machines Jan Platoš October 30, 2017 Department of Computer Science Faculty of Electrical Engineering and Computer Science VŠB - Technical University of Ostrava Table of
More informationCS770/870 Spring 2017 Ray Tracing Implementation
Useful ector Information S770/870 Spring 07 Ray Tracing Implementation Related material:angel 6e: h.3 Ray-Object intersections Spheres Plane/Polygon Box/Slab/Polyhedron Quadric surfaces Other implicit/explicit
More informationAssignment 4: Mesh Parametrization
CSCI-GA.3033-018 - Geometric Modeling Assignment 4: Mesh Parametrization In this exercise you will Familiarize yourself with vector field design on surfaces. Create scalar fields whose gradients align
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 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 informationIntro to Curves Week 1, Lecture 2
CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University Outline Math review Introduction to 2D curves
More information