Pular para o conteúdo

Algoritmos de compressão

Este artigo faz uma apresentação dos algoritmos de compressão e qual a lógica de funcionamento dos mesmos. É o primeiro de uma série de três artigos que pretendo escrever falando sobre isso, que serão divididos em como começou, o que usamos hoje em dia, e por último a prática com implementação dos mais usados.
Pablo Margreff pmargreff
Hits: 13.702 Categoria: Linux Subcategoria: Kernel
  • Indicar
  • Impressora
  • Denunciar

Introdução

Você já pensou na quantidade de dado que é gerada todos os dias? Se já faz essa reflexão, pensou onde e como ficam armazenados estes dados? Você já deve ter visto em algum lugar analises sobre quantos dados são/foram gerados em um determinado tempo. Mas quem liga se a nuvem tem espaço ilimitado, certo? ERROU, claro que na teoria temos armazenamento ilimitado, mas na prática isso é impossível. Porém o armazenamento não é o único ponto crucial para a necessidade de compressão de arquivos, mas também o transporte de todos estes dados, e essas necessidades fez a área se expandir.

A ideia de escrever sobre isso veio em perceber a presença e importância da área junto com a pouca visibilidade recebida pelo tópico (mentira, veio após terminar a primeira temporada de Sillicon Valey, mas admitir isso iria soar meio infantil).

A compressão de dados pode ser feita de duas maneiras, direcionada ou bruta. Exemplos de compressão otimizadas são: arquivos de áudio onde são cortados sons que não diferenciamos, nas imagens, "arredondando" o que não enxergamos e em vídeos mantendo partes de frames que não se alteram. Claro que cada área tem sua compressão específica onde há todo uma demanda de estudo, e por isso não será o foco deste primeiro artigo. O ponto chave aqui será a codificação dos dados de forma bruta.

Boa parte do conteúdo esta [link 1]nesta série[/link 1] de vídeos de autoria da Google. Portanto a maior parte das coisas será uma aprofundamento do que se vê nos vídeos da série (que por sinal são muito recomendados).

O artigo será comprido então para fazer máximo proveito recomendo que tire X minutos para conseguir ler, consultar fontes e fazer um bom aproveitamento.
   1. Introdução
   2. Códigos de comprimento variável
   3. Árvores de Huffmann
   4. Classe Lempel-Ziv-Welch
   5. Conclusões

Aumentando sua produtividade com o teclado padrão Dvorak

Manipulação de imagens no formato PPM

Gerando Números Aleatórios

Como explicar o que é kernel para um leigo

Compilação comentada do kernel

Compilando o kernel no Slackware com pacotes pré-compilados

Atualizando o kernel no Slackware

O kernel Linux está inchado... Mas, calma, não é bem assim!

#1 Comentário enviado por ivo_cruz em 29/03/2016 - 08:30h
A saída do Q é 0100

Contribuir com comentário

Entre na sua conta para comentar.