Last Lecture. photomatix.com

Similar documents
Last Lecture. photomatix.com

CS6670: Computer Vision Noah Snavely. Administrivia. Administrivia. Reading. Last time: Convolution. Last time: Cross correlation 9/8/2009

Image Scaling. This image is too big to fit on the screen. How can we reduce it? How to generate a halfsized

Overview. Neighborhood Filters. Dithering

Image Sampling. Moire patterns. - Source: F. Durand

ECE 484 Digital Image Processing Lec 09 - Image Resampling

Images and Filters. EE/CSE 576 Linda Shapiro

Announcements. Image Processing. What s an image? Images as functions. Image processing. What s a digital image?

Sampling and Pyramids

CSCI 1290: Comp Photo

Image Pyramids. Sanja Fidler CSC420: Intro to Image Understanding 1 / 35

Filters. Materials from Prof. Klaus Mueller

Midterm Examination CS 534: Computational Photography

Image Filtering and Gaussian Pyramids

Image Interpolation. Image Processing

Matlab (see Homework 1: Intro to Matlab) Linear Filters (Reading: 7.1, ) Correlation. Convolution. Linear Filtering (warm-up slide) R ij

IMAGE PROCESSING: AREA OPERATIONS (FILTERING)

CS4495/6495 Introduction to Computer Vision. 2C-L3 Aliasing

Sampling and Reconstruction

Vision Review: Image Processing. Course web page:

02/02/10. Image Filtering. Computer Vision CS 543 / ECE 549 University of Illinois. Derek Hoiem

Image Processing for feature extraction

06: Thinking in Frequencies. CS 5840: Computer Vision Instructor: Jonathan Ventura

Image features: Histograms, Aliasing, Filters, Orientation and HOG. D.A. Forsyth

Digital Image Processing

Computer Graphics (Fall 2011) Outline. CS 184 Guest Lecture: Sampling and Reconstruction Ravi Ramamoorthi

Motion illusion, rotating snakes

CoE4TN4 Image Processing. Chapter 3: Intensity Transformation and Spatial Filtering

Templates and Image Pyramids

Color Space 1: RGB Color Space. Color Space 2: HSV. RGB Cube Easy for devices But not perceptual Where do the grays live? Where is hue and saturation?

!"!#"#$% Lecture 2: Media Creation. Some materials taken from Prof. Yao Wang s slides RECAP

Templates and Image Pyramids

CS 4501: Introduction to Computer Vision. Filtering and Edge Detection

Thinking in Frequency

CSC 320 H1S CSC320 Exam Study Guide (Last updated: April 2, 2015) Winter 2015

OFFSET AND NOISE COMPENSATION

Sampling and Reconstruction

Fourier analysis of images

Practical Image and Video Processing Using MATLAB

Sampling and reconstruction

Next Classes. Spatial frequency Fourier transform and frequency domain. Reminder: Textbook. Frequency view of filtering Hybrid images Sampling

Image Filtering. Median Filtering

CEE598 - Visual Sensing for Civil Infrastructure Eng. & Mgmt.

Sampling and reconstruction. CS 4620 Lecture 13

A.V.C. COLLEGE OF ENGINEERING DEPARTEMENT OF CSE CP7004- IMAGE PROCESSING AND ANALYSIS UNIT 1- QUESTION BANK

Digital Image Processing. Digital Image Fundamentals II 12 th June, 2017

EE482: Digital Signal Processing Applications

Motivation: Image denoising. How can we reduce noise in a photograph?

Sampling and reconstruction

Image Enhancement using Histogram Equalization and Spatial Filtering

Image Filtering in Spatial domain. Computer Vision Jia-Bin Huang, Virginia Tech

Module 3: Video Sampling Lecture 18: Filtering operations in Camera and display devices. The Lecture Contains: Effect of Temporal Aperture:

Image Processing. Adam Finkelstein Princeton University COS 426, Spring 2019

Midterm Review. Image Processing CSE 166 Lecture 10

LAB MANUAL SUBJECT: IMAGE PROCESSING BE (COMPUTER) SEM VII

Motivation: Image denoising. How can we reduce noise in a photograph?

קורס גרפיקה ממוחשבת 2008 סמסטר ב' Image Processing 1 חלק מהשקפים מעובדים משקפים של פרדו דוראנד, טומס פנקהאוסר ודניאל כהן-אור

Multimedia Systems Giorgio Leonardi A.A Lectures 14-16: Raster images processing and filters

Image Filtering. Reading Today s Lecture. Reading for Next Time. What would be the result? Some Questions from Last Lecture

Lecture 2: Color, Filtering & Edges. Slides: S. Lazebnik, S. Seitz, W. Freeman, F. Durand, D. Forsyth, D. Lowe, B. Wandell, S.Palmer, K.

Table of contents. Vision industrielle 2002/2003. Local and semi-local smoothing. Linear noise filtering: example. Convolution: introduction

Fixing the Gaussian Blur : the Bilateral Filter

Frequency Domain Enhancement

Filtering in the spatial domain (Spatial Filtering)

Thinking in Frequency

Sampling and pixels. CS 178, Spring Marc Levoy Computer Science Department Stanford University. Begun 4/23, finished 4/25.

Tonemapping and bilateral filtering

Image Processing. What is an image? קורס גרפיקה ממוחשבת 2008 סמסטר ב' Converting to digital form. Sampling and Reconstruction.

Performance Evaluation of Edge Detection Techniques for Square Pixel and Hexagon Pixel images

Image Processing COS 426

Image filtering, image operations. Jana Kosecka

Computer Vision, Lecture 3

CS534 Introduction to Computer Vision. Linear Filters. Ahmed Elgammal Dept. of Computer Science Rutgers University

Achim J. Lilienthal Mobile Robotics and Olfaction Lab, AASS, Örebro University

Image acquisition. Midterm Review. Digitization, line of image. Digitization, whole image. Geometric transformations. Interpolation 10/26/2016

Midterm is on Thursday!

Digital Image Processing

Preparing Remote Sensing Data for Natural Resources Mapping (image enhancement, rectifications )

>>> from numpy import random as r >>> I = r.rand(256,256);

Aliasing and Antialiasing. What is Aliasing? What is Aliasing? What is Aliasing?

Lec 04: Image Filtering and Edge Features

Deblurring. Basics, Problem definition and variants

Digital Image Processing

Image Processing (EA C443)

Image Enhancement. Image Enhancement

CoE4TN4 Image Processing. Chapter 4 Filtering in the Frequency Domain

Image Enhancement II: Neighborhood Operations

>>> from numpy import random as r >>> I = r.rand(256,256);

Fourier Transform. Any signal can be expressed as a linear combination of a bunch of sine gratings of different frequency Amplitude Phase

Image Processing. Image Processing. What is an Image? Image Resolution. Overview. Sources of Error. Filtering Blur Detect edges

IMAGE ENHANCEMENT IN SPATIAL DOMAIN

Lecture 3: Linear Filters

Image preprocessing in spatial domain

Transforms and Frequency Filtering

Prof. Vidya Manian Dept. of Electrical and Comptuer Engineering

Remote Sensing 4113 Lab 08: Filtering and Principal Components Mar. 28, 2018

High Dynamic Range Imaging

Introduction to DSP ECE-S352 Fall Quarter 2000 Matlab Project 1

ECC419 IMAGE PROCESSING

1.Discuss the frequency domain techniques of image enhancement in detail.

Transcription:

Last Lecture photomatix.com

HDR Video

Assorted pixel (Single Exposure HDR)

Assorted pixel

Assorted pixel

Pixel with Adaptive Exposure Control light attenuator element detector element T t+1 I t controller

ADR Imaging with Spatial Light Modulator image detector relay lens controllable modulator object field lens imaging lens

ADR Camera with LCD Attenuator LCD Electronics LCD Attenuator Video Camera Imaging Lens

Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image Pyramids (Gaussian and Laplacian) Removing handshake blur from a single image

Image as a discreet function x f(x,y) y Represented by a matrix 62 79 23 119 120 105 4 0 10 10 9 62 12 78 34 0 10 58 197 46 46 0 0 48 176 135 5 188 191 68 0 49 2 1 1 29 26 37 0 77 0 89 144 147 187 102 62 208 255 252 0 166 123 62 0 31 166 63 127 17 1 0 99 30

What is image filtering? Modify the pixels in an image based on some function of a local neighborhood of the pixels. 10 5 3 4 5 1 1 1 7 Local image data Some function 7 Modified image data

Linear functions Simplest: linear filtering. Replace each pixel by a linear combination of its neighbors. The prescription for the linear combination is called the convolution kernel. 10 5 3 4 5 1 1 1 7 Local image data 0 0 0 0 0.5 0 0 1 0.5 kernel 7 Modified image data

Convolution f [ m, n] = I g = I[ m k, n l] g[ k, l] k, l I

Linear filtering (warm-up slide) coefficient 1.0? original 0 Pixel offset

Linear filtering (warm-up slide) coefficient 1.0 original 0 Pixel offset Filtered (no change)

Linear filtering coefficient 1.0? original 0 Pixel offset

shift coefficient 1.0 original 0 Pixel offset shifted

Linear filtering coefficient 0.3? original 0 Pixel offset

Blurring coefficient 0.3 original 0 Pixel offset Blurred (filter applied in both dimensions).

Blur Examples impulse 8 coefficient 0.3 2.4 original 0 Pixel offset filtered

Blur Examples impulse 8 coefficient 0.3 2.4 original 0 Pixel offset filtered edge 8 4 coefficient 0.3 8 4 original 0 Pixel offset filtered

Linear filtering (warm-up slide) 2.0 1.0? 0 0 original

Linear Filtering (no change) 2.0 1.0 0 0 original Filtered (no change)

Linear Filtering 2.0 0.33? 0 0 original

(remember blurring) coefficient 0.3 original 0 Pixel offset Blurred (filter applied in both dimensions).

Sharpening 2.0 0.33 0 0 original Sharpened original

Sharpening example 8 coefficient 1.7 11.2 8 original -0.3-0.25 Sharpened (differences are accentuated; constant areas are left untouched).

Sharpening before after

Spatial resolution and color R G original B

Blurring the G component R G original processed B

Blurring the R component R G original processed B

Blurring the B component R G original processed B

Lab Color Component L a b A rotation of the color coordinates into directions that are more perceptually meaningful: L: luminance, a: red-green, b: blue-yellow

Bluring L L a original processed b

Bluring a L a original processed b

Bluring b L a original processed b

Application to image compression (compression is about hiding differences from the true image where you can t see them).

Edge Detection Convert a 2D image into a set of curves Extracts salient features of the scene More compact than pixels

How can you tell that a pixel is on an edge?

Image gradient The gradient of an image: The gradient points in the direction of most rapid change in intensity The gradient direction is given by: how does the gradient relate to the direction of the edge? The edge strength is given by the gradient magnitude

Effects of noise Consider a single row or column of the image Plotting intensity as a function of position gives a signal How to compute a derivative? Where is the edge?

Solution: smooth first Where is the edge? Look for peaks in

Derivative theorem of convolution This saves us one operation:

Laplacian of Gaussian Consider Laplacian of Gaussian operator Where is the edge? Zero-crossings of bottom graph

Canny Edge Detector Smooth image I with 2D Gaussian: G I Find local edge normal directions for each pixel Along this direction, compute image gradient θ = arctan ( G I ) I I y x Locate edges by finding max gradient magnitude (Non-maximum suppression)

Non-maximum Suppression Check if pixel is local maximum along gradient direction requires checking interpolated pixels p and r

The Canny Edge Detector original image (Lena)

The Canny Edge Detector magnitude of the gradient

The Canny Edge Detector After non-maximum suppression

Canny Edge Detector original Canny with Canny with The choice of depends on desired behavior large detects large scale edges small detects fine features

Image Scaling This image is too big to fit on the screen. How can we reduce it? How to generate a halfsized version?

Image sub-sampling 1/8 1/4 Throw away every other row and column to create a 1/2 size image -calledimage sub-sampling

Image sub-sampling 1/2 1/4 (2x zoom) 1/8 (4x zoom) Why does this look so crufty?

Even worse for synthetic images

Really bad in video

Not enough samples Alias: n., an assumed name Input signal: Picket fence receding Into the distance will produce aliasing WHY? Matlab output: x = 0:.05:5; imagesc(sin((2.^x).*x)) Aj-aj-aj: Alias!

Aliasing occurs when your sampling rate is not high enough to capture the amount of detail in your image Can give you the wrong signal/image an alias Where can it happen in images? During image synthesis: sampling continous singal into discrete signal e.g. ray tracing, line drawing, function plotting, etc. During image processing: resampling discrete signal at a different rate e.g. Image warping, zooming in, zooming out, etc. To do sampling right, need to understand the structure of your signal/image Enter Monsieur Fourier

Antialiasing What can be done? 1. Raise sampling rate by oversampling Sample at k times the resolution continuous signal: easy discrete signal: need to interpolate

Antialiasing What can be done? 1. Raise sampling rate by oversampling Sample at k times the resolution continuous signal: easy discrete signal: need to interpolate

Antialiasing What can be done? 1. Raise sampling rate by oversampling Sample at k times the resolution continuous signal: easy discrete signal: need to interpolate 2. Lower the max frequency by prefiltering Smooth the signal enough Works on discrete signals

Antialiasing What can be done? 1. Raise sampling rate by oversampling Sample at k times the resolution continuous signal: easy discrete signal: need to interpolate 2. Lower the max frequency by prefiltering Smooth the signal enough Works on discrete signals 3. Improve sampling quality with better sampling (CS559)

Low resolution The Gaussian Pyramid G 4 = ( G 3 * gaussian) 2 G 3 = ( G 2 * gaussian blur ) 2 blur G 2 = ( G 1 * gaussian) 2 sub-sample sub-sample blur sub-sample G 1 = ( G 0 * gaussian) 2 sub-sample G 0 = Image blur High resolution

Gaussian pre-filtering G 1/8 G 1/4 Gaussian 1/2 Solution: filter the image, then subsample

Subsampling with Gaussian pre-filtering Gaussian 1/2 G 1/4 G 1/8 Solution: filter the image, then subsample

Compare with... 1/2 1/4 (2x zoom) 1/8 (4x zoom)

Pyramids at Same Resolution

Gaussian Pyramid G 2 G n The Laplacian Pyramid expand expand L G i = Gi i+ i = Li + Gi+ expand( G 1) expand( 1) Laplacian Pyramid L n = G n L - = 2 G 1 expand - = L 1 G 0 L 0 - =

Recap Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image Pyramids (Gaussian and Laplacian) Next