Department of Computer Engineering

Slides:



Advertisements
Similar presentations
Binary Image Analysis Selim Aksoy Department of Computer Engineering Bilkent University
Advertisements

Binary Image Analysis Selim Aksoy Department of Computer Engineering Bilkent University
Binary Image Analysis Selim Aksoy Department of Computer Engineering Bilkent University
Binary Image Analysis Selim Aksoy Department of Computer Engineering Bilkent University
電腦視覺 Computer and Robot Vision I Chapter2: Binary Machine Vision: Thresholding and Segmentation Instructor: Shih-Shinh Huang 1.
Chapter 9: Morphological Image Processing
Each pixel is 0 or 1, background or foreground Image processing to
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods Chapter 9 Morphological Image Processing Chapter 9 Morphological.
Common Low-level Operations for Processing & Enhancement
1 Binary Image Analysis Binary image analysis consists of a set of image analysis operations that are used to produce or process binary images, usually.
Binary Image Analysis: Part 2 Readings: Chapter 3: mathematical morphology region properties region adjacency 1.
Computer Vision Basics Image Terminology Binary Operations Filtering Edge Operators.
1. Binary Image B(r,c) 2 0 represents the background 1 represents the foreground
Binary Image Analysis. YOU HAVE TO READ THE BOOK! reminder.
1. Binary Image B(r,c) 2 0 represents the background 1 represents the foreground
Lecture 5. Morphological Image Processing. 10/6/20152 Introduction ► ► Morphology: a branch of biology that deals with the form and structure of animals.
Chapter 9.  Mathematical morphology: ◦ A useful tool for extracting image components in the representation of region shape.  Boundaries, skeletons,
Chap 3 : Binary Image Analysis. Counting Foreground Objects.
CS 6825: Binary Image Processing – binary blob metrics
CS 376b Introduction to Computer Vision 02 / 22 / 2008 Instructor: Michael Eckmann.
September 23, 2014Computer Vision Lecture 5: Binary Image Processing 1 Binary Images Binary images are grayscale images with only two possible levels of.
Binary Thresholding Threshold detection Variations
Digital Image Processing CCS331 Relationships of Pixel 1.
Morphological Image Processing
1 Binary Image Analysis Binary image analysis consists of a set of image analysis operations that are used to produce or process binary images, usually.
Image Segmentation and Morphological Processing Digital Image Processing in Life- Science Aviad Baram
Digital Camera and Computer Vision Laboratory Department of Computer Science and Information Engineering National Taiwan University, Taipei, Taiwan, R.O.C.
1 Regions and Binary Images Hao Jiang Computer Science Department Sept. 25, 2014.
Mathematical Morphology Mathematical morphology (matematická morfologie) –A special image analysis discipline based on morphological transformations of.
1 Regions and Binary Images Hao Jiang Computer Science Department Sept. 24, 2009.
CS 376b Introduction to Computer Vision 02 / 11 / 2008 Instructor: Michael Eckmann.
Morphological Image Processing การทำงานกับรูปภาพด้วยวิธีมอร์โฟโลจิคัล
CS654: Digital Image Analysis
Mathematical Morphology
Low level Computer Vision 1. Thresholding 2. Convolution 3. Morphological Operations 4. Connected Component Extraction 5. Feature Extraction 1.
CS654: Digital Image Analysis
Nottingham Image Analysis School, 23 – 25 June NITS Image Segmentation Guoping Qiu School of Computer Science, University of Nottingham
CS 376b Introduction to Computer Vision 02 / 12 / 2008 Instructor: Michael Eckmann.
1 Mathematic Morphology used to extract image components that are useful in the representation and description of region shape, such as boundaries extraction.
Morphological Image Processing Robotics. 2/22/2016Introduction to Machine Vision Remember from Lecture 12: GRAY LEVEL THRESHOLDING Objects Set threshold.
Digital Camera and Computer Vision Laboratory Department of Computer Science and Information Engineering National Taiwan University, Taipei, Taiwan, R.O.C.
BYST Morp-1 DIP - WS2002: Morphology Digital Image Processing Morphological Image Processing Bundit Thipakorn, Ph.D. Computer Engineering Department.
Machine Vision ENT 273 Hema C.R. Binary Image Processing Lecture 3.
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
Lecture(s) 3-4. Morphological Image Processing. 3/13/20162 Introduction ► ► Morphology: a branch of biology that deals with the form and structure of.
Digital Image Processing, Spring ECES 682 Digital Image Processing Week 8 Oleh Tretiak ECE Department Drexel University.
Morphological Image Processing (Chapter 9) CSC 446 Lecturer: Nada ALZaben.
Mathematical Morphology A Geometric Approach to Image Processing and Analysis John Goutsias Department of Electrical and Computer Engineering Image Analysis.
Digital Image Processing CCS331 Relationships of Pixel 1.
COMP 9517 Computer Vision Binary Image Analysis 4/15/2018
Common Low-level Operations for Processing & Enhancement
Digital Image Processing CP-7008 Lecture # 09 Morphological Image Processing Fall 2011.
Color Image Processing
Color Image Processing
Binary Image Analysis Gokberk Cinbis
Computer Vision Lecture 5: Binary Image Processing
Binary Image Analysis: Part 1 Readings: Chapter 3: 3.1, 3.4, 3.8
Color Image Processing
Binary Image Analysis used in a variety of applications:
Binary Image Analysis: Part 1 Readings: Chapter 3: 3.1, 3.4, 3.8
CS Digital Image Processing Lecture 5
Binary Image processing بهمن 92
Computer and Robot Vision I
Color Image Processing
Binary Image Analysis: Part 2 Readings: Chapter 3:
Computer and Robot Vision I
Computer and Robot Vision I
CS654: Digital Image Analysis
DIGITAL IMAGE PROCESSING Elective 3 (5th Sem.)
Binary Image Analysis used in a variety of applications:
Presentation transcript:

Department of Computer Engineering Binary Image Analysis Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr

Outline Introduction to binary image analysis Thresholding Mathematical morphology Pixels and neighborhoods Connected components analysis CS 484, Fall 2018 ©2018, Selim Aksoy

Binary image analysis Binary image analysis consists of a set of operations that are used to produce or process binary images, usually images of 0’s and 1’s where 0 represents the background, 1 represents the foreground. 00010010001000 00011110001000 CS 484, Fall 2018 ©2018, Selim Aksoy

Application areas Document analysis Industrial inspection Surveillance Adapted from Shapiro and Stockman; Cheung and Kamath CS 484, Fall 2018 ©2018, Selim Aksoy

Operations Separate objects from background and from one another. Aggregate pixels for each object. Compute features for each object. CS 484, Fall 2018 ©2018, Selim Aksoy

Example: red blood cell image Many blood cells are separate objects. Many touch each other  bad! Salt and pepper noise is present. How useful is this data? 63 separate objects are detected. Single cells have area of about 50 pixels. Adapted from Linda Shapiro, U of Washington CS 484, Fall 2018 ©2018, Selim Aksoy

Thresholding Binary images can be obtained by thresholding. Assumptions for thresholding: Object region of interest has intensity distribution different from background. Object pixels likely to be identified by intensity alone: intensity > a intensity < b a < intensity < b Works OK with flat-shaded scenes or engineered scenes. Does not work well with natural scenes. CS 484, Fall 2018 ©2018, Selim Aksoy

Use of histograms for thresholding Background is black. Healthy cherry is bright. Bruise is medium dark. Histogram shows two cherry regions (black background has been removed). Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

Automatic thresholding How can we use a histogram to separate an image into 2 (or several) different regions? Is there a single clear threshold? 2? 3? Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

Automatic thresholding: Otsu’s method Assumption: the histogram is bimodal. Method: find the threshold t that minimizes the weighted sum of within-group variances for the two groups that result from separating the gray levels at value t. The best threshold t can be determined by a simple sequential search through all possible values of t. If the gray levels are strongly dependent on the location within the image, local or dynamic thresholds can also be used. t Group 1 Group 2 CS 484, Fall 2018 ©2018, Selim Aksoy

Automatic thresholding A Pap smear image example: RGB image (left) and grayscale image (right). CS 484, Fall 2018 ©2018, Selim Aksoy

Automatic thresholding Histogram of the negative image (top-left), sum of within-group variances versus the threshold (bottom-left), resulting mask overlayed as red on the original image (top). CS 484, Fall 2018 ©2018, Selim Aksoy

Mathematical morphology The word morphology refers to form and structure. In computer vision, it is used to refer to the shape of a region. The language of mathematical morphology is set theory where sets represent objects in an image. We will discuss morphological operations on binary images whose components are sets in the 2D integer space Z2. CS 484, Fall 2018 ©2018, Selim Aksoy

Mathematical morphology Mathematical morphology consists of two basic operations dilation erosion and several composite relations opening closing conditional dilation … CS 484, Fall 2018 ©2018, Selim Aksoy

Dilation Dilation expands the connected sets of 1s of a binary image. It can be used for growing features filling holes and gaps Adapted from Linda Shapiro, U of Washington CS 484, Fall 2018 ©2018, Selim Aksoy

Erosion Erosion shrinks the connected sets of 1s of a binary image. It can be used for shrinking features removing bridges, branches and small protrusions Adapted from Linda Shapiro, U of Washington CS 484, Fall 2018 ©2018, Selim Aksoy

Basic concepts from set theory CS 484, Fall 2018 ©2018, Selim Aksoy

Basic concepts from set theory Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Structuring elements Structuring elements are small binary images used as shape masks in basic morphological operations. They can be any shape and size that is digitally representable. One pixel of the structuring element is denoted as its origin. Origin is often the central pixel of a symmetric structuring element but may in principle be any chosen pixel. CS 484, Fall 2018 ©2018, Selim Aksoy

Structuring elements Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Dilation CS 484, Fall 2018 ©2018, Selim Aksoy

Dilation 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Binary image A Dilation result Structuring element B (1st definition) CS 484, Fall 2018 ©2018, Selim Aksoy

Dilation 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Binary image A Dilation result Structuring element B (2nd definition) CS 484, Fall 2018 ©2018, Selim Aksoy

Pablo Picasso, Pass with the Cape, 1960 Dilation Structuring Element Adapted from John Goutsias, Johns Hopkins Univ. Pablo Picasso, Pass with the Cape, 1960 CS 484, Fall 2018 ©2018, Selim Aksoy

Dilation Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Erosion CS 484, Fall 2018 ©2018, Selim Aksoy

Erosion 1 1 1 1 1 1 1 1 Binary image A Erosion result 1 1 1 1 1 1 1 Binary image A Erosion result Structuring element B (1st definition) CS 484, Fall 2018 ©2018, Selim Aksoy

Erosion 1 1 1 1 1 1 1 1 Binary image A Erosion result Structuring element B (2nd definition) CS 484, Fall 2018 ©2018, Selim Aksoy

Pablo Picasso, Pass with the Cape, 1960 Erosion Structuring Element Adapted from John Goutsias, Johns Hopkins Univ. Pablo Picasso, Pass with the Cape, 1960 CS 484, Fall 2018 ©2018, Selim Aksoy

Erosion Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Opening CS 484, Fall 2018 ©2018, Selim Aksoy

Opening 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Binary image A Opening result Structuring element B CS 484, Fall 2018 ©2018, Selim Aksoy

Pablo Picasso, Pass with the Cape, 1960 Opening Structuring Element Adapted from John Goutsias, Johns Hopkins Univ. Pablo Picasso, Pass with the Cape, 1960 CS 484, Fall 2018 ©2018, Selim Aksoy

Closing CS 484, Fall 2018 ©2018, Selim Aksoy

Closing 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Binary image A Closing result Structuring element B CS 484, Fall 2018 ©2018, Selim Aksoy

Examples Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Properties CS 484, Fall 2018 ©2018, Selim Aksoy

Properties CS 484, Fall 2018 ©2018, Selim Aksoy

Boundary extraction CS 484, Fall 2018 ©2018, Selim Aksoy

Conditional dilation CS 484, Fall 2018 ©2018, Selim Aksoy

Region filling CS 484, Fall 2018 ©2018, Selim Aksoy

Region filling Adapted from Gonzales and Woods CS 484, Fall 2018 ©2018, Selim Aksoy

Detecting runways in satellite airport imagery Examples Detecting runways in satellite airport imagery http://www.mmorph.com/mxmorph/html/mmdemos/mmdairport.html Note: These links do not work anymore, but you can use the Wayback Machine for older versions. CS 484, Fall 2018 ©2018, Selim Aksoy

Segmenting letters, words and paragraphs Examples Segmenting letters, words and paragraphs http://www.mmorph.com/mxmorph/html/mmdemos/mmdlabeltext.html CS 484, Fall 2018 ©2018, Selim Aksoy

Extracting the lateral ventricle from an MRI image of the brain Examples Extracting the lateral ventricle from an MRI image of the brain http://www.mmorph.com/mxmorph/html/mmdemos/mmdbrain.html CS 484, Fall 2018 ©2018, Selim Aksoy

Detecting defects in a microelectronic circuit Examples Detecting defects in a microelectronic circuit http://www.mmorph.com/mxmorph/html/mmdemos/mmdlith.html CS 484, Fall 2018 ©2018, Selim Aksoy

Grading potato quality by shape and skin spots Examples Grading potato quality by shape and skin spots http://www.mmorph.com/mxmorph/html/mmdemos/mmdpotatoes.html CS 484, Fall 2018 ©2018, Selim Aksoy

Examples Lane detection example Traffic scene Temporal average Average of differences Lane detection example Adapted from CMM/ENSMP/ARMINES CS 484, Fall 2018 ©2018, Selim Aksoy

Examples Lane detection example Threshold and dilation to detect lane markers White line detection (top hat) Detected lanes Lane detection example Adapted from CMM/ENSMP/ARMINES CS 484, Fall 2018 ©2018, Selim Aksoy

Pixels and neighborhoods In many algorithms, not only the value of a particular pixel, but also the values of its neighbors are used when processing that pixel. The two most common definitions for neighbors are the 4-neighbors and the 8-neighbors of a pixel. CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Once you have a binary image, you can identify and then analyze each connected set of pixels. The connected components operation takes in a binary image and produces a labeled image in which each pixel has the integer label of either the background (0) or a component. Original image Thresholded image After morphology Connected components CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Methods for connected components analysis: Recursive tracking (almost never used) Parallel growing (needs parallel hardware) Row-by-row (most common) Classical algorithm Run-length algorithm (see Shapiro-Stockman) Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Recursive labeling algorithm: Negate the binary image so that all 1s become -1s. Find a pixel whose value is -1, assign it a new label, call procedure search to find its neighbors that have values -1, and recursively repeat the process for these neighbors. CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Row-by-row labeling algorithm: The first pass propagates a pixel’s label to its neighbors to the right and below it. (Whenever two different labels can propagate to the same pixel, these labels are recorded as an equivalence class.) The second pass performs a translation, assigning to each pixel the label of its equivalence class. A union-find data structure is used for efficient construction and manipulation of equivalence classes represented by tree structures. CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis Adapted from Shapiro and Stockman CS 484, Fall 2018 ©2018, Selim Aksoy

CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis CS 484, Fall 2018 ©2018, Selim Aksoy

Connected components analysis CS 484, Fall 2018 ©2018, Selim Aksoy