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

Similar documents
Comparison between Various Edge Detection Methods on Satellite Image

BIM472 Image Processing Image Segmentation

Lecture 7: Most Common Edge Detectors

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

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

Topic 4 Image Segmentation

Image Processing

Biomedical Image Analysis. Point, Edge and Line Detection

Edge detection. Gradient-based edge operators

Practical Image and Video Processing Using MATLAB

Digital Image Processing. Image Enhancement - Filtering

EDGE DETECTION-APPLICATION OF (FIRST AND SECOND) ORDER DERIVATIVE IN IMAGE PROCESSING

Image Processing. Traitement d images. Yuliya Tarabalka Tel.

EECS490: Digital Image Processing. Lecture #19

Line, edge, blob and corner detection

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

Lecture 6: Edge Detection

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

Neighborhood operations

Filtering and Enhancing Images

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

Types of Edges. Why Edge Detection? Types of Edges. Edge Detection. Gradient. Edge Detection

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

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

Local Image preprocessing (cont d)

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

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

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

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

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

Edge Detection Techniques in Processing Digital Images: Investigation of Canny Algorithm and Gabor Method

Other Linear Filters CS 211A

Evaluation Of Image Detection Techniques

Edge Detection Lecture 03 Computer Vision

Multimedia Computing: Algorithms, Systems, and Applications: Edge Detection

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

AN EFFICIENT APPROACH FOR IMPROVING CANNY EDGE DETECTION ALGORITHM

Segmentation I: Edges and Lines

Filtering Images. Contents

Algorithms for Edge Detection and Enhancement for Real Time Images: A Comparative Study

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

Feature Detectors - Canny Edge Detector

Feature Detectors - Sobel Edge Detector

Sobel Edge Detection Algorithm

Anno accademico 2006/2007. Davide Migliore

EE795: Computer Vision and Intelligent Systems

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

EN1610 Image Understanding Lab # 3: Edges

Image Analysis. Edge Detection

A New Technique of Extraction of Edge Detection Using Digital Image Processing

Edge Detection in Angiogram Images Using Modified Classical Image Processing Technique

Denoising and Edge Detection Using Sobelmethod

Comparative Analysis of Various Edge Detection Techniques in Biometric Application

Point Operations and Spatial Filtering

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

Concepts in. Edge Detection

Assignment 3: Edge Detection

Performance Evaluation of Edge Detection Techniques for Images in Spatial Domain

Feature Extraction and Image Processing, 2 nd Edition. Contents. Preface

(10) Image Segmentation

EECS490: Digital Image Processing. Lecture #20

EDGE BASED REGION GROWING

Image Processing. Daniel Danilov July 13, 2015

SRCEM, Banmore(M.P.), India

Comparative Analysis of Edge Detection Algorithms Based on Content Based Image Retrieval With Heterogeneous Images

Digital Image Processing COSC 6380/4393

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

JNTUWORLD. 4. Prove that the average value of laplacian of the equation 2 h = ((r2 σ 2 )/σ 4 ))exp( r 2 /2σ 2 ) is zero. [16]

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

Digital Image Processing (CS/ECE 545) Lecture 5: Edge Detection (Part 2) & Corner Detection

Image Analysis. Edge Detection

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

Chapter 10: Image Segmentation. Office room : 841

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

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

Lesson 6: Contours. 1. Introduction. 2. Image filtering: Convolution. 3. Edge Detection. 4. Contour segmentation

Detection of Edges Using Mathematical Morphological Operators

An Improved Approach for Digital Image Edge Detection Mahbubun Nahar 1, Md. Sujan Ali 2

Implementation of Canny Edge Detection Algorithm on FPGA and displaying Image through VGA Interface

An Algorithm for Blurred Thermal image edge enhancement for security by image processing technique

ECEN 447 Digital Image Processing

Computer Vision & Digital Image Processing. Image segmentation: thresholding

Concepts in. Edge Detection

5. Feature Extraction from Images

Image features. Image Features

Straight Lines and Hough

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

Filtering Applications & Edge Detection. GV12/3072 Image Processing.

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

A Robust Method for Circle / Ellipse Extraction Based Canny Edge Detection

The application of a new algorithm for noise removal and edges detection in captured image by WMSN

SIMULATIVE ANALYSIS OF EDGE DETECTION OPERATORS AS APPLIED FOR ROAD IMAGES

EEM 463 Introduction to Image Processing. Week 3: Intensity Transformations

Digital Image Procesing

Lecture: Edge Detection

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

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

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences

Image Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments

Transcription:

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

6.1 Image segmentation Segmentation process refers to the partitioning of image into component parts or separated objects. It can be implemented by two methods: Thresholding Edge detection Thresholding is a vital part of image segmentation when we want to isolate object from its background and It is classified into three types, 1. Single threshold 2. Double threshold 3. Adaptive threshold 1. Single Threshold: this type uses single gray-level to detect or hide some information in the image. So an grey image can be converted to a binary one using single threshold value. If pixel > T... pixel White Gray image If pixel T... pixel Black Binary image Fig. 6.1 Single Threshold for a gray image For white objects like rice, we apply the greater operator (>) >> r = imread ( rice.tif ); >> imshow ( r), figure, imshow ( r > 100 ); While the less operator is used for detecting dark objects >> b = imread ( bacteria.tif ); >> imshow ( b), figure, imshow ( b > 100 ); r r > 100 b b > 100 Fig. 6.2 rice and bacteria threshold

Also, the instruction: im2bw ( image matrix, threshold) will create a binary image matrix according to threshold value. >> im2bw ( r, 0.43) >> im2bw ( b, 0.39) 2. Double Threshold Sometimes we need more than single threshold value because of our interested objects have a range of grey-levels. So, < pixels < White otherwise pixels Black >> [x, map] = imread (spine.tif) ; >> s = uint8 ( 256 * ind2gray ( x, map ) ) >> imshow (s); figure; >> imshow ( s > 115 & s < 125) Fig. 6.3 Image needs double thresholds 3. Adaptive Threshold This case is satisfied when objects and their background are varying in gray level. Background (darkness) Fig. 6.4 Image needs adaptive thresholding Objects brightness

6.2 Edge Detection Edge is a local discontinuity in the pixel values which exceeds a given threshold. Also, it is defined as an image processing technique for finding the boundaries of objects within images. It works by detecting discontinuities in brightness. Edge detection is used for image segmentation and data extraction in areas such as image processing, computer vision, and machine vision. It includes a variety of mathematical methods that aim at identifying points in a digital image at which the image brightness changes sharply or, more formally, has discontinuities. The points at which image brightness changes sharply are typically organized into a set of curved line segments termed edges. The same problem of finding discontinuities in 1D signal is known as step detection and the problem of finding signal discontinuities over time is known as change detection. Edge detection is a fundamental tool in image processing, machine vision and computer vision, particularly in the areas of feature detection and feature extraction. Example: 50 53 165 166 51 53 167 170 52 53 177 180 51 53 165 175 (a) vertical edge 50 53 52 53 51 53 51 53 165 166 177 180 167 170 165 175 (b) horizontal edge Fig. 6.5 (a) and (b) A commonly used approach to handle the problem of appropriate thresholds for thresholding is by using thresholding with hysteresis. This method uses multiple thresholds to find edges. We begin by using the upper threshold to find the start of an edge. Once we have a start point, we then trace the path of the edge through the image pixel by pixel, marking an edge whenever we are above the lower threshold. We stop marking our edge only when the value falls below our lower threshold. This approach makes the assumption that edges are likely to be in continuous curves, and allows us to follow a faint section of an edge we have previously seen, without meaning that every noisy pixel in the image is marked down as an edge. Still, however, we have the problem of choosing appropriate thresholding parameters, and suitable thresholding values may vary over the image We have computed a measure of edge strength (typically the gradient magnitude), the next stage is to apply a threshold, to decide whether edges are

present or not at an image point. The lower the threshold, the more edges will be detected, and the result will be increasingly susceptible to noise and detecting edges of irrelevant features in the image. Conversely a high threshold may miss subtle edges, or result in fragmented edges. The general MATLAB command for image edge detection is, >> edge ( image name, method, parameter ) 6.3 Image Profile The grey image profile in figure 6.6 can be plotted and the first derivate is applied to detect the discontinuity in the pixel values. Fig. 6.6 image profile and its first derivative periods From figure 6.6, the derivative returns zero for all constant sections of image profile and it returns non-zero in those parts of image in which different occurs. To apply continues derivative on a discrete image we suppose that: = = = if h=1 we obtained,, and

For two multidimensional image, we apply partial derivatives which is also called the Gradient Vector Expression for a function f( x,y) points in the direction of its greatest increment. So, the direction of increment angle is: and the magnitude of increment, is: = Most edge detection methods are concerned with finding the magnitude of the gradient then applying a threshold to the result. 6.4 Prewitt, Roberts, and Sobel Filters This type of filters can be used to find the horizontal and vertical edge(s) in the image. The horizontal mask [ -1 0 1] is used to detect the vertical edge, while the mask [ -1 0 1 is used to find the horizontal edge. The edges in the result can be smoothed using the masks [ 1 1 1] and [ 1 1 1. The vertical and horizontal Prewitt edge detectors are. = and = = Ex: Consider the following 3 3 sub-image. A =

x =.* = - y =.* = - diagonal edge = sqrt ( )... also it is more convenient to use either of, diagonal edge = max { / x /, / y / } or / x / + / y / Example: This example will highlight the vertical, horizontal, and diagonal edges in the integrated cct image. % vertical edge ic= imread( ic.tif ); px= [-1 0 1 ; -1 0 1 ; -1 0 1]; icx= filter2( px, ic); imshow (icx /255); % horizontal edge py=px ; icy= filter2( py, ic); figure, imshow (icy /255); % diagonal edge dig=sqrt (icx.^2 + icy.^) figure, imshow (dig /255); or, using the command >> dig = edge ( ic, prewitt ); or, using binary image bedge = im2bw ( dig / 255, 0.3 )

Other edge detection filters like Roberts and Sobel can be defined below: = = = = Example: Sobel filter and Roberts cross-gradient filter are slightly different edge finding filters, prove that by applying those filters on the same image source. Which one looks better? Try with different threshold values. 6.5 Edge detection Second derivatives The second derivative is another class of edge detection method. The Laplacian method, f = + is known a discrete Laplacian and it is a 2 nd derivative in both directions. The mask is a good example that could represent the 2 nd derivative of Laplacian method. This class of filter is ideal for edge detection where, it is invariant under rotation (isotropic filter) that means Laplacian + image rotation image rotation + Laplacian same result The disadvantage of all 2 nd derivative is the noise sensitivity. Fig 6.7 The second derivative edge

Ex: >> lp = fspecial ( laplacian, 0 ) ; >> lpic = filter2 ( lp, ic ); >> figure, imshow ( mat2gray (lpic) ); The result will not be better than Prewitt or Sobel filters, so we can try with other Laplacian masks: or Fig 6.8 ic cct image and the vertical and horizontal edges using Prewitt filter (c) Laplacian 2 nd derivative, noise sensitive Fig 6.9 diagonal edges for Roberts, Sobel, and Laplacian filters HW// Try to use Laplacian mask with ALPHA parameter. How is the result.

6.6 Zero - Crossing >> lp = fspecial ( laplace, 0 ); >> icdig = edge ( ic, zerocross, lp ); >> imshow (icdig); The result is not good because of the interruption of many gray-level changes, so to eliminate this effect we smooth the image with a Gaussian filter so we have a new method for edge-detection. See figure 6.10 6.7 Marr-Hildreth Method Smooth the image with a Gaussian filter Convolve the result with a Laplacian Find the Zero-Crossing >> log = fspecial ( log, 13, 2); >> dig = edge ( ic, zerocross, log);

Zero-crossing Fig. 6.10 Edge detection using zero-crossing using LoG filter first 6.8 Edge Linking: Hough Transform Most of edge detection methods has disadvantage in linking the points along boundary or straight line. Hough transform is a way of finding boundary lines between the regions. It fits a line to those individual points, so it can be used to determine whether points lie on a curve or of a specific shape.