Lapped Textures Emil Praun and Adam Finkelstien (Princeton University) Huges Hoppe (Microsoft Research) SIGGRAPH 2000 Presented by Anteneh.

Slides:



Advertisements
Similar presentations
Lapped textures Emil Praun Adam Finkelstein Hugues Hoppe
Advertisements

Real-Time Fur on Arbitrary Surfaces Jed Lengyel Emil Praun Adam Finkelstein Hugues Hoppe Jed Lengyel Emil Praun Adam Finkelstein Hugues Hoppe Microsoft.
Shape Compression using Spherical Geometry Images
Computer graphics & visualization Real-Time Pencil Rendering Marc Treib.
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
Geometry Image Xianfeng Gu, Steven Gortler, Hugues Hoppe SIGGRAPH 2002 Present by Pin Ren Feb 13, 2003.
I MAGIS is a joint project of CNRS - INPG - INRIA - UJF iMAGIS-GRAVIR / IMAG Painting folds using expansion textures Jean Combaz Fabrice Neyret
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
Inter-Surface Mapping John Schreiner, Arul Asirvatham, Emil Praun (University of Utah) Hugues Hoppe (Microsoft Research)
11 A Multi-Source Geodesic Distance Field approach for Procedural Texturing of Complex Meshes A Multi-Source Geodesic Distance Field approach for Procedural.
Signal-Specialized Parameterization for Piecewise Linear Reconstruction Geetika Tewari, Harvard University John Snyder, Microsoft Research Pedro V. Sander,
Spherical Parameterization and Remeshing Emil Praun, University of Utah Hugues Hoppe, Microsoft Research.
Exchanging Faces in Images SIGGRAPH ’04 Blanz V., Scherbaum K., Vetter T., Seidel HP. Speaker: Alvin Date: 21 July 2004.
Iso-charts: Stretch-driven Mesh Parameterization using Spectral Analysis Kun Zhou, John Snyder*, Baining Guo, Heung-Yeung Shum Microsoft Research Asia.
Lapped Textures Emil Praun Adam Finkelstein Hugues Hoppe Emil Praun Adam Finkelstein Hugues Hoppe Princeton University Microsoft Research Princeton University.
Final Class: Range Data registration CISC4/689 Credits: Tel-Aviv University.
Maryia Kazakevich “Texture Synthesis by Patch-Based Sampling” Texture Synthesis by Patch-Based Sampling Real-Time Texture Synthesis By Patch-Based Sampling,
Lapped Textures Emil Praun Adam Finkelstein Hugues Hoppe Emil Praun Adam Finkelstein Hugues Hoppe Princeton University Microsoft Research Princeton University.
Bounded-distortion Piecewise Mesh Parameterization
Lapped Textures SIGGRAPH 2000 Emil Praun Adam Finkelstein Hugues Hoppe.
Image Quilting for Texture Synthesis and Transfer Alexei A. Efros1,2 William T. Freeman2.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
Surface Parametrizations Hugues Hoppe Microsoft Research IMA Workshop on Computer Graphics May 18, 2001 Hugues Hoppe Microsoft Research IMA Workshop on.
Procedural Shape Synthesis on Subdivision Surfaces
Texture Synthesis on Surfaces Paper by Greg Turk Presentation by Jon Super.
TEXTURE SYNTHESIS PEI YEAN LEE. What is texture? Images containing repeating patterns Local & stationary.
Mesh Parameterization: Theory and Practice Non-Planar Domains.
Texture Synthesis over Arbitrary Manifold Surfaces Li-Yi Wei Marc Levoy Computer Graphics Group Stanford University.
Painterly Rendering for Animation Barbara J. Meier Walt Disney Feature Animation SIGGRAPH 96.
Computer Graphics Inf4/MSc Computer Graphics Lecture 11 Texture Mapping.
3D Global Registration. The Problem Given: n scans around an objectGiven: n scans around an object Goal: align them allGoal: align them all First attempt:
Projective Texture Atlas for 3D Photography Jonas Sossai Júnior Luiz Velho IMPA.
Parameterization.
1 Background and definitions Cindy Grimm. 2 Siggraph 2005, 8/1/ Overview What does it mean to be.
Volumetric Illustration: Designing 3D Models with Internal Textures Shigeru Owada Frank Nielsen Makoto Okabe Takeo Igarashi The University of Tokyo Sony.
Texture Mapping by Model Pelting and Blending
PolyCube-Maps seamless texture mapping
Light Using Texture Synthesis for Non-Photorealistic Shading from Paint Samples. Christopher D. Kulla, James D. Tucek, Reynold J. Bailey, Cindy M. Grimm.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
Reporter: Zhonggui Chen
1 Surface Applications Fitting Manifold Surfaces To 3D Point Clouds, Cindy Grimm, David Laidlaw and Joseph Crisco. Journal of Biomechanical Engineering,
Geometry Images Xiang Gu Harvard University Steven J. Gortler Harvard university Hugues Hoppe Microsoft Research Some slides taken from Hugues Hoppe.
1 Adding charts anywhere Assume a cow is a sphere Cindy Grimm and John Hughes, “Parameterizing n-holed tori”, Mathematics of Surfaces X, 2003 Cindy Grimm,
Global Parametrization of Range Image Sets Nico Pietroni, Marco Tarini, Olga Sorkine, Denis Zorin.
Shape Descriptors Thomas Funkhouser and Michael Kazhdan Princeton University Thomas Funkhouser and Michael Kazhdan Princeton University.
1 Interactive Thickness Visualization of Articular Cartilage Author :Matej Mlejnek, Anna Vilanova,Meister Eduard GröllerMatej MlejnekAnna VilanovaMeister.
Surface Meshing Material tret de: S. J. Owen, "A Survey of Unstructured Mesh Generation Technology", Proceedings 7th International Meshing Roundtable,
Lapped Solid Textures: Filling a Model with Anisotropic Textures Kenshi Takayama 1 Makoto Okabe 1 Takashi Ijiri 1 Takeo Igarashi 1,2 1 The University of.
Extraction and remeshing of ellipsoidal representations from mesh data Patricio Simari Karan Singh.
TextureAmendment Reducing Texture Distortion in Constrained Parameterizations Yu-Wing TaiNational University of Singapore Michael S. BrownNational University.
1 Polygonal Techniques 이영건. 2 Introduction This chapter –Discuss a variety of problems that are encountered within polygonal data sets The.
Lapped Solid Textrues Filling a Model with Anisotropic Textures
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
A construction of rational manifold surfaces of arbitrary topology and smoothness from triangular meshes Presented by: LiuGang
Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일.
2D Texture Synthesis Instructor: Yizhou Yu. Texture synthesis Goal: increase texture resolution yet keep local texture variation.
Graphcut Textures Image and Video Synthesis Using Graph Cuts
Geometry Synthesis Ares Lagae Olivier Dumont Philip Dutré Department of Computer Science Katholieke Universiteit Leuven 10 August, 2004.
Outline ● Introduction – What is the problem ● Generate stochastic textures ● Improve realism ● High level approach - Don't just jump into details – Why.
Data-driven Architectural texture mapping Texture mapping Un-textured 3D sceneTextured output Textured Architectures 由于建筑物的3D model和 textures均属于structured.
Outline ● Introduction – What is the problem ● Generate stochastic textures ● Improve realism ● High level approach - Don't just jump into details – Why.
SIGGRAPH 2007 Hui Fang and John C. Hart.  We propose an image editing system ◦ Preserve its detail and orientation by resynthesizing texture from the.
1 Spherical manifolds for hierarchical surface modeling Cindy Grimm.
Graphcut Textures:Image and Video Synthesis Using Graph Cuts
Detail Preserving Shape Deformation in Image Editing
Head pose estimation without manual initialization
Domain-Modeling Techniques
Mesh Parameterization: Theory and Practice
Image Quilting for Texture Synthesis & Transfer
Presentation transcript:

Lapped Textures Emil Praun and Adam Finkelstien (Princeton University) Huges Hoppe (Microsoft Research) SIGGRAPH 2000 Presented by Anteneh

Introduction A method of creating a texture over an arbitrary surface mesh, using a sample 2D texture A method of creating a texture over an arbitrary surface mesh, using a sample 2D texture Basic approach: Basic approach: Texture a surface with overlapping patches Texture a surface with overlapping patches Repeatedly past small regions of the sample surface on to parts of the mesh Repeatedly past small regions of the sample surface on to parts of the mesh Reduce the appearance of seams through alpha blending Reduce the appearance of seams through alpha blending

Goal “example” image textured surface mesh geometry ?

Previous Work Histogram matching of sample texture and noise image [Heeger and Bergen 96] Histogram matching of sample texture and noise image [Heeger and Bergen 96] Shuffling images in a Laplacian pyramid representation [Debonet 97] Shuffling images in a Laplacian pyramid representation [Debonet 97] Random motion of image blocks [Xu et al 2000] Random motion of image blocks [Xu et al 2000] Noise functions [Perlin 85] Noise functions [Perlin 85] Parameterization and texture atlasing [Maillot et al 93] Parameterization and texture atlasing [Maillot et al 93]

Approach Identify a set of broad features from the sample texture, repeatedly paste until the mesh is covered. Identify a set of broad features from the sample texture, repeatedly paste until the mesh is covered. texture patch surfacesurface

Procedure Cut texture patches from input texture Specify direction and scale fields over mesh Repeat Select random texture patch T Select random uncovered location L for paste Grow surface patch S around L to size of T Flatten S over T Record paste operation Update face coverages Until the mesh is covered

Process: creating texture patches Highly structured texture: avoid cutting across important features. Patches manually outlined by users commercial tools. Highly structured texture: avoid cutting across important features. Patches manually outlined by users commercial tools. Homogeneous or stochastic textures: use a predefined shape like a splotch or circle. Homogeneous or stochastic textures: use a predefined shape like a splotch or circle.

Procedure Cut texture patches from input texture Specify direction and scale fields over mesh Repeat Select random texture patch T Select random uncovered location L for paste Grow surface patch S around L to size of T Flatten S over T Record paste operation Update face coverages Until the mesh is covered

Direction and scale User will assign each mesh face a tangential vector T within its plane. Procedure will interpolate remaining vectors from a few vector specifications User will assign each mesh face a tangential vector T within its plane. Procedure will interpolate remaining vectors from a few vector specifications The direction of T will be the texture up direction, and the magnitude will be the local uniform scaling. The direction of T will be the texture up direction, and the magnitude will be the local uniform scaling. At each face convert T into a tangential basis (S, T) such that S = T x N At each face convert T into a tangential basis (S, T) such that S = T x N

Direction and scale User specified User specified

Direction and scale Local orientation: For isotropic textures, direction is not important. Procedure will perform local orientation. Local orientation: For isotropic textures, direction is not important. Procedure will perform local orientation.

Procedure Cut texture patches from input texture Specify direction and scale fields over mesh Repeat Select random texture patch T Select random uncovered location L for paste Grow surface patch S around L to size of T Flatten S over T Record paste operation Update face coverages Until the mesh is covered

Growing surface patch Grow a surface patch where a texture patch can be pasted, starting with a triangle face. Grow a surface patch where a texture patch can be pasted, starting with a triangle face. As new faces are added to the patch, assign an initial guess for their parametrization. As new faces are added to the patch, assign an initial guess for their parametrization. Steps: Steps: 1) A random point is chosen to place a triangle face on an un-textured location. Map triangle to texture space so that it maps to texture patch center

Patch Growth

Growing surface patch Steps: Steps: 2) Grow the surface patch around the first triangle. Constraints: The surface patch is required to be homeomorphic to a disk. The surface patch is required to be homeomorphic to a disk. Stop growing if the surface patch is not at least partially inside the texture patch Stop growing if the surface patch is not at least partially inside the texture patch Avoid growing in areas of high curvature to stop texture distortion Avoid growing in areas of high curvature to stop texture distortion

Patch Growth

Patch Growth

Patch Growth

Patch Growth

Patch Growth

Patch Growth

Optimization of surface patch parameterization Attempt to match the images from the surface tangent vectors (S, T) with texture coordinate axes (, using a least squares method. Attempt to match the images from the surface tangent vectors (S, T) with texture coordinate axes (ˆs,ˆt), using a least squares method. This optimization minimizes the differences between ( This optimization minimizes the differences between (ˆs,ˆt) and the parameterized form of (S, T) in texture coordinates. This aligns the texture patch to the user specified direction field. This aligns the texture patch to the user specified direction field.

Optimization

Procedure Cut texture patches from input texture Specify direction and scale fields over mesh Repeat Select random texture patch T Select random uncovered location L for paste Grow surface patch S around L to size of T Flatten S over T Record paste operation Update face coverages Until the mesh is covered

Texture Storage and rendering Two methods Two methods 1) Texture Atlas: patches of triangles with similar normals. Faster rendering but requires more user effort. 2) Runtime pasting: Record the parameters for each paste operation, and then render these surface patches at runtime. May render triangles several times but has effective resolution.

Results: Splotches

Results: Anisotropic

Controlling Direction and Scale

Limitations low-frequencycomponentsboundarymismatches direction field singularities

Summary Texture synthesis through overlapping patch pastes. Texture synthesis through overlapping patch pastes. Minimal edge blending. Minimal edge blending. Use optimization to align texture patches with the direction field of the mesh. Use optimization to align texture patches with the direction field of the mesh. User interaction (15 min) and preprocessing (upto 6 min). User interaction (15 min) and preprocessing (upto 6 min).

Future Work Fine-tuning patch placement: sharp texture features align across patch boundaries. Fine-tuning patch placement: sharp texture features align across patch boundaries. More automation: reduce user interaction. More automation: reduce user interaction. Explore other texture types such as animated, volumetric and view-dependent textures. Explore other texture types such as animated, volumetric and view-dependent textures.

???

Optimization