12
1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007 Slide 2 Analog vs Digital God has created the world analog Man has created digital world

CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

Embed Size (px)

Citation preview

Page 1: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

1

Aditi Majumder, CS 112, Winter 2007 Slide 1

CS 112 - Sampling and Aliasing

Aditi Majumder, CS 112, Winter 2007 Slide 2

Analog vs Digital

God has created the world analog Man has created digital world

Page 2: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

2

Aditi Majumder, CS 112, Winter 2007 Slide 3

Analog signalsFunction dependent on single or multiple variablesDefined at any value of the dependent variable

t

Am

pli

tud

e

1D: A = f ( t )

x

y

2D: I = f ( x, y )

x

y

z

3D: S = f ( x, y, z )

Aditi Majumder, CS 112, Winter 2007 Slide 4

Digital Signals

Defined at only few values of t

Sampling Correct Reconstructiont

Page 3: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

3

Aditi Majumder, CS 112, Winter 2007 Slide 5

Digital SignalsWhether you can reconstruct correctly depends on how you sample – sampling rate

Sampling Incorrect Reconstructiont

Aditi Majumder, CS 112, Winter 2007 Slide 6

Nyquist Rate

Consider only sine wavesIf you sample at least at twice the frequency (2 samples per cycle), signal can be reconstructed correctly

More the sampling rate, better the reconstruction

If less than twice the frequency, cannot reconstruct correct

Page 4: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

4

Aditi Majumder, CS 112, Winter 2007 Slide 7

Nyquist Rate Sampling

Sampling Correct Reconstructiont

Aditi Majumder, CS 112, Winter 2007 Slide 8

AliasingAliasing: Incorrect representation of some entity

A much lower frequency Zero frequency

Page 5: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

5

Aditi Majumder, CS 112, Winter 2007 Slide 9

How does sinusoids help?

Any signal can be expressed as a sum of sinusoids of different frequencies

AmplitudePhase

Aditi Majumder, CS 112, Winter 2007 Slide 10

Spectral Analysis

Time Domain Frequency Domain

Page 6: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

6

Aditi Majumder, CS 112, Winter 2007 Slide 11

For 2D images

Any signal can be expressed as a sum of sinusoids of different frequencies

AmplitudePhaseOrientation

Aditi Majumder, CS 112, Winter 2007 Slide 12

Extending it to 2D

Am

plitu

dePh

ase

Page 7: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

7

Aditi Majumder, CS 112, Winter 2007 Slide 13

Frequency ContentLower frequencies : Global PatternHigher frequencies : DetailsRequired sampling rate lower for low frequency image (lower number of pixels, lower resolution)

Aditi Majumder, CS 112, Winter 2007 Slide 14

Amplitude

AmplitudeHow much details?Sharper details signify higher frequenciesWill deal with this mostly

Page 8: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

8

Aditi Majumder, CS 112, Winter 2007 Slide 15

Phase

Where are the details?Though we do not use it much, it is important, especially for perception

Aditi Majumder, CS 112, Winter 2007 Slide 16

Reducing Frequency contentFiltering: Applying mathematical function over a window around every pixel

Simplest: Averaging pixels (Box Filter)Other sophisticated methods

Size of the window usedMathematical function used is more complicated

Page 9: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

9

Aditi Majumder, CS 112, Winter 2007 Slide 17

How does it help?

Input (256 x 256)

Subsampled(128 x 128) Subsampled from filtered image(128 x 128)

Insufficient sampling.Hence, aliasing.

Filtering reduces frequency content.

Hence, lower sampling is sufficient.

Filtered (256 x 256)ANTI-ALIASING

Aditi Majumder, CS 112, Winter 2007 Slide 18

Aliasing in Scan Conversion

Rasterized line segments and edges of polygons look jagged

Page 10: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

10

Aditi Majumder, CS 112, Winter 2007 Slide 19

Aliasing in Scan Conversion1-pixel wide ideal line span partial pixelsScan conversion method forces us to choose exactly one pixel for every value of x

Aditi Majumder, CS 112, Winter 2007 Slide 20

Aliasing in Scan ConversionSupersampling and Filtering: Render a super-sampled image and then filterArea Averaging: Shade each pixel by gray value = the percentage of the actual line crossing it at x

Page 11: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

11

Aditi Majumder, CS 112, Winter 2007 Slide 21

Aliasing in Scan ConversionVery expensive – Usually not implemented for real-time renderingOnly when you have lot of time of render each frame – Like in animation movies

Aditi Majumder, CS 112, Winter 2007 Slide 22

Aliasing during z-buffering

A pixel shared by three primitivesZ intersection – identified in an integer levelFront-most gets drawn

Same technique: Area weighted average

Page 12: CS 112 - Sampling and Aliasingmajumder/CG/classes/wk7-cls1-sampling.pdf1 Aditi Majumder, CS 112, Winter 2007 Slide 1 CS 112 - Sampling and Aliasing Aditi Majumder, CS 112, Winter 2007

12

Aditi Majumder, CS 112, Winter 2007 Slide 23

Temporal Aliasing

AnimationSpeed of the object too fastJittered Motion