Presentation is loading. Please wait.

Presentation is loading. Please wait.

Recap CSC508.

Similar presentations


Presentation on theme: "Recap CSC508."— Presentation transcript:

1 Recap CSC508

2 Low Level Vision Input Processing Output Image sensor data
Neighborhood operators Mathematical operators Local contextual operators Output Pixel based features CSC508

3 Mid Level Vision Input Processing Output Pixel based features
Statistical operators Mathematical operators Global contextual operators Output Objects CSC508

4 Mid-Level Vision CSC508

5 Intensity Region Segmentation
CSC508

6 Homogeneous Intensity Regions
Areas of constant intensity within the image May represent Objects Regions of interest Computed by [one method among many] Binarization Connected component analysis CSC508

7 Binarization (revisited)
Original Gray Level Image Binary Image CSC508

8 Binarization (revisited)
CSC508

9 Region Formation 1 2 3 4 Original Gray Level Image Marked Region Image
CSC508

10 Boundary Information Original Gray Level Image Region Boundary Image
CSC508

11 Finding Regions via Connected Component Analysis
In the input image the intensity of each region may be arbitrary In the binarized image the intensity of each region is 255 (maximum, or at least different from the background) The goal of connected component analysis is to “label” the pixels of each connected region with a value unique to that region CSC508

12 Connected Component Analysis
A simple recursive “flood-fill” algorithm will do the trick but… It is slow A large object will overflow the stack (memory intensive) Smarter algorithms can be found in the computer graphics, graph theory, and image processing literature CSC508

13 Connected Component Analysis
One algorithm works as follows: Pass 1: Assign labels to each object pixel Keep track of neighboring labels that belong to the same object Pass 2: Rectify associations Pass 2 is somewhat complex and comes from a language parsing algorithm – I won’t describe the details here CSC508

14 Connected Component Analysis
1 2 3 4 Original Gray Level Image Marked Region Image CSC508

15 Connected Component Analysis
Note that this image is “ideal” You might expect images as such in a manufacturing environment In less than ideal cases objects may get broken up or merged by thin lines, etc. Correction can be made through the use of Morphological operators Erosion Dilation More on Morphological operators next week CSC508

16 Boundary Extraction Once you have identified regions it is [conceptually] simple to extract their boundaries Find the upper-left most pixel of the region “Walk around” the region always keeping it to your right Keep track of the directions you step along the way (north, south, east, or west) Stop when you return back to the beginning This creates a chain-code of the region boundary From the chain-code you can compute the perimeter length and other descriptors CSC508

17 Boundary Chain-Code “*” marks the starting point (upper-left most pixel of the region) Resultant chain-code is NEEESESSSWSSWSWWWWNNNNEESENWN Resultant perimeter is 30 N E E E * S E N S N E E/W E N S N S E W S N S N W S W W W W S CSC508

18 Region Description CSC508

19 Object Description Now that we have identified objects we need a way to describe them that will facilitate recognition CSC508

20 Moments A set of descriptors for representing the shape of an object
Typically applied to an identified region but may be used with gray-level CSC508

21 Discrete Case Moment of an region (general definition) Central moments
0 if not in region 1 if in region (Object centroid) CSC508

22 Central Moments First few central moments: CSC508

23 Moment Features Centroids (average x and y locations)
Principle axis orientation CSC508

24 Convex Hull Another useful shape descriptor
The smallest convex border encasing the object Think of stretching a rubber band around the outside of the object and letting it wrap around it This will be the convex hull Input to the algorithm is a set of points These are the boundary points found previously CSC508

25 Region Descriptors Region: 1 Convex Hull Area: 27753.0 xBar: 171.26
yBar: theta: perimeter: 1098 Convex Hull Perimeter: 812 CSC508

26 Region Descriptors Region: 2 Convex Hull Area: 10390.0 xBar: 230.82
yBar: theta: 87.51 perimeter: 580 Convex Hull perimeter: 515 CSC508

27 Region Descriptors Region: 3 Convex Hull Area: 8049.0 xBar: 362.24
yBar: theta: -6.62 perimeter: 411 Convex Hull perimeter: 322 CSC508

28 Region Descriptors Region: 4 Convex Hull Area: 11203.0 xBar: 357.98
yBar: theta: perimeter: 648 Convex Hull perimeter: 520 CSC508

29 Region Descriptors Region: 5 Convex Hull Area: 14880.0 xBar: 92.5
yBar: 366.5 theta: 0.0 perimeter: 492 Convex Hull perimeter: 484 CSC508

30 Other Features Average Intensity Circularity or Compactness
p: perimeter, a: area CSC508

31 Things To Do Reading for Next (few) Week(s)
Chapter 14 – Segmentation by Clustering We’ll consider various clustering methods Chapter 15 – Segmentation by Models We’ll analyze the Hough Transform CSC508

32 Things To Do Homework Convex Hull Find an algorithm for computing the convex hull of a set of points Describe the algorithm in words Test the code Boundary Extraction Write the code to trace the boundary (chain code) of a specified region Print out the chain code symbols (start pixel row, column followed by a sequence of N E W S directions) Moments Code the μ00, μ10, μ01, μ11, μ20, μ02 moments You may write in any programming language you choose Deliverables: Zipped images in the source code to with the subject line CSC508 PROGRAM 3 Due beginning of class in two weeks (late assignments will be penalized 10%) I will post test images CSC508


Download ppt "Recap CSC508."

Similar presentations


Ads by Google