Chain code es un algoritmo de compresión sin pérdida para imágenes monocromáticas. El principio básico de chain code es codificar por separado cada componente conectado, o "blot", en la imagen. Para cada región, se selecciona un punto de su límite y se transmiten sus coordenadas. El codificador se mueve a lo largo del límite de la imagen y, en cada paso, transmite un símbolo representando la dirección de su movimiento. Esto continua hasta que el codificador retorna a la posición inicial, punto en el que el blot ha sido descrito completamente, y la codificación continua con el siguiente blot de la imagen.
Este método de codificación es particularmente efectivo para imágenes consistentes en un número razonablemente alto de componentes conectados.
Ejemplos de chain codes populares son: Freeman Chain Code of Eight Directions[1] (FCCE), Vertex Chain Code[2] (VCC), Three OrThogonal symbol chain code[3] (3OT) and Directional Freeman Chain Code of Eight Directions[4] (DFCCE).
Un método de codificación blot relacionado es crack code.[5] El algoritmo permite convertir entre chain code, crack code, y run-length encoding.