Aller au contenu

Algorithme Adam7

Un article de Wikipédia, l'encyclopédie libre.
Une illustration de l'entrelacement Adam7 sur une image de 16×16

Adam7 est un algorithme d'entrelacement spécifié pour être utilisé par le format PNG.

Description

[modifier | modifier le code]

Une image, pour être entrelacée avec Adam7, est divisée en sept sous-images. Celles-ci dont définies en multipliant l'image complète par le motif 8×8 suivant :

1 6 4 6 2 6 4 6
7 7 7 7 7 7 7 7
5 6 5 6 5 6 5 6
7 7 7 7 7 7 7 7
3 6 4 6 3 6 4 6
7 7 7 7 7 7 7 7
5 6 5 6 5 6 5 6
7 7 7 7 7 7 7 7

Les sept sous-images sont ensuite stockées dans l'ordre dans le fichier.

À la passe n, 1/27 - n de l'image est affichée.

Comparaison

[modifier | modifier le code]

Cet entrelacement utilise sept passes et travaille en deux dimensions (horizontalement et verticalement), alors que le format GIF n'utilise que quatre passes et travaille sur une seule dimension (verticalement). Les images entrelacées avec PNG peuvent donc être perçues plus rapidement dans leur ensemble qu'avec GIF, en particulier si des algorithmes d'interpolation telles que l'interpolation bicubique sont utilisés pour combler les vides lors des premières passes[1].

Adam7 a été nommé d'après le prénom d'Adam M. Costello, qui avait suggéré le , sur la liste de diffusion de PNG[2], d'utiliser la méthode basée sur cinq passes qui avait déjà été proposée par Lee Daniel Crocker :

1 4 2 4
5 5 5 5
3 4 3 4
5 5 5 5

Sur les autres projets Wikimedia :

  1. (en) Stephan T. Lavavej, « Introduction to PNG », nuwen.net.
  2. (en) Adam M. Costello, « Re: CRC », png-list, 30 janvier 1995 : « By the way, what would folks think of a Lee-style 7-pass scheme? Just the same thing, but starting with a 1/64 image? That would make the initial large pixels 8x8. ».

Références

[modifier | modifier le code]