EE465: Introduction to Digital Image Processing

Slides:



Advertisements
Similar presentations
Digital Image Processing
Advertisements

QR Code Recognition Based On Image Processing
Image Interpolation CS4670: Computer Vision Noah Snavely.
EE465: Introduction to Digital Image Processing 1 Image Interpolation Introduction –What is image interpolation? (D-A conversion) –Why do we need it? Interpolation.
Lecture 4: Image Resampling CS4670: Computer Vision Noah Snavely.
On Signal Reconstruction from Fourier Magnitude Gil Michael Department of Electrical Engineering Technion - Israel Institute of Technology Haifa 32000,
Image Sampling Moire patterns -
Chapter 3: Image Restoration Geometric Transforms.
Geometric Transformation. So far…. We have been discussing the basic elements of geometric programming. We have discussed points, vectors and their operations.
Geometric Operations and Morphing.
$100 When was the first photography in the world taken? – A) 1816 – B) 1826 – C) 1836 – D) 1866.
Regression analysis Control of built engineering objects, comparing to the plan Surveying observations – position of points Linear regression Regression.
Image Preprocessing: Geometric Correction Image Preprocessing: Geometric Correction Jensen, 2003 John R. Jensen Department of Geography University of South.
Digital Media Dr. Jim Rowan ITEC Vector Graphics Elegant way to construct digital images that –have a compact representation –are scalable –are.
Digital Image Processing Lecture 6: Image Geometry
Image Processing Edge detection Filtering: Noise suppresion.
3. Image Sampling & Quantisation 3.1 Basic Concepts To create a digital image, we need to convert continuous sensed data into digital form. This involves.
EE565 Advanced Image Processing Copyright Xin Li Motivating Applications HDTV Internet video Artistic reproduction Widescreen movie.
EE465 Midterm Review Mar. 23, MATLAB-based Midterm Exam Research-oriented learning Just like MATH, MATLAB is another tool (use it wisely) All Roads.
Digital Image Processing (Digitaalinen kuvankäsittely) Exercise 2
Digital Media Dr. Jim Rowan ITEC 2110 Chapter 3. Roll call.
GEOMETRIC OPERATIONS. Transformations and directions Affine (linear) transformations Translation, rotation and scaling Non linear (Warping transformations)
Image Processing Ch2: Digital image Fundamentals Prepared by: Tahani Khatib.
Digital Media Dr. Jim Rowan ITEC 2110 Images: Chapters 3, 4 & 5.
Brent M. Dingle, Ph.D Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin - Stout Image Processing.
Digital Media Dr. Jim Rowan ITEC 2110 Chapter 3. Roll call.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
IS502:M ULTIMEDIA D ESIGN FOR I NFORMATION S YSTEM D IGITAL S TILL I MAGES Presenter Name: Mahmood A.Moneim Supervised By: Prof. Hesham A.Hefny Winter.
Arithmetic and Geometric Transformations (Chapter 2) CS474/674 – Prof. Bebis.
Antialiasing. What is alias? Alias - A false signal in telecommunication links from beats between signal frequency and sampling frequency (from dictionary.com)
IS502:M ULTIMEDIA D ESIGN FOR I NFORMATION S YSTEM D IGITAL S TILL I MAGES Presenter Name: Mahmood A.Moneim Supervised By: Prof. Hesham A.Hefny Winter.
Image Resampling & Interpolation
Image Processing Digital image Fundamentals. Introduction to the course Grading – Project: 30% – Midterm Exam: 30% – Final Exam : 40% – Total: 100% –
Image Sampling Moire patterns
IMAGE PROCESSING INTENSITY TRANSFORMATION AND SPATIAL FILTERING
Lecture 7: Image alignment
Dr. Jim Rowan ITEC 2110 Images: Chapters 3, 4 & 5
Image and Video Processing – An Introduction
Image transformations
CSCE 441: Computer Graphics Image Warping
T490 (IP): Tutorial 2 Chapter 2: Digital Image Fundamentals
Image Sampling Moire patterns
Lecture 3: Camera Rotations and Homographies
Digital Media Dr. Jim Rowan ITEC 2110.
More Image Manipulation
CSCE 643 Computer Vision: Thinking in Frequency
Geometric and Point Transforms
CS654: Digital Image Analysis
Samuel Cheng Slide credits: Noah Snavely
Dr. Jim Rowan ITEC 2110 Chapter 3
Image Processing Today’s readings For Monday
2D transformations (a.k.a. warping)
(c) 2002 University of Wisconsin, CS 559
CSC 381/481 Quarter: Fall 03/04 Daniela Stan Raicu
Filtering Part 2: Image Sampling
Linear filtering.
(c) University of Wisconsin, CS559
Image Sampling Moire patterns
Lecture 5: Resampling, Compositing, and Filtering Li Zhang Spring 2008
Digital Image Processing
Dr. Jim Rowan ITEC 2110 Chapter 3
Image Resampling & Interpolation
Resampling.
Introduction to Mathematical tools in used in DIP
Samuel Cheng Slide credits: Noah Snavely
Lecture 2 Digital Image Fundamentals
Enhancing the Enlargement of Images
DIGITAL IMAGE PROCESSING Elective 3 (5th Sem.)
Image Processing 고려대학교 컴퓨터 그래픽스 연구실 kucg.korea.ac.kr.
Presentation transcript:

EE465: Introduction to Digital Image Processing Image Interpolation Introduction What is image interpolation? Why do we need it? Interpolation Techniques 1D zero-order, first-order, third-order 2D zero-order, first-order, third-order Directional interpolation* Interpolation Applications Digital zooming (resolution enhancement) Image inpainting (error concealment) Geometric transformations EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing What is image interpolation? An image f(x,y) tells us the intensity values at the integral lattice locations, i.e., when x and y are both integers Image interpolation refers to the “guess” of intensity values at missing locations, i.e., x and y can be arbitrary Note that it is just a guess (Note that all sensors have finite sampling distance) EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Introduction (Con’t) Why do we need image interpolation? We want BIG images When we see a video clip on a PC, we like to see it in the full screen mode We want GOOD images If some block of an image gets damaged during the transmission, we want to repair it We want COOL images Manipulate images digitally can render fancy artistic effects as we often see in movies EE465: Introduction to Digital Image Processing

Scenario I: Resolution Enhancement Low-Res. High-Res. EE465: Introduction to Digital Image Processing

Scenario II: Image Inpainting Non-damaged Damaged EE465: Introduction to Digital Image Processing

Scenario III: Image Warping EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Image Interpolation Introduction What is image interpolation? Why do we need it? Interpolation Techniques 1D zero-order, first-order, third-order 2D zero-order, first-order, third-order Directional interpolation* Interpolation Applications Digital zooming (resolution enhancement) Image inpainting (error concealment) Geometric transformations EE465: Introduction to Digital Image Processing

1D Zero-order (Replication) f(n) n f(x) x EE465: Introduction to Digital Image Processing

1D First-order Interpolation (Linear) f(n) n f(x) x EE465: Introduction to Digital Image Processing

Linear Interpolation Formula Basic idea: the closer to a pixel, the higher weight is assigned f(n) f(n+a) f(n+1) a 1-a f(n+a)=(1-a)f(n)+af(n+1), 0<a<1 Note: when a=0.5, we simply have the average of two EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Numerical Examples f(n)=[0,120,180,120,0] Interpolate at 1/2-pixel f(x)=[0,60,120,150,180,150,120,60,0], x=n/2 Interpolate at 1/3-pixel f(x)=[0,20,40,60,80,100,120,130,140,150,160,170,180,…], x=n/6 EE465: Introduction to Digital Image Processing

1D Third-order Interpolation (Cubic) f(n) n f(x) x Cubic spline fitting EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing From 1D to 2D Just like separable 2D transform (filtering) that can be implemented by two sequential 1D transforms (filters) along row and column direction respectively, 2D interpolation can be decomposed into two sequential 1D interpolations. The ordering does not matter (row-column = column-row) Such separable implementation is not optimal but enjoys low computational complexity EE465: Introduction to Digital Image Processing

Graphical Interpretation of Interpolation at Half-pel row column f(m,n) g(m,n) EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Numerical Examples a b c d zero-order first-order a a b b c c d d a (a+b)/2 b (a+c)/2 (a+b+c+d)/4 (b+d)/2 c (c+d)/2 d EE465: Introduction to Digital Image Processing

Numerical Examples (Con’t) Col n Col n+1 row m X(m,n) X(m,n+1) b a 1-a Y 1-b row m+1 X(m+1,n) X(m+1,n+1) Q: what is the interpolated value at Y? Ans.: (1-a)(1-b)X(m,n)+(1-a)bX(m+1,n) +a(1-b)X(m,n+1)+abX(m+1,n+1) EE465: Introduction to Digital Image Processing

Bicubic Interpolation* EE465: Introduction to Digital Image Processing

Limitation with bilinear/bicubic Edge blurring Jagged artifacts Jagged artifacts Edge blurring Z X X Z EE465: Introduction to Digital Image Processing

Directional Interpolation* Step 1: interpolate the missing pixels along the diagonal a b Since |a-c|=|b-d| x x has equal probability of being black or white c d black or white? Step 2: interpolate the other half missing pixels a Since |a-c|>|b-d| x d b x=(b+d)/2=black c EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Image Interpolation Introduction What is image interpolation? Why do we need it? Interpolation Techniques 1D zero-order, first-order, third-order 2D zero-order, first-order, third-order Directional interpolation* Interpolation Applications Digital zooming (resolution enhancement) Image inpainting (error concealment) Geometric transformations EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Pixel Replication low-resolution image (100×100) high-resolution image (400×400) EE465: Introduction to Digital Image Processing

Bilinear Interpolation low-resolution image (100×100) high-resolution image (400×400) EE465: Introduction to Digital Image Processing

Bicubic Interpolation low-resolution image (100×100) high-resolution image (400×400) EE465: Introduction to Digital Image Processing

Edge-Directed Interpolation (Li&Orchard’2000) low-resolution image (100×100) high-resolution image (400×400) EE465: Introduction to Digital Image Processing

Image Demosaicing (Color-Filter-Array Interpolation) Bayer Pattern EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Image Example Advanced CFA Interpolation Ad-hoc CFA Interpolation EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Error Concealment damaged interpolated EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Image Inpainting EE465: Introduction to Digital Image Processing

Geometric Transformation Widely used in computer graphics to generate special effects MATLAB functions: griddata, interp2, maketform, imtransform EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital 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 Image Processing

EE465: Introduction to Digital Image Processing Rotation y y’ x’ θ x EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital 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 Image Processing

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

EE465: Introduction to Digital Image Processing Scale a=1/2 EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Affine Transform parallelogram square EE465: Introduction to Digital Image Processing

Affine Transform Example EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Shear parallelogram square EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Shear Example EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Projective Transform B’ A B A’ C’ D C D’ square quadrilateral EE465: Introduction to Digital Image Processing

Projective Transform Example [-4 2; -8 -3; -3 -5; 6 3] [ 0 0; 1 0; 1 1; 0 1] EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Polar Transform EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Iris Image Unwrapping  r EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Use Your Imagination r -> sqrt(r) http://astronomy.swin.edu.au/~pbourke/projection/imagewarp/ EE465: Introduction to Digital Image Processing

EE465: Introduction to Digital Image Processing Free Form Deformation Seung-Yong Lee et al., “Image Metamorphosis Using Snakes and Free-Form Deformations,”SIGGRAPH’1985, Pages 439-448 EE465: Introduction to Digital Image Processing

Application into Image Metamorphosis EE465: Introduction to Digital Image Processing

Summary of Image Interpolation A fundamental tool in digital processing of images: bridging the continuous world and the discrete world Wide applications from consumer electronics to biomedical imaging Remains a hot topic after the IT bubbles break EE465: Introduction to Digital Image Processing