Download - Texture Synthesis
Texture Synthesis
No Texture
Using a sampling of 2D perlin Noise provides smooth hills.
Terrain Coloring Using a 1D texture map based on the
altitude can provide many useful mapping.
Terrain Coloring
Striped 1D texture map.
Terrain Coloring
Using a 2D texture map provides richer detail, but is independent of the terrain.
Terrain Coloring More advanced coloring is based on
altitude and slope.
Rolling Hills
Flowers, trees, paths, …
Procedural texture synthesis [Gardner 85] sum a small number of sine
waves of different periods and amplitudes.
[Perlin 85]use band-limited noise function [Turing 52] Reaction-diffusion system in
developmental biology.
Two or more chemicals can diffuse through an embryo and react with each other until a stable pattern of chemical concentration is reached.
Reaction-diffusion
Texture buttons – Andrew Witkin and Michael Kass
Texture synthesis on surfaces
Retiling– Sprinkle some new vertices onto the mesh– Space them uniformly over the mesh using point
repulsion.– Remove old vertices and re-triangulate– Create a hierarchy of meshes
Neighborhood Construction: – flatten a set of nearby vertices– resample the flattened patch
Point Repulsion
Point Repulsion
Mutual Tesselation
Neighborhood Construction
Neighborhood Construction
Texture Synthesis on meshes
Texture Synthesis on meshes
Texture Synthesis on meshes
2D Texture Synthesis
nxm Input Texture
NxM Output Texture The goal: Synthesize an output texture
which is perceptually similar to the input texture. Also ensure that the result contains sufficient variation.
Tiled Textures
Take up little texture memory
Visual Comparison
Synthesized textureSimple tiling
Synthetic tilabletexture
Existing (and Impressive) Technology
Pixel-Based:– Non-parametric Sampling [Efros and Leung 1999]– Tree-structured Vector Quantization [Wei and
Levoy 2000]– Synthesizing Natural Textures [Ashikhmin 2001]– Image Analogies [Hertzmann et al. 2001]
Patch-Based:– Patch-Based Sampling [Guo et al. 2001]– Image Quilting [Efros and Freeman 2001]– Hierarchical Pattern Mapping [Soler et al. 2002]
Pixel-Based Texture Synthesis
Input Output
Step n in Algorithm
Pixel-Based Texture Synthesis
Input Output
Build L-shaped Neighborhood
Pixel-Based Texture Synthesis
Input Output
Find Matching Neighborhood(s) in Input
Pixel-Based Texture Synthesis
Input Output
Select Best Neighborhood from all Candidates
Pixel-Based Texture Synthesis
Input Output
Copy Selected Pixel to Output
Pixel-Based Texture Synthesis
Input Output
Repeat for all Pixels in this Row...
Pixel-Based Texture Synthesis
Input Output
...and all other Output Rows
Patch-Based Texture Synthesis
Input Output
Step n in Algorithm
Patch-Based Texture Synthesis
Input Output
Patch to be Synthesized in this Step
Patch-Based Texture Synthesis
Input Output
Build Neighborhood (Image Mask)
Patch-Based Texture Synthesis
Input Output
Find Matching Neighborhood(s) in Input
Patch-Based Texture Synthesis
Input Output
Select Best Neighborhood from all Candidates
Patch-Based Texture Synthesis
Input Output
Copy Selected Patch to Output
Patch-Based Texture Synthesis
Input Output
Apply some Overlap Repair Strategy ...
Patch-Based Texture Synthesis
Input Output
... And we are done with this patch
Patch-Based Texture Synthesis
Input Output
Repeat for all Patches in Output
Texture Synthesis
Solid texture from 2D views– Heeger & Bergen 1995– Ghazanfarpour & Dischler 1999
Images from [Heeger&Bergen 1995]
2D Source 3D result
Previous Work
Texture varying, morphing, and mixture– Portilla & Simoncelli 1999– Bar-Joseph, El-Yaniv, Lichinski, Werman 2001– Z. Liu, C. Liu, Shum, Yu 2003– PVT paper in SIGGRAPH 2003
Image from [Portilla&Simoncelli 1999]
Source 1 Source 2morphing
Brodatz Resultsaluminum wirereptile skin
More Brodatz Results
french canvas rafia weave
More Resultswood granite
More Resultswhite bread brick wall