Lecture 18 Representation and description I. 2. Boundary descriptors

Similar documents
EECS490: Digital Image Processing. Lecture #23

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking

Image representation. 1. Introduction

Chapter 11 Representation & Description

Lecture 8 Object Descriptors

CoE4TN4 Image Processing

Topic 6 Representation and Description

Digital Image Processing Chapter 11: Image Description and Representation

Lecture 10: Image Descriptors and Representation

9 length of contour = no. of horizontal and vertical components + ( 2 no. of diagonal components) diameter of boundary B

Digital Image Processing

Ulrik Söderström 21 Feb Representation and description

Chapter 11 Representation & Description

Feature description. IE PŁ M. Strzelecki, P. Strumiłło

Anne Solberg

- Low-level image processing Image enhancement, restoration, transformation

Digital Image Processing Fundamentals

Practical Image and Video Processing Using MATLAB

Machine vision. Summary # 6: Shape descriptors

Afdeling Toegepaste Wiskunde/ Division of Applied Mathematics Representation and description(skeletonization, shape numbers) SLIDE 1/16

FROM PIXELS TO REGIONS

Basic Algorithms for Digital Image Analysis: a course

Image and Multidimensional Signal Processing

SUMMARY PART I. What is texture? Uses for texture analysis. Computing texture images. Using variance estimates. INF 4300 Digital Image Analysis

COMP_4190 Artificial Intelligence Computer Vision. Computer Vision. Levels of Abstraction. Digital Images

Digital Image Processing

Lecture 6: Multimedia Information Retrieval Dr. Jian Zhang

Mathematical Morphology and Distance Transforms. Robin Strand

Morphological Image Processing

Morphological Image Processing

Subset Warping: Rubber Sheeting with Cuts

Chapter 11 Arc Extraction and Segmentation

Morphological Image Processing

OCCHIO USA WHITE STONE VA TEL(866)

ECEN 447 Digital Image Processing

COMPUTER AND ROBOT VISION

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University

Morphological Image Processing

ELEC Dr Reji Mathew Electrical Engineering UNSW

Review for the Final

Edge and local feature detection - 2. Importance of edge detection in computer vision

EECS490: Digital Image Processing. Lecture #20

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5

Files Used in This Tutorial. Background. Feature Extraction with Example-Based Classification Tutorial

EE 584 MACHINE VISION

Problem definition Image acquisition Image segmentation Connected component analysis. Machine vision systems - 1

THE description and representation of the shape of an object

OBJECT DESCRIPTION - FEATURE EXTRACTION


Computational Geometry. Geometry Cross Product Convex Hull Problem Sweep Line Algorithm

Lecture 14 Shape. ch. 9, sec. 1-8, of Machine Vision by Wesley E. Snyder & Hairong Qi. Spring (CMU RI) : BioE 2630 (Pitt)

CSCI 4620/8626. Coordinate Reference Frames

EE795: Computer Vision and Intelligent Systems

Image Processing, Analysis and Machine Vision

4-Border and 4-Boundary

Morphological track 1

6. Applications - Text recognition in videos - Semantic video analysis

Shape description and modelling

Overview. Spectral Processing of Point- Sampled Geometry. Introduction. Introduction. Fourier Transform. Fourier Transform

SUMMARY PART I. Variance, 2, is directly a measure of roughness. A bounded measure of smoothness is

EECS490: Digital Image Processing. Lecture #17

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

Chapter 10: Image Segmentation. Office room : 841

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

CS534 Introduction to Computer Vision Binary Image Analysis. Ahmed Elgammal Dept. of Computer Science Rutgers University

Image retrieval based on region shape similarity

Lecture 3: Art Gallery Problems and Polygon Triangulation

SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS.

Shape representation by skeletonization. Shape. Shape. modular machine vision system. Feature extraction shape representation. Shape representation

Lecture 15: Segmentation (Edge Based, Hough Transform)

CITS 4402 Computer Vision

Computer Graphics. The Two-Dimensional Viewing. Somsak Walairacht, Computer Engineering, KMITL

ECG782: Multidimensional Digital Signal Processing

2: Image Display and Digital Images. EE547 Computer Vision: Lecture Slides. 2: Digital Images. 1. Introduction: EE547 Computer Vision

Lecture: Segmentation I FMAN30: Medical Image Analysis. Anders Heyden

Chapter 3. Sukhwinder Singh

HOUGH TRANSFORM CS 6350 C V

RESEARCH ON OPTIMIZATION OF IMAGE USING SKELETONIZATION TECHNIQUE WITH ADVANCED ALGORITHM

Interactive Math Glossary Terms and Definitions

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

Dynamic Collision Detection

Hierarchical Representation of 2-D Shapes using Convex Polygons: a Contour-Based Approach

2D Object Description with Discrete Segments

Polygonal Skeletons. Tutorial 2 Computational Geometry

Figure 1: Workflow of object-based classification

Matching and Recognition in 3D. Based on slides by Tom Funkhouser and Misha Kazhdan

Collision handling: detection and response

Examination in Image Processing

Skeletonization and its applications. Dept. Image Processing & Computer Graphics University of Szeged, Hungary

Morphological Image Processing

Introduction. Computer Vision & Digital Image Processing. Preview. Basic Concepts from Set Theory

Parallel Computation of Spherical Parameterizations for Mesh Analysis. Th. Athanasiadis and I. Fudos University of Ioannina, Greece

Fundamentals of Digital Image Processing

Types of Edges. Why Edge Detection? Types of Edges. Edge Detection. Gradient. Edge Detection

Polygon decomposition. Motivation: Art gallery problem

Skeletonization Algorithm for Numeral Patterns

Image Processing 1 (IP1) Bildverarbeitung 1

Corner Detection using Difference Chain Code as Curvature

APPENDIX: DETAILS ABOUT THE DISTANCE TRANSFORM

An introduction to interpolation and splines

Transcription:

Lecture 18 Representation and description I 1. Boundary representation 2. Boundary descriptors

What is representation What is representation After segmentation, we obtain binary image with interested regions (objects) high-lighted. Presentation is to represent the interested regions in a format which is convenient to process by human or computer program. How to represent regions: 2 ways In terms of its external characteristics (its boundary), focusing on shape characteristics ti In terms of its internal characteristics (its region) focusing on regional properties, e.g., color, texture Or use both

Description Description: describes the region using certain features based on the chosen representation Feature selected should be as insensitive as possible to variations in size translation rotation Example Representation boundary Description length of the boundary, orientation of the straight line joining its extreme points, and the number of concavities in the boundary. 3

Moors boundary tracking algorithm Given 0/1 binary image, in which objects are labeled 1 and background is labeled 0. Given a region R, i.e., a set of connected pixels with label 1. Step 1. Let the start point b 0 be the uppermost and leftmost point of R Let c 0 be the w est neighbor of b 0. Step 2. Examine the 8-neighbor of bi starting at c i in clockwise direction. Let b i + 1 be the first p oint with lable 1, and c i+ 1 be the proceding bi+ 1 in the sequence. Store bi + 1 Step 3. Repeat Step 2 while not ( bi+ 1 = b0 and bi+ 2 = b1) Step 5. Output b0,..., b i + 1 4

Chain codes Chain codes are used to represent a boundary by a connected sequence of straight line segments of special length and direction. Freeman chain code: based on 4- or 8-connectivity of segments. The direction is coded using a number scheme. Drawbacks: long and sensitive to disturbances Solution: Resample by large grid spacing

Normalized chain codes Normalize for starting point: treat the chain code as a circular sequence of direction numbers and redefine the starting point so that the resulting sequence of numbers forms an integer of minimum magnitude Normalize for rotation: use the first different chain code instead, difference = the number of direction changes in a counterclockwise direction Example code 10103322 different is 3133030 circular chain code: 33133030 6

Example 8-direction Freeman chain code of the simplified boundary: 0000606666666644444424222202202 The first difference: 0006260000000600000620000620626

Polygonal Approximations Boundary can be approximated with arbitrary accuracy by a polygon, try to capture the essence of the boundary shape with the fewest possible polygonal segments. Minimum-perimeter polygon (MPP) Cellular complex to enclose a boundary Idea: rubber band constrained by the inner and outer walls of bounding region if each cell encompass only one point on the boundary error is at most be 2d, d is the minimum possible distance between different pixels 8

MPP algorithm 1. Obtain the cellular complex 2. Obtain the region internal to the cellular complex 3. Use function boundaries to obtain the boundary of the region in step 2 as a 4- connected, clockwise sequence of coordinates 4. Obtain the Freeman chain code of the sequence 5. Obtain the convex (white) concave (black) vertices from the chain code 6. From an initial polygon using the convex vertices and delete any concave vertices that outside the polygon 7. Form a polygon with the remaining convex and concave vertices. 8. Delete all black dots that are concave 9. Repeat 7-8 until all changes cease. The remaining vertices are the vertices of MPP

Example

Other polygonal approximation approaches Merging techniques based on average error or other criteria, merge points along the boundary until the least square error line fit of the points merged so far exceeds a preset threshold Splitting techniques find the major axis find minor axes which perpendicular to major axis and has distance greater than a threshold repeat until we can t split anymore

Signature A 1-D function representing a boundary.

Example

Boundary Segments Decompose a boundary into segment. Example: Find the convex hull H of an arbitrary set S. The set different H-S is called convex deficiency D of the set S, which can be computed by the boundary segmentation. 15

Skeletons Reduce a plane region shape to a graph. As the result of thinning: obtained by thinning operation, but may not keep the skeleton connected Skeleton defined by medial axis: points in the region has more than one closest neighbors Medial Axis Transformation (MAT): MAT of region R with border B is as follows. for each point p in R, we find its closet neighbor in B. if p has more than one such neighbor, it is said to belong to the medial axis of R closest depends on the definition of a distance

Using thinning iteratively deleting edge points of a region with constraints 1. does not remove end points 2. does not break connectivity 3. does not cause excessive erosion of the region 17

Skeleton Algorithm by thinning Assume region points have value 1 and background points have value 0 Step 1: flag a contour point p 1 for deletion if the following conditions are satisfied: (a) 2 N(p ) 6, (b) T(p ) = 1, (c) p p p = 0, (d) p p p = 0 where N( p ) = i 1 i p 2 + p 3 + K+ p + p N(p ) is the number of nonzero neighbors of 1 8 9 contour point is any pixel with value 1 and having at least one 8-neighbor valued 0. After step 1 has marked every boundary points satisfy all 4 conditions, delete those pixels. step 2: remain condition (a) and (b) but change conditions (c) and (d) to follows (c) p2 p4 p8 = 0, (d) p2 p6 p8 = 0 flagged the remain border points for deletion. then delete the marked points 2 4 p 6 i 4 6 8 repeat step 1) and 2) until no more points to delete

Example

2. Boundary Descriptors 1. length of a boundary 2. diameters 3. eccentricity 4. curvature 5. shape numbers 6. Fourier descriptors 7. Statistical moments 20

Length of a boundary and Diameters Length of a boundary : the number of pixels along a boundary, give a rough approximation of its length Diameters: Diam ( B) = max[ D( p, p )] D is a distance measure, p i and p j are points on the boundary B i, j i j 21

Eccentricity, Curvature Eccentricity Ratio of the major to the minor axis, major axis = the line connecting the two extreme points that comprise the diameter minor axis = the line perpendicular to the major axis Curvature The rate of change of slope difficult to do as digital boundaries tend to be locally ragged using the difference between the slopes of adjacent boundary segments (which represented as straight lines) use Merging and Splitting to create adjacent boundary segments concave, convex and coner 22

Shape numbers The number of digits in its representation 23

Fourier Descriptors boundary = (x 0,y 0 ),, (x K-1,y k-1 ) s ( k ) = x ( k ) + jy ( k ) for k = 0, 1,...,K- 1 24

Fourier Descriptors Fourier transformation (DFT) K 1 1 j2 uk / K ar ( u) = π s( k) e for u = K k = 0 a(u) : Fourier coefficients (Fourier Descriptors) Inverse Fourier transformation s K 1 j 2 uk / K t ( k ) = π a( u) e for k = k = 0 01,,...,K-1 0, 1,...,K- 1 25

Invariant 26

P Coefficient of Fourier Descriptors sˆ( k ) P 1 k = 0 j 2 = π a ( u ) e uk / K for k = 0, 1,...,K- 1 approximation to s(k) descriptors => P number of coefficients 27

29

Statistical moments The shape of boundary segments can be described by statistical moments such as mean, variance, higher-order moments. Assume the segmentation is represented by 1-D funciton g(r). p(vi), I = 0, 1, 2,, A-1, A is the number of discrete amplitude increments μ A 1 n n v = vi m p vi i = 0 A 1 ( ) ( ) ( ) w h ere m = vi p ( vi ) i = 0