quarta-feira, 16 de novembro de 2016

Técnicas de Compressão

Conceito

 A compressão de dados é o ato de reduzir o espaço ocupado por dados num determinado dispositivo. Essa operação é realizada através de diversos algoritmos de compressão, reduzindo a quantidade de bytes para representar um dado, sendo esse dado uma imagem, um texto, ou um arquivo (ficheiro) qualquer.

Comprimir dados destina-se também a retirar a redundância, baseando-se que muitos dados contêm informações redundantes que podem ou precisam ser eliminadas de alguma forma. Essa forma é através de uma regra, chamada de código ou protocolo, que, quando seguida, elimina os bits redundantes de informações, de modo a diminuir seu tamanho nos ficheiros. Por exemplo, a sequência "AAAAAA" que ocupa 6 bytes, poderia ser representada pela sequência "6A", que ocupa 2 bytes, economizando 67% de espaço.

Além da eliminação da redundância, os dados são comprimidos pelos mais diversos motivos. Entre os mais conhecidos estão economizar espaço em dispositivos de armazenamento, como discos rígidos, ou ganhar desempenho (diminuir tempo) em transmissões.


Embora possam parecer sinónimos, compressão e compactação de dados são processos distintos. A compressão reduz a quantidade de bits para representar algum dado, enquanto que a compactação tem a função de unir dados que não estejam unidos. Um exemplo clássico de compactação de dados é a desfragmentação de discos.

Tipos de compressão 




 Compressão com perdas:
  • Definido como operação que admite alguma perda de qualidade dos dados
  • A informação é comprimida por algum algoritmo e, ao descomprimir, a informação é diferente da original, mas suficientemente parecida para que seja útil
  • Exemplo típico: a maioria das imagens .jpg na internet em que se percebe uma diminuição da qualidade próximo às bordas ou trocas de cor na imagem
  •  Dependendo do algoritmo aplicado, essa compressão sofre de perda constante
  • Perdem-se dados sucessivamente, à medida em que se aplica o algoritmo várias vezes, ao comprimir e descomprimir. Isso resulta numa maior perda de dados do que a aplicação do algoritmo de uma só vez
  •  Existem dois esquemas básicos de compressão:
  • Métodos de Transformação
  • Métodos Preditivos


Em alguns sistemas, as duas técnicas são combinadas.

Compressão sem perdas:
  • Definido como uma operação sem perdas de nenhum dado
  • A informação é comprimida por algum algoritmo e, ao descomprimir, todas as informações são recuperadas
  • Exemplo típico: ficheiros bzip, gzip, .gz
  • Os mais conhecidos são o .zip ou .rar.
  • Ele é usado quando é importante que a informação original e a descompactada sejam idênticas
  • Ex.: executáveis e documentos texto

  • E com relação às imagens?
  • Alguns formatos usam apenas esse tipo. Ex. PNG e GIF*
  • Outros formatos usam ambos. Ex.: TIFF e MNG
  • Outros formatos usam algoritmos com perdas. Ex.: .bmp, .jpeg

Sem comentários:

Enviar um comentário