Edges, corners, colors, etc.


This web page demonstrates some simple image processing operations based on image gradients and colors.

The image gradient (at a particular point (x,y) in an image, along some direction (u,v)) is defined as the rate at which the image intensity changes as we move from (x,y) an infinitesimal distance in the direction (u,v).  The image gradient at (x,y) (without specifying a direction) is the vector (gx, gy) such that the gradient in the direction (u,v) is (gx*u+gy*v).  Here are some screenshots of an image gradient explorer to help provide some intuition about image gradients.

Using image gradients, we can build edge and corner detectors and use them to locate structures within images.  For example, here is a demonstration of how to find barcodes in an image.

Here is the image used in the examples.  It was taken with a Kodak DC4800 at minimum resolution (1080 by 720), with standard settings except for manual white balance (chosen so that white paper in full sunlight from the window looks white), and saved as a JPEG with the camera's standard options.

sample image

Here is the matlab source for the demonstrations, and some simple targets to print out and track.

This page is maintained by Geoff Gordon and was last modified on June 16, 2004.