http://compactacaofacil.150m.com/compactacao.html
O que é Lempel-Ziv?
É um algoritmo de Compactação (compressão de dados sem perda de
informação) idealizado por Abraham Lempel eJacob Ziv.
Também chamado de algoritmo LZ.
O código LZ é o mais usado.
OBS: algoritmo LZ77(desenvolvido em 1977) não estava coberto de
patentes daí muitos formatos originaram-se dele e hoje sãoversões
aperfeiçoadas(ex: zip), ao contrário do LZ78 e do LZW.
Qual a idéia do Algoritmo?
Procurar pela ocorrência de conjuntos de caracteres repetidos em
um arquivo e os substituir por um códigoque usa menos bits para
representar aquele conjunto de caracteres.
O LZ funciona construindo um dicionário de blocos
(grupos de um ou mais caracteres) do fluxo de entrada.
Quando é encontrado umnovo bloco, o mecanismo de compressão
verifica se o mesmo já está gravado no dicionário.
Se não estiver, ele é acrescentado e é produzido um símbolo que
identifica a sua posição no dicionário. Se obloco já estiver
gravado, o programa simplesmente mostra o símbolo do bloco
existente.
Em 1977, Abraham Lempel e Jakob Ziv publicaram um artigo com um
algoritmo universal para compressão dedados. O Algoritmo foi
chamado inicialmente de LZ77.
Em 1978, Lempel e Ziv introduziram um melhoramento, um esquema
de compressão baseado em dicionário, chamado de LZ78.
Em 1984, enquantotrabalhava para a Sperry Corporation,
Terry Welch modificou o algoritmo LZ78 aumentando a eficiência
para implementação em alta performance.
O resultado foi o algoritmo LZW, que ele descreveu em um artigodo jornal IEEE Computer, depois ele deixou o emprego na Sperry
Corporation.
Em 1987, A empresa CompuServe criou o formato GIF file.
A especificação GIF requeria o uso do algoritmo LZW paracomprimir os dados guardados em cada GIF file.
Em 1988, A Aldus Corporation adicionou novas características ao
formato TIFF,a habilidade de se guardar dados RGB bitmapped
usando o algoritmo LZW....