Title: Texture Synthesis
1 Texture Synthesis
2No Texture
- Using a sampling of 2D perlin Noise provides
smooth hills.
3Terrain Coloring
- Using a 1D texture map based on the altitude can
provide many useful mapping.
4Terrain Coloring
5Terrain Coloring
- Using a 2D texture map provides richer detail,
but is independent of the terrain.
6Terrain Coloring
- More advanced coloring is based on altitude and
slope.
7Rolling Hills
8Procedural texture synthesis
- Gardner 85 sum a small number of sine waves of
different periods and amplitudes. - Perlin 85use 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.
9Reaction-diffusion
- Texture buttons Andrew Witkin and Michael Kass
10(No Transcript)
11Texture 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
12Point Repulsion
13Point Repulsion
14Mutual Tesselation
15Neighborhood Construction
16Neighborhood Construction
17Texture Synthesis on meshes
18Texture Synthesis on meshes
19Texture Synthesis on meshes
20 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.
21Tiled Textures
- Take up little texture memory
22Visual Comparison
Synthetic tilable texture
Simple tiling
Synthesized texture
23 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
24Pixel-Based Texture Synthesis
Input
Output
Step n in Algorithm
25Pixel-Based Texture Synthesis
Input
Output
Build L-shaped Neighborhood
26Pixel-Based Texture Synthesis
Input
Output
Find Matching Neighborhood(s) in Input
27Pixel-Based Texture Synthesis
Input
Output
Select Best Neighborhood from all Candidates
28Pixel-Based Texture Synthesis
Input
Output
Copy Selected Pixel to Output
29Pixel-Based Texture Synthesis
Input
Output
Repeat for all Pixels in this Row...
30Pixel-Based Texture Synthesis
Input
Output
...and all other Output Rows
31Patch-Based Texture Synthesis
Input
Output
Step n in Algorithm
32Patch-Based Texture Synthesis
Input
Output
Patch to be Synthesized in this Step
33Patch-Based Texture Synthesis
Input
Output
Build Neighborhood (Image Mask)
34Patch-Based Texture Synthesis
Input
Output
Find Matching Neighborhood(s) in Input
35Patch-Based Texture Synthesis
Input
Output
Select Best Neighborhood from all Candidates
36Patch-Based Texture Synthesis
Input
Output
Copy Selected Patch to Output
37Patch-Based Texture Synthesis
Input
Output
Apply some Overlap Repair Strategy ...
38Patch-Based Texture Synthesis
Input
Output
... And we are done with this patch
39Patch-Based Texture Synthesis
Input
Output
Repeat for all Patches in Output
40Texture Synthesis
- Solid texture from 2D views
- Heeger Bergen 1995
- Ghazanfarpour Dischler 1999
2D Source
3D result
Images from HeegerBergen 1995
41Previous 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
Source 1
Source 2
morphing
Image from PortillaSimoncelli 1999
42Brodatz Results
aluminum wire
reptile skin
43More Brodatz Results
french canvas
rafia weave
44More Results
wood
granite
45More Results
white bread
brick wall