電腦視覺 Computer and Robot Vision I Chapter2: Binary Machine Vision: Thresholding and Segmentation Instructor: Shih-Shinh Huang 1
Contents Introduction Thresholding Connected Components Labeling Signature Segmentation and Analysis 2
Computer and Robot Vision I 2.1 Introduction Introduction 3
Binary Machine Vision Binary Image Binary Value 1: Part of Object Binary Value 0: Background Pixel Definition of Binary Machine Vision Generation and analysis of such a binary image 2.1 Introduction 4
Binary Machine Vision Thresholding It is the first step of binary machine vision It is a labeling operation Connected Components / Signature Analysis They are multilevel vision grouping techniques. They make a transformation from image pixels to more complex units. Regions Segments 2.1 Introduction 5
Computer and Robot Vision I 2.2 Thresholding Introduction 6
What is Thresholding ? It is a labeling operation. It assigns a binary value to each pixel. Binary Value 1: pixels have higher intensity values Binary Value 0: pixels have higher intensity values 2.2 Thresholding 7
Introduction Mathematical Formulation : row and column : gray-level intensity image : intensity threshold : binary intensity image Thresholding
Introduction Thresholding How to select an appropriate threshold ?
Introduction Approaches Global Thresholding: use a global value to make the pixel distinction in the image. Local Thresholding: use spatial varying threshold to label the local pixels Thresholding Image
Histogram Definition of Histogram Histogram Probability Thresholding number of elements m spans each gray level value e.g
Histogram Examples Thresholding
Histogram Thresholding
Histogram Thresholding T=110T=130T=150T=170
Within-Group Variance Observations A group is a set of pixels with intensity homogeneity. Homogeneity is measured by the use of variance High homogeneity group has low variance Low homogeneity group has high variance Objective Select a dividing score such that the weighted sum of the within-group variances is minimized Thresholding
Within-Group Variance Definition: weighted sum of group variances : probability for the group with values : variance for the group with values Thresholding
Within-Group Variance Objective Formulation Find a threshold which minimizes Thresholding
Within-Group Variance Implementation Issue Step1: For t=0,…,255 Step2: Compute,,, and Step3: Compute Step4: If is less than the value in the previous iteration Thresholding All variables should be re-compute at each iteration.
Within-Group Variance Implementation Issue Speed-Up Formulation Thresholding
Within-Group Variance Implementation Issue Speed-Up Formulation Thresholding
Within-Group Variance Implementation Issue Speed-Up Formulation Thresholding
Within-Group Variance Implementation Issue Speed-Up Formulation Thresholding
Within-Group Variance Implementation Issue Speed-Up Formulation Thresholding constant minimizemaximize
Within-Group Variance Implementation Issue Speed-Up Formulation We have recursive form to compute optimal threshold Thresholding
Within-Group Variance Example Thresholding
Kullback Information Distance Assumption The observations come from a weighted mixture of two Gaussians distributions. Gaussian Distribution of Background Gaussian Distribution of Object Thresholding
Kullback Information Distance Thresholding Background Gaussian Distribution Object Gaussian Distribution
Kullback Information Distance Objective Formulation T Determine a threshold T that results in two Gaussian distributions which minimize Kullback divergence P(I) :P(I) : observed histogram distribution f(I) Tf(I) : a mixture of Gaussian distributions determined by T Thresholding
Kullback Information Distance Objective Formulation Known Parameter: Observed Histogram Unknown Parameter: Two Gaussian Distributions Thresholding
Kullback Information Distance Solution Derivation Thresholding Constant
Kullback Information Distance Solution Derivation Assumption: The modes are well separated Thresholding
Kullback Information Distance Solution Derivation Thresholding
Kullback Information Distance Implementation Issue Step1: For t=0,…,255 Step2: Compute,,, and Step3: Compute Step4: If is less than the value in the previous iteration Thresholding
Kullback Information Distance Example Thresholding
Kullback Information Distance Thresholding Within Group Variance (Otsu) Kullback Information (Kittler-Illingworth)
Computer and Robot Vision I 2.3 Connected Component Labeling Introduction 36
Introduction Description Connected Components labeling is a grouping operation. It performs the unit change from pixel to region or segment. All pixels are given the same identifier Have value binary 1 Connect to each other Connected Component Labeling
Introduction Terminology label: unique name or index of the region connected components labeling: a grouping operation pixel property: position, gray level or brightness level region property: shape, bounding box, position, intensity statistics Connected Component Labeling
Connected Component Operators Definition of Connected Component Two pixels and belong to the same connected component if there is a sequence of 1-pixels, where are neighbor Connected Component Labeling
Connected Component Operators Neighborhood Types Connected Component Labeling 4-connected 8-connected Original ImageConnected Components
Connected Component Algorithms Common Features Process a row of image at a time Assign a new labels to the first pixel of each component. Propagate the label of a pixel to its neighbors to the right or below it Connected Component Labeling
Connected Component Algorithms Common Features Connected Component Labeling What label should be assigned to A How does the algorithm keep track of the equivalence of two labels How does the algorithm use the equivalence information to complete the processing
Algorithm1: Iterative Algorithm Algorithm Steps Step1 (Initialization): Assign an unique label to each pixel. Step2 (Iteration) : Perform a sequence of top- down and bottom-up label propagation Connected Component Labeling Use no auxiliary storage Computational Expensive
Algorithm2: Classic Algorithm Two-Pass Algorithm Pass 1: Perform label assignment and label propagation Construct the equivalence relations between labels when two different labels propagate to the same pixel. Apply resolve function to find the transitive closure of all equivalence relations. Pass 2: Perform label translation Connected Component Labeling
Algorithm2: Classic Algorithm Example: Connected Component Labeling {2=4} {3=5} {1=5}
Algorithm2: Classic Algorithm Example: Resolve Function Connected Component Labeling {2=4}{3=5}{1=5}{2=4}{1=3=5} Computational Efficiency Need a lot of space to store equivalence
Computer and Robot Vision I 2.4 Signature Segmentation and Analysis Introduction 47
Introduction Description Signature analysis perform unit change from the pixel to the segment. It was firstly used in character recognition Definition of Signature The signature, which is a projection, is the histogram of the non-zero pixels of the masked image Signature Segmentation and Analysis
Introduction General Signatures Vertical Projection Horizontal Projection Diagonal Projection Signature Segmentation and Analysis
Signature Segmentation Steps Thresholding : generate the binary image. Projection Computation: compute the vertical, horizontal, or diagonal projections. Projection Segmentation: divide the image into several segments or regions according to the signatures Signature Segmentation and Analysis
Signature Segmentation Signature Segmentation and Analysis
Signature Segmentation Signature Segmentation and Analysis
Signature Segmentation Signature Segmentation and Analysis OCR: Optical Character Recognition MICR: Magnetic Ink Character Recognition
The End Computer and Robot Vision I