Informações Úteis Sobre o Trabalho

 

  1. A função de Matlab dupleto = encontraCoinc(s,lwc)  ilustra uma estratégia possível  de  procura de coincidências entre a janela de codificação e a janela de procura, adequada ao algoritmo LZ77.
  2. Em Matlab, para ler e escrever ficheiros do tipo ASCII , podem usar as funções fopen, fread, fwrite, e fclose.

Ex: (leitura)

 fid = fopen('texto.txt','r');          % abre o ficheiro texto.txt para leitura

[s,n] = fread(fid,5000,'char');     % lê 5000 carácteres para o array s

Atenção que o matlab guarda os valores lidos em doubles (8 bytes). Se pretenderem outra  representação devem alterar a classe de s: por exemplo, s=char(s) atribui a s a classe de char.

fclose(fid);                % fecha o ficheiro

 

Ex: (escrita)

Seja  (o1,l1,c1) (o2,l2,c2),...,(on,ln,cn) um conjunto de n tripletos em que oi, li e ci, i=1,...,n ocupam a, b e c bits respectivamente. Uma forma de escrever  para ficheiro  ocupando o menor número de bits é a seguinte:

Admita-se que os tripletos estão guardados na  matriz tripletos de n linhas por três colunas.

fid = fopen('texto.lz77','w');          % abre o ficheiro texto.txt para escrita

fwrite(fid, tripletos(:,1) ,'ubita');    %  escreve a primeira coluna de tripletos com precisção de a bits

fwrite(fid, tripletos(:,1) ,'ubitb');    %  escreve a primeira coluna de tripletos com precisção de b bits

fwrite(fid, tripletos(:,1) ,'ubitc');    %  escreve a primeira coluna de tripletos com precisção de c bits

fclose(fid);                % fecha o ficheiro


 

  1. A função kmeans implementa algorimo de Llyod-Linde-Buzo-Gray.