1 / 45

Universidade Federal do Pará Centro de Ciência Exatas e Naturais Departamento de Informática

Universidade Federal do Pará Centro de Ciência Exatas e Naturais Departamento de Informática Disciplina: Estrutura de Dados II Professor: Antonio Coimbra Sampaio Compressão e Compactação de Dados Alunos: Abnatal Junior 9908800201 Frederico Reis 9908802001. Por que comprimir ?.

radwan
Download Presentation

Universidade Federal do Pará Centro de Ciência Exatas e Naturais Departamento de Informática

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Universidade Federal do Pará Centro de Ciência Exatas e Naturais Departamento de Informática Disciplina: Estrutura de Dados II Professor: Antonio Coimbra Sampaio Compressão e Compactação de Dados Alunos: Abnatal Junior 9908800201 Frederico Reis 9908802001

  2. Por que comprimir ? • Redução do espaço físico utilizado • Agilização da transmissão de dados

  3. Redução do espaço físico utilizado: Mais comumente utilizada em bancos de dados, que incorporando a compressão no projeto de seus registros permite um significativo ganho em termos de ocupação em discos e velocidade de acesso.

  4. Agilizar a transmissão de dados: • Alterando a taxa de transferência • Permitindo o aumento do número de terminais em uma rede

  5. Tiposde compressão • Compressão lógica • Compressão física

  6. Compressão lógica Refere-se ao projeto de representação otimizada de dados. Ex: Projeto de um banco de dados utilizando sequências de bits para representação de campos de dados.

  7. Compressão física Realizada sobre dados existentes, a partir dos quais é verificada a repetição de caracteres para efetivar a redução do número de elementos de dados.

  8. Tipos de compressão física • Orientada a caracter- indica o caracter (ou conjunto de caracteres) repetido através da substituição por um caracter especial; • Estatística- indica a frequência de repetição de caracteres e representa isso através de sequências de bits

  9. Compressão orientada a caracter • Run-length • Run-length estendido • Inserção e deleção Seleção de caracteres indicadores:

  10. Codificação run-length Exemplo: AAAAAAA Codificador AAAAAAA run-length Ce7A

  11. Codificaçãorun-length estendido Utilizado para número de repetições maior que 256 e há caracteres delimitadores no início e no fim da sequência de codificação.

  12. Exemplo: SO R A 980 SI • SO- Shift Out • R- Run length • A- Caracter repetido • 980-Nº de repetições do caracter • SI- Shift In

  13. Codificação por inserção e deleção Utilização de um caracter convencional quando não for possível a colocação de caracteres especiais. Exemplo: K6A

  14. Técnicas de compressão orientada a caracter: • Supressão de caracteres nulos • Mapeamento de bit • Comprimento de fileira • Compactação de meio byte • Codificação diatômica • Substituição de padrões • Codificação relativa

  15. Comprimento de fileira Notação: CeCN • Ce-caracter especial • C- caracter repetido • N-nº de repetições

  16. Fluxograma para o comprimento de fileira

  17. Supressão de caracteres nulos Notação: CeN Ce-caracter especial N-Nº de repetições Exemplo: ...vazio. Exatamente Após codificação: ...vazio.Ce9Exatamente

  18. Fluxograma para o algoritmo apresentado:

  19. Mapeamento de bit Exemplo: ...abacate... codificador ...abacate... ...Mbbcte...

  20. Mbbcte Mb-Mapa de bits Mapa de bits: 0 1 0 1 0 1 1 1 a b a c a t e

  21. Fluxograma para o mapa de bits

  22. Compactação de meio byte 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0 1 2 3 4 5 6 7 8 9 0011 0011 0011 0011 0011 0011 0011 0011 0011 0011

  23. Ce N C1 C2 C3 C4 C5 ... 1byte 1byte 1byte 1byte Ce-caracter especial N-nº(binário) de caracteres comprimidos C1-Metade do caracter comprimido C2 a C5-Metade não comprimivel

  24. Fluxograma para a compactação de meio byte

  25. Técnica dos sete bits Aplica-se somente a arquivos texto. Baseia-se no fato que nenhum caracter de texto utiliza o oitavo bit.

  26. Exemplo: Compactar ‘ABCD’ A 0 1000001 B 0 1000010 C 0 1000011 D 0 1000100 Após compactação: 1000001.1000010.1000011.1000100

  27. Representação não ASCII Consiste em adotar uma nova representação binária para os caracteres. Só faz sentido se o número de caracteres distintos for menor que 128.

  28. Exemplo: Compactar ‘ABCD’

  29. Antes da compactação: 01000001010000100100001101000100 Após compactação: 00011011

  30. Codificação diatômica Permite a representação de um par de caracteres em apenas um caracter especial. codificador Exemplo: avião aviCe

  31. Exemplo:

  32. Fluxograma para codificação diatômica

  33. Substituição de padrões São estabelecidas tabelas de palavras de maior freqüência de ocorrência para substituição com o caracter especial Palavra =>Ce

  34. Codificação relativa • Valores intervalares • Valores binários

  35. Valores intervalares Val Var1 Var2... • Val-Primeiro valor da sequência • VarN-Variação do valor anterior para o atual Exemplo: 10.3 10.1 10.8 10.4 10.4 10.9 10.2

  36. Exemplo: 10.3 10.1 10.8 10.4 10.4 10.9 10.2 Codificador 10.3 -.2 .7 -.4 0 .5 -.7

  37. Valoresbinários Comparação feita entre uma linha e outra Exemplo: ...01001011100010101... ...01001011111100001... A diferença seria em 5 bits: ...______MMMM_M_...

  38. Compressão Estatística • Realiza uma representação otimizada de caracteres ou grupo de caracteres • Codificação de Huffman • Codificação de Shanno-Fano

  39. Codificação de Huffman Obtém uma nova representação para cada caracter considerando sua probabilidade de ocorrência. O processo de obtenção baseia-se na montagem de uma árvore binária.

  40. Exemplo Considerando o conjunto de 8 caracteres definido abaixo

  41. Aplicando a codificação de Huffman, obtemos uma nova tabela de códigos

  42. 1 0 1 0 1 0 1 0 1 0 0 1 1 0 Obtenção do código de Huffman H G F E D C B A

  43. Codificação de Shannon-Fano Assim como o código de Huffman, este método também obtém uma nova representação para cada caracter de acordo com sua probabilidade de ocorrência. O processo de obtenção baseia-se na divisão de conjuntos de probabilidades.

  44. Processo de Codificação Considerando o conjunto dos caracteres a codificar definido abaixo

  45. Obtenção do código de Shannon-Fano A 0.3 0 0 B 0.3 0 1 1 0 C0.3 1 1 D 0.1

More Related