partie 2 :DeCompression :

 

Décodage RLE pour une image en grayscale

function G=decodrle_gris(coderle)

%Effectuer le décodage RLE pour le mode nuances de gris

%Récupérer la qualité

load fichiers_mat/coderle;

qualite=coderle(end);

qualite=cell2mat(qualite);

if ischar(qualite)==1

qualite=str2num(qualite);

end % end if

G=coderle(1:end-1);

% Récupérer les codes de chaque bloc

x=1;t=1;

for i=1:length(G)

    if strcmp(G{i},'e')==1

    eval([ 'g' num2str(x)  '=G(t:i);']);

    t=i+1; x=x+1;

    end % end if

end % end for

save fichiers_mat/vect;

%Décoder chaque code

x=x-1; load fichiers_mat/vect; i=1;

while i<x

    codeG=eval([ 'g' num2str(i)]);

    [A]=traitement_rle_gris_inverse (codeG,qualite);

    eval([ 'z' num2str(i) '=A;']);

    i=i+1;

end %end while 

%Restituer l'image

load fichiers_mat/dim;

u=xx;P=nn/8;

GG=ret_bloc ('z',u,P);

G=eval(['[' GG ']']);

load fichiers_mat/indices

%Redimensionner l'image

G=decomp_block (G,indL,indC);