CS 6825: Binary Image Processing – binary blob metrics

Slides:



Advertisements
Similar presentations
A Graph based Geometric Approach to Contour Extraction from Noisy Binary Images Amal Dev Parakkat, Jiju Peethambaran, Philumon Joseph and Ramanathan Muthuganapathy.
Advertisements

Programming Assignment 2 CS 302 Data Structures Dr. George Bebis.
電腦視覺 Computer and Robot Vision I
E.G.M. PetrakisImage Segmentation1 Segmentation is the process of partitioning an image into regions –region: group of connected pixels with similar properties.
Document Image Processing
CDS 301 Fall, 2009 Image Visualization Chap. 9 November 5, 2009 Jie Zhang Copyright ©
Lecture 07 Segmentation Lecture 07 Segmentation Mata kuliah: T Computer Vision Tahun: 2010.
電腦視覺 Computer and Robot Vision I Chapter2: Binary Machine Vision: Thresholding and Segmentation Instructor: Shih-Shinh Huang 1.
Computer Vision Lecture 16: Region Representation
Each pixel is 0 or 1, background or foreground Image processing to
September 10, 2013Computer Vision Lecture 3: Binary Image Processing 1Thresholding Here, the right image is created from the left image by thresholding,
3-D Computer Vision CSc – Ioannis Stamos 3-D Computer Vision CSc Binary Images Horn (Robot Vision): pages
EE 7730 Image Segmentation.
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.
Objective of Computer Vision
Objective of Computer Vision
Computer Vision Basics Image Terminology Binary Operations Filtering Edge Operators.
A Novel 2D To 3D Image Technique Based On Object- Oriented Conversion.
E.G.M. PetrakisBinary Image Processing1 Binary Image Analysis Segmentation produces homogenous regions –each region has uniform gray-level –each region.
Image processing Lecture 4.
Chapter 10: Image Segmentation
1. Binary Image B(r,c) 2 0 represents the background 1 represents the foreground
Machine Vision for Robots
OBJECT RECOGNITION. The next step in Robot Vision is the Object Recognition. This problem is accomplished using the extracted feature information. The.
Image Processing1 Morphological and Other Area Operations Introduction –Morphology is the science of form and structure –It is about regions or.
Chap 3 : Binary Image Analysis. Counting Foreground Objects.
S EGMENTATION FOR H ANDWRITTEN D OCUMENTS Omar Alaql Fab. 20, 2014.
Digital Image Fundamentals II 1.Image modeling and representations 2.Pixels and Pixel relations 3.Arithmetic operations of images 4.Image geometry operation.
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.
: Chapter 6: Morphological Image Processing 1 Montri Karnjanadecha ac.th/~montri Image Processing.
September 5, 2013Computer Vision Lecture 2: Digital Images 1 Computer Vision A simple two-stage model of computer vision: Image processing Scene analysis.
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.
Introduction Image geometry studies rotation, translation, scaling, distortion, etc. Image topology studies, e.g., (i) the number of occurrences.
Digital Camera and Computer Vision Laboratory Department of Computer Science and Information Engineering National Taiwan University, Taipei, Taiwan, R.O.C.
CS654: Digital Image Analysis Lecture 25: Hough Transform Slide credits: Guillermo Sapiro, Mubarak Shah, Derek Hoiem.
1 Regions and Binary Images Hao Jiang Computer Science Department Sept. 24, 2009.
Image Segmentation by Histogram Thresholding Venugopal Rajagopal CIS 581 Instructor: Longin Jan Latecki.
CS654: Digital Image Analysis Lecture 4: Basic relationship between Pixels.
Low level Computer Vision 1. Thresholding 2. Convolution 3. Morphological Operations 4. Connected Component Extraction 5. Feature Extraction 1.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
Nottingham Image Analysis School, 23 – 25 June NITS Image Segmentation Guoping Qiu School of Computer Science, University of Nottingham
1 Mathematic Morphology used to extract image components that are useful in the representation and description of region shape, such as boundaries extraction.
1 Overview representing region in 2 ways in terms of its external characteristics (its boundary)  focus on shape characteristics in terms of its internal.
Image Segmentation Nitin Rane. Image Segmentation Introduction Thresholding Region Splitting Region Labeling Statistical Region Description Application.
1 © 2010 Cengage Learning Engineering. All Rights Reserved. 1 Introduction to Digital Image Processing with MATLAB ® Asia Edition McAndrew ‧ Wang ‧ Tseng.
Digital Camera and Computer Vision Laboratory Department of Computer Science and Information Engineering National Taiwan University, Taipei, Taiwan, R.O.C.
Essential components of the implementation are:  Formation of the network and weight initialization routine  Pixel analysis of images for symbol detection.
Machine Vision ENT 273 Hema C.R. Binary Image Processing Lecture 3.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
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.
Computational Vision CSCI 363, Fall 2012 Lecture 17 Stereopsis II
Digital Image Processing CCS331 Relationships of Pixel 1.
Computer Graphics CC416 Lecture 04: Bresenham Line Algorithm & Mid-point circle algorithm Dr. Manal Helal – Fall 2014.
Course : T Computer Vision
Image Representation and Description – Representation Schemes
图像处理技术讲座(3) Digital Image Processing (3) Basic Image Operations
CSE 554 Lecture 1: Binary Pictures
Bitmap Image Vectorization using Potrace Algorithm
Mean Shift Segmentation
Computer Vision Lecture 5: Binary Image Processing
Binary Image Analysis used in a variety of applications:
CS654: Digital Image Analysis
Binary Image processing بهمن 92
Computer and Robot Vision I
Computer and Robot Vision I
Computer and Robot Vision I
Binary Image Analysis used in a variety of applications:
Presentation transcript:

CS 6825: Binary Image Processing – binary blob metrics

Recall - Creating a Binary Image - Thresholding Input gray-level value Output gray-level value

“Blob Detection” - Segmentation Often with binary images such as the one shown here, you want to detect the separate “blobs”, connected groupings of object pixels. Each blob may represent an entirely separate object or a surface of an object. When using color or grey scale images this process is called segmentation. We will discuss this in another module. 2 1 5 3 4 9 6 7 8 12 11 10 Here “object pixels” are labeled black. We have 12 blobs in binary image, each corresponding to a different object.

Knowing your blobs: Label Image Original Binary Image The output of a segmentation algorithm on a binary image will be what is called a “label image”. Basically, it gives a unique identifier (like number the blobs 0 to n) for each blob and every pixel that belongs to that blob gets its label id. The color image show the label image where each unique label id has a different color Label Image – Colors indicate different blobs, random colors were assigned

Blob Detection Blob = connected pixels. This image has 4 blobs ( that are 8 – connected) See our previous lecture on neighborhoods to review 8- connected.

Blob Detection Recursive Algorithm Initialize your label image with no labels for all pixels. Scan your binary image and find the first non-zero pixel, that has no label. Create a label for it in the label image. Find all unmarked non-zero neighbors and mark them as visited with the same label id. For each of these neighbors, go to step 3. Repeat step 2 until you have scanned the entire image.

Blob Detection Iterative Algorithm Scan the array, raster fashion. When a non-zero pixel is found, look above and to left for other non-zero pixels and if one is found, join the current pixel to this blob. Join blobs at the bottom of U's.

Example: Labeling Blobs (here application is medical image – cell detection) Adaptive Smoothing & Thresholding Connected Components Labeling Binary image Regions labeled image Image Binary Segmentation Connected Components Labeling

Small Blob removal Small blobs considered “noise” , not important. For all pixels f(x,y), left to right, top to bottom { counter(label(x,y)) ++; } //increment count of this label //remove blobs with less than S pixels { if f(x,y)=0, do nothing. if f(x,y)=1 and counter(label(x,y))<S) then set f(x,y)=0 }

Blob Measurements Often wish to measure geometric properties on blobs

Geometric Properties: Area of a blob Size The area A is measured as the number of pixels in the region weighted by their intensity. Below B represents a set of pixels belonging to a “blob” that we wish to measure the area of. This could be, for example the black pixels in the hole of the manufacturing object we saw previously.

Geometric Properties: Center position of blob The equation below calculates the center of the region x, y.

Geometric Properties: Orientation To have a unique orientation along the length of an object, the object must be elongated in one direction. If this is the case, the axis of elongation can be used to define the orientation. The axis of least second moment is equivalent to the axis of least inertia and is used as the axis of elongation. The axis of second moment for an object is that line for which the sum of the squared distances between the object pixels and the line is minimum.

Geometric Properties: Projections The projection of a binary image onto a line can be useful for segmenting areas along the line for further processing. Consider the task of trying to find separation between horizontal lines of text on a page. If you were to perform a projection along a vertical line, for black text against a white background the high values of the projection would indicate the line separations. Text image and vertical projection. These lines/rows of image contain the words “To: Lynne” as they have lower values/ more black.             

Example: OCR First Vertical Projection is used to detect lines in text to separate them from each other. The valleys in the projection curve indicate areas between lines. Line 1 Line 2 Line 3 Line 3

Example: OCR For each line of text, Horizontal Projection is used to detect and separate characters in it. Valleys again indicate possible separation between characters. This is harder to see visually.

Conclusion We learned about some of the properties / “features” that are used for Binary Images Started with finding of “blobs” (idea is a blob is part of an object, or an entire object or could be more tan one object…it is object related). Looked at an algorithm (there are many) to find blobs How to remove small blobs Features of a blob : size, center, orientation, projections. THERE are MANY more possible features – can you think of any? How about shape, or diameter, or length of perimeter, etc.