Shape App idea & 【shape descriptors】

Objects may be recognised from their outline. Shape is a very powerful feature:

  • Classification by shape;require definition of suitable shape features
  • Recognition of shape;
  • Detection of shape
  1. allows users to draw a “simple” shape (circle, triangle etc) on their phone
  2. then ask a server if the drawn shape matches one of the shapes in its database-a low number of shapes

Choose Contour features

Given a contour, detected in the image/drawn by user, calculate rotation-invariant moments. E.g., oldest & most well known one: Hu moments

some others: Eccentricity, area, convexity defects, FFT transform of the centroid distance function, etc.

Choose Classification Method

There’re many methods to choose from. SVM,  Decision Trees, Bayes Classifiers/Neural Networks (simpler classifiers), etc.

Prepare Training set of tagged contours

For the images in database which already know the type of shape, the id of the type should be included  in the feature vector. This will serve as the training set. supervised training.

Train the classifier

Once building training set, rain classifier.

Use classifier in the App

Every time to classify a new shape just get its feature vector and use it to query the classifier.

To recognize the shapes in the picture by template matching, firstly represent shape as follows:

Chain Codes

  • notation to record a list of boundary bounds along a contour:
  • Start location is given in absolute co-ordinates (x,y) and initial direction; Continuing location is given by the direction in which the contour is continued.

Fourier Descriptors

  • Basic idea: Lower frequency coefficients represent the essence of the curve, higher frequency coefficient represent noise and artefacts

Centroid Distance Function

  • Compute distance form centroid for every shape point,
  • Founction is then subject to Fourier tansform,
  • Requires star-convex shapes

Contour Curvature

  • Contour is normalised with contour length
  • Could apply to any closed curve

Area Function

  • Area in triangle between centroid and pairs of subsequent contour points
  • Star-convex figures only
  • similar to centroid distance, size matters

Shape Matrix (square/polar grid)

  • construct a region-of-interest, create corresponding matrix: each cell is an matrix entry, cells are 1 if in the shape; vice versa;
  • shapes of arbitrary topology
  • cell size represents accuracy of shape representation
  • matrix itself is not a feature
  • matrix can be normalised, location, orientation, size

Shape Context

  • local distribution of boundary points (each boundary point has its own local)
  • neighbourhood is gridded and histogram of boundary points is computed.
  • shape matching:
    • Similar shapes should have boundary points with similar local neighbourhood
    • Matching as a graph operation
      • For each point of one shape, the best-fitting point in the other shape is searched
      • Fitting quality depends on similarity between shape contexts
      • Non-fitting points can be accomodated by adding dummy points

Skeletons(shape representation)

  • Representation of a binary shape by the centres and sizes of maximal disks (the disk of maximal size touching but not exceeding the shape)
  • Have topological features(endpoints, intersections, branches) and geometrical features(location, diameters)
  • Computation of a skeleton: thinning by constrained morphological erosion.

Shock Graphs

  • Assign different categorical meaning to different aspects of skeleton
  • shape is evolved from different kinds of evolutions of a wave front from the skeleton (shocks of different order)
  • Combination of shocks is represented by graph
  • Matching between shapes by graph matching

Moments(shape descriptor)


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s




Just another site

Jing's Blog

Just another site

Start from here......







Just another site

Where On Earth Is Waldo?

A Project By Melanie Coles

the Serious Computer Vision Blog

A blog about computer vision and serious stuff

Cauthy's Blog

paper review...

Cornell Computer Vision Seminar Blog

Blog for CS 7670 - Special Topics in Computer Vision


Life through nerd-colored glasses

Luciana Haill

Brainwaves Augmenting Consciousness



Dr Paul Tennent

and the university of nottingham

turn off the lights, please

A bunch of random, thinned and stateless thoughts around the Web

%d bloggers like this: