Kalpana Kalpana (Editor)

Chain code

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

A chain code is a lossless compression algorithm for monochrome images. The basic principle of chain codes is to separately encode each connected component, or "blob", in the image.

Contents

For each such region, a point on the boundary is selected and its coordinates are transmitted. The encoder then moves along the boundary of the region and, at each step, transmits a symbol representing the direction of this movement.

This continues until the encoder returns to the starting position, at which point the blob has been completely described, and encoding continues with the next blob in the image.

This encoding method is particularly effective for images consisting of a reasonably small number of large connected components.

Variations

Some popular chain codes include the Freeman Chain Code of Eight Directions (FCCE), Vertex Chain Code (VCC), Three OrThogonal symbol chain code (3OT), Directional Freeman Chain Code of Eight Directions (DFCCE) and Unsigned Manhattan Chain Code (UMCC).

A related blob encoding method is crack code. Algorithms exist to convert between chain code, crack code, and run-length encoding.

In use

Recently, the combination of Move-to-front transform and adaptive Run-length encoding accomplished efficient compression of the popular chain codes.

References

Chain code Wikipedia