Les structures de données utilisées en traitement d'images sont multiples. On fait bien sûr un usage courant de la plupart des structures de données informatiques classiques: matrices (ou tableaux), vecteurs, arbres, listes, piles, ... Certaines structures de données ont été adaptées et enrichies pour le traitement d'images. Il s'agit par exemple de la structure en arbre quaternaire, appelé quadtree. Comme l'illustre la figure 1.22, cette structure attribue une valeur unique à un ensemble de pixels de valeurs homogènes. En l'absence d'homogénéité, la zone est à nouveau divisée en quatre parties égales.
S'agissant des contours, on peut adopter une description au moyen d'un lacet. Le lacet est une succession de directions qui indiquent à chaque fois la position d'un point voisin jusqu'à revenir au point de départ. En anglais, on parle de chain code.
Il existe également des structures de données hiérarchiques ou multirésolution, appelées généralement pyramides. Ces structures sont utilisées lorsqu'on désire coder une image à plusieurs niveaux de résolution différents.
Travailler à plusieurs niveaux de résolution peut s'avérer intéressant. En fait, une image 4 fois plus petite que l'originale sera traitée plus rapidement. On peut alors obtenir très rapidement une idée du résultat sur base de ce traitement rapide sans qu'il ne soit nécessaire de traiter l'image originale. La figure 1.4 montre une même image produite à plusieurs niveaux de résolution différents, ramenés à une même taille pour l'affichage.
|
Il n'y a que lorsque les détails sont seulement présents dans l'image à plus haute résolution qu'une telle approche n'est d'aucune utilité.