Wavelet Noise
Perlin Noise The loss-of-detail vs. Aliasing Problem 2D slice through a 3D band-limited function is not band-limited
Perlin Noise (cont’d)
Theory
Orthogonality where
Orthogonality (cont’d) - what we want ? - for all j>=0
Wavelet Noise Downsample Upsample -
Refinability and Upsampling S1:={G(x)|G(x)=Σgiψ(2x-i)} i ψ(x) refinable If
Refinability and Upsampling (cont’d) The sequence (…,fi↑,…) is twice as long as the sequence (…,fk,…)
Wavelets and Downsampling G(x) = G↓(x) + D(x) ↑ ↑ ↑ in S1 in S0 in S1 (also in W0) G↓(x) is the least squares best approximation to G(x) in S0 D(x) is the least squares residual and contains the information is S1 that cannot be represented in S0 Given the coefficients gi for G(x), the coefficients gi↓ for G↓(x) The sequence (…,gk,…) is twice as long as the sequence (…,gi↓,…)
Wavelets and Downsampling(cont’d) It follows that for all integers j>=0 ↑ This is what we want
Constructing noise bands Creating R(x) using a random number generator Compute R↓(x) by downsampling R(x)
Constructing noise bands (cont’d) Computing R↓↑(x) by upsampling R↓(x) Compute N(x) by subtracting R↓↑(x) from R(x)
Fractional scales & translates Contribution
Noise in Multiple Dimensions
Fourier Slice Theorem Band Limited Function Fourier Transform Projection Profile 1D IDFT
Projected Noise
Result
Rendered Image