Lecture 4: Image Processing

Similar documents
Image processing. Reading. What is an image? Brian Curless CSE 457 Spring 2017

Digital Image Processing. Image Enhancement - Filtering

Image Processing. Traitement d images. Yuliya Tarabalka Tel.

Filtering Images. Contents

Linear Operations Using Masks

Filtering and Enhancing Images

Segmentation and Grouping

EE795: Computer Vision and Intelligent Systems

Biomedical Image Analysis. Spatial Filtering

Edge and local feature detection - 2. Importance of edge detection in computer vision

Edge detection. Stefano Ferrari. Università degli Studi di Milano Elaborazione delle immagini (Image processing I)

Chapter 3: Intensity Transformations and Spatial Filtering

Prof. Feng Liu. Winter /15/2019

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick

CS4442/9542b Artificial Intelligence II prof. Olga Veksler

Image gradients and edges April 11 th, 2017

CS4442/9542b Artificial Intelligence II prof. Olga Veksler

SYDE 575: Introduction to Image Processing

Edge detection. Gradient-based edge operators

Image gradients and edges April 10 th, 2018

CS 4495 Computer Vision. Linear Filtering 2: Templates, Edges. Aaron Bobick. School of Interactive Computing. Templates/Edges

3.4& Fundamentals& mechanics of spatial filtering(page 166) Spatial filter(mask) Filter coefficients Filter response

Babu Madhav Institute of Information Technology Years Integrated M.Sc.(IT)(Semester - 7)

How and what do we see? Segmentation and Grouping. Fundamental Problems. Polyhedral objects. Reducing the combinatorics of pose estimation

Edge detection. Goal: Identify sudden. an image. Ideal: artist s line drawing. object-level knowledge)

Lecture 4: Spatial Domain Transformations

Perception. Autonomous Mobile Robots. Sensors Vision Uncertainties, Line extraction from laser scans. Autonomous Systems Lab. Zürich.

EECS 556 Image Processing W 09. Image enhancement. Smoothing and noise removal Sharpening filters

Digital Image Processing. Prof. P. K. Biswas. Department of Electronic & Electrical Communication Engineering

Neighborhood operations

Other Linear Filters CS 211A

CS559: Computer Graphics. Lecture 6: Painterly Rendering and Edges Li Zhang Spring 2008

Part 3: Image Processing

Lecture 6: Edge Detection

Lecture 7: Most Common Edge Detectors

Edge and Texture. CS 554 Computer Vision Pinar Duygulu Bilkent University

Image gradients and edges

Edge Detection. Announcements. Edge detection. Origin of Edges. Mailing list: you should have received messages

Anno accademico 2006/2007. Davide Migliore

Edge Detection (with a sidelight introduction to linear, associative operators). Images

Biomedical Image Analysis. Point, Edge and Line Detection

CS5670: Computer Vision

Announcements. Edge Detection. An Isotropic Gaussian. Filters are templates. Assignment 2 on tracking due this Friday Midterm: Tuesday, May 3.

Image Enhancement in Spatial Domain (Chapter 3)

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,

Topic 4 Image Segmentation

CS4733 Class Notes, Computer Vision

Concepts in. Edge Detection

Why is computer vision difficult?

Filtering and Edge Detection. Computer Vision I. CSE252A Lecture 10. Announcement

Lecture: Edge Detection

CS4670: Computer Vision Noah Snavely

Edge detection. Winter in Kraków photographed by Marcin Ryczek

Image features. Image Features

Concepts in. Edge Detection

CS334: Digital Imaging and Multimedia Edges and Contours. Ahmed Elgammal Dept. of Computer Science Rutgers University

ECG782: Multidimensional Digital Signal Processing

Digital Image Processing

CHAPTER 3 IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN

Image Processing. Daniel Danilov July 13, 2015

Edge Detection. CS664 Computer Vision. 3. Edges. Several Causes of Edges. Detecting Edges. Finite Differences. The Gradient

2D Image Processing INFORMATIK. Kaiserlautern University. DFKI Deutsches Forschungszentrum für Künstliche Intelligenz

Lecture 6 Linear Processing. ch. 5 of Machine Vision by Wesley E. Snyder & Hairong Qi. Spring (CMU RI) : BioE 2630 (Pitt)

Filtering Images in the Spatial Domain Chapter 3b G&W. Ross Whitaker (modified by Guido Gerig) School of Computing University of Utah

Edge Detection. EE/CSE 576 Linda Shapiro

What will we learn? Neighborhood processing. Convolution and correlation. Neighborhood processing. Chapter 10 Neighborhood Processing

Edge detection. Winter in Kraków photographed by Marcin Ryczek

Broad field that includes low-level operations as well as complex high-level algorithms

ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing" Larry Matthies"

Practical Image and Video Processing Using MATLAB

CS534: Introduction to Computer Vision Edges and Contours. Ahmed Elgammal Dept. of Computer Science Rutgers University

Line, edge, blob and corner detection

ECG782: Multidimensional Digital Signal Processing

Sharpening through spatial filtering

Lecture 2 Image Processing and Filtering

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

Filters and Pyramids. CSC320: Introduction to Visual Computing Michael Guerzhoy. Many slides from Steve Marschner, Alexei Efros

EECS490: Digital Image Processing. Lecture #19

Digital Image Processing COSC 6380/4393

Point and Spatial Processing

What Are Edges? Lecture 5: Gradients and Edge Detection. Boundaries of objects. Boundaries of Lighting. Types of Edges (1D Profiles)

Computer Vision I. Announcements. Fourier Tansform. Efficient Implementation. Edge and Corner Detection. CSE252A Lecture 13.

Edge Detection. Today s reading. Cipolla & Gee on edge detection (available online) From Sandlot Science

Sobel Edge Detection Algorithm

Computer Vision and Graphics (ee2031) Digital Image Processing I

Digital Image Processing. Image Enhancement in the Spatial Domain (Chapter 4)

Image Processing. BITS Pilani. Dr Jagadish Nayak. Dubai Campus

Edge Detection CSC 767

Edge Detection Lecture 03 Computer Vision

Noise Model. Important Noise Probability Density Functions (Cont.) Important Noise Probability Density Functions

Capturing, Modeling, Rendering 3D Structures

Vivekananda. Collegee of Engineering & Technology. Question and Answers on 10CS762 /10IS762 UNIT- 5 : IMAGE ENHANCEMENT.

Image Processing Lecture 10

Outlines. Medical Image Processing Using Transforms. 4. Transform in image space

Image Processing

Relationship between Fourier Space and Image Space. Academic Resource Center

SURVEY ON IMAGE PROCESSING IN THE FIELD OF DE-NOISING TECHNIQUES AND EDGE DETECTION TECHNIQUES ON RADIOGRAPHIC IMAGES

Computer Vision 2. SS 18 Dr. Benjamin Guthier Professur für Bildverarbeitung. Computer Vision 2 Dr. Benjamin Guthier

Image Processing (2) Point Operations and Local Spatial Operations

Solution: filter the image, then subsample F 1 F 2. subsample blur subsample. blur

Transcription:

Lecture 4: Image Processing

Definitions Many graphics techniques that operate only on images Image processing: operations that take images as input, produce images as output In its most general form, an image is a function f from R 2 to R f( x, y ) gives the intensity of a channel at position (x, y) defined over a rectangle, with a finite range: f: [a,b]x[c,d] [0,1] A color image is just three functions pasted together: f( x, y ) = (f r ( x, y ), f g ( x, y ), f b ( x, y ))

Images In computer graphics, we usually operate on digital (discrete) images Quantize space into units (pixels) Image is constant over each unit A kind of step function f: {0 m-1}x{0 n-1} [0,1] An image processing operation typically defines a new image f in terms of an existing image f

Images as Functions

Pixel-to-pixel Operations The simplest operations are those that transform each pixel in isolation f ( x, y ) = g(f (x,y)) Example: threshold, RGB greyscale

Pixel Movement Some operations preserve intensities, but move pixels around in the image f ( x, y ) = f(g(x,y), h(x,y)) Examples: many amusing warps of images

Common types of noise: Noise Original Salt and pepper noise Impulse noise Gaussian noise

Noise Reduction How can we smooth away noise?

Convolution Convolution is a fancy way to combine two functions. Think of f as an image and g as a smear operator g determines a new intensity at each point in terms of intensities of a neighborhood of that point The computation at each point (x,y) is like the computation of cone responses

Discrete Convolution Since digital images are like step functions, integration becomes summation. We can express convolution as a two-dimensional sum:

Convolution Representation Since f and g are defined over finite regions, we can write them out in two-dimensional arrays: 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 X.2 X 0 X.2 X 0 X.2 X 0 X.2 X 0 X.2

Mean Filters How can we represent our noise-reducing averaging filter as a convolution diagram?

Using Mean Filters Gaussian noise Salt and pepper noise 3x3 5x5 7x7

Gaussian Filters Gaussian filters weigh pixels based on their distance to the location of convolution. Blurring noise while preserving features of the image Smoothing the same in all directions More significance to neighboring pixels Width parameterized by σ Gaussian functions are separable

Using Gaussian Filters Gaussian noise Salt and pepper noise 3x3 5x5 7x7

Median Filters A Median Filter operates over a kxk region by selecting the median intensity in the region. What advantage does a median filter have over a mean filter? Is a median filter a kind of convolution?

Using Median Filters Gaussian noise Salt and pepper noise 3x3 5x5 7x7

Edge Detection One of the most important uses of image processing is edge detection Really easy for humans Really difficult for computers Fundamental in computer vision Important in many graphics applications What defines an edge? Step Ramp Line Roof

Gradient The gradient is the 2D equivalent of the derivative: Properties of the gradient It s a vector Points in the direction of maximum increase of f Magnitude is rate of increase How can we approximate the gradient in a discrete image?

Edge Detection Algorithms Edge detection algorithms typically proceed in three or four steps: Filtering: cut down on noise Enhancement: amplify the difference between edges and nonedges Detection: use a threshold operation Localization (optional): estimate geometry of edges beyond pixels

Edge Enhancement A popular gradient magnitude computation is the Sobel operator: We can then compute the magnitude of the vector (s x,s y )

Using Sobel Operators Original Smoothed Sx + 128 Sy + 128 Magnitude Threshold = 64 Threshold = 128

Second Derivative Operators The Sobel operator can produce thick edges. Ideally, we re looking for infinitely thin boundaries. An alternative approach is to look for local extrema in the first derivative: places where the change in the gradient is highest. We can find these by looking for zeroes in the second derivative Using similar reasoning as above, we can derive a Laplacian filter, which approximates the second derivative: Zero values in the convoluted image correspond to extreme gradients, i.e. edges.

Summary Formal definitions of image and image processing Kinds of image processing: pixel-to-pixel, pixel movement, convolution, others Types of noise and strategies for noise reduction Definition of convolution and how discrete convolution works The effects of mean, median and Gaussian filtering How edge detection is done Gradients and discrete approximations