Image segmentation. Stefano Ferrari. Università degli Studi di Milano Methods for Image Processing. academic year

Similar documents
Image Analysis Image Segmentation (Basic Methods)

Digital Image Analysis and Processing

EECS490: Digital Image Processing. Lecture #22

Topological structure of images

CS 490: Computer Vision Image Segmentation: Thresholding. Fall 2015 Dr. Michael J. Reale

Sharpening through spatial filtering

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

Region & edge based Segmentation

Topological structure of images

Bioimage Informatics

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

REGION & EDGE BASED SEGMENTATION

Image Segmentation! Thresholding Watershed. Hodzic Ernad Seminar Computa9onal Intelligence

Lecture: Segmentation I FMAN30: Medical Image Analysis. Anders Heyden

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

ECEN 447 Digital Image Processing

Image Segmentation. Selim Aksoy. Bilkent University

Image Segmentation. Selim Aksoy. Bilkent University

Digital Image Processing Lecture 7. Segmentation and labeling of objects. Methods for segmentation. Labeling, 2 different algorithms

Object Segmentation. Jacob D. Furst DePaul CTI

REGION BASED SEGEMENTATION

Image Analysis Lecture Segmentation. Idar Dyrdal

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

Part 3: Image Processing

Contents.

Topic 4 Image Segmentation

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

Histogram and watershed based segmentation of color images

Segmentation

Chapter 10: Image Segmentation. Office room : 841

Segmentation

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

Digital Image Processing

ECG782: Multidimensional Digital Signal Processing

VC 10/11 T9 Region-Based Segmentation

Introduction to Medical Imaging (5XSA0) Module 5

Image Processing and Image Analysis VU

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

Region-based Segmentation

Image compression. Stefano Ferrari. Università degli Studi di Milano Methods for Image Processing. academic year

Basic Algorithms for Digital Image Analysis: a course

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

Segmentation of Images

Image Segmentation Based on Watershed and Edge Detection Techniques

PPKE-ITK. Lecture

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

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

Structural Analysis of Aerial Photographs (HB47 Computer Vision: Assignment)

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

Computer Vision & Digital Image Processing. Image segmentation: thresholding

Image Analysis. Morphological Image Analysis

Content-based Image and Video Retrieval. Image Segmentation

11/10/2011 small set, B, to probe the image under study for each SE, define origo & pixels in SE

Review on Different Segmentation Techniques For Lung Cancer CT Images

Chapter 10 Image Segmentation. Yinghua He

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

Classifying image analysis techniques from their output

Final Review. Image Processing CSE 166 Lecture 18

Chapter 3. Image Processing Methods. (c) 2008 Prof. Dr. Michael M. Richter, Universität Kaiserslautern

(10) Image Segmentation

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

Chapter 9 Morphological Image Processing

6. Object Identification L AK S H M O U. E D U

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu

CITS 4402 Computer Vision

Histograms. h(r k ) = n k. p(r k )= n k /NM. Histogram: number of times intensity level rk appears in the image

Fourier transform of images

EE 701 ROBOT VISION. Segmentation

Biomedical Image Analysis. Mathematical Morphology

Image Segmentation for Image Object Extraction

Knowledge-driven morphological approaches for image segmentation and object detection

Albert M. Vossepoel. Center for Image Processing

Morphological Image Processing

EE 584 MACHINE VISION

Image Segmentation Techniques: An Overview

Image Enhancement: To improve the quality of images

Mathematical Morphology and Distance Transforms. Robin Strand

Dr. Ulas Bagci

1 Point Operations (V1)

Morphological Image Processing

IMAGE SEGMENTATION BY REGION BASED AND WATERSHED ALGORITHMS

Morphology-form and structure. Who am I? structuring element (SE) Today s lecture. Morphological Transformation. Mathematical Morphology

Edges and Binary Images

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

identified and grouped together.

DIGITAL IMAGE ANALYSIS. Image Classification: Object-based Classification

Segmentation and Grouping

EE795: Computer Vision and Intelligent Systems

EECS490: Digital Image Processing. Lecture #19

Robbery Detection Camera

Chapter - 2 : IMAGE ENHANCEMENT

Chapter 11 Representation & Description

Image Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments

SECTION 5 IMAGE PROCESSING 2

Morphological Image Processing

Morphological Image Processing

Segmentation. (template) matching

CS 664 Segmentation. Daniel Huttenlocher

EDGE BASED REGION GROWING

Transcription:

Image segmentation Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Methods for Image Processing academic year 2017 2018 Segmentation by thresholding Thresholding is the simplest segmentation method. The pixels are partitioned depending on their intensity value. Global thresholding, using an appropriate threshold T : g(x, y) = { 1, if f (x, y) > T 0, if f (x, y) T Variable thresholding, if T can change over the image. Local or regional thresholding, if T depends on a neighborhood of (x, y). adaptive thresholding, if T is a function of (x, y). Multiple thresholding: a, if f (x, y) > T 2 g(x, y) = b, if T 1 < f (x, y) T 2 c, if f (x, y) T 1 Stefano Ferrari Methods for Image processing a.a. 2017/18 1

Choosing the thresholds Peaks and valleys of the image histogram can help in choosing the appropriate value for the threshold(s). Some factors affects the suitability of the histogram for guiding the choice of the threshold: the separation between peaks; the noise content in the image; the relative size of objects and background; the uniformity of the illumination; the uniformity of the reflectance. Noise role in thresholding No noise 10% noise 50% noise Stefano Ferrari Methods for Image processing a.a. 2017/18 2

Illumination and reflection role in thresholding A B A B Global thresholding A simple algorithm: 1. Initial estimate of T 2. Segmentation using T : G1, pixels brighter than T ; G2, pixels darker than (or equal to) T. 3. Computation of the average intensities m 1 and m 2 of G 1 and G 2. 4. New threshold value: T new = m 1 + m 2 2 5. If T T new > T, back to step 2, otherwise stop. Stefano Ferrari Methods for Image processing a.a. 2017/18 3

Global thresholding: an example Otsu s method Otsu s method is aimed in finding the optimal value for the global threshold. It is based on the interclass variance maximization. Well thresholded classes have well discriminated intensity values. M N image histogram: L intensity levels, [0,..., L 1]; ni #pixels of intensity i: Normalized histogram: L 1 MN = i=0 n i p i = n i MN L 1 p i = 1, p i 0 i=0 Stefano Ferrari Methods for Image processing a.a. 2017/18 4

Otsu s method (2) Using k, 0 < k < L 1, as threshold, T = k: two classes: C1 (pixels in [0, k]) and C 2 (pixels in [k + 1, L 1]) P1 = P(C 1 ) = k i=0 p i, probability of the class C 1 P 2 = P(C 2 ) = L 1 i=k+1 p i = 1 P 1, probability of the class C 2 m 1, mean intensity of the pixels in C 1 : m 1 = = k i P(i C 1 ) i=0 k i=0 i P(C 1 i)p(i) P(C 1 ) = 1 k i p i P 1 i=0 where P(C 1 i) = 1, P(i) = p i e P(C 1 ) = P 1. Otsu s method (3) Similarly, m 2, mean intensity of the pixels in C 2 : m 2 = 1 P 2 Mean global intensity, m G : L 1 i=k+1 i p i L 1 m G = i p i i=0 while the mean intensity up to the k level, m: Hence: m = k i p i i=0 P 1 m 1 + P 2 m 2 = m G P 1 + P 2 = 1 Stefano Ferrari Methods for Image processing a.a. 2017/18 5

Otsu s method (4) The global variance σ 2 G : L 1 σg 2 = (i m G ) 2 p i i=0 The between-class variance, σ B, can be defined as: σ 2 B = P 1(m 1 m G ) 2 + P 2 (m 2 m G ) 2 = P 1 P 2 (m 1 m 2 ) 2 = (m G P 1 m) 2 P 1 (1 P 1 ) The goodness of the choice T = k can be estimated as the ratio η: η = σ2 B σ 2 G Otsu s method (5) The quantities required for the computation of η, can be obtained from the histogram: Hence, for each value of k, η(k) can be computed: η(k) = σ2 B (k) σ 2 G where σ 2 B (k) = (m G P 1 (k) m(k)) 2 P 1 (k) (1 P 1 (k)) The optimal threshold value, k, satisfies: σ 2 B (k ) = max 0<k<L 1 σ2 B (k) Stefano Ferrari Methods for Image processing a.a. 2017/18 6

Otsu s method: an example a c b d (a) original image; (b) histogram of (a); (c) global threshold: T = 169, η = 0.467; (d) Otsu s method: T = 181, η = 0.944. Smoothing Otsu s method may not work in presence of noise. Smoothing can produce a histogram with separated peaks. Stefano Ferrari Methods for Image processing a.a. 2017/18 7

Significance of the histogram If the distribution is not balanced, no information can be extracted from the histogram. Smoothing cannot help. Selection of the border region Edge extraction techniques (e.g., Laplacian), can be used for selecting the region that carry the valuable information: Those pixels that belong to the objects and to the background with an equal probability. Stefano Ferrari Methods for Image processing a.a. 2017/18 8

Use of edge for global thresholding (2) Changing the threshold of the Laplacian, several segmentations are obtained. It can be useful for nested classes. Multiple thresholds Otsu s method The Otsu s method can be applied also for the multiple thresholds segmentation (generally, double threshold). Between-class variance: σ 2 B (k 1, k 2 ) = P 1 (m 1 m G ) 2 + P 2 (m 2 m G ) 2 + P 3 (m 3 m G ) 2 The optimal thresholds k 1 and k 2 can be computed as: σ 2 B (k 1, k 2 ) = max 0<k 1 <k 2 <L 1 σ2 B (k 1, k 2 ) The separability degree can be measured as: η(k 1, k 2 ) = σ2 B (k 1, k 2 ) σ 2 G Stefano Ferrari Methods for Image processing a.a. 2017/18 9

Multiple thresholds Otsu s method: an example Image partitioning based thresholding In order to face non uniform illumination or reflectance, the image is partitioned and the thresholding is operated on each partition. In each partition, the illuminance and reflectance is supposed uniform. In each partition, objects and background have to be equally represented. Stefano Ferrari Methods for Image processing a.a. 2017/18 10

Local properties based thresholding Local properties (e.g., statistics) based criteria can be used for adapting the threshold. For example: Txy = aσ xy + bm xy Txy = aσ xy + bm G The segmentation is operated using a suitable predicate, Q xy : g(x, y) = { 1, if Qxy 0, otherwise where Q xy can be, for instance: f (x, y) > T xy f (x, y) > aσ xy AND f (x, y) > bm xy This technique can be easily generalized to multiple thresholds segmentation. Local properties based thresholding: an example a c b d (b) segmentation of (a) with double threshold Otsu; (c) local (3 3) standard deviation; (d) segmentation with local thresholding. Stefano Ferrari Methods for Image processing a.a. 2017/18 11

Moving averages thresholding Pixels are visited following a zigzag path and the statistics are computed using only the last n visited pixels. Growing based segmentation Region growing is a technique based on a controlled growing of some initial pixels (seeds). The selection of the seeds can be operated manually or using automatic procedures based on appropriate criteria. A-priori knowledge can be included. It is strictly application-dependent. The growing is controlled by the connectivity. The stop rule is another parameter of the algorithm. It can depend on the a-priori knowledge on the problem. Stefano Ferrari Methods for Image processing a.a. 2017/18 12

Region growing: the basic algorithm Given: f (x, y), the image to be segmented; S(x, y), binary image with the seeds (it is 1 only where the seeds are located); Q, predicate to be tested for each location (x, y). A simple region growing algorithm (based on 8-connectivity) is the following: 1. Erode all the connected components of S until they are only one pixel wide. 2. Generate the binary image f Q such that f Q (x, y) = 1 if Q(x, y) is true. 3. Create the binary image g where g(x, y) = 1 if f Q (x, y) = 1 and (x, y) is 8-connected to a seed in S. 4. The resulting connected components in g are the segmented regions. Region growing: an example a b c d e f g h i (a) f (c) S(x, y) := f (x, y) > 254 (d) erosion of S (e) f S (h) f S > 68 (i) segmentation by region growing with Q := f S <= 68 Stefano Ferrari Methods for Image processing a.a. 2017/18 13

Region splitting and merging Iterative subdivision of the image in homogeneous regions (splitting). Joining of the adjacent homogeneous regions (merging). Given an image f and a predicate Q, the basic algorithm is: 1. R 0 = f 2. Iterative subdivision in quadrants of each region R i for which Q(R i ) = FALSE. 3. If Q(R i ) = TRUE for every regions, merge those adjacent regions R i and R j such that Q(R i R j ) = TRUE; otherwise, repeat step 2. 4. Repeat the step 3 until no merging is possible. Quadtree based partitioning Stefano Ferrari Methods for Image processing a.a. 2017/18 14

Splitting and merging: an example a c b d Q := σ > a AND 0 < m < b (b) 32 32 (c) 16 16 (d) 8 8 Watershed The watershed technique is based on a topological interpretation of the image. The intensity levels represent the height of the terrain that describe mountains and basins. For each basin, a hole in its minimum is supposed to be realized, from which, the rising underground water spills and fills the basins. As the water rises, the level reach the border of the basin and two or more adjacent basins tend to merge together. Dams are required for maintaining a separation between basins. These dams are the borders of the regions of the segmentation. Stefano Ferrari Methods for Image processing a.a. 2017/18 15

Watershed (2) Watershed (3) Stefano Ferrari Methods for Image processing a.a. 2017/18 16

Dams construction The dams can be build using morphological dilation. Starting from the last step before merging, dilation can be performed until the two disjoint components become connected. Dams construction (2) The dams can be realized setting the pixels at L (where the levels of intensity are in [0, L 1]). Generally, the watershed algorithm is applied to the gradient of the image to be segmented. Stefano Ferrari Methods for Image processing a.a. 2017/18 17

Watershed: an example a c b d (b) the gradient of (a) (c) resulting watershed segmentation (b) dams overimposed to (a) Watershed with marker Noise as well as irrelevant details make difficult the application of the watershed technique in real images. Oversegmentation can be produced. These problems can be handled limiting the flooding through markers: internal, associated to the object of interest; external, associated to the background (border of the objects). The watershed algorithm can then be applied considering the marker as the only minimum points from which starting the procedure. The criteria used for defining the markers incorporate the a-priori knowledge on the problem. Stefano Ferrari Methods for Image processing a.a. 2017/18 18

Watershed with markers: an example Oversegmentation obtained applying watershed to the image gradient. Watershed with markers: an example (2) a b (a) Smoothing of the original image. Internal markers are defined as minimum points that forms connected components (in red). The application of the watershed starting from internal markers generates the dams (in green), that can be used as external markers. (b) Segmentation obtained applying watershed in each region of (a). Other segmentation algorithms can be applied to the single regions, as well. Stefano Ferrari Methods for Image processing a.a. 2017/18 19

. Texture based segmentation (a) 600 600 pixels image (b) Closing of (a) using a disk of 30 pixels of radius. (c) Opening using a disk of 60 pixels of radius. a c b d (d) Segmentation boundary obtained as morphological gradient. Color based segmentation I HSI space Stefano Ferrari Methods for Image processing a.a. 2017/18 20

Color based segmentation (2) a c b d (a) Binary saturation mask (threshold at 90%); (b) product of the mask by the hue; (d) segmentation of (b) based on its histogram (c). Color based segmentation (3) RGB space: selection of colors similar to a Criterion: D(z, a) < D0 D(z, a) = z a = D(z, a) = ( ) 1 (z a) T 2 (z a) ( ) 1 (z a) T C 1 2 (z a) Stefano Ferrari Methods for Image processing a.a. 2017/18 21

. Color based segmentation (4) a b (a) Manual selection of the color of interest. I I Average color computation, a = [ar ag ab ] Standard deviation of the color of the selected pixels computation, σ = [σr σg σb ]. (b) Segmentation of the pixels that have a red channel value in the interval [ar σr, ar + σr ]. Homeworks and suggested readings DIP, Sections 10.3 10.5 I pp. 738 778 Sections 6.7.1-6.7.2 I pp. 443 447 Section 9.6.3 I pp. 675 676 GIMP I Tools I Selection Tools I Foreground Select I By Color Select Stefano Ferrari Methods for Image processing a.a. 2017/18 22