Geometric Description

Slides:



Advertisements
Similar presentations
8.1 Prisms, Area and Volume Prism – 2 congruent polygons lie in parallel planes corresponding sides are parallel. corresponding vertices are connected.
Advertisements

QR Code Recognition Based On Image Processing
電腦視覺 Computer and Robot Vision I
Advanced Topics in Algorithms and Data Structures Lecture 7.2, page 1 Merging two upper hulls Suppose, UH ( S 2 ) has s points given in an array according.
Definitions A circle is the set of all points in a plane that are equidistant from a given point called the center of the circle. Radius – the distance.
Definitions A circle is the set of all points in a plane that are equidistant from a given point called the center of the circle. Radius – the distance.
Surface normals and principal component analysis (PCA)
ENS 207 engineering graphics
Discrete Differential Geometry Planar Curves 2D/3D Shape Manipulation, 3D Printing March 13, 2013 Slides from Olga Sorkine, Eitan Grinspun.
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
1/13/15CMPS 3130/6130: Computational Geometry1 CMPS 3130/6130: Computational Geometry Spring 2015 Convex Hulls Carola Wenk.
Extended Gaussian Images
Circles Chapter 10.
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Circles.
8/29/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Spring 2006 Convex Hulls Carola Wenk.
What does that mean? To get the taste we will just look only at some sample problems... [Adapted from S.Suri]
Basic geostatistics Austin Troy.
Sasha Vasserman.  Two triangles are similar if two pairs of corresponding angles are congruent.
Each pixel is 0 or 1, background or foreground Image processing to
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
University of Wisconsin-Milwaukee Geographic Information Science Geography 625 Intermediate Geographic Information Science Instructor: Changshan Wu Department.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
Computational Geometry and Spatial Data Mining
TERMS, CONCEPTS and DATA TYPES IN GIS Orhan Gündüz.
More Raster and Surface Analysis in Spatial Analyst
ISE 261 PROBABILISTIC SYSTEMS. Chapter One Descriptive Statistics.
Regionalized Variables take on values according to spatial location. Given: Where: A “structural” coarse scale forcing or trend A random” Local spatial.
Information that lets you recognise a region.
Area, buffer, description Area of a polygon, center of mass, buffer of a polygon / polygonal line, and descriptive statistics.
Geographical analysis
Tangents to Circles (with Circle Review)
Slope and Aspect Calculated from a grid of elevations (a digital elevation model) Slope and aspect are calculated at each point in the grid, by comparing.
Introduction --Classification Shape ContourRegion Structural Syntactic Graph Tree Model-driven Data-driven Perimeter Compactness Eccentricity.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
TMAT 103 Chapter 2 Review of Geometry. TMAT 103 §2.1 Angles and Lines.
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
CS 450: Computer Graphics REVIEW: OVERVIEW OF POLYGONS
Digital Image Processing
Presentation On Shapes Basic Summary: On Shapes By Priyank Shah.
Spatial Statistics Applied to point data.
Using ESRI ArcGIS 9.3 Spatial Analyst
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
Unit 5 Vocab By: Mika Hamady. Acute Angle Definition: An acute angle is an angle that is less then 90 degrees. Examples: 1.A 43 degree angle is acute.
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods Chapter 11 Representation & Description Chapter 11 Representation.
Digital Image Processing Lecture 20: Representation & Description
Digital Image Processing CSC331
Data Types Entities and fields can be transformed to the other type Vectors compared to rasters.
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods Representation & Description.
Introduction --Classification Shape ContourRegion Structural Syntactic Graph Tree Model-driven Data-driven Perimeter Compactness Eccentricity.
Perimeter, Circumference, and Area 1.7 Ms. Verdino.
Voronoi Diagram (Supplemental)
L15 – Spatial Interpolation – Part 1 Chapter 12. INTERPOLATION Procedure to predict values of attributes at unsampled points Why? Can’t measure all locations:
1 11. Polygons Polygons 2D polygons ( 다각형 ) –Polygon sides are all straight lines lying in the same plane 3D polyhedra ( 다면체 )  chap. 12 –Polyhedra.
INTERPOLATION Procedure to predict values of attributes at unsampled points within the region sampled Why?Examples: -Can not measure all locations: - temperature.
Image Representation and Description – Representation Schemes
Introduction to Spatial Computing CSE 555
Spatial analysis Measurements - Points: centroid, clustering, density
Digital Image Processing Lecture 20: Representation & Description
Mean Shift Segmentation
Geometry Final Vocabulary
Geometry Final Vocabulary
Fitting Curve Models to Edges
Craig Schroeder October 26, 2004
Y. Davis Geometry Notes Chapter 10.
Knowledge Organiser: Year 7 Spring 1
Geometry Final Vocabulary
Presentation transcript:

Geometric Description Pattern Recognition 2015/2016 Marc van Kreveld

Topics this lecture Why geometric description for geometric pattern recognition? Description of size (area, perimeter, diameter, width) Description of orientation Description of position Description of elongation Description of density (scale-dependent) Description of clusteredness Description of auto-correlation (scalar field)

How description can help with pattern recognition Put the useful description things in a vector and use some vector distance, like length of the difference vector  a feature vector of geometric attributes, so we can apply statistical pattern recognition area: 12 m2 diameter: 5.8 m width: 1.6 m orientation: 40o

Description: measures Mathematical description or summarizing of data  statistics Data are often sets of numbers Describe with: average range [min,max] variance, standard deviation skewness, kurtosis histogram (using fixed-interval classification)

Geometric description Description of a point, polyline, polygon - location - size - orientation - shape Description of a point set - clustering - density

Description of size For point: not applicable For polyline: length or diameter or width For polygon: area or diameter or width Diameter: largest distance between two points in the object Width: smallest distance between two parallel lines that contain the object

Area of a polygon Polygon without holes Polygon with holes (6,8) (12,7) (8,6) (3,5) (14,6) (7,4) (11,3) Given: cyclic list of points with their coordinates (5,1)

Idea: area under edge (6,8) (6,8) (12,7) (12,7) Area = width times average height = (12 - 6) * (8 + 7)/2 = 45

Area, continued Edges at “upper side” give positive contribution Edges at “lower side” give negative contribution

Area formula Area(P) = (X1 - Xn)(Y1 + Yn)/2 +  (Xi+1 - Xi)(Yi + Yi+1)/2 n-1 i=1 Assume points given clockwise Implemented easily with a single for-loop; linear-time computation

Diameter and width For a polygon or polygonal line, the same as the diameter and width of its convex hull Suppose the vertices of a polygon are given clockwise For any three consecutive vertices, remove the middle one if it is a left turn When the convex hull is obtained, scan opposite sides in rotation and determine the width or diameter This is a linear-time computation; both steps are linear-time

Description of location Description of location for an object as two (or three) coordinates (point) For a point: trivial Center of mass: for polyline or polygon; can lie outside polygon Center of largest inscribed circle: for polygon

Center of mass of a polygon Take arbitrary point p Make triangles: each side of the polygon and point p Determine weight (area) and center of mass per triangle Compute weighted average of the centers of mass p Counterclockwise triangles: positive weight; clockwise triangles: negative weight

Center of mass of a polygon Center of mass of weighted points: weighted average of the x-coordinates and of the y-coordinates 5 -12 -8 21 11 20

Description of orientation For polyline: direction of vector between endpoints For polygon or polyline: direction between points realizing the diameter direction of parallel lines that define width direction of line that minimizes the average distance of all points in polygon to that line

Description of shape by a number Elongatedness: 4/ x area / diameter2 Compactness: 1/ x area / (radius smallest enclosing circle)2 Circularity: 4 x area / perimeter2 All between 0 and 1 Based on the isoperimetric inequality: 4A ≤ L2 For any closed curve, 4 times the area A inside is never more than the curve length L (perimeter) squared

Description of shape by skeleton Internal skeleton, also: medial axis, or centerline Voronoi diagram of the edges of the polygon

Computation skeleton Voronoi diagram of line segments; adaptation of sweep-line algorithm for Voronoi diagram of points Voronoi edges and vertices outside polygon can be removed later O(n log n) time for polygon with n vertices Note: the largest enclosed circle of the polygon has its center on a Voronoi vertex Also note: this is hardly a short or summarizing description

Description of shape of a polyline or boundary of a polygon Sinuosity: total angular change Curviness: average change of angle (per unit of length) Number of inflection points: Smooth curve: second derivative is zero Polygonal curve: a turn left (right) followed by a turn right (left)

Description of shape of a polyline or boundary of a polygon at a point Tangent line direction Curvature Smooth curve: second derivative Polygonal curve: discrete curvature via the osculating circle discrete curvature here

Description of shape of a polyline or boundary of a polygon at a point Tangent line direction Curvature Smooth curve: second derivative Polygonal curve: discrete curvature via the osculating circle choose points a given distance forward and backward along the curve

Description of shape of a polyline or boundary of a polygon at a point Tangent line direction Curvature Smooth curve: second derivative Polygonal curve: discrete curvature via the osculating circle make the circle through these three points and take the curvature of that circle tangent circle: the unique circle whose position, tangent and curvature corresponds to the curve

Description of point sets Clustering Density Examples of point sets to be analyzed epicenters of earthquakes occurrences of road accidents in a city burglary locations proportional symbol map

Description of point sets Clustering: even, random, clustered distribution E.g., compare actual nearest neighbor distance with nearest neighbor distance of random set

Description of point sets Density: scale-dependent, locally defined point count inside a square or circle; size determines the scale of interest

Example of density Population density

Description of point sets Common simple approach: fixed grid count (essentially, a 2D version of a histogram)

Description of valued point set Scalar field data, known from point measurements Spatial autocorrelation: degree in which closer measurements are more alike in value than any two measurements 11 10 12 12 13 19 21 14 20 16 22 17 18 16 21 15

Description of valued point set Temperature at location x and 5 km away from x is expected to be nearly the same Elevation (in Switzerland) at location x and 5 km away from x is not expected to be related (even over 1 km), but it is expected to be nearly the same 100 meters away Other examples: depth to groundwater soil humidity nitrate concentration in the soil

Description of valued point set auto-correlation (~ up to what distance are measured values “similar”, or correlated) 11 10 12 12 n points  (n choose 2) pairs; each pair has a distance and a difference in value 13 19 21 14 20 16 22 17 18 16 21 15

Classify distances and determine average per class difference 2 Average difference  observed expected difference 2 2 distance distance Classify distances and determine average per class

Model variogram (linear) Observed variogram Model variogram (linear) Average difference  observed expected difference 2 sill 2 nugget distance distance range Smaller distances  more correlation, smaller variance

Importance auto-correlation Descriptive statistic of a data set: describes the distance-dependency of auto-correlation Interpolation based on data further away than the range is nonsense 11 10 12 16 13 20 21 ?? 14 16 22 17 19 18 12 21 15 range

Importance auto-correlation If the range of a geographic variable is small, more sample point measurements are needed to obtain a good representation of the geographic variable through spatial interpolation  influences cost of an analysis or decision procedure, and quality of the outcome of the analysis

Capturing neighborhood of a polygon or polygonal line Simplest formalization of neighborhood: everything within a given distance Also called buffer region Computed by taking the Minkowski sum with a disk Comparable to the dilation operator in raster graphics

Buffer of a polyline Buffer = Minkowski sum with a disk A polyline gives a polygon with holes

Buffer computation: divide & conquer Split polyline in two Compute the buffer of the halves recursively Merge the buffers to one buffer

Buffer complexity Two non-intersecting line segments S1 and S2 Consider the buffers of S1 and S2 They intersect at most twice So a set of buffers of non-intersecting line segments is a set of pseudo-discs

Buffer complexity Theorem (13.9 of computational geometry book): Let S be a collection of [polygonal] pseudodiscs with n edges in total. Then the complexity of their union is O(n) Corollary: The buffer of a polygonal line consisting of n edges (or n+1 points) has complexity O(n)

Merge buffers to one Assume we merge the buffers of polylines having m1 and m2 edges Do an “ordinary” line sweep over the O(m1) + O(m2) segments and circular arcs of the buffers Cost: O((m1+m2+k) log (m1+m2+k)) time for the merge

How many intersection points? In general: m1 and m2 line segments can intersect m1m2 times, so k  m1m2 Here: Every intersection point is a vertex of the buffer after the merge, so of a polyline with m1+m2 edges This new buffer has complexity O(m1+m2) according to the corollary, so k = O(m1+m2) Hence, the merge takes O((m1+m2) log (m1+m2)) time

The algorithm If n >1, split polyline with n edges into two parts with n/2 edges each Compute the buffer of each part recursively Merge the buffers of the parts into one using plane sweep, in O(n log n) time Recurrence: T(n) = 2 T(n/2) + O(n log n) Gives T(n) = O(n log2 n) time (e.g. by induction)

Summary There are many possible spatial descriptors (measures) for geometric objects Different descriptors have different applications Computation of some measures/descriptors requires advanced geometric algorithms