Binary Image Processing - PowerPoint PPT Presentation

1 / 58
About This Presentation
Title:

Binary Image Processing

Description:

A binary image consists of only two intensities 0 or 1. ... to mask out the image background leaving gray level information present in the objects ... – PowerPoint PPT presentation

Number of Views:178
Avg rating:3.0/5.0
Slides: 59
Provided by: valueds260
Category:

less

Transcript and Presenter's Notes

Title: Binary Image Processing


1
Binary Image Processing
  • Dr. Ramprasad Bala
  • Computer and Information Science
  • UMASS Dartmouth
  • CIS 465 Topics in Computer Vision

2
Pixels and Neighborhoods
  • A binary image consists of only two intensities
    0 or 1.
  • A binary image B can be obtained from a grayscale
    image I through an operation that selects a
    subset of image pixels as foreground pixels, the
    pixels of interest in an image. Everything else
    would be considered as background pixels.

3
  • Notation
  • Indexes for the image will go between 0 and M-1
    and 0 and N-1 for an MxN image.
  • 1 will indicate foreground and 0 background
  • Will use both 4- and 8-neighbors

4
Masks
  • The most basic operation in Image Processing (IP)
    is the application of masks to an image.
  • Operation comes from convolution.
  • A mask is a set of pixels and corresponding
    values called weights.

5
Examples of Masks
Each mask has an origin, which is usually one of
its position. Typically the center in symmetric
masks. In the non-symmetric Case any pixel will
do, depending on the use.
6
More on masks
  • The application of a mask on an image will result
    in an image of the same size (duh!).
  • The mask is placed on each pixel of the image and
    the value of each input image pixel under the
    mask is multiplied by the weight of the
    corresponding weight and summed.
  • This value (or normalized by the weights) is
    placed in the same pixel position in the output
    image.

7
(No Transcript)
8
Thresholding and Segmentation
  • Gray level thresholding is the simplest
    segmentation process.
  • Many objects or image regions are characterized
    by constant reflectivity or light absorption of
    their surface.
  • Thresholding is computationally inexpensive and
    fast.
  • Thresholding can easily be done in real time
    using specialized hardware

9
Thresholding
  • Complete segmentation can result from
    thresholding in simple scenes.
  • Thresholding

10
Thresholding - Example
Thresholded Image (95)
Original Image
11
Thresholding Example
Under-segmentation (25)
Over-segmentation (225)
12
Algorithm
  • Thresholding algorithm
  • Search all the pixels f(i,j) of the image f.
  • An image element g(i,j) of the segmented image is
    an object pixel if f(i,j) gt T, and is a
    background pixel otherwise
  • Correct threshold selection is crucial for
    successful threshold segmentation
  • Threshold selection can be interactive
  • or can be the result of some threshold detection
    method

13
Approaches
  • Single global threshold ... successful only under
    very unusual circumstances
  • gray level variations are likely - due to
    non-uniform lighting, non-uniform input device
    parameters or a number of other factors.

14
Another Approach
  • Variable thresholding (also adaptive
    thresholding), in which the threshold value
    varies over the image as a function of local
    image characteristics, can produce the solution
    in these cases.

15
Adaptive Algorithm
  • image f is divided into subimages fc
  • a threshold is determined independently in each
    subimage
  • if a threshold cannot be determined in some
    subimage, it can be interpolated from thresholds
    determined in neighboring subimages.
  • each subimage is then processed with respect to
    its local threshold.

16
Thresholding modifications
  • Band-thresholding
  • segment an image into regions of pixels with gray
    levels from a set D and into background otherwise
  • Can also serve as border detection

17
Example
Intensity values between 90 and 200
18
Other Thresholds
  • Multithresholding
  • resulting image is no longer binary

19
Example
20
Other Thresholds
  • Semi-thresholding
  • aims to mask out the image background leaving
    gray level information present in the objects

21
Example
22
Summary
  • Thresholding can also be applied to
  • gradient
  • local texture
  • any other image decomposition criterion

23
Counting objects in an image
  • Can use our hole-counting algorithm just negate
    the image (and the edge identification masks)
  • Convention for algorithms
  • Global variables
  • Procedures with return statements
  • Trivial operations no details

24
Object counting algorithm
  • Objects are 4-connected and simply connected
  • E num of external corners
  • I num of internal corners
  • procedure count_objects(B binary image)
  • E 0 I 0
  • for L 0 to MaxRow 1
  • for P 0 to MaxCol 1
  • If external_match(L,P) then E E1
  • If internal_match(L,P) then I I1
  • return((E-I)/4)

25
Things to think about
  • Exercise 3.1
  • Efficiency should be an issue.

26
Assignment 3
  • Use (manual) thresholding to create binary image.
  • Implement the object counting algorithm to find
    the number of objects in the images.
  • Input a grayscale image
  • Output a) the binary image b) the number of
    objects in the image.
  • Must run from a GUI.
  • Due 3rd Oct 5PM

27
Assignment 2
  • Hall of Fame/Shame

28
Connected Components
  • Components are objects that share at least one
    common neighbor (in 4- or 8- neighborhood).
  • Definition A connected component labeling of
    binary image B is a labeled image LB in which the
    value of each pixel is the label of its connected
    component.

29
(No Transcript)
30
Recursive Labeling Algorithm
  • Given a binary image B
  • Negate the image (make all 1-pixels to 1)
  • Search and find a 1 pixel, label it and find its
    (4- or 8-) neighboring pixels with 1 and assign
    the same label.
  • Recursively apply to resolve (merge or split)
    components.
  • Cost?

31
Row-by-Row Labeling
  • Classic two-pass algorithm.
  • First pass creates equivalency table.
  • Second pass processes equivalency table to merge
    components.
  • Union-find algorithm.
  • Cost?

32
Assignment 4
  • Find the connected components in the image
  • Find the 10 largest components and identify each
    by using different intensities largest black
    and smallest white.
  • Write your own code do not use Matlab
    functions.
  • Input a grayscale image
  • Output a labeled grayscale image, showing the
    10 largest objects.
  • Due October 21th 1159 PM

33
Assignment 3/4 images
34
Assignment 3/4 images
35
Binary Image Morphology
  • The operations of binary morphology input a
    binary image B and a structuring element S.
  • S is usually a smaller binary image.
  • S can be any shape, circular or square etc.
  • S acts as a probe of the binary image.
  • One pixel of S is designated as the origin.

36
Structuring Elements
37
Structuring elements
  • By placing the origin anywhere in the image,
    either the region can be enlarged by the shape or
    to check whether or not the shape fits inside a
    region.
  • Think of this as the template for
    template-matching in a binary image.

38
Basic morphologies
  • Translation the translation Xt of a set of
    pixels X by a position vector t is defined by
  • Xt x t x ? X
  • Vector t usually specific translation along the
    rows as well as the columns
  • Dilation enlarges a region by one pixel along
    all directions.

39
After dilation
Original Image
Structuring element
40
More operations
  • Erosion removes one pixel element from the
    borders
  • The Closing operation performs a dilation
    followed by an erosion.
  • The Opening operation performs an erosion
    followed by a dilation

41
Opening
Closing
Erosion
42
Morphological Operators -Erosion and Dilation
  • In a binary image this is also known as Expanding
    and Shrinking.
  • Expanding Change a pixel from 0 to 1 if any of
    the neighbors of the pixel are 1.
  • Shrinking Change a pixel from 1 to 0 if any
    neighbor of the pixel are 0.

43
Erosion and Dilation
  • An erosion followed by a dilation (refered to as
    an "Open" operation) can be used to eliminate
    point noise.
  • A dilation operation followed by erosion
    (referred to as a "Close" operation) can be used
    to close up holes or gaps in the object of
    interest.
  • While erosion and dilation can employ arbitrary
    "structuring elements", a typical structuring
    element is simply a 3x3 matrix of 1's.

44
Original Image
After Dilation
After Erosion
45
(No Transcript)
46
Erosion and Dilation in Grayscale Images
Original Image
47
Resulting image after applying grayscale dilation
48
Resulting image after applying grayscale erosion.
49
Applications
  • Closing and openings are useful in binary images
    with tiny holes in the connect components that
    should be separate.
  • Medical image analysis

50
(No Transcript)
51
Another application
52
(No Transcript)
53
Extracting Features
54
Assignment 4 Extra Credit
  • In the block image if you can automatically
    detect the number of squares and rectangles,
    using structure elements for squares and
    rectangles, you will get an additional 50 points!
    Your program should also identify the squares and
    the rectangles (use different intensities).Same
    deadline.

55
Conditional Dilation
  • Conditional dilation is used in conjunction with
    the original binary image B, the processed binary
    image C, and structuring element S.
  • Fig 3.17 shows how the masks V and D are applied
    to find components in the original image that
    contain 3-pixel length vertical lines.

56
Region Properties
  • Once a binary image has been processed we could
    obtain properties about the regions in the
    processed image.
  • Some of those properties are
  • Area, centroid
  • Measure of circularity and elongation
  • Mean gray-tone and texture statistics.

57
Area and Centroid
  • Area A sum of all the 1-pixels in the region.
  • Centroid r,c is the average location of the
    pixels in the region
  • r 1/ASum of all the rows in the region
  • c 1/ASum of all the columns in the region.

58
Region Adjacency Graphs
  • In the region adjacency graph, two regions are
    adjacent to one another if they have a common
    region (usually the background) that is a
    neighbor to both.
  • The background can also be labeled (holes inside
    foreground objects.

59
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com