Albert M. Vossepoel. Center for Image Processing

Similar documents
Mathematical Morphology and Distance Transforms. Robin Strand

EE 584 MACHINE VISION

The. Handbook ijthbdition. John C. Russ. North Carolina State University Materials Science and Engineering Department Raleigh, North Carolina

Digital image processing

Digital Image Processing

Morphological Image Processing

Binary Shape Characterization using Morphological Boundary Class Distribution Functions

Topic 6 Representation and Description

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

COMPUTER AND ROBOT VISION

Image Analysis Lecture Segmentation. Idar Dyrdal

Morphological Image Processing

Morphological Image Processing

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

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

Fundamentals of Digital Image Processing

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

Image Processing, Analysis and Machine Vision

Finger Print Analysis and Matching Daniel Novák

Biomedical Image Analysis. Mathematical Morphology

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

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

Morphological Image Processing

Chapter 11 Representation & Description

Bioimage Informatics

Digital Image Processing Fundamentals

Object Segmentation. Jacob D. Furst DePaul CTI

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

Morphological Image Processing

morphology on binary images

Image Segmentation. Ross Whitaker SCI Institute, School of Computing University of Utah

EECS490: Digital Image Processing. Lecture #17

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

Edges and Binary Image Analysis April 12 th, 2018

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

EE795: Computer Vision and Intelligent Systems

Detection of Edges Using Mathematical Morphological Operators

Morphological Image Algorithms

Image Segmentation. Srikumar Ramalingam School of Computing University of Utah. Slides borrowed from Ross Whitaker

Ulrik Söderström 21 Feb Representation and description

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

RESEARCH ON OPTIMIZATION OF IMAGE USING SKELETONIZATION TECHNIQUE WITH ADVANCED ALGORITHM


Object-Based Classification & ecognition. Zutao Ouyang 11/17/2015

A Visual Programming Environment for Machine Vision Engineers. Paul F Whelan

Edges and Binary Image Analysis. Thurs Jan 26 Kristen Grauman UT Austin. Today. Edge detection and matching

Morphological track 1

Image Processing: Final Exam November 10, :30 10:30

Lecture 7: Morphological Image Processing

Review for the Final

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu

11. Gray-Scale Morphology. Computer Engineering, i Sejong University. Dongil Han

EECS490: Digital Image Processing. Lecture #23

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

Image Analysis. Morphological Image Analysis

Filters. Advanced and Special Topics: Filters. Filters

An Alternative Graph Cut Algorithm for Morphological Edge Detection

Image representation. 1. Introduction

What will we learn? What is mathematical morphology? What is mathematical morphology? Fundamental concepts and operations

Topic 4 Image Segmentation

Introduction to Video and Image Processing

SECTION 5 IMAGE PROCESSING 2

Digital Image Processing Chapter 11: Image Description and Representation

Feature description. IE PŁ M. Strzelecki, P. Strumiłło

Looming Motion Segmentation in Vehicle Tracking System using Wavelet Transforms

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

Segmentation of Images

Final Review. Image Processing CSE 166 Lecture 18

Processing of binary images

PPKE-ITK. Lecture

CS534 Introduction to Computer Vision Binary Image Analysis. Ahmed Elgammal Dept. of Computer Science Rutgers University

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

Part 3: Image Processing

MODIFIED SEQUENTIAL ALGORITHM USING EUCLIDEAN DISTANCE FUNCTION FOR SEED FILLING

Contents.

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

2: Image Display and Digital Images. EE547 Computer Vision: Lecture Slides. 2: Digital Images. 1. Introduction: EE547 Computer Vision

Lecture 6: Segmentation by Point Processing

Morphological Image Processing GUI using MATLAB

Morphological Image Processing

Image Segmentation. Ross Whitaker SCI Institute, School of Computing University of Utah

Digital Image Processing COSC 6380/4393

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

Elaborazione delle Immagini Informazione multimediale - Immagini. Raffaella Lanzarotti

Interpolation is a basic tool used extensively in tasks such as zooming, shrinking, rotating, and geometric corrections.

Two Image-Template Operations for Binary Image Processing. Hongchi Shi. Department of Computer Engineering and Computer Science

CITS 4402 Computer Vision

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University

Fast Distance Transform Computation using Dual Scan Line Propagation

CHAPTER 1 Introduction 1. CHAPTER 2 Images, Sampling and Frequency Domain Processing 37

REGION & EDGE BASED SEGMENTATION

EECS490: Digital Image Processing. Lecture #20

Edges and Binary Images

Supplementary Materials for

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences

Introduction. Computer Vision & Digital Image Processing. Preview. Basic Concepts from Set Theory

Laboratory of Applied Robotics

VC 10/11 T9 Region-Based Segmentation

Region & edge based Segmentation

A Method for Filling Holes in Objects of Medical Images Using Region Labeling and Run Length Encoding Schemes

Transcription:

Albert M. Vossepoel www.ph.tn.tudelft.nl/~albert

scene image formation sensor pre-processing image enhancement image restoration texture filtering segmentation user analysis classification CBP course: Binary Image Processing 2

CBP course: Binary Image Processing 3 Binary Image Operations Binary images have 1 bit / pixel: 1 = object pixel = non-object pixel (background pixel) Data Image 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Binary Image Operations Binary images are obtained from segmentation procedures such as: Thresholding Edge detection and filling Region analysis Binary Image Operations are used to Correct or improve imperfect segmentation Analysis of connectivity of components Object selection using geometric features CBP course: Binary Image Processing 4

Objects and Components Object = real world thing Component = blob of connected pixels Correspondence by segmentation and binary image processing CBP course: Binary Image Processing 5

The paradox of the square grid 8-connectivity 4-connectivity How many objects? And how many background components? CBP course: Binary Image Processing 6

The paradox of the square grid Object connectivity Background connectivity Object interpretation Background interpretation Consistent + Conflict 4 4 3 objects 8 4 1 object 4 8 3 objects 8 8 1 object 2 components 2 components 1 component 1 component + + CBP course: Binary Image Processing 7

Types of operations Operation type Monadic (one input image) Dyadic (two input images) Pixel operations Identity, Inversion Boolean arithmetic Neighborhood operations Cellular logic operations, Binary morphology Hit-or-miss transforms Object operations Skeleton, Exo-skeleton Propagation, Anchor skeleton CBP course: Binary Image Processing 8

Pixel operations Input image 1 Input image 2 Output image monadic (1 input image): INVERT IDENTITY dyadic (2 input images): AND OR EXOR CBP course: Binary Image Processing 9

Neighborhood operations 3x3 window -> 9 input bits Each operation is equivalent to a table with 2 9 = 512 entries Examples: Erosion Dilation Contour Remove isolated pixels 512* 1 bit CBP course: Binary Image Processing 1

Neighborhood operations Repeated 3x3 cellular logic operations result in a larger nxn operation (n = 5,7,9,..) Examples: dilation erosion opening closing CBP course: Binary Image Processing 11

Object oriented operations Impossible to state beforehand which pixels from input image contribute to output: No fixed neighborhood size.? Examples: skeleton exo-skeleton propagation anchor-skeleton CBP course: Binary Image Processing 12

Dilation (expansion) Expands each object pixel with its neighbors. There are two kinds of dilation, D4 and D8. D4 4D4 4-connected dilation D8 4D8 8-connected dilation CBP course: Binary Image Processing 13

Erosion (shrinking) Removes each object pixel having a neighbor in the background E4 4-connected erosion E8 8-connected erosion CBP course: Binary Image Processing 14

Erosion versus dilation An 8-connected dilation of the object(s) corresponds with an 8-connected erosion of the background, and vice-versa The same holds for the 4-connected case. CBP course: Binary Image Processing 15

Opening consists of a number of erosions followed by the same number of dilations. E4 D4 Applications: separation of connected objects removing small objects (size discrimination) CBP course: Binary Image Processing 16

Closing consists of a number of dilations followed by the same number of erosions D4 E4 Applications: connection of disconnected object parts closing of holes contour smoothing CBP course: Binary Image Processing 17

Contour finding The contour is the set of object pixels that are connected to the background EXOR E4 4-connected background neighbours 8-connected contour 8-connected background neighbours 4-connected contour object E8 EXOR CBP course: Binary Image Processing 18

Conditional erosion: skeleton A conditional erosion is an erosion under one or more of the following conditions: A. Do not remove a last pixel B. Do not break the connectivity C. Do not remove an end pixel {A}: Object to point reduction {B}: Find holes {A,B}: Skeleton without end pixel condition {A,B,C}: Skeleton with end pixel condition CBP course: Binary Image Processing 19

Conditional erosion (continued) Do not remove the last pixel... object to point reduction Note: not always one point per object! CBP course: Binary Image Processing 2

Conditional erosion (continued) Do not break connectivity... find holes CBP course: Binary Image Processing 21

Conditional erosion (continued) Do not remove the last pixel & do not break connectivity... skeleton without end-pixel condition CBP course: Binary Image Processing 22

Conditional erosion (continued) Do not remove the last pixel & do not break connectivity & do not remove an end-pixel... skeleton with end-pixel condition CBP course: Binary Image Processing 23

Skeleton: definition The skeleton of an object is a line connecting points midway between the boundaries A skeleton has the same connectedness ("topology") as the original object. CBP course: Binary Image Processing 24

Digital skeleton Wishes: The skeleton... 1. has the same connectedness as the original object, so it can be used as an representation of the object. 2. is one pixel thick, so crossings and end points can be found in a 3x3 neighborhood. 3. preserves isolated pixels and endpoints, so long objects have long skeletons. 4. is in the middle of the object, so it can be used as an object 'axis'. CBP course: Binary Image Processing 25

Digital skeleton (continued) Wishes may conflict: conflict between: 'one pixel thick' and 'in the middle of the object : conflict between: 'same connectedness' and 'one pixel thick' CBP course: Binary Image Processing 26

Digital skeleton (continued) Many different skeleton algorithms exist, and also a variety of versions of the same algorithm They differ in: handling conflicting wishes noise sensitivity 'cleanness' of the result sensitivity to details of the object contours Well-known algorithms: the Hilditch algorithm for sequential machines and the algorithm by Arcelli and Levialdi for parallel machines CBP course: Binary Image Processing 27

Conditional dilation: exoskeleton The exo-skeleton is a dilation under the condition: 'Do not connect disconnected components' Similar result by inverting the original image and skeletonize it However: Most skeleton programs can only give an 8-connected result, i.e., areas remain 8-connected CBP course: Binary Image Processing 28

Propagation Propagation is a dyadic conditional dilation: 'Dilate a (seed) image recursively within a given (object) mask'. mask (original objects) seed CBP course: Binary Image Processing 29

Propagation: applications Remove objects connected to the image boundary Seed: image boundary Mask: objects Result: object(s) connected to the image boundary CBP course: Binary Image Processing 3

Propagation: applications Close holes Seed: image boundary Mask: background Result: background connected to the image boundary Inverse of propagation result: objects with holes closed CBP course: Binary Image Processing 31

Propagation: applications Find specific objects Seed: pixels of desired objects Mask: all objects Result: desired objects CBP course: Binary Image Processing 32

Watershed Characterise grey-scale topology Note: very noise sensitive pre-processing recommended splitting and merging nearly always necessary CBP course: Binary Image Processing 33

Dilation (expansion) revisited Expands each object pixel with its neighbors. There are two kinds of dilation, D4 and D8. D4 4D4 4-connected dilation D8 4D8 8-connected dilation CBP course: Binary Image Processing 34

Distance transforms Assign to each pixel in a binary image the distance to the nearest background pixel. Circles for different metrics: Chamfer method: a c b a) City block (4-connected) (chamfer: 1,2) b) Chess board (8-connected) (chamfer: 1,1) c) Euclidean d) Octagonal (chamfer 5,7) e) Hexadecagonal (chamfer 5,7,11) d e CBP course: Binary Image Processing 35

Hit-or-Miss transform HoM = (A erosion T 1 ) (A c erosion T 2 ) T 1 T 2 Locate all points in image A where T 1 fits in the object (A) and T 2 fits in the background (A c ), i.e., exact match of template T (T 1,T 2 ) in the image A. Disadvantages: very sensitive to: noise exact shape and size of template to be matched CBP course: Binary Image Processing 36