Download presentation
Presentation is loading. Please wait.
1
Multi-Class Blue Noise Sampling Li-Yi Wei 魏立一 Microsoft Research
2
Introduction
3
Blue noise distribution random & uniform applications sampling stippling meshing texturing object placement [Turk 1992] [Balzer et al. 2009] [Ostromoukhov et al. 2004]
5
Previous work half-toning [Ulichney 1986; Wang and Parker 1999; Ostromoukhov 2001; Zhou and Fang 2003; Pang et al. 2008; Chang et al. 2009] dart throwing [Cook 1986; Mitchell 1987; McCool and Fiume 1992; Jones 2006; Dunbar and Humphreys 2006; White et al. 2007; Wei 2008; Fu and Zhou 2008; Cline et al. 2009; Gamito and Maddock 2010] relaxation [Lloyd 1982; Turk 1992; Balzer et al. 2009; Tung et al. 2010; Liu et al. 2010; Levy and Liu 2010] tiling [Cohen et al. 2003; Ostromoukhov et al. 2004; Kopf et al. 2006; Lagae and Dutre 2006; Ostromoukhov 2007]
6
Prior art mostly for 1 sample class scenarios with multi-class samples sampling (retina cells) stippling (pointillism) texturing (flowers)
7
Example: multiple kinds of sensors cone/rod cellsRGB sensors
8
Example: color stippling RGBCMYB dots
9
Example: multiple kinds of objects 2D/3D objects texture primitives
10
Issue Single class blue noise methods not suitable for multi class setting
11
Apply 1 class blue noise to > 1 class Uniform per class class 0class 1total set OOX
12
Apply 1 class blue noise to > 1 class Uniform total set total setclass 0class 1 XXO
13
Multi-class blue noise sampling class 0class 1total set OOO
14
Multi-class blue noise sampling uniform & random for each class & their unions class 0class 1total set OOO
15
Algorithms
16
Background of blue noise random & uniform controlled by spacing r r r -1 power spectrum anisotropy r -1 radial mean
17
r Dart throwing [Dippe and Wold 1985; Cook 1986] loop: random sample conflict check
18
indirectly specify r through sample count N given a set of N sample loop: Voronoi for each sample move sample to centroid Relaxation [Lloyd 1982]
19
http://en.wikipedia.org/wiki/Lloyd%27 s_algorithm
20
Core idea for multi-class blue noise replace scalar spacing r by a matrix r r 00 r 01 r 02 r 10 r 11 r 12 r 20 r 21 r 22 c0c0 c1c1 c2c2 c0c0 c1c1 c2c2 r 00 r 11 r 01
22
Generating multi-class blue noise hard disk sampling control sample spacing r (like dart throwing) soft disk sampling control sample count N (like Lloyd relaxation)
24
Multi-class hard disk sampling like 1-class dart throwing, but r matrix for conflict check consistent fill rate 1:4:16 0 1 2 2 1 2 2 may kill existing samples c0c0 c1c1 c2c2 c0c0 c1c1 c2c2 0.40 0.18 0.09 0.18 0.20 0.09 0.09 0.09 0.10
25
0.40 0.18 0.09 0.18 0.20 0.09 0.09 0.09 0.10 c0c0 c1c1 c2c2 c0c0 c1c1 c2c2
26
Soft disk: single class Gaussian blob per sample minimize max( E ) → uniform distribution
27
Soft disk: single class Gaussian blob per sample minimize max( E ) → uniform distribution
29
Soft disk: multi class minimize max( E ) → uniform distribution R/G/B: E (c 0 /c 1 /c 2 )
30
Multi-class soft disk sampling ~ best candidate dart throwing [Mitchell 1987] loop for each trial: random k samples pick one with min max( E ) X Lloyd relaxation stuck in multi-class setting
32
Build r matrix diagonal entries {r ii } i=0:c-1 given how to compute off-diagonal entries {r ij } i≠j ? (symmetry: r ij = r ji ) see paper r 00 r 01 r 02 r 03 r 10 r 11 r 12 r 13 r 20 r 21 r 22 r 23 r 30 r 31 r 32 r 33
33
Build r matrix: 2-class scenario pick off-diagonal r Φ for uniform distribution r0rΦrΦr1r0rΦrΦr1 dimension density
35
Build r matrix: 2-class scenario class 0class 1total set r Φ too small r Φ too large
36
Build r matrix: general scenario each class r i can only be interfered by r j > r i build r matrix in decreasing order of r i r 0 > r 1 (f = r -1 ) f 1 < f 0
37
Build r matrix: general scenario r 0 > r 1 > r 2 = r 3 > r 4 d 01 = d 00 +d 11 d 02 = d 00 +d 11 +d 22 +d 33 d 04 = d 00 +d 11 +d 22 +d 33 +d 44 r 00 r 01 r 02 r 03 r 04 r 10 r 11 r 12 r 13 r 14 r 20 r 21 r 22 r 23 r 24 r 30 r 31 r 32 r 33 r 34 r 40 r 41 r 42 r 43 r 44
38
Analysis
39
Analysis [Lagae and Dutre 2008] spatial uniformity σ ideal σ in [0.65 0.85]; our σ in [0.65 0.70] soft disk sampling has larger σ
40
total set class 1 class 0 class 2
41
Analysis [Lagae and Dutre 2008] spectral analysis (good quality; radial mean diff from 1-class) power spectrumradial meananisotropy - 1-class - multi-class
42
Applications
43
Object placement: 1 class
44
Object placement: uniform
46
Object placement: more classes
47
Object placement: adaptive
48
(Monochrome) stippling e.g. [Balzer et al. SIGGRAPH 2009] input (continuous tone)output (black dots)
49
Color stippling RGBCMYB dots input
50
Sensor layout Bayer mosaic grid layout sampling & reconstruction issue Penrose pixels [Ben Ezra et al. ICCV 2007] randomized 3-color better sampling & reconstruction
51
Sensor layout Penrose pixels our method spatial layoutpower spectrumzone-plate sin(x 2 +y 2 )
52
zoneplate sin(x 2 +y 2 ) Sensor layout Bayer mosaicPenrose pixelour method
53
zoneplate sin(x 2 +y 2 )
54
Sample domain Continuous domain Discrete domain
55
Continuous vs. discrete domain continuous O flexible X layout discrete X flexible O layout
56
Discrete layout Bayer mosaicrandomsoft disk noisy
57
Discrete layout hard diskerror diffusionsoft disk less uniform cannot control sample count
58
Tradeoff Hard disk sampling O control sample spacing X control sample count O continuous space X discrete space X less uniform O faster Soft disk sampling X control sample spacing O control sample count O continuous space O discrete space O more uniform X slower
59
Concluding Remarks
60
Future work applications & extensions 3D or higher dimensions surfaces or other non-Euclidean domains anisotropy acceleration tiling parallelization [Bowers et al. 2010] aniso [Li et al. 2010]isotropic
62
Acknowledgement Yin Li Kun Zhou Xin Tong Eric Stollnitz Jason Fondran http://www.gif- favicon.com/ Brandon Lloyd Bill Baxter Naga Govindaraju John Manferdelli Reviewers http://store.got3d.com/
63
Thank you!
64
Data
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.