Topic 4 Image Segmentation

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

Chapter 10: Image Segmentation. Office room : 841

EECS490: Digital Image Processing. Lecture #19

Segmentation algorithm for monochrome images generally are based on one of two basic properties of gray level values: discontinuity and similarity.

Biomedical Image Analysis. Point, Edge and Line Detection

(10) Image Segmentation

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

1. What are the derivative operators useful in image segmentation? Explain their role in segmentation.

EDGE BASED REGION GROWING

Ulrik Söderström 16 Feb Image Processing. Segmentation

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

Image Segmentation. Schedule. Jesus J Caban 11/2/10. Monday: Today: Image Segmentation Topic : Matting ( P. Bindu ) Assignment #3 distributed

Lecture 6: Edge Detection

Computer Vision. Image Segmentation. 10. Segmentation. Computer Engineering, Sejong University. Dongil Han

Segmentation and Grouping

Digital Image Processing. Image Enhancement - Filtering

Operators-Based on Second Derivative double derivative Laplacian operator Laplacian Operator Laplacian Of Gaussian (LOG) Operator LOG

Line, edge, blob and corner detection

Lecture 7: Most Common Edge Detectors

Filtering and Enhancing Images

Image Processing. Traitement d images. Yuliya Tarabalka Tel.

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

Edge Detection Lecture 03 Computer Vision

Introduction to Medical Imaging (5XSA0)

Digital Image Processing COSC 6380/4393

Advanced Video Content Analysis and Video Compression (5LSH0), Module 4

Idea. Found boundaries between regions (edges) Didn t return the actual region

Practical Image and Video Processing Using MATLAB

Other Linear Filters CS 211A

Edges and Binary Images

Linear Operations Using Masks

Local Image preprocessing (cont d)

Region-based Segmentation

Image Segmentation. Segmentation is the process of partitioning an image into regions

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

Lecture: Edge Detection

Image Analysis. Edge Detection

Image Segmentation Image Thresholds Edge-detection Edge-detection, the 1 st derivative Edge-detection, the 2 nd derivative Horizontal Edges Vertical

Filtering Images. Contents

PERFORMANCE ANALYSIS OF CANNY AND OTHER COMMONLY USED EDGE DETECTORS Sandeep Dhawan Director of Technology, OTTE, NEW YORK

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

Processing and Others. Xiaojun Qi -- REU Site Program in CVMA

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

Neighborhood operations

Digital Image Analysis and Processing

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

Object Segmentation. Jacob D. Furst DePaul CTI

[ ] Review. Edges and Binary Images. Edge detection. Derivative of Gaussian filter. Image gradient. Tuesday, Sept 16

Image Segmentation Techniques

Image Processing

Chapter 10 Image Segmentation. Yinghua He

Computer Vision & Digital Image Processing. Image segmentation: thresholding

REGION & EDGE BASED SEGMENTATION

Basic Algorithms for Digital Image Analysis: a course

Comparison between Various Edge Detection Methods on Satellite Image

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

EE795: Computer Vision and Intelligent Systems

Image Analysis. Edge Detection

Segmentation

Region & edge based Segmentation

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

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

Segmentation

Image Analysis Image Segmentation (Basic Methods)

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

A Comparative Assessment of the Performances of Different Edge Detection Operator using Harris Corner Detection Method

CS4670: Computer Vision Noah Snavely

Edge Detection. CMPUT 206: Introduction to Digital Image Processing. Nilanjan Ray. Source:

Previously. Edge detection. Today. Thresholding. Gradients -> edges 2/1/2011. Edges and Binary Image Analysis

Edge detection. Gradient-based edge operators

SRCEM, Banmore(M.P.), India

EDGE BASED REGION GROWING

Chapter - 2 : IMAGE ENHANCEMENT

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

ECG782: Multidimensional Digital Signal Processing

the most common approach for detecting meaningful discontinuities in gray level. we discuss approaches for implementing

Chapter 3: Intensity Transformations and Spatial Filtering

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

SIMULATIVE ANALYSIS OF EDGE DETECTION OPERATORS AS APPLIED FOR ROAD IMAGES

EECS490: Digital Image Processing. Lecture #20

Effects Of Shadow On Canny Edge Detection through a camera

Image features. Image Features

Digital Image Processing, 3rd ed.

EE 701 ROBOT VISION. Segmentation

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

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)

Image Analysis Lecture Segmentation. Idar Dyrdal

REGION BASED SEGEMENTATION

Part 3: Image Processing

Edges and Binary Image Analysis April 12 th, 2018

Anno accademico 2006/2007. Davide Migliore

Today INF How did Andy Warhol get his inspiration? Edge linking (very briefly) Segmentation approaches

Image gradients and edges

Lecture 4: Image Processing

Detection of Edges Using Mathematical Morphological Operators

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

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

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

Evaluation Of Image Detection Techniques

Dr. Ulas Bagci

Transcription:

Topic 4 Image Segmentation What is Segmentation? Why? Segmentation important contributing factor to the success of an automated image analysis process What is Image Analysis: Processing images to derive information about various structures within the image. (area of the object, perimeter, No. of objects): Object Recognition First Step in analysis - Segmentation 1

Function of Segmentation: subdivides an image into its constituent regions or objects. Level of division depends on the problem (Known and unknown image environment) Subdivision should stop when the objects of interest have been isolated eg. skin region Input Image Output Image Input Image Output Image Image segmentation for monochrome image based on 2 basic properties of intensity values: (I) Discontinuity partition an image based on abrupt changes in intensity. Eg. Point, Line, Edge Detection in an image (II)Similarity partition an image based on similarity to a set of predefined criteria Eg. Thresholding, region growing, split and merge. 2

(I) Detection of Discontinuities 3 basic types of Discontinuities in Digital Image: (i) Point (ii) Line (iii) Edge Most common method to detect discontinuities: Run mask over the image (same as spatial filtering) w 1 w 2 w 3 w 4 w 5 w 6 R w z 1 1 w2z2 w3z3... w9 z9 w 7 w 8 w 9 Point Detection -1-1 -1-1 8-1 -1-1 -1 R w z 1 1 w2z2... w9 z9 Isolated Point will be different from from its surroundings and can be detected using this mask Mask is same as one of the masks shown in 2D Laplacian but the difference: R T ; T = Threshold DETECTED POINT 3

Example of Point Detection (a) X-ray Image of a Turbine Blade with a porosity in the upper right quadrant of the image (b) Result of Point Detection (c) Result of Using R T T = 90% of the highest absolute pixel value of the image Line Detection -1-1 -1 2 2 2-1 -1-1 Horizontal -1-1 2-1 2-1 2-1 -1 + 45-1 2-1 -1 2-1 -1 2-1 Vertical 2-1 -1-1 2-1 -1-1 2-45 Mask can detect 1 pixel thick lines only If all the 4 masks are run individually through an image: R i > R j ; j i then that point is likely to be associated with the direction in mask i Eg. R i = Vertical Line Mask, R j = The 3 other masks, so, the point will be likely to be associated to a Vertical Line 4

Example of Line Detection If we need to detect a line in a specific direction: (i) Run the mask for the line (ii) Threshold the absolute value of the result Detect -45 lines Absolute value of result after processing with - 45 line detector Result of Thresholding the Absolute Value (Threshold = maximum value in the image) Edge Detection Most common method to detect discontinuities Used to derive structural, shape information Basic approach to compute local derivative using 1 st and 2 nd order derivative Several method to detect edges - Problem 5

What is an Edge? Edge can be defined as the change in intensity profile Roof Type Step Type Characterising an edge Roof Type Discontinuity in the gradient profile One peak in the 2 nd derivative Step Type Discontinuity in the intensity profile One peak in the gradient 2 peaks of the opposite signs in the 2 nd derivative - i.e. a zero-crossing 6

Edge Images Thickness of the edge: determined by the length of the ramp Length of ramp: determined by the slope of the ramp (determined by degree of blurring Blurred Edges: THICK and Sharp Edges: THIN Edge Images Observation: 1 st Derivative 1. Magnitude of the 1 st Derivative can be used to detect if a point is on an edge 2. Sign of the 2 nd Derivative can be used to find whether the edge pixel is on the dark or light side of an edge Gray-level Profiles Image 2 nd Derivative 3. 2 nd Derivative produces 2 values for every edge and an imaginary straight line will cross zero near the midpoint of the edge (called the zerocrossing property of 2 nd derivative useful for locating the centers of thick edges) 7

Edge Detection Gradient based Compute first derivative (gradient) and threshold this image Zero-crossing based Compute second derivative, locate zero crossings and threshold this image Gradient based edge detection Roberts 2x2 masks Difference operation in 2 diagonal directions Sobel gradient operator + smoothing Prewitt 3x3 gradient operator + smoothing 8

Gradient operators 0-1 1 0-1 0 1-1 0 1-1 0 1-1 -2-1 0 0 0 1 2 1 Roberts Prewitt Sobel -1 0 0 1-1 -1-1 0 0 0 1 1 1-1 0 1-2 0 2-1 0 1 X-Direction Y-Direction X & Y-Direction With Smoothing using Averaging Filter 9

Zero-crossing based edge detection Laplacian 2 nd derivative operator Can only locate edges, can t give edge direction Very sensitive to noise thus, will produce undesirable double edges Smoothed Laplacian Noise reduction through smoothing by using Gaussian function Known as Laplacian of Gaussian (LoG) Approximated as difference of Gaussians (DoG) - used in HVS (simple cells) Laplacian 2 Second derivative operators 2 f f ( x, y) 2 x 2 f 2 y Masks 0-1 0-1 4-1 0-1 0 Laplacian of a Gaussian (LoG) 2 ( G)* f ( x, y) Mexican Hat 1-2 1-2 4-2 1-2 1 10

Canny Edge Detector An optimal edge detector optimal in detection, localization and giving single response Main proc. stages Gaussian smoothing removes noise Edge direction estimation from gradient image Non-maxima suppression by following edge direction to get single response to edges Thresholding (hysteresis) dual threshold to obtain clean contours Canny edge detector Performance Very good results Computationally very expensive 11

Edge based segmentation Compute gradient and threshold the gradient image Problems in edge based segmentation Sensitivity to noise 12

Comparisons of edge detection methods Coin Image Prewitt LoG Canny Thresholding Original Image and Histogram 1600 1400 1200 1000 800 600 400 200 Background Threshold value = 90 Foreground 0 0 50 100 150 200 250 7000 6000 After Thresholding 5000 4000 3000 2000 1000 0 0 50 100 150 200 250 13

Thresholding Division of image into 2 uniform regions - Object vs background Types of thresholding Interactive (w. mouse input) Automatic Fixed Adaptive global local dynamic Fixed thresholding When to use: grey values of object vs background are known x[m,n] = 1 for g 1 < x < g 2 = 0 otherwise Variation: fixed grey value AND some other criterion - Ex. Proximity of the candidate to an object pixel 14

Adaptive Thresholding Threshold, t = f{[m,n],p l, x[m,n]} - x is the given image - x[m,n] = gray-level values - p l is the local property eg. of local property average gray value of a neighborhood centered on (m,n) (i) (ii) Global: t = f{x[m,n]} Local: t = f{p l, x[m,n]} (iii) Dynamic: t = f{[m,n],p l, x[m,n]} Global Thresholding Applied to the whole image Uses image data to determine the threshold - Brightness histograms h[g] are popular - Ideally need well defined peaks and troughs - Single or dual thresholds - Computationally less intensive 15

Global Thresholding T Local Thresholding Applied after dividing x[m,n] into uniformly brightness patches Patch boundaries need to be post processed Combinations of local statistics and other derived information are used to find t - ex. Texture, entropy etc. Very effective for handling non-uniform illumination Computationally more intensive 16

Selecting the Threshold Number of peaks and definition of troughs influence threshold selection Difficult Case Histogram Smoothing Histogram smoothing is used to select thresholds when histograms are ragged Threshold selection is made easier Care must be taken not to shift peaks 17

Thresholding - Example Scanned doc After global thresholding After adaptive thresholding (local) t = mean in 7x7 window t = local mean - k 18

Thresholding Example Threshold Selection on Boundary Characteristics To obtain a good segmentation, the selection of threshold is easy if the histogram peaks are tall and separated by deep valleys Solution: to consider only the pixels that lie on or near the edges between objects and background (using pixels that satisfy some simple measures based on gradient and Laplacian operators) 0 s( x, y) if f if f if f T 2 T and f 0 2 T and f 0 Pixels not on an edge Pixels on the dark side of an edge Pixels on the light side of an edge 19

Local Thresholding 20

Region-based approaches Previously: Edge detection segmentation by finding the boundaries between regions based on discontinuities in gray levels Thresholding segmentation based on the distribution of pixel properties eg. gray-level values In this section: Region-based approach segmentation based on finding the regions directly (based on similarity) Suitable for segmenting non-uniform regions that are perceived to be uniform Grouping by similarity and spatial proximity Region-based segmentation Region Growing Split and Merge Region growing: a procedure that groups pixels or subregions into larger regions based on predefined criteria Basic Approach to implement Region Growing: Start with seed points Region Growing From the seed points, grow the regions by adding to each seed those neighboring pixels that have similar properties to the seed (specific range of gray level) Stopping Rule for Region Growing: growing of a region should stop when no more pixels satisfy the criteria for inclusion in that region Additional criteria (besides gray-level) like size and shape can be included in region growing to obtain better segmentation 21

Region Growing Example 2 criteria for growing (including a pixel in the seed region): a) Absolute Gray-level Difference between any pixel and seed must be < 65 b) Pixels had to be 8-connected to at least one pixel in that region Region Splitting and Merge Region Split and Merge: a procedure that subdivide an image into a set of disjointed regions and later, merge and/or split the regions according to certain conditions Basic Approach to implement Region Split and Merge: Split into 4 disjoint quadrants any region R i for which P(R i ) = FALSE Merge any adjacent regions, R j and R k for which P(R j R k ) = TRUE Stop when no further merging or splitting possible 22

Region Splitting and Merge Region Splitting and Merge In MATLAB, function qtdecomp In a block, Split the block if Threshold, T = g max - g min > 0.27 ;g =gray-level 23