Moiré Patterns Examples - Jaggies

Moiré Patterns Examples - Jaggies

Motivation • The main goal of Computer Graphics is to generate 2D images • 2D images are continuous 2D functions (or signals) – monochrome f(x,y) –or color r(x,y), g(x,y), b(x,y) • These functions are represented by a 2D set of discrete samples (pixels) • Sampling can cause artifacts (=Aliasing) 2 7. Anti-Aliasing Examples - Moiré Patterns Examples - Jaggies • Staircase effect at borders 3 4 7. Anti-Aliasing 7. Anti-Aliasing Temporal Aliasing Aliasing in Computer Graphics • Aliasing effects: – loss of detail time –Moirépatterns –jaggies real (continuous) motion • Appear in – texture mapping – scan conversion of geometry sampled (perceived) motion – raytracing 5 6 7. Anti-Aliasing 7. Anti-Aliasing Sampling and Reconstruction Example – Point Sampling 7 8 7. Anti-Aliasing 7. Anti-Aliasing Signal Processing Spectrum of an Image • Aliasing is well understood in signal processing •What is usignal of an image f(x,y)? • Interpret images as 2D signals •Use Fourier analysis (1D first) • Aliasing = sampling of L2-functions below the •Represent f(x) as a sum of harmonic waves: Nyquist frequency uNyquist = 2 usignal ∞ f(x) = ∫ F(u)e j 2πu x du −∞ • The amplitudes F(u) of waves with frequency u (spectrum) are computed as ∞ F{}f(x) = F(u) = f(x)e− j 2πu x dx 9 ∫ 10 −∞ 7. Anti-Aliasing 7. Anti-Aliasing Avoiding Aliasing 1D Fourier Transform •Let W be the maximum u for which |F(u)|>0 • Either choose usampling > 2W • Fourier transform • Or zero all F(u) for u > ½ usampling ∞ F{}f(x) = F(u) = f(x)e− j 2πu x dx • i.e. low pass filter the signal ∫ −∞ • Smoothing of image before sampling! •Inverse transform • e.g. Mip mapping: ∞ F -1{}F(u) = f(x) = ∫ F(u)e j 2πu x du −∞ 11 12 decreasing sampling rate, increased smoothing 7. Anti-Aliasing 7. Anti-Aliasing 1D Discrete Fourier Transform 2D Fourier Transforms ∞ ∞ j 2π k i 1 N −1 − − j 2π(u x+v y) • Discrete transform F(k) = ∑ f(i)e N F{}f(x,y) = F(u,v) = ∫∫f(x,y)e dx dy N i=0 −∞−∞ ∞ ∞ -1 j 2π(u x v y) N −1 j 2π k i F {}F(u,v) = f(x,y) = f(x,y)e + du dv N ∫∫ • Discrete inverse f(i) = ∑ F(k)e −∞−∞ k =0 • Discrete setting x = i ⋅∆x, u x v y u = k ⋅ ∆u 1 M −1N −1 − j 2π( + ) F(u,v) = f(x,y)e M N 1 M N ∑∑ • Heisenberg resolution bounds ∆x ⋅ ∆u ≥ x=0 y=0 4π u x v y M −1 N −1 j 2π( + ) f(x,y) = F(u,v)e M N 13 ∑∑ 14 u=0 v=0 7. Anti-Aliasing 7. Anti-Aliasing Example: Reconstruction 2D Fourier Transforms rect(x,y) sinc(x,y) f(i∆x) g(x) x x ∆x reconstruction filter f(x) N f(x) = ∑ f (i∆x)⋅ g(x − i∆x)⋅∆x sine cardinal: x i=1 ⎧1 x = 0 sinc(x) = ⎨ ⎩sin(x) / x otherwise 15 16 7. Anti-Aliasing 7. Anti-Aliasing Convolutions Convolutions ∞ f(x)*g(x) = ∫ f(α)g(x − α)dα −∞ f(x) δ(x) x x f(x) g(x) ∞ f(x)*δ(x) = f(α)δ(x − α)dα = f(x) x x ∫ −∞ • Discrete setting f(α) g(x-α) M −1 f(x)*g(x) = ∑ f(m)g(x − m) α m=0 x 17 18 7. Anti-Aliasing 7. Anti-Aliasing Convolutions Convolutions •2D convolution as a separable TP-extension • Convolution theorem ∞ ∞ f(x)*g(x) ≡ F(u)G(u) f(x,y)*g(x,y) = ∫∫f(α, β) g(x − α,y − β)dα dβ −∞−∞ f(x)g(x) ≡ F(u)*G(u) • Discrete form • For function of finite energy (L2) M −1N −1 f(x,y)*g(x,y) = f(m,n) g(x − m,y − n) ∞ ∑∑ 2 2 m=0 n=0 f = f,f = ∫ f(x) dx < ∞ −∞ 19 20 7. Anti-Aliasing 7. Anti-Aliasing Aliasing Aliasing • Sampling = multiplication with sequence of • Multiplication converts to convolution in delta functions (impulse train) Fourier domain 21 22 7. Anti-Aliasing 7. Anti-Aliasing Aliasing Aliasing • Convolution with sequence of delta functions • Overlap of Fourier transforms leads to aliasing = periodization 23 24 7. Anti-Aliasing 7. Anti-Aliasing Aliasing Aliasing-free Reconstruction Spatial Domain Frequency Domain Spatial Domain Frequency Domain • Reconstruction = Low pass filtering 25 26 7. Anti-Aliasing 7. Anti-Aliasing Occurrence of Aliasing 2D Sampling Spatial Domain Frequency Domain Spatial Domain Frequency Domain • 2D impulse fields ∞ ∞ f(x,y)δ(x − x ,y − y )dx dy = f(x ,y ) ∫∫ 0 0 0 0 −∞−∞ 27 28 7. Anti-Aliasing 7. Anti-Aliasing Fourier Domain Reconstruction – Antialiasing • Periodic spectrum of band limited sampled function • Windowing spectrum using filters •Simple f(x,y) = G(u,v)[S(u,v)*F(u,v)] where ⎧1 (u,v) within Bounding Box of R G(u,v) = ⎨ ⎩0 else 29 30 7. Anti-Aliasing 7. Anti-Aliasing 2D Sampling Theorem • Sampling rate is bounded by 1 ∆u = N ∆x 1 ∆v = N ∆y • Finite, discrete setting 1 ∆x ≤ 2Wu 1 ∆y ≤ 31 32 2Wv 7. Anti-Aliasing 7. Anti-Aliasing Spectral Analysis Geometry Antialiasing Filters in Practice • Properties of a good low pass filter 33 34 7. Anti-Aliasing 7. Anti-Aliasing Antialiasing Filters Antialiasing Filters • B-Spline filters of order n • Gaussian filters 2 2 G (ω) = e−σ ω / 2 σ 2 1 2 2 ⎧1 x ≤ 1 g (x) = e−x / 2 σ ↔ ⎪ 2 sin ω/ 2 sin π f σ 2 2 π g1(x) = ⎨ ↔ = = sin c f σ 2 π = g (ω) 0 x > 1 ω/ 2 π f 1/σ 2 ⎩⎪ 2 σ • Sinc-filter • Increase order by repeated convolution ωc x sin(ωc x) ω ⎧1 ω ≤ ωc g (x) = g (x)*g (x)*…*g (x) ↔ sin c n f sinc( ) = ↔ g ( ) = ⎨ n 1 1 1 1 0 ω > ω π π x 2ωc ⎩ c 35 36 7. Anti-Aliasing 7. Anti-Aliasing Filtering in Texture Space Filters and Fourier Transforms and Screen Space 37 38 7. Anti-Aliasing 7. Anti-Aliasing The Concept of Resampling Projection and Image Warping Filters Affine Mapping Projective Mapping • Perspective projection of a textured surface • Non-uniform sampling pattern on screen • Optimal resampling filter is spatially variant 39 40 7. Anti-Aliasing 7. Anti-Aliasing Relations between Texture and Spatially Variant Filtering Image Space Texture space Image space warp 1. 4. 2. 3. Screen Space Texture Space 41 42 7. Anti-Aliasing 7. Anti-Aliasing Antialiasing in Raytracing Jittering • Supersampling • Random Perturbation of Sampling Positions Pixel 43 44 7. Anti-Aliasing 7. Anti-Aliasing Poisson Sampling vs. Jittering Supersampling & Jittering 4 Rays/Pixel Jitter=0.3 45 46 7. Anti-Aliasing 7. Anti-Aliasing Supersampling & Jittering Supersampling & Jittering Jitter=0.5 Jitter=1.0 4 Rays/Pixel Jitter=0.3 47 48 7. Anti-Aliasing 7. Anti-Aliasing Supersampling & Jittering Adaptive Supersampling Jitter=0.5 Jitter=1.0 49 50 7. Anti-Aliasing 7. Anti-Aliasing Adaptive Supersampling 51 7. Anti-Aliasing.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us