Compressão Huffman

4.712 visualizações

Publicada em

Semináriio de

Publicada em: Tecnologia
0 comentários
5 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
4.712
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
125
Comentários
0
Gostaram
5
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Compressão Huffman

  1. 1. Complexidade de AlgoritmosHuffman Denilson Grosa Fernando Kaway Helder Cesar 1 Complexidade de Algoritmos - Huffman
  2. 2. Algoritmo de Huffman? Compressão de dados; Técnicas estatísticas; Conceitos básicos de Estrutura de Dados: Lista com Prioridade; Árvore Binária. 2 Complexidade de Algoritmos - Huffman
  3. 3. Algoritmo de Huffman? Algumas aplicações: JPEG; MP3; Zip. Variações: Codificação n-ária de Huffman; Codificação Adaptativa de Huffman; 3 Complexidade de Algoritmos - Huffman
  4. 4. JPEG Compressão:Bloco Transformada Codificador Codificador Quantizador8x8px DCT R.L.E. Estatístico Tabela de Fator de Compressão Codificação Imagem Comprimida Tabela de Quantização 4 Complexidade de Algoritmos - Huffman
  5. 5. JPEGDescompressão: Imagem Comprimida Decodif. Decodif. Transformada Bloco Desquantizador Estatístico R.L.E. DCT Inversa 8x8px Tabela de Fator de Compressão Codificação Tabela de Quantização 5 Complexidade de Algoritmos - Huffman
  6. 6. Exemplo de Codificação Vamos codificar a mensagem: “CASA PAPEL HOTEL PASTEL” Tabela de frequências: Letra Frequencia C 1 A 4 S 2 P 3 E 3 L 3 H 1 O 1 T 2 Espaço 3 6 Complexidade de Algoritmos - Huffman
  7. 7. Exemplo de Codificação Texto original: “CASA_PAPEL_HOTEL_PASTEL” Texto codificado: “000000010010000110010011000100110100010110010110 01111000010001011001001100010010100001000101” Letra Código C 0000 A 0001 23*4 = 92bits S 0010 P 0011 E 0100 L 0101 H 0110 O 0111 T 1000 Espaço 1001 7 Complexidade de Algoritmos - Huffman
  8. 8. Exemplo de Codificação Lista com prioridade: C A S P E L H O T Esp 1 4 2 3 3 3 1 1 2 3 Maior prioridade. Lista com prioridade ordenada: C H O S T P E L Esp A 1 1 1 2 2 3 3 3 3 4 8 Complexidade de Algoritmos - Huffman
  9. 9. Exemplo de Codificação Construção da árvore: C H O S T P E L Esp A 1 1 1 2 2 3 3 3 3 4 C+H O S T P E L Esp A 2 1 2 2 3 3 3 3 4 C H 9 Complexidade de Algoritmos - Huffman
  10. 10. Exemplo de Codificação O S T C+H P E L Esp A 1 2 2 2 3 3 3 3 4 C H T C+H P E L Esp O+S A 2 2 3 3 3 3 3 4 C H O S 10 Complexidade de Algoritmos - Huffman
  11. 11. Exemplo de Codificação P E L Esp O+S A T+C+H 3 3 3 3 3 4 4 O S T 2 C H P+E L+Esp O+S A T+C+H 6 6 3 4 4 P E L O S T 2 C H 11 Complexidade de Algoritmos - Huffman
  12. 12. Exemplo de Codificação O+S A T+C+H P+E L+ 3 4 4 6 6 O S T 2 P E L C H T+C+H P+E L+ O+S+A 4 6 6 7 T 2 P E L 3 A C H O S 12 Complexidade de Algoritmos - Huffman
  13. 13. Exemplo de Codificação L+ O+S+A T+C+H+P+E 6 7 10 L 3 A 4 6 O S T 2 P E C H 13 Complexidade de Algoritmos - Huffman
  14. 14. Exemplo de Codificação T+C+H+P+E L+ +A+O+S 10 13 4 6 6 7 T 2 P E L 3 A C H O S 14 Complexidade de Algoritmos - Huffman
  15. 15. Exemplo de Codificação T+C+H+P+E+L+ +A+O+S 23 10 13 4 6 6 7 T 2 P E L 3 A C H O S 15 Complexidade de Algoritmos - Huffman
  16. 16. Exemplo de Codificação Atribuição de código: 23 0 1 Letra Código 10 13 C 0010 0 1 0 1 A 111 S 1101 4 6 6 7 P 010 0 1 0 1 0 1 0 1 E 011 L 100 T 2 P E L 3 A H 0011 0 1 0 1 O 1100 T 000 C H O S Esp. 101 16 Complexidade de Algoritmos - Huffman
  17. 17. Exemplo de Codificação Comparando o “antes” e o “depois”: Texto original: “CASA_PAPEL_HOTEL_PASTEL” Texto codificado (antes): Texto codificado (depois):“00000001001000011001001 “001011111011111010101110100010011010001011001011 100111001010011110000001001111000010001011001001 110010101011111010000111100010010100001000101” 00” Tam. Total: 92bits Tam. Total: 74bits!!!! Taxa de Compressão ~ 20% 17 Complexidade de Algoritmos - Huffman
  18. 18. Decodificação Letra CódigoTexto codificado: C 0010 A 111“001011111011111010101110100111 S 1101 Texto decodificado:001010011110000001110010101011 + P E L 010 011 100 = “CASA_PAPEL_H OTEL_PASTEL” H 001111101000011100” O 1100 T 000 Esp. 101 18 Complexidade de Algoritmos - Huffman
  19. 19. Fontes Consultadas Goodrich, M. T.; Tamassia, R.; Projeto de Algoritmos, Bookman, 2002; Huffman, D. A.; Method for the Construction of Minimum- Redundancy Codes, In: Proceedings of the Institute of Radio Engineers, Vol. 40, Nr. 9 (September 1952) , p. 1098-1101. http://www.cprogramming.com/tutorial/computersciencetheory/huffman.html http://algs4.cs.princeton.edu/55compression/Huffman.java.html http://www.ics.uci.edu/~dan/pubs/DC-Sec3.html http://en.wikipedia.org/wiki/Huffman_coding 19 Complexidade de Algoritmos - Huffman

×