Robotics, Vision and Control

Fundamental algorithms in MATLAB: Second Edition


13: Feature Extraction

The image processing operations from the last chapter operated on one or more input images and returned another image. By contrast eature extraction operates on an image and returns one or more image features. Features are typically scalars (for example area or aspect ratio) or short vectors (for example the coordinate of an object or the parameters of a line). Image feature extraction is a necessary first step in using image data to control a robot. It is an information concentration step that reduces the data rate from 106–108 bytes/s at the output of a camera to something of the order of tens of features per frame that can be used as input to a robot’s control system.

Drawing on image processing techniques from the last chapter this chapter discusses features and how to extract them from images: thiswe will discuss several classes of feature:

  • region features are contiguous groups of pixels that are homogeneous with respect to some pixel property. For example the set of pixels that represent a red object against a non-red background.
  • line features describe straight lines in the world. Straight lines are distinct and very common in man-made environments — for example the edges of doorway, buildings or roads.
  • interest points are particularly distinctive points in a scene which can be reliably detected in different views of the same scene.


Data sets

Region features

Line features

Scale space

Point features