Der Freeman-Code (auch Kettencode oder Chain-Code) ist die pixelweise Kodierung einer Kontur oder Linie durch die Angabe,

in welcher Richtung das nächste Pixel liegt. Er ist nach seinem Erfinder Herbert Freeman benannt. Für die Definition des Codes existieren unterschiedliche Varianten.

Von der aktuellen Position ausgehend Bearbeiten

Hierbei wird ausgehend von der aktuellen Position den Richtungen Ost, Nordost, Nord etc. ein Wert von 0 bis 7 zugeordnet:

 3  2  1 
4 * 0
5 6 7

Mit zentralem Pixel Bearbeiten

Das aktuelle Pixel wird auf 0 gesetzt, wobei dann die Richtungen durch die Zahlen 1 bis 8 durch folgende Matrix bestimmt sind:

 4  3  2 
5 0 1
6 7 8