Image Processing and Analysis (ImagePandA) 5 – Image Restoration and Reconstruction Christoph Lampert / Chris Wojtan Based on slides by Selim Aksoy, Bilkent.

Slides:



Advertisements
Similar presentations
Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Advertisements

Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Motion illusion, rotating snakes. Slide credit Fei Fei Li.
Multiscale Analysis of Images Gilad Lerman Math 5467 (stealing slides from Gonzalez & Woods, and Efros)
Image Interpolation CS4670: Computer Vision Noah Snavely.
Ted Adelson’s checkerboard illusion. Motion illusion, rotating snakes.
Computational Photography: Sampling + Reconstruction Connelly Barnes Slides from Alexei Efros and Steve Marschner.
Pyramids and Texture. Scaled representations Big bars and little bars are both interesting Spots and hands vs. stripes and hairs Inefficient to detect.
Computer Vision University of Illinois Derek Hoiem
Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Computational Photography CSE 590 Tamara Berg Filtering & Pyramids.
Convolution, Edge Detection, Sampling : Computational Photography Alexei Efros, CMU, Fall 2006 Some slides from Steve Seitz.
Sampling and Pyramids : Rendering and Image Processing Alexei Efros …with lots of slides from Steve Seitz.
Edges and Scale Today’s reading Cipolla & Gee on edge detection (available online)Cipolla & Gee on edge detection Szeliski – From Sandlot ScienceSandlot.
Lecture 2: Edge detection and resampling
Image transformations, Part 2 Prof. Noah Snavely CS1114
Immagini e filtri lineari. Image Filtering Modifying the pixels in an image based on some function of a local neighborhood of the pixels
Image Sampling Moire patterns
Lecture 3: Edge detection, continued
Linear filtering. Overview: Linear filtering Linear filters Definition and properties Examples Gaussian smoothing Separability Applications Denoising.
Lecture 4: Image Resampling CS4670: Computer Vision Noah Snavely.
Texture Reading: Chapter 9 (skip 9.4) Key issue: How do we represent texture? Topics: –Texture segmentation –Texture-based matching –Texture synthesis.
Lecture 3: Image Resampling CS4670: Computer Vision Noah Snavely Nearest-neighbor interpolation Input image 3x upsample hq3x interpolation (ZSNES)
Lecture 2: Image filtering
Computer Vision - A Modern Approach Set: Pyramids and Texture Slides by D.A. Forsyth Scaled representations Big bars (resp. spots, hands, etc.) and little.
Slides from Alexei Efros, Steve Marschner Filters & fourier theory.
Image Sampling Moire patterns -
Image Pyramids and Blending
Image Sampling CSE 455 Ali Farhadi Many slides from Steve Seitz and Larry Zitnick.
CSC589 Introduction to Computer Vision Lecture 9 Sampling, Gaussian Pyramid Bei Xiao.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5409 T-R 10:30am – 11:50am.
Slide credit Fei Fei Li. Image filtering Image filtering: compute function of local neighborhood at each position Really important! – Enhance images.
Applications of Image Filters Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/04/10.
Image Resampling CS4670: Computer Vision Noah Snavely.
Image Resampling CS4670: Computer Vision Noah Snavely.
Lecture 3: Edge detection CS4670/5670: Computer Vision Kavita Bala From Sandlot ScienceSandlot Science.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm.
GEOMETRIC OPERATIONS. Transformations and directions Affine (linear) transformations Translation, rotation and scaling Non linear (Warping transformations)
CS559: Computer Graphics Lecture 4: Compositing and Resampling Li Zhang Spring 2008.
Lecture 5: Image Interpolation and Features
CS 691B Computational Photography
Brent M. Dingle, Ph.D Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin - Stout Image Processing.
Image Processing and Analysis (ImagePandA)
Lecture 5: Fourier and Pyramids
Projects Project 1a due this Friday Project 1b will go out on Friday to be done in pairs start looking for a partner now.
Last Lecture photomatix.com. Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image.
Prof. Adriana Kovashka University of Pittsburgh September 14, 2016
Image Resampling & Interpolation
Linear Filtering – Part II
Many slides from Steve Seitz and Larry Zitnick
Image Sampling Moire patterns
Department of Computer Engineering
Image transformations
Image Sampling Moire patterns
More Image Manipulation
Samuel Cheng Slide credits: Noah Snavely
Motion illusion, rotating snakes
Filtering Part 2: Image Sampling
Linear filtering.
Image Sampling Moire patterns
Lecture 5: Resampling, Compositing, and Filtering Li Zhang Spring 2008
Oh, no, wait, sorry, I meant, welcome to the implementation of 20th-century science fiction literature, or a small part of it, where we will learn about.
Linear Filtering CS 678 Spring 2018.
Department of Computer Engineering
Image Resampling & Interpolation
Resampling.
Samuel Cheng Slide credits: Noah Snavely
Presentation transcript:

Image Processing and Analysis (ImagePandA) 5 – Image Restoration and Reconstruction Christoph Lampert / Chris Wojtan Based on slides by Selim Aksoy, Bilkent University TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.:

Image interpolation

Nearest neighbor interpolation

Image interpolation

Nearest neighbor interpolation First, find the x and y values of the nearest pixels int[] px = new int[4]; int[] py = new int[4]; px[0] = Math.floor(x);py[0] = Math.floor(y); px[1] = Math.ceil(x);py[1] = Math.floor(y); px[2] = Math.floor(x);py[2] = Math.ceil(y); px[3] = Math.ceil(x);py[3] = Math.ceil(y);

Nearest neighbor interpolation Next, find the nearest pixel int nx, ny;// x,y coords of nearest neighbor double minDist = Double.MAX_VALUE; for(int i=0; i<4; i++) { double dist = Math.abs(x-px[i])+Math.abs(y-py[i]); if(dist<minDist) { minDist = dist; nx=px[i]; ny=py[i]; } Finally, assign the value of the nearest pixel pixelVal = image.get(nx,ny);

Nearest neighbor interpolation

Piecewise linear interpolation

Piecewise Linear interpolation 0 1

Piecewise linear interpolation

Piecewise cubic interpolation

Piecewise Cubic (Hermite) interpolation

2D interpolation Nearest neighborBi-linear Bi-cubic

17 Resizing images How can we generate a half-sized version of a large image? Adapted from Steve Seitz, U of Washington

18 Resizing images Throw away every other row and column to create a 1/2 size image (also called sub-sampling). 1/4 1/8 Adapted from Steve Seitz, U of Washington

19 Resizing images Does this look nice? 1/4 (2x zoom)1/8 (4x zoom)1/2 Adapted from Steve Seitz, U of Washington

20 Sampling and aliasing Adapted from Steve Seitz, U of Washington

Sampling and aliasing

22 Sampling and aliasing Errors appear if we do not sample properly. Common phenomenon: High spatial frequency components of the image appear as low spatial frequency components. Examples: Wagon wheels rolling the wrong way in movies. Checkerboards misrepresented in ray tracing. Striped shirts look funny on color television.

23 Resizing images Throw away every other row and column… … regular sampling of a high-frequency function! 1/4 1/8 Adapted from Steve Seitz, U of Washington

24 Resizing images Does this look nice? 1/4 (2x zoom)1/8 (4x zoom)1/2 Adapted from Steve Seitz, U of Washington

25 Resizing images Regular sampling of a high-frequency image causes aliasing! Solution: smooth the image (remove high frequencies) first! Gaussian 1/4 Gaussian 1/8 Gaussian 1/2 Adapted from Steve Seitz, U of Washington

26 Resizing images Gaussian 1/4 (2x zoom) Gaussian 1/8 (4x zoom) Gaussian 1/2 Adapted from Steve Seitz, U of Washington

27 Gaussian pyramids Adapted from Gonzales and Woods

28 Gaussian pyramids Adapted from Michael Black, Brown University

29 Gaussian pyramids Adapted from Michael Black, Brown University

De-noising 30

Removing Noise 31

Inverting the Degradation Function 32

Inverting the Degradation Function 33 Original motion-blurred image PSF Clean image of The Beehive Nebula

Inverting the Degradation Function 34

Inverting the Degradation Function 35

Texture Synthesis 36 Incrementally growing pixels Given an incomplete neighborhood Find similar neighborhoods from the example, copy pixels ?

Texture Synthesis 37 Incrementally growing pixels Given an incomplete neighborhood Find similar neighborhoods from the example, copy pixels

Texture Synthesis 38 Incrementally growing pixels Given an incomplete neighborhood Find similar neighborhoods from the example, copy pixels Image Quilting Cut up the example into patches (not just pixels) Choose patches which line up the best Stitch the patches together along optimal seems

Texture Synthesis 39 Incrementally growing pixels Given an incomplete neighborhood Find similar neighborhoods from the example, copy pixels Image Quilting Cut up the example into patches (not just pixels) Choose patches which line up the best Stitch the patches together along optimal seems Can use this to fill holes in an image Instead of some example, use the image itself

Super-resolution 40 How do we increase image size? Interpolation? Need to fill in missing details EMBIGGEN INTERPOLATION

Super-resolution 41 How do we increase image size? Interpolation? Need to fill in missing details Combine multiple images at sub-pixel off-sets Synthesize details from examples Steal details from other images Copy details from same image (at different scales)