Simulating Decorative Mosaics Alejo Hausner University of Toronto.

36
Simulating Decorative Mosaics Alejo Hausner University of Toronto

Transcript of Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Page 1: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics

Alejo HausnerUniversity of Toronto

Page 2: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 2

Mosaic Tile Simulation

• Reproduce mosaic tiles– long-lasting (graphics is ephemeral)– realism with very few pixels– pixels have orientation

Page 3: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 3

Real Tile Mosaics

Page 4: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 4

Real Mosaics II

Page 5: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 5

The Problem

• Square tiles cover the plane perfectly

• Variable orientation --> loose packing

• Opposing goals:– non-uniform grid– dense packing

Page 6: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 6

Previous Work

• Romans: algorithm?

• Relaxation (Haeberli’90) – scatter points on image– voronoi region = tile– tiles not square

Page 7: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 7

Previous Work

• Escherization (Kaplan’00) – regular tilings– use symmetry groups

• Stippling (Deussen’01)

– voronoi relaxation– round dots

Page 8: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 8

Voronoi Diagrams

• What are they– sites, and regions closest to each site

• How to compute them?– Divide & conquer (PS)– sweepline (Fortune)– incremental

Page 9: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 9

Voronoi Diagram

Page 10: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 10

Centroidal Voronoi Diagrams

• VD sites are not centroids

• Lloyd’s method (k-means)– move site to centroid,– recalculate VD– repeat

Page 11: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 11

Centroidal Voronoi Diagrams

• VD sites are not centroids

• Lloyd’s method (k-means)– move site to centroid,– recalculate VD– repeat

Page 12: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 12

Centroidal Voronoi Diagrams

• VD sites are not centroids

• Lloyd’s method (k-means)– move site to centroid,– recalculate VD– repeat

Page 13: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 13

Centroidal Voronoi Diagram

Page 14: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 14

CVD uses

• Nature:– honeycombs– giraffe spots

• Sampling– approximates Poisson-disk (low discrepancy)– can bias for filter function

Page 15: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 15

Hardware-assisted VD’s

• SG99: Hoff et al– uses graphics hardware– draw cone at each site– orthogonal view from above– each region is single-coloured– can extend to non-point sites

(curves)

project

Page 16: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 16

Key idea

• Cone is distance function– radius = height

• Non-euclidean distance:– different kind of cone– eg square pyramid– can be non-isotropic

(rotate pyramid around Z)

r

h

h=|x-a|+|y-b|

(a,b)

(x,y)h

Page 17: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 17

Basic Tiling Algorithm

• Compute orientation field (details later)

• scatter points on image– use pyramids to get oriented tiles

• apply Lloyd’s method to spread sites evenly

• draw oriented tile at each site

Page 18: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 18

Details

• Lloyd’s method:– To compute centroid of each Voronoi region:

1: read back pixels, 2: get average (row,col) per colour 3: convert back to object coords.

Page 19: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 19

Lloyd Near Convergence

Page 20: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 20

Orientation Field

• Choose edges that need emphasis• compute generalized VD for edges (Hoff99)

• get gradient vector of distance field– distance = z-buffer distance

• gradient orientation = tile orientation– points away from edges

Page 21: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 21

Orientation Field

Page 22: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 22

Edge Discrimination

• Must line up tiles on edges

• But both sides of edge oriented same– square tiles ==> 180o rotational symmetry

• Use hardware– draw edge thick, different colour– voronoi regions move away from edges– leaves gap where edge is.

Page 23: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 23

Tiles Straddle Edge

Page 24: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 24

Thick Edge: Centroid Repelled

Page 25: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 25

After 10 Iterations

Page 26: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 26

Original Voronoi Diagram

Page 27: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 27

After 20 Iterations

Page 28: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 28

One Tile per Voronoi Region

Page 29: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 29

Thinner Tiles

Page 30: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 30

Round Tiles

Page 31: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 31

Rhomboidal Tiles

Page 32: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 32

Tiles are not Pixels4000 pixels 4000 tiles

Page 33: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 33

More Pictures

Page 34: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 34

“Painterly” Rendering

Tile = Paint stroke

Page 35: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 35

Summary

• New method for packing squares on curvilinear grid

• Minimizes sum of particle distances

Page 36: Simulating Decorative Mosaics Alejo Hausner University of Toronto.

Simulating Decorative Mosaics 36

Further Work

• Reduce “grout”– final pass: adjust tile shapes

• currently don’t use adjacency info

– use divergence of orientation field ·

• Improve colour– real tiles have fixed colour set: Dither? How?