Project-II: Comparing Mean Value, Harmonic and Green Coordinates for Mesh Deformation in Computer Animation
|
|
- Crystal Williams
- 5 years ago
- Views:
Transcription
1 Project-II: Comparing Mean Value, Harmonic and Green Coordinates for Mesh Deformation in Computer Animation Chaman Singh Verma April 20, 2011 Figure 1: Barycentric Mapping usage: (a) Straightening the Pisa Tower (b) Shape manipulation 1 Introduction Cage based mesh deformation (CMD) is perhaps the simplest, yet fairly effective approach to manipulate geometric/image objects in computer animation. Two major issues in CMD are (I) How to build a cage? (II) How to define barycentric coordinates for arbitrary shaped cage that produces deformations that are smooth, intuitive and conforming to some of the user s expectations. Barycentric coordinates were first introduced by Mobius ( circa 1830) for convex shapes. Many approaches have been made to generalize these coordinates for concave shapes, and currently some of the widely used techniques are: 1
2 1. Wachspress Coordinates (WC) 2. Mean Value Coordinates (MVC) 3. Harmonic Coordinates (HC) 4. Cauchy Green Coordinates (GC) 5. Maximum Entropy Coordinates (MEC) Many theoretical studies have been performed for these coordinates and true to the engineering adage Nothing is perfect, all these techniques have their pros and cons. Mean values have closed form solution, but fails for concave shapes, Harmonic coordinate have nice and smooth properties but sometimes computationally too expensive unless some sophisticated algorithms such as Multi-grid methods are used. Green coordinates have been introduced very recently, and they have some promise to supersede both MVC and HC. Alternative approaches such as MEC have been proposed, but there are not yet popular. 2 Forward and Backward Interpolation When an object undergoes transformation, there are two approaches by which attributes such as colors are interpolated. Figure 2: Interpolation (A) left image source (B) right image destination Forward Interpolation In this the source image attributes are directly copied on the corresponding barycentric coordinates. Although it is simplest one, it create many artifacts including possible holes in the distored image. Backward Interpolation In this method, for every destination pixel, a search is performed on the sourceimage, and the corresponding pixel values are copied. 2
3 3 Mean Value Coordinates Horman and Floater defined Mean Value Coordinates for arbitrary planar polygons as w i = 2 tan(α i 1/2)+tan(α i /2) r i (1) A modified version avoids calculating the angles is given by tan(α i /2) = r ir i+1 D i 2A i (2) If we denote s i = v i v then D i is the dot product of s i and s i+1. Normalized barycentric coordinates λ i is given by λ i = w i NC i=1 w i Where NC is the number of cage points. A complete C++ source code which handles all the special cases is given below. void mean_value_coordinates( const vector<point2d> &cagecoords, const Point2D &querycoord, vector<double> &barycoords) { int nsize = cagecoords.size(); assert( nsize ); double dx, dy; vector<point2d> s(nsize); for( int i = 0; i < nsize; i++) { dx = cagecoords[i][0] - querycoord[0]; dy = cagecoords[i][1] - querycoord[1]; s[i][0] = dx; s[i][1] = dy; barycoords.resize(nsize); for( int i = 0; i < nsize; i++) barycoords[i] = 0.0; int ip, im; // (i+1) and (i-1) double ri, rp, Ai, Di, dl, mu; // Distance double eps = 10.0*std::numeric_limits<double>::min(); // First check if any coordinates close to the cage point or // lie on the cage boundary. These are special cases. for( int i = 0; i < nsize; i++) { ip = (i+1)%nsize; ri = sqrt( s[i][0]*s[i][0] + s[i][1]*s[i][1] ); Ai = 0.5*(s[i][0]*s[ip][1] - s[ip][0]*s[i][1]); (3) 3
4 Di = s[ip][0]*s[i][0] + s[ip][1]*s[i][1]; if( ri <= eps) { barycoords[i] = 1.0; return; else if( fabs(ai) <= 0 && Di < 0.0) { dx = s[ip][0] - s[i][0]; dy = s[ip][1] - s[i][1]; dl = sqrt(dx*dx + dy*dy); assert(dl > eps); dx = querycoord[0] - s[i][0]; dy = querycoord[1] - s[i][1]; mu = sqrt(dx*dx + dy*dy)/dl; barycoords[i] = 1.0-mu; barycoords[ip] = mu; return; // Page #12, from the paper vector<double> tanalpha(nsize); // tan(alpha/2) for( int i = 0; i < nsize; i++) { ip = (i+1)%nsize; im = (nsize-1+i)%nsize; ri = sqrt( s[i][0]*s[i][0] + s[i][1]*s[i][1] ); rp = sqrt( s[ip][0]*s[ip][0] + s[ip][1]*s[ip][1] ); Ai = 0.5*(s[i][0]*s[ip][1] - s[ip][0]*s[i][1]); Di = s[ip][0]*s[i][0] + s[ip][1]*s[i][1]; tanalpha[i] = (ri*rp - Di)/(2.0*Ai); // Equation #11, from the paper double wi, wsum = 0.0; for( int i = 0; i < nsize; i++) { ip = (i+1)%nsize; im = (nsize-1+i)%nsize; ri = sqrt( s[i][0]*s[i][0] + s[i][1]*s[i][1] ); wi = 2.0*( tanalpha[im] + tanalpha[ip] )/ri; wsum += wi; barycoords[i] = wi; // Normalize for( int i = 0; i < nsize; i++) barycoords[i] /= wsum; 4
5 4 Harmonic Coordinates A smooth harmonic field is generated by solving Laplace equation. 2 φ = 0 (4) Figure 3: For each cage point (28 in this example), we need to solve Laplace equation In the interior the discretized form of the Laplacian is φ i 1,j 2φ i,j +φ i+1,j dx 2 + φ i,j 1 2φ i,j +φ i,j+1 dy 2 = 0 (5) A simple matrix free iterative solver is given by φ n+1 i,j = 0.25(φ n i 1,j +φn i+1,j +φn i,j 1 +φn i,j+1 ) (6) This system of linear equation will have a unique solution, if at least one boundary condition is applied. In HC evaluation, for every cage vertices, we set φ(c i ) = 1,φ(C j ) = 0.0 j i and solve this system. In general, HC evaluation is expensive because 5
6 The five point stencil is a high pass filter and its convergence rate is poor. Moreover, when the mesh size increases, the convergence become worse. For every cage vertices we have to solve the system after changing the boundary conditions. Since the Laplacian operator produces Symmetric and positive definite sparse system, we use preconditioned conjugate gradient ( PCG) method. For small system, direct solvers such as SuperLU could also be used. Since the Harmonic field can be generated only within the region, Harmonic Coordinates are also generated only for the internal vertices. Therefore, a given domain must be classified into three components i.e. External, Boundary and Internal. For images, this is done by region growing algorithm as follows 1. Tag all the cells ( pixels ) as UNIDENTIFIED 2. Scan-convert boundary pixels and tag them as BOUNDARY. 3. Start from one corner pixel in flood fill the region till it reaches BOUND- ARY pixels. All these pixels are tagged as EXTERNAL 4. All remaining cells are tagged INTERNAL The above method will work only for the waterright models, therefore, it is essential that the cage is simply conneted and closed. For structured mesh, this means that every boundary cells has atleast one neighboring cell ( total 8 neihboring cells ) is also tagged as BOUNDARY Figure 4: Multiple cage boundaries can be easily handle with Harmomic Coordinates 6
7 5 Green Coordinates Unlike MVC and HC, Green coordinates utilizes both the position of the cage nodes and normals to the edges. Although the derivation of the GC is quite involved, the pseudo code for 2D provided by Lipman etc is as follows. Figure 5: The pseudo code for 2D Green Coordinates given by Horman and Floater s paper A complete C++ code to calculate the GC is given below. int green_coordinates( const vector<point2d> &cagecoords, const Point2D &querycoord, vector<double> &phi, vector<double> &psi) { int nsegments = cagecoords.size()-1; Point2D a, b, nj; double Q, S, R, BA, SRT, L0, L1, A0, A1, A10, L10; psi.resize( nsegments ); phi.resize( nsegments + 1); for( int j = 0; j < nsegments; j++) { const Point2D &vj1 = cagecoords[j]; const Point2D &vj2 = cagecoords[(j+1)]; 7
8 a[0] = vj2[0] - vj1[0]; a[1] = vj2[1] - vj1[1]; nj[0] = a[1]; nj[1] = -a[0]; b[0] = vj1[0] - querycoord[0]; b[1] = vj1[1] - querycoord[1]; Q = a[0]*a[0] + a[1]*a[1]; S = b[0]*b[0] + b[1]*b[1]; R = 2.0*( a[0]*b[0] + a[1]*b[1]); BA = b[0]*nj[0] + b[1]*nj[1]; SRT = sqrt( 4.0*S*Q - R*R); L0 = log(s); L1 = log( S + Q + R ); A0 = atan( R/SRT)/SRT; A1 = atan((2*q+r)/srt)/srt; A10 = A1-A0; L10 = L1-L0; psi[j] = sqrt(q)/(4.0*m_pi)*(( 4.0*S-(R*R/Q))*A10 + (R/(2.0*Q))*L10 + L1-2); phi[j+1] += - (BA/(2.0*M_PI))*( (L10/(2.0*Q)) - A10*R/Q ); phi[j] += + (BA/(2.0*M_PI))*( (L10/(2.0*Q)) - A10*(2.0 + R/Q) ); //////////////////////////////////////////////////////////////////////////////////// References [1] Mean Value Coordinates Michael S. Floater [2] Harmonic Coordinates Tony DeRose Mark Meyer Pixar Technical Memo #06-02 Pixar Animation Studios [3] Harmonic Coordinates for Character Articulation Pushkar Joshi Mark Meyer Tony DeRose Brian Green Tom Sanocki Pixar Animation Studios [4] Green Coordinates Yaron Lipman, David Levin, Daniel Cohen-Or 8
12 - Spatial And Skeletal Deformations. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo
12 - Spatial And Skeletal Deformations Space Deformations Space Deformation Displacement function defined on the ambient space Evaluate the function on the points of the shape embedded in the space Twist
More informationComparison and affine combination of generalized barycentric coordinates for convex polygons
Annales Mathematicae et Informaticae 47 (2017) pp. 185 200 http://ami.uni-eszterhazy.hu Comparison and affine combination of generalized barycentric coordinates for convex polygons Ákos Tóth Department
More informationDeformation II. Disney/Pixar
Deformation II Disney/Pixar 1 Space Deformation Deformation function on ambient space f : n n Shape S deformed by applying f to points of S S = f (S) f (x,y)=(2x,y) S S 2 Motivation Can be applied to any
More informationDef De orma f tion orma Disney/Pixar
Deformation Disney/Pixar Deformation 2 Motivation Easy modeling generate new shapes by deforming existing ones 3 Motivation Easy modeling generate new shapes by deforming existing ones 4 Motivation Character
More informationKai Hormann, N. Sukumar. Generalized Barycentric Coordinates in Computer Graphics and Computational Mechanics
Kai Hormann, N. Sukumar Generalized Barycentric Coordinates in Computer Graphics and Computational Mechanics Contents Chapter 1 Multi-Sided Patches via Barycentric Coordinates 1 Scott Schaefer 1.1 INTRODUCTION
More informationParameterization of Meshes
2-Manifold Parameterization of Meshes What makes for a smooth manifold? locally looks like Euclidian space collection of charts mutually compatible on their overlaps form an atlas Parameterizations are
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 informationSurface Parameterization
Surface Parameterization A Tutorial and Survey Michael Floater and Kai Hormann Presented by Afra Zomorodian CS 468 10/19/5 1 Problem 1-1 mapping from domain to surface Original application: Texture mapping
More informationCSE 554 Lecture 7: Deformation II
CSE 554 Lecture 7: Deformation II Fall 2011 CSE554 Deformation II Slide 1 Review Rigid-body alignment Non-rigid deformation Intrinsic methods: deforming the boundary points An optimization problem Minimize
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 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 informationBlended barycentric coordinates
Blended barycentric coordinates Dmitry Anisimov a, Daniele Panozzo b, Kai Hormann a, a Università della Svizzera italiana, Lugano, Switzerland b New York University, New York, USA Abstract Generalized
More informationGeneralized Barycentric Coordinates
Generalized Barycentric Coordinates Kai Hormann Faculty of Informatics Università della Svizzera italiana, Lugano School of Computer Science and Engineering Nanyang Technological University, Singapore
More informationGeometric Modeling and Processing
Geometric Modeling and Processing Tutorial of 3DIM&PVT 2011 (Hangzhou, China) May 16, 2011 6. Mesh Simplification Problems High resolution meshes becoming increasingly available 3D active scanners Computer
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 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 informationBounded Distortion Mapping and Shape Deformation
Bounded Distortion Mapping and Shape Deformation 陈仁杰 德国马克斯普朗克计算机研究所 GAMES Web Seminar, 29 March 2018 Outline Planar Mapping & Applications Bounded Distortion Mapping Harmonic Shape Deformation Shape Interpolation
More information3D Modeling techniques
3D Modeling techniques 0. Reconstruction From real data (not covered) 1. Procedural modeling Automatic modeling of a self-similar objects or scenes 2. Interactive modeling Provide tools to computer artists
More informationAnimation. Motion over time
Animation Animation Motion over time Animation Motion over time Usually focus on character animation but environment is often also animated trees, water, fire, explosions, Animation Motion over time Usually
More informationLecture VIII. Global Approximation Methods: I
Lecture VIII Global Approximation Methods: I Gianluca Violante New York University Quantitative Macroeconomics G. Violante, Global Methods p. 1 /29 Global function approximation Global methods: function
More informationParameterization of triangular meshes
Parameterization of triangular meshes Michael S. Floater November 10, 2009 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to
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 informationDual Interpolants for Finite Element Methods
Dual Interpolants for Finite Element Methods Andrew Gillette joint work with Chandrajit Bajaj and Alexander Rand Department of Mathematics Institute of Computational Engineering and Sciences University
More informationIntroduction to Optimization Problems and Methods
Introduction to Optimization Problems and Methods wjch@umich.edu December 10, 2009 Outline 1 Linear Optimization Problem Simplex Method 2 3 Cutting Plane Method 4 Discrete Dynamic Programming Problem Simplex
More informationLecture 2 September 3
EE 381V: Large Scale Optimization Fall 2012 Lecture 2 September 3 Lecturer: Caramanis & Sanghavi Scribe: Hongbo Si, Qiaoyang Ye 2.1 Overview of the last Lecture The focus of the last lecture was to give
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 information10 - ARAP and Linear Blend Skinning
10 - ARAP and Linear Blend Skinning Acknowledgements: Olga Sorkine-Hornung As Rigid As Possible Demo Libigl demo 405 As-Rigid-As-Possible Deformation Preserve shape of cells covering the surface Ask each
More informationTHE FORCE DENSITY METHOD: A BRIEF INTRODUCTION
Technical Report TR-NCCA-2011-02 THE FORCE DENSITY METHOD: A BRIEF INTRODUCTION Richard Southern The National Centre for Computer Animation Bournemouth Media School Bournemouth University Talbot Campus,
More informationBarycentric Finite Element Methods
University of California, Davis Barycentric Finite Element Methods N. Sukumar UC Davis Workshop on Generalized Barycentric Coordinates, Columbia University July 26, 2012 Collaborators and Acknowledgements
More informationPROGRAMMING OF MULTIGRID METHODS
PROGRAMMING OF MULTIGRID METHODS LONG CHEN In this note, we explain the implementation detail of multigrid methods. We will use the approach by space decomposition and subspace correction method; see Chapter:
More informationOperators-Based on Second Derivative double derivative Laplacian operator Laplacian Operator Laplacian Of Gaussian (LOG) Operator LOG
Operators-Based on Second Derivative The principle of edge detection based on double derivative is to detect only those points as edge points which possess local maxima in the gradient values. Laplacian
More information(Sparse) Linear Solvers
(Sparse) Linear Solvers Ax = B Why? Many geometry processing applications boil down to: solve one or more linear systems Parameterization Editing Reconstruction Fairing Morphing 2 Don t you just invert
More informationLecture 2 Unstructured Mesh Generation
Lecture 2 Unstructured Mesh Generation MIT 16.930 Advanced Topics in Numerical Methods for Partial Differential Equations Per-Olof Persson (persson@mit.edu) February 13, 2006 1 Mesh Generation Given a
More informationIntrinsic Morphing of Compatible Triangulations. VITALY SURAZHSKY CRAIG GOTSMAN
International Journal of Shape Modeling Vol. 9, No. 2 (2003) 191 201 c World Scientific Publishing Company Intrinsic Morphing of Compatible Triangulations VITALY SURAZHSKY vitus@cs.technion.ac.il CRAIG
More informationConforming Vector Interpolation Functions for Polyhedral Meshes
Conforming Vector Interpolation Functions for Polyhedral Meshes Andrew Gillette joint work with Chandrajit Bajaj and Alexander Rand Department of Mathematics Institute of Computational Engineering and
More informationReport of Linear Solver Implementation on GPU
Report of Linear Solver Implementation on GPU XIANG LI Abstract As the development of technology and the linear equation solver is used in many aspects such as smart grid, aviation and chemical engineering,
More information1.7.1 Laplacian Smoothing
1.7.1 Laplacian Smoothing 320491: Advanced Graphics - Chapter 1 434 Theory Minimize energy functional total curvature estimate by polynomial-fitting non-linear (very slow!) 320491: Advanced Graphics -
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 informationSubdivision Curves and Surfaces
Subdivision Surfaces or How to Generate a Smooth Mesh?? Subdivision Curves and Surfaces Subdivision given polyline(2d)/mesh(3d) recursively modify & add vertices to achieve smooth curve/surface Each iteration
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 informationLocal Barycentric Coordinates
Local Barycentric Coordinates Juyong Zhang Bailin Deng Zishun Liu Giuseppe Patanè Sofien Bouaziz Kai Hormann Ligang Liu USTC EPFL USTC CNR-IMATI EPFL USI USTC Introduction Given a point p inside a polygon
More informationParameterization of Triangular Meshes with Virtual Boundaries
Parameterization of Triangular Meshes with Virtual Boundaries Yunjin Lee 1;Λ Hyoung Seok Kim 2;y Seungyong Lee 1;z 1 Department of Computer Science and Engineering Pohang University of Science and Technology
More informationChapter 8: Implementation- Clipping and Rasterization
Chapter 8: Implementation- Clipping and Rasterization Clipping Fundamentals Cohen-Sutherland Parametric Polygons Circles and Curves Text Basic Concepts: The purpose of clipping is to remove objects or
More informationGeneralized Barycentric Coordinates
Generalized Barycentric Coordinates Kai Hormann Faculty of Informatics Università della Svizzera italiana, Lugano My life in a nutshell 2009??? Associate Professor @ University of Lugano 1 Generalized
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 informationSo far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources.
11 11.1 Basics So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources. Global models include incident light that arrives
More informationSimple Formulas for Quasiconformal Plane Deformations
Simple Formulas for Quasiconformal Plane Deformations by Yaron Lipman, Vladimir Kim, and Thomas Funkhouser ACM TOG 212 Stephen Mann Planar Shape Deformations Used in Mesh parameterization Animation shape
More informationEinführung in Visual Computing
Einführung in Visual Computing 186.822 Rasterization Werner Purgathofer Rasterization in the Rendering Pipeline scene objects in object space transformed vertices in clip space scene in normalized device
More informationChapter 11 Representation & Description
Chain Codes Chain codes are used to represent a boundary by a connected sequence of straight-line segments of specified length and direction. The direction of each segment is coded by using a numbering
More informationYaron Lipman Thomas Funkhouser. RifR Raif Rustamov. Princeton University. Drew University
Barycentric Coordinates on Surfaces Yaron Lipman Thomas Funkhouser RifR Raif Rustamov Princeton University Drew University Motivation Barycentric coordinates good for: interpolation shading deformation
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 informationOn transfinite Gordon-Wixom interpolation schemes and their extensions Belyaev, Alexander; Fayolle, Pierre-Alain
Heriot-Watt University Heriot-Watt University Research Gateway On transfinite Gordon-Wixom interpolation schemes and their extensions Belyaev, Alexander; Fayolle, Pierre-Alain Published in: Computers and
More informationInner Approximation of Polygons and Polyhedra by Unions of Boxes
Inner Approximation of Polygons and Polyhedra by Unions of Boxes Christian Spielberger Martin Held Technical Report 2006-02 April 2006 Department of Computer Sciences Jakob-Haringer-Straße 2 5020 Salzburg
More informationThe 3D DSC in Fluid Simulation
The 3D DSC in Fluid Simulation Marek K. Misztal Informatics and Mathematical Modelling, Technical University of Denmark mkm@imm.dtu.dk DSC 2011 Workshop Kgs. Lyngby, 26th August 2011 Governing Equations
More informationLecture 19: Graph Partitioning
Lecture 19: Graph Partitioning David Bindel 3 Nov 2011 Logistics Please finish your project 2. Please start your project 3. Graph partitioning Given: Graph G = (V, E) Possibly weights (W V, W E ). Possibly
More informationGeneralized Barycentric Coordinates
Generalized Barycentric Coordinates Kai Hormann Faculty of Informatics University of Lugano Cartesian coordinates y 3 2 ( 3,1) 1 3 2 1 1 2 3 (2,2) (0,0) 1 2 3 (1, 2) x René Descartes (1596 1650) Appendix
More informationContents. F10: Parallel Sparse Matrix Computations. Parallel algorithms for sparse systems Ax = b. Discretized domain a metal sheet
Contents 2 F10: Parallel Sparse Matrix Computations Figures mainly from Kumar et. al. Introduction to Parallel Computing, 1st ed Chap. 11 Bo Kågström et al (RG, EE, MR) 2011-05-10 Sparse matrices and storage
More information(Sparse) Linear Solvers
(Sparse) Linear Solvers Ax = B Why? Many geometry processing applications boil down to: solve one or more linear systems Parameterization Editing Reconstruction Fairing Morphing 1 Don t you just invert
More informationDiffusion Wavelets for Natural Image Analysis
Diffusion Wavelets for Natural Image Analysis Tyrus Berry December 16, 2011 Contents 1 Project Description 2 2 Introduction to Diffusion Wavelets 2 2.1 Diffusion Multiresolution............................
More informationGeometric Modeling in Graphics
Geometric Modeling in Graphics Part 10: Surface reconstruction Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Curve, surface reconstruction Finding compact connected orientable 2-manifold surface
More informationDigital Geometry Processing Parameterization I
Problem Definition Given a surface (mesh) S in R 3 and a domain find a bective F: S Typical Domains Cutting to a Disk disk = genus zero + boundary sphere = closed genus zero Creates artificial boundary
More informationBarycentric Finite Element Methods
University of California, Davis Barycentric Finite Element Methods N. Sukumar University of California at Davis SIAM Conference on Geometric Design and Computing November 8, 2007 Collaborators and Acknowledgements
More informationComputational Design. Stelian Coros
Computational Design Stelian Coros Schedule for presentations February 3 5 10 12 17 19 24 26 March 3 5 10 12 17 19 24 26 30 April 2 7 9 14 16 21 23 28 30 Send me: ASAP: 3 choices for dates + approximate
More informationUnderstanding Gridfit
Understanding Gridfit John R. D Errico Email: woodchips@rochester.rr.com December 28, 2006 1 Introduction GRIDFIT is a surface modeling tool, fitting a surface of the form z(x, y) to scattered (or regular)
More informationAn Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems
An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems Long Chen University of California, Irvine chenlong@math.uci.edu Joint work with: Huayi Wei (Xiangtan University),
More informationMöbius Transformations in Scientific Computing. David Eppstein
Möbius Transformations in Scientific Computing David Eppstein Univ. of California, Irvine School of Information and Computer Science (including joint work with Marshall Bern from WADS 01 and SODA 03) Outline
More informationCoE4TN4 Image Processing
CoE4TN4 Image Processing Chapter 11 Image Representation & Description Image Representation & Description After an image is segmented into regions, the regions are represented and described in a form suitable
More informationCOMP371 COMPUTER GRAPHICS
COMP371 COMPUTER GRAPHICS LECTURE 14 RASTERIZATION 1 Lecture Overview Review of last class Line Scan conversion Polygon Scan conversion Antialiasing 2 Rasterization The raster display is a matrix of picture
More informationGreedy Routing with Guaranteed Delivery Using Ricci Flow
Greedy Routing with Guaranteed Delivery Using Ricci Flow Jie Gao Stony Brook University Joint work with Rik Sarkar, Xiaotian Yin, Wei Zeng, Feng Luo, Xianfeng David Gu Greedy Routing Assign coordinatesto
More informationProblem Set 4. Assigned: March 23, 2006 Due: April 17, (6.882) Belief Propagation for Segmentation
6.098/6.882 Computational Photography 1 Problem Set 4 Assigned: March 23, 2006 Due: April 17, 2006 Problem 1 (6.882) Belief Propagation for Segmentation In this problem you will set-up a Markov Random
More informationAdvanced Computer Graphics
G22.2274 001, Fall 2009 Advanced Computer Graphics Project details and tools 1 Project Topics Computer Animation Geometric Modeling Computational Photography Image processing 2 Optimization All projects
More informationMesh Processing Pipeline
Mesh Smoothing 1 Mesh Processing Pipeline... Scan Reconstruct Clean Remesh 2 Mesh Quality Visual inspection of sensitive attributes Specular shading Flat Shading Gouraud Shading Phong Shading 3 Mesh Quality
More informationFree-form deformation (FFD)
T.D. DeRose, M. Meyer, Harmonic Coordinates. Pixar Technical Memo #06-02 Free-form deformation (FFD) Advanced Computer Animation Techniques Aug-Dec 2014 cesteves@cimat.mx Free-form deformation (FFD) 2d
More informationEdge Detection Lecture 03 Computer Vision
Edge Detection Lecture 3 Computer Vision Suggested readings Chapter 5 Linda G. Shapiro and George Stockman, Computer Vision, Upper Saddle River, NJ, Prentice Hall,. Chapter David A. Forsyth and Jean Ponce,
More informationA New Smoothing Algorithm for Quadrilateral and Hexahedral Meshes
A New Smoothing Algorithm for Quadrilateral and Hexahedral Meshes Sanjay Kumar Khattri Department of Mathematics, University of Bergen, Norway sanjay@mi.uib.no http://www.mi.uib.no/ sanjay Abstract. Mesh
More informationUnstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications
Unstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications Per-Olof Persson (persson@mit.edu) Department of Mathematics Massachusetts Institute of Technology http://www.mit.edu/
More information09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo
9 - Designing Surfaces Triangular surfaces A surface can be discretized by a collection of points and triangles Each triangle is a subset of a plane Every point on the surface can be expressed as an affine
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 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 informationEF432. Introduction to spagetti and meatballs
EF432 Introduction to spagetti and meatballs CSC 418/2504: Computer Graphics Course web site (includes course information sheet): http://www.dgp.toronto.edu/~karan/courses/418/ Instructors: L2501, T 6-8pm
More information2D Shape Deformation Using Nonlinear Least Squares Optimization
2D Shape Deformation Using Nonlinear Least Squares Optimization Paper ID: 20 Abstract This paper presents a novel 2D shape deformation algorithm based on nonlinear least squares optimization. The algorithm
More informationLecture 15: More Iterative Ideas
Lecture 15: More Iterative Ideas David Bindel 15 Mar 2010 Logistics HW 2 due! Some notes on HW 2. Where we are / where we re going More iterative ideas. Intro to HW 3. More HW 2 notes See solution code!
More informationFall CSCI 420: Computer Graphics. 7.1 Rasterization. Hao Li.
Fall 2015 CSCI 420: Computer Graphics 7.1 Rasterization Hao Li http://cs420.hao-li.com 1 Rendering Pipeline 2 Outline Scan Conversion for Lines Scan Conversion for Polygons Antialiasing 3 Rasterization
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 informationCS 523: Computer Graphics, Spring Shape Modeling. Skeletal deformation. Andrew Nealen, Rutgers, /12/2011 1
CS 523: Computer Graphics, Spring 2011 Shape Modeling Skeletal deformation 4/12/2011 1 Believable character animation Computers games and movies Skeleton: intuitive, low-dimensional subspace Clip courtesy
More informationLaplacian Operator and Smoothing
Laplacian Operator and Smoothing Xifeng Gao Acknowledgements for the slides: Olga Sorkine-Hornung, Mario Botsch, and Daniele Panozzo Applications in Geometry Processing Smoothing Parameterization Remeshing
More informationLecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10
Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful
More informationExample 1. Find the angle measure of angle b, using opposite angles.
2..1 Exploring Parallel Lines Vertically opposite angles are equal When two lines intersect, the opposite angles are equal. Supplementary angles add to 180 Two (or more) adjacent angles on the same side
More informationApplying the weighted barycentre method to interactive graph visualization
Applying the weighted barycentre method to interactive graph visualization Peter Eades University of Sydney Thanks for some software: Hooman Reisi Dekhordi Patrick Eades Graphs and Graph Drawings What
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 informationPolygonal, Polyhedral, and Serendipity Finite Element Methods
Polygonal, Polyhedral, and Serendipity Finite Element Methods Andrew Gillette Department of Mathematics University of Arizona ASU Computational and Applied Math Seminar Slides and more info at: http://math.arizona.edu/
More informationQuestion 2: Linear algebra and transformations matrices rotation vectors linear transformation T=U*D*VT
You must answer all questions. For full credit, an answer must be both correct and well-presented (clear and concise). If you feel a question is ambiguous, state any assumptions that you need to make.
More informationTwo Algorithms for Adaptive Approximation of Bivariate Functions by Piecewise Linear Polynomials on Triangulations
Two Algorithms for Adaptive Approximation of Bivariate Functions by Piecewise Linear Polynomials on Triangulations Nira Dyn School of Mathematical Sciences Tel Aviv University, Israel First algorithm from
More informationPlatform Games Drawing Sprites & Detecting Collisions
Platform Games Drawing Sprites & Detecting Collisions Computer Games Development David Cairns Contents Drawing Sprites Collision Detection Animation Loop Introduction 1 Background Image - Parallax Scrolling
More information2D vector fields 3. Contents. Line Integral Convolution (LIC) Image based flow visualization Vector field topology. Fast LIC Oriented LIC
2D vector fields 3 Scientific Visualization (Part 8) PD Dr.-Ing. Peter Hastreiter Contents Line Integral Convolution (LIC) Fast LIC Oriented LIC Image based flow visualization Vector field topology 2 Applied
More informationDevelopment of a Maxwell Equation Solver for Application to Two Fluid Plasma Models. C. Aberle, A. Hakim, and U. Shumlak
Development of a Maxwell Equation Solver for Application to Two Fluid Plasma Models C. Aberle, A. Hakim, and U. Shumlak Aerospace and Astronautics University of Washington, Seattle American Physical Society
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 informationCS-184: Computer Graphics Lecture #21: Fluid Simulation II
CS-184: Computer Graphics Lecture #21: Fluid Simulation II Rahul Narain University of California, Berkeley Nov. 18 19, 2013 Grid-based fluid simulation Recap: Eulerian viewpoint Grid is fixed, fluid moves
More information1.2 Numerical Solutions of Flow Problems
1.2 Numerical Solutions of Flow Problems DIFFERENTIAL EQUATIONS OF MOTION FOR A SIMPLIFIED FLOW PROBLEM Continuity equation for incompressible flow: 0 Momentum (Navier-Stokes) equations for a Newtonian
More informationCSCI 420 Computer Graphics Lecture 14. Rasterization. Scan Conversion Antialiasing [Angel Ch. 6] Jernej Barbic University of Southern California
CSCI 420 Computer Graphics Lecture 14 Rasterization Scan Conversion Antialiasing [Angel Ch. 6] Jernej Barbic University of Southern California 1 Rasterization (scan conversion) Final step in pipeline:
More information