
- •Image Interpolation
- •Introduction
- •A Sentimental Comment
- •Engineering Motivations
- •Scenario I: Resolution
- •Scenario II: Image Inpainting
- •Scenario III: Image Warping
- •Image Interpolation
- •1D Zero-order (Replication)
- •1D First-order Interpolation (Linear)
- •Linear Interpolation Formula
- •Numerical Examples
- •1D Third-order Interpolation (Cubic)*
- •From 1D to 2D
- •Graphical Interpretation
- •Numerical Examples
- •Numerical Examples (Con’t)
- •Bicubic Interpolation*
- •Limitation with bilinear/bicubic
- •Edge-Sensitive Interpolation
- •NEDI Step 1: Interpolate
- •NEDI Step 2: Interpolate the
- •Geometric Duality
- •Image Interpolation
- •Pixel Replication
- •Bilinear Interpolation
- •Bicubic Interpolation
- •Edge-Directed Interpolation
- •Image Demosaicing
- •Image Example
- •Error Concealment*
- •Image Inpainting*
- •Image Mosaicing*
- •Geometric Transformation
- •Basic Principle
- •Rotation
- •MATLAB Example
- •Rotation Example
- •Scale
- •Affine Transform
- •Affine Transform Example
- •Shear
- •Shear Example
- •Projective Transform
- •Projective Transform Example
- •Polar Transform
- •Iris Image Unwrapping
- •Use Your Imagination
- •Free Form Deformation
- •Application into Image Metamorphosis
- •Summary of Image

Error Concealment*
damaged |
interpolated |
EE465: Introduction to Digital |
31 |
Image Processing |
|



Image Inpainting*
EE465: Introduction to Digital |
32 |
Image Processing |
|

Image Mosaicing*
EE465: Introduction to Digital |
33 |
Image Processing |
|

Geometric Transformation
In the virtual space, you can have any kind of apple you want! MATLAB functions: griddata, interp2, maketform, imtransform
EE465: Introduction to Digital |
34 |
Image Processing |
|

Basic Principle
• (x,y) (x’,y’) is a geometric transformation
• We are given pixel values at (x,y) and want to interpolate the unknown values at (x’,y’)
• Usually (x’,y’) are not integers and therefore we can use linear
interpolation to guess their values
MATLAB implementation: z’=interp2(x,y,z,x’,y’,method);
EE465: Introduction to Digital |
35 |
Image Processing |
|

Rotation
y’ |
y |
|
x’
θ
x
x' |
|
cos |
sin x |
||
|
|
|
sin |
|
|
|
y' |
|
cos |
y |
EE465: Introduction to Digital |
36 |
Image Processing |
|

MATLAB Example
z=imread('cameraman.tif');
% original coordinates [x,y]=meshgrid(1:256,1:256);
%new coordinates a=2;
for i=1:256;for j=1:256; x1(i,j)=a*x(i,j); y1(i,j=y(i,j)/a;
end;end
%Do the interpolation z1=interp2(x,y,z,x1,y1,'cubic');
EE465: Introduction to Digital |
37 |
Image Processing |
|

Rotation Example
θ=3o
EE465: Introduction to Digital |
38 |
Image Processing |
|

Scale
a=1/2
x' |
a |
0 x |
|||
|
|
|
0 |
|
|
|
y' |
|
1/ a |
y |
EE465: Introduction to Digital |
39 |
Image Processing |
|

Affine Transform
square |
|
|
|
|
|
parallelogram |
|
x' |
a11 |
a12 |
x |
dx |
|||
|
|
|
|
|
|
|
|
|
y' |
a21 |
a22 |
y |
d y |
EE465: Introduction to Digital |
40 |
Image Processing |
|