siggraph2010 - Microsoft Research

advertisement
Multi-Class Blue Noise Sampling
Li-Yi Wei
魏立一
Microsoft Research
Blue noise distribution
random & uniform
applications
sampling
stippling
meshing
texturing
object placement
[Ostromoukhov
et
2004]
[Balzer
al.al.
2009]
[Turket1992]
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]
Prior art mostly for 1 sample class
scenarios with multi-class samples
sampling
(retina cells)
stippling
(pointillism)
texturing
(flowers)
Apply 1 class blue noise to > 1 class
Uniform per class
X
O
O
total set
class 0
class 1
Apply 1 class blue noise to > 1 class
Uniform total set
O
total set
X
class 0
X
class 1
Multi-class blue noise sampling
uniform & random for each class & their unions
O
total set
O
class 0
O
class 1
Background of blue noise
random & uniform
controlled by spacing r
r -1
r -1
r
1
r
radial mean
power
spectrum
anisotropy
Dart throwing
[Dippe and Wold 1985; Cook 1986]
loop:
random sample
conflict check
r
Relaxation
[Lloyd 1982]
indirectly specify r through sample count N
given a set of N sample
loop:
Voronoi for each sample
move sample to centroid
Core idea for multi-class blue noise
replace scalar spacing r by a matrix r
r11
c0
c1
c2
c0
c1
c2
r00
r10
r20
r01
r11
r21
r02
r12
r22
r00
r01
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)
Multi-class hard disk sampling
like 1-class dart throwing, but
r matrix for conflict check
c0
c1
c2
c0 0.40 0.18 0.09
c1 0.18 0.20 0.09
c2 0.09 0.09 0.10
consistent fill rate 1:4:16
01221220122122
may kill existing samples
Soft disk: single class
Gaussian blob
per sample
minimize max(E) → uniform distribution
Soft disk: multi class
minimize max(E) →
uniform distribution
R/G/B: E(c0 /c1 /c2)
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
Build r matrix
diagonal entries {rii}i=0:c-1 given
how to compute off-diagonal entries {rij}i≠j?
(symmetry: rij = rji )
see paper
r00
r10
r20
r30
r01
r11
r21
r31
r02
r12
r22
r32
r03
r13
r23
r33
Analysis [Lagae and Dutre 2008]
spatial uniformity σ
ideal σ in [0.65 0.85]; our σ in [0.65 0.70]
soft disk sampling has larger σ
total set
class 0
class 1
class 2
Analysis [Lagae and Dutre 2008]
spectral analysis
(good quality; radial mean diff from 1-class)
- 1-class
- multi-class
power spectrum
radial mean
anisotropy
Object placement: uniform
Object placement: uniform
Object placement: more classes
Object placement: adaptive
Color stippling
RGBCMYB dots
input
Sensor layout
zoneplate
sin(x2+y2)
Bayer mosaic
Penrose pixel
our method
Discrete layout
noisy
Bayer mosaic
random
soft disk
Tradeoff
Hard disk sampling
Soft disk sampling
O control sample spacing
X control sample spacing
X control sample count
O control sample count
O continuous space
O continuous space
X discrete space
O discrete space
X less uniform
O more uniform
O faster
X slower
Future work
applications & extensions
3D or higher dimensions
surfaces or other non-Euclidean domains
anisotropy
acceleration
tiling
parallelization
[Bowers et al.
2010]
isotropic
aniso
[Li et al. 2010]
Acknowledgement
Yin Li
Brandon Lloyd
Kun Zhou
Bill Baxter
Xin Tong
Naga Govindaraju
Eric Stollnitz
John Manferdelli
Jason Fondran
Reviewers
http://www.giffavicon.com/
http://store.got3d.com/
Download