Transcript
Page 1: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image

2012, Fall

Page 2: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Processing

Quantization Uniform Quantization Halftoning & Dithering

Pixel Operation Add random noise Add luminance Add contrast Add saturation

Filtering Blur Detected edges

Warping Scale Rotate Warp

Combining Composite Morph

Ref] Thomas Funkhouser, Princeton Univ.

Page 3: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

What is an Image?

An image is a 2D rectilinear array of samples

A pixel is a sample, not a little square

Page 4: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Resolution

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

Spatial resolution Image has only “Width” x “Height” pixels

Temporal resolution Monitor refreshes images at only “Rate” Hz

Width x Height Depth Rate

NTSC 640x480 8 30

Workstation 1280x1024 24 75

Film 3000 x 2000 12 24

Laser Printer 6600x5100 1 -

Typical Resolutions

Hei

ght

WidthDepth

Page 5: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Source of Error

Intensity quantization Not enough intensity resolution

Spatial aliasing Not enough spatial resolution

Temporal aliasing Not enough temporal resolution

),(

22 )),(),((yx

yxPyxIEReal value Sample value

Page 6: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Quantization

Artifact due to limited intensity resolution Frame buffers have limited number of bits per pixel Physical devices have limited dynamic range

Page 7: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Uniform Quantization

)5.0),((),( yxItruncyxP

반올림 (Round)

Page 8: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Uniform Quantization

Image with decreasing bits per pixel

Page 9: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Reducing Effects of Quantization

Our eyes tend to integrate or average the fine detail into an overall intensity

Halftoning A technique used in newspaper printing The process of converting a continuous tone image into an

image that can be printed with one color ink (grayscale) or four color inks (color)

Dithering Dithering is used to create a wide variety of patterns for use

as backgrounds, fills and shadings, as well as for creating halftones, and for correcting aliasing.

Halftones are created through a process called dithering Dithering Methods( 방법론 ) , Halfton result( 결과물 )

Page 10: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Classical Halftoning

Use dots of varying size to represent intensities Area of dots proportional to intensity in image

Page 11: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Halftoning

A technique used in newspaper printing Only two intensities are possible, blob of ink and no

blob of ink

But, the size of the blob can be varied Also, the dither patterns of small dots can be used

Page 12: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Classical Halftoning

Original Image Halfton Image

Page 13: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Halfton patterns

Use cluster of pixels to represent intensity Trade spatial resolution for intensity resolution

2 by 2 pixel grid patterns

3 by 3 pixel grid patterns

mask

Page 14: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Halfton patterns

Page 15: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Dithering

Distribute errors among pixels Exploit spatial integration in our eye Display greater range of perceptible intensities

Page 16: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Halftoning – Moire Patterns

Moire[more-ray] patterns Repeated use of same dot pattern for particular shade results

in repeated pattern (Perceived as a moire pattern) result from overlapping repetitive elements Instead, randomize halftone pattern

Page 17: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Halftoning – Moire Patterns

Page 18: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add
Page 19: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Signal Processing (1/2)

Signal Real World : Continuous Signal Digital World: Discrete Signal

Image spatial domain

• not temporal domain

• intensity variation

over space

Page 20: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Signal Processing (2/2)

Sampling and reconstruction process Sampling

• The process of selecting a finite set of values from a signal

• Samples (the selected values)

Reconstruction• recreate the original continuous signal from the samples

Page 21: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Sampling and Reconstruction

Page 22: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Aliasing

In general Artifact due to under-sampling or poor reconstruction

Specifically, in graphics Spatial aliasing Temporal aliasing

Sampling below the Nyquist rate

Page 23: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Nyquist rate and aliasing

Nyquist rate lower bound on the sampling rate Sampling at the Nyquist rate

• sampling rate > 2* max frequency

주파수 (frequency): 초당 사이클의 횟수 (Hz)

Page 24: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Spatial Aliasing

Artifact due to limited spatial resolution

Page 25: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Spatial Aliasing

Artifact due to limited spatial resolution

Page 26: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Temporal Aliasing

Artifact due to limited temporal resolution Spinning Backward

• The wheel is spinning at 5 revolution per second– 3rd row appear to be spinning backward at revolution per

second

Page 27: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Temporal Aliasing

Artifact due to limited temporal resolution Flickering

Page 28: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Anti-Aliasing

Sample at higher rate Not always possible Doesn’t always solve problem

Pre-filter to form bandlimited signal Form bandlimited function(low-pass filter) Trades aliasing for blurring

Page 29: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Grayscale Compute luminance L L=0.30R+0.59G+0.11B (old)

0.2125R+0.7154G+0.0721B (CRT, HDTV)

Original Image Grayscale Image

Page 30: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Negative Image Simply inverse pixel components Ex) RGB(5, 157, 178) RGB(250, 98, 77)

Original Image Negative Image

(R, G, B) (255-R, 255-G, 255-B)

Page 31: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Adjusting Brightness Simply scale pixel components

• Must clamp to range (e.g., 0 to 255)

(R, G, B) (R, G , B) * scale

Page 32: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Adjusting Contrast Compute mean luminance L for all pixels

• Luminance = 0.30* r + 0.59*g + 0.11*b

Scale deviation from L for each pixel component• Must clamp to range (e.g., 0 to 255)

R L + (R-L)*scaleG L + (G-L)*scaleB L + (B-L)*scale

Page 33: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Changing Brightness

Changing Contrast

Page 34: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixel Operations

Adjusting Saturation Color Convert RGB HSV Scale from S for each pixel component Color Convert HSV RGB

• Must clamp to range (e.g., 0 to 255)

Page 35: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Convolution Spatial domain

• Output pixel is weighted sum of pixels in neighborhood of input image

• Patten of weights is the “filter”

Page 36: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Convolution

Page 37: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Adjust Blurriness Convolve with a filter whose entries sum to one

• Each pixel becomes a weighted average of its neighbors

Filter Sum = 1

Page 38: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Edge Detection Convolve with a filter that finds differences between

neighbor pixels

Page 39: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Sharpening Convolve with a Sharpening filter

010

151

010

Filter

Page 40: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Embossing Convert the image into grayscale Convolve with a Embossing filter Plus 0.5 for each pixel

• Must clamp to range (e.g., 0 to 255)

100

010

002

Filter

Page 41: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Summary

Image representation A pixel is a sample, not a little square Images have limited resolution

Halftoning and dithering Reduce visual artifacts due to quantization Distribute errors among pixels

• Exploit spatial integration in our eye

Sampling and reconstruction Reduce visual artifacts due to aliasing Filter to avoid undersampling

• Blurring is better than aliasing

Page 42: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Processing

Quantization Uniform Quantization Halftoning & Dithering

Pixel Operation Add random noise Add luminance Add contrast Add saturation

Filtering Blur Detected edges

Warping Scale Rotate Warp

Combining Composite Morph

Ref] Thomas Funkhouser, Princeton Univ.

Page 43: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Warping

Move pixels of image Mapping

• Forward

• Reverse

Resampling• Point sampling

• Triangle Filter

• Gaussian filter

Page 44: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Mapping

Define transformation Describe the destination (x,y) for every location (u,v) in the

source (or vice-verse, if invertible)

Source (u, v) Destination (x, y)

Page 45: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example Mappings

Scale by factor x = factor * u y = factor * v

Source (u, v) Destination (x, y)

Page 46: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example Mappings

Rotate by degrees x = ucosvsin y = usinvcos

Source (u, v) Destination (x, y)

Page 47: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example Mappings

Shear in X by factor x = u + factor * v y = v

Shear in Y by factor x = u y = v + factor * u

Page 48: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Other Mappings

Any function of u and v X = fx (u, v)

Y = fy (u, v)

Page 49: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Warping Implementation I

Forward mappingfor (int u =0; u < umax; u++) {

for (int v = 0; v < vmax; v++) {

float x = fx (u, v);

float y = fy (u, v);

dst (x, y) = src(u, v) ;

}

}

Page 50: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Forward Mapping

Iterate over source image Many source pixels can map to same destination pixel Some destination pixels may not be covered

Page 51: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Warping Implementation II

Reverse mappingfor (int x =0; x < xmax; x++) {

for (int y = 0; y < ymax; y++) {

float u = fx-1 (x, y);

float v = fy-1 (x, y);

dst (x, y) = src(u, v);

}

}

Page 52: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Reverse Mapping

Iterate over destination image Must resample source May oversample, but much simpler

Page 53: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Resampling

Evaluate source image at arbitrary (u,v) (u, v) does not usually have integer coordinates

Page 54: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Resampling

Resampling Point sampling Triangle filter Gaussain filter

Page 55: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Point Sampling

Take value at closest pixel int iu = trunc(u + 0.5) int iv = trunc(v + 0.5) dst(x, y) = src(iu, iv)

This method is simple, but it cause aliasing

Page 56: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering

Compute weighted sum of pixel neighborhood Weights are normalized values of kernel function Equivalent to convolution at samples

Page 57: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Triangle Filtering

Kernel is triangle function

Page 58: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Triangle Filtering (with width = 1)

Bilinearly interpolate four closest pixels a = linear interpolation of src(u1, v2) and src(u2, v2) b = linear interpolation of src(u1, v1) and src(u2, v1) dst = linear interpolation of “a” and “b”

Page 59: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Gaussian Filtering

Kernel is Gaussian function

Filter width =2

Page 60: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Filtering Methods Comparison

Trade-offs Aliasing versus blurring Computation speed

Point Bilinear Gaussian

Page 61: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Warping Implementation

Reverse mappingfor (int x =0; x < xmax; x++) {

for (int y = 0; y < ymax; y++) {

float u = fx-1 (x, y);

float v = fy-1 (x, y);

dst (x, y) = resample_src(u, v, w);

}

}

Page 62: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example: Scale

scale (src, dst, sx, sy) :Float w = max (1.0/sx, 1.0/sy)

for (int x =0; x < xmax; x++) {

for (int y = 0; y < ymax; y++) {

float u = x / sx;

float v = y / sy;

dst (x, y) = resample_src(u, v, w);

}

}

Page 63: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example: Rotate

Rotate (src, dst, theta) :for (int x =0; x < xmax; x++) {

for (int y = 0; y < ymax; y++) {

float u = x*cos(-theta)y*sin(-theta);

float v = x*sin(-theta)y*cos(-theta);

dst (x, y) = resample_src(u, v, w);

}

}

Page 64: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Example: Fun

Swirl (src, dst, theta) :for (int x =0; x < xmax; x++) {

for (int y = 0; y < ymax; y++) {

float u = rot(dist(x, xcenter)*theta);

float v = rot(dist(y, yecnter)*theta);

dst (x, y) = resample_src(u, v, w);

}

}

Page 65: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Combining images

Image compositing Blue-screen mattes Alpha channel

Image morphing Specifying correspondence Warping Blending

Page 66: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Compositing

Separate an image into “elements” Render independently Composite together

Application Cel animation Chroma-keying Blue-screen matting

Page 67: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Blue Screen Matting

Composite foreground and background images Create background image Create foreground image with blue background Insert non-blue foreground pixels into background

Problem : no partial coverage

Page 68: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Alpha Channel

Encodes pixel coverage informations = 0 no coverage (or transparent) = 1 full coverage (or opaque) 0 < < 1 partial coverage (or semi-transparent)

Example: = 0.3

Page 69: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Composite with Alpha

Composite with Alpha Control the linear interpolation of foreground and

background pixels when elements are composited

Page 70: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Pixels with Alpha

Alpha channel convention (r, g, b, a) represents a pixel that is a covered by

the color C = (r/a, g/a, b/a)• Color components are premultiplied by a

• Can display (r, g, b) value directly

• Closure in composition algebra

Page 71: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Semi-Transparent Objects

Suppose we put A over B background G

How much of B is blocked by A ? A

How much of B show through A ?A)

How much of G shows through both A and B ?A) B)

αAA+ (1-αA )αBB+ (1-αA )(1-αB )G = A over[B over G]

Page 72: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Opaque Objects

How do we combine 2 partially covered pixels? 3 possible colors (0, A, B) 4 regions (0, A, B, AB)

Page 73: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Composition Algebra

12 reasonable combinations

Page 74: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Morphing

Animate transition between two images

Page 75: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Cross-Dissolving

Blend images with “over” operator alpha of bottom image is 1.0 alpha of top image varies from 0.0 to 1.0

blend(i, j) = (1-t) src(i, j) + t dst(i, j) (0 <= t <= 1)

Page 76: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Morphing

Combines warping and cross-disolving

Page 77: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Feature Based Morphing

Beier & Neeley use pairs of lines to specify warp Given p in dst image, where is p’ in source image ?

Page 78: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Feature Based Morphing

Feature Matching

Image Warping Image Warping

Morphed Image

Page 79: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Feature Based Morphing

Morphing

Warping Warping

Black Or White-Michael Jackson

Page 80: Image 2012, Fall. Image Processing Quantization  Uniform Quantization  Halftoning & Dithering Pixel Operation  Add random noise  Add luminance  Add

Image Processing

Quantization Uniform Quantization Halftoning & Dithering

Pixel Operation Add random noise Add luminance Add contrast Add saturation

Filtering Blur Detected edges

Warping Scale Rotate Warp

Combining Composite Morph

Ref] Thomas Funkhouser, Princeton Univ.


Top Related