23.01.2014 Views

ALGORITHMES DE COMPRESSION D'IMAGES ET CODES DE ...

ALGORITHMES DE COMPRESSION D'IMAGES ET CODES DE ...

ALGORITHMES DE COMPRESSION D'IMAGES ET CODES DE ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

48<br />

Justification de l'algorithme.<br />

Cet algorithme utilise quatre procédures de base:<br />

ACTIVER_CCX<br />

ACTIVER_CONTOUR<br />

ACTIVER_COUPLE<br />

ABSORBER_LIEN<br />

L'activation d'une ccx entraine l'activation de son<br />

contour extérieur. L'activation d'un contour entraine<br />

l'activation du couple correspondant au dernier point de<br />

mort du contour. L'activa ti on d'un couple entraine 1 ·absorption<br />

de deux liens: un lien 1 sur la paroi droite et<br />

un lien 0 sur la paroi gauche. L'absorption d'un lien vertical<br />

provoque un changement de la couleur d'affichage.<br />

5.2.3. Procédures d'activation.<br />

tel-00839591, version 1 - 28 Jun 2013<br />

A chaque activation d ·une composante connexe les contours<br />

qui la composent forment une sous-liste de contours<br />

inactifs qui est fusionnée avec la liste globale des contours<br />

inactifs. La composante connexe perd alors toute<br />

consistance au profit d'un ensemble de contours dont on<br />

ignore l'origine.<br />

De même, l'activation d'un contour entraine une décomposition<br />

de ce contour en sous-listes de couples de<br />

parois, chaque couple étant composé d'une paroi droite et<br />

une gauche. La sous-liste est fusionnée avec la liste globale<br />

des parois inactives et le contour générateur est<br />

éliminé.<br />

Algorithmes correspondants:<br />

ACTIVER_CCX<br />

lire ccx; (* on lit tous les codes des contours *)<br />

ACTIVER_CONTOUR; (* contour extérieur *)<br />

construire une sous-liste ordonnée des contours intérieurs;<br />

(* ordre l,c inverse *)<br />

fusionner la sous-liste avec la liste globale<br />

des contours inactifs;<br />

lcont:=pcont->1;<br />

ccont:=pcont->c;<br />

lire lccx,cccx;<br />

(* mise à jour du prochain contour*)<br />

(* intérieur à activer*)<br />

(* pcont: pointeur sur contours *)<br />

(* de la ccx suivante *)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!