Issuu on Google+

Graphics

Image Processing 고려대학교 컴퓨터 그래픽스 연구실

Graphics Lab @ Korea University


Overview 

Image Representation 

What is an image?

Halftoning and Dithering  

CGVR

Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization

Sampling and Reconstruction  

Key steps in image processing Avoid visual artifacts due to aliasing Graphics Lab @ Korea University


What is an Image? ď Ž

CGVR

An image is a 2D rectilinear array of pixels

Continuous image

Digital image

Graphics Lab @ Korea University


What is an Image? ď Ž

CGVR

An image is a 2D rectilinear array of pixels

Continuous image

Digital image

Graphics Lab @ Korea University


What is an Image? ď Ž

CGVR

An image is a 2D rectilinear array of pixels

Continuous image

Digital image A pixel is a sample, not a little square!! Graphics Lab @ Korea University


Image Acquisition 

CGVR

Pixels are samples from continuous function   

Photoreceptors in eye CCD cells in digital camera Rays in virtual camera

Graphics Lab @ Korea University


Image Display 

CGVR

Re-create continuous function from samples 

Example: cathode ray tube

Image is reconstructed by displaying pixels with finite area (Gaussian) Graphics Lab @ Korea University


Image Resolution 

Intensity resolution 

Each pixel has only “Depth” bits for colors/intensities

Spatial resolution 

CGVR

Image has only “Width” x “Height” pixels

Temporal resolution 

Monitor refreshes images at only “Rate” Hz

Graphics Lab @ Korea University


Sources of Error 

Intensity quantization 

Not enough intensity resolution

Spatial aliasing 

CGVR

Not enough spatial resolution

Temporal aliasing 

Not enough temporal resolution

E

2

2 ( ( ) ( ) ) = ∑ I x, y − P x, y

( x, y )

Graphics Lab @ Korea University


Overview 

Image Representation 

What is an image?

Halftoning and Dithering  

CGVR

Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization

Sampling and Reconstruction  

Key steps in image processing Avoid visual artifacts due to aliasing Graphics Lab @ Korea University


Quantization 

CGVR

Artifact due to limited intensity resolution  

Frame buffers have limited number of bits per pixel Physical devices have limited dynamic range 255 150 255 255 150 150 75 255 255 150 150 75 750 255 150 255 255 150 150 75 750 255 150 255 255 150 150 75 750 255 150 255 255 150 150 75 750 255 150 75 0

75 750

0

750 750

0

750 0

0

0 0 Blue channel

Green channel Red channel Graphics Lab @ Korea University


Uniform Quantization

CGVR

P( x, y ) = trunc( I ( x, y ) + 0.5)

I(x, y)

P(x, y) 2 bits per pixel Graphics Lab @ Korea University


Uniform Quantization ď Ž

CGVR

Image with decreasing bits per pixel:

8 bits

4 bits

2 bits

1 bit

Notice contouring Graphics Lab @ Korea University


Reducing Effects of Quantization 

Halftoning 

CGVR

Classical halftoning

Dithering   

Random dither Ordered dither Error diffusion dither

Graphics Lab @ Korea University


Classical Halftoning ď Ž

CGVR

Use dots of varying size to representation intensities ď Ž

Area of dots proportional to intensity in image

I(x, y)

P(x, y)

Graphics Lab @ Korea University


Classical Halftoning

CGVR

Newspaper image From New York Times 9/21/99 Graphics Lab @ Korea University


Halftone Patterns ď Ž

CGVR

Use cluster of pixels to represent intensity ď Ž

Trade spatial resolution for intensity resolution

Graphics Lab @ Korea University


Halftone Patterns ď Ž

CGVR

How many intensities in a n x n cluster?

Graphics Lab @ Korea University


Dithering 

CGVR

Distribute errors among pixels  

Exploit spatial integration in our eye Display greater range of perceptible intensities

Original (8 bits)

Uniform Quantization (1 bit)

Floyd-Steinberg Dither (1 bit) Graphics Lab @ Korea University


Random Dither ď Ž

CGVR

Randomize quantization errors ď Ž

Errors appear as noise

P( x, y ) = trunc( I ( x, y ) + noise( x, y ) + 0.5) Graphics Lab @ Korea University


Random Dither

Original (8 bits)

Uniform Quantization (1 bit)

CGVR

Random Dither (1 bit)

Graphics Lab @ Korea University


Ordered Dither 

CGVR

Pseudo-random quantization errors 

Matrix stores pattern of thresholds j = x mod n i = y mod n e = I(x, y) – trunc(I(x, y)) if( e > D(i, j) ) P(x, y) = ceil(I(x, y)) else P(x, y) = floor(I(x, y))

3 1  D2 =   0 2  

Graphics Lab @ Korea University


Ordered Dither

Original (8 bits)

Uniform Quantization (1 bit)

CGVR

Ordered Dither (1 bit)

Graphics Lab @ Korea University


Error Diffusion Dither 

CGVR

Spread quantization error over neighbor pixels 

Error dispersed to pixels right and below

α β

γ

δ

α + β + γ + δ = 1.0 Graphics Lab @ Korea University


Error Diffusion Dither

Original (8 bits)

Random Dither (1 bit)

Ordered Dither (1 bit)

CGVR

Floyd-Steinberg Dither (1 bit)

Graphics Lab @ Korea University


Overview 

Image Representation 

What is an image?

Halftoning and Dithering  

CGVR

Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization

Sampling and Reconstruction  

Key steps in image processing Avoid visual artifacts due to aliasing Graphics Lab @ Korea University


Sampling and Reconstruction

CGVR

Sampling

Reconstruction

Graphics Lab @ Korea University


Sampling and Reconstruction

CGVR

Graphics Lab @ Korea University


Aliasing 

In general: 

CGVR

Artifacts due to under-sampling or poor reconstruction

Specifically, in graphics:  

Spatial aliasing Temporal aliasing

Under-sampling Graphics Lab @ Korea University


Spatial Aliasing ď Ž

CGVR

Artifacts due to limited spatial resolution

Graphics Lab @ Korea University


Spatial Aliasing 

CGVR

Artifacts due to limited spatial resolution

“Jaggies” Graphics Lab @ Korea University


Temporal Aliasing 

CGVR

Artifacts due to Limited Temporal Resolution  

Strobing Flickering

Graphics Lab @ Korea University


Temporal Aliasing 

CGVR

Artifacts due to Limited Temporal Resolution  

Strobing Flickering

Graphics Lab @ Korea University


Temporal Aliasing 

CGVR

Artifacts due to Limited Temporal Resolution  

Strobing Flickering

Graphics Lab @ Korea University


Temporal Aliasing 

CGVR

Artifacts due to Limited Temporal Resolution  

Strobing Flickering

Graphics Lab @ Korea University


Antialiasing 

Sample at higher rate  

CGVR

Not always possible Doesn’t always solve problem

Pre-filter to form bandlimited signal  

Form bandlimited function (low-pass filter) Trades aliasing for blurring Must consider sampling theory!

Graphics Lab @ Korea University


Sampling Theory

CGVR

ď Ž

How many samples are required to represent a given signal without loss of information?

ď Ž

What signals can be reconstructed without loss for a given sampling rate?

Graphics Lab @ Korea University


Sampling Theorem

CGVR

A signal can be reconstructed from its samples, if the original signal has no frequencies above ½ the sampling frequency – Shannon

The minimum sampling rate for bandlimited function is called “Nyquist rate”

A signal is bandlimited if its highest frequency is bounded. The frequency is called the bandwidth. Graphics Lab @ Korea University


Image Processing 

Quantization

CGVR

Filtering

 Blur Uniform quantization  Detect edge  Random dither  Ordered dither  Floyd-Steinberg dither  Warping  Scale  Rotate  Pixel operations  Warps  Add random noise

  

Add luminance Add contrast Add saturation

Combining  

Morphs Composite Graphics Lab @ Korea University


06image