Um algoritmo ajudou o Dropbox a economizar vários petabytes de espaço

Lepton reduz o tamanho de imagens JPEG em 22%, sem perder nenhuma qualidade

Paulo Higa
Por
• Atualizado há 1 semana
dropbox

O Dropbox armazena mais de 500 petabytes de dados em seus servidores, então qualquer algoritmo eficiente de compressão pode ajudar a economizar muito dinheiro. Esse é o caso do Lepton, tecnologia que permite reduzir o tamanho de imagens JPEG em 22%, de maneira rápida e sem gastar muitos recursos de hardware. O melhor: não há perda nenhuma de qualidade.

O Lepton foi desenvolvido pelo próprio Dropbox e aplicado em 16 bilhões de imagens até o momento, o que ajudou o serviço de nuvem a economizar “múltiplos petabytes de espaço”. As fotos mais antigas também estão sendo comprimidas com o novo algoritmo a uma velocidade considerável: num Intel Xeon E5–2650v2, é possível chegar a 5 MB/s em compressão e 15 MB/s em descompressão.

E como funciona? As coisas são obviamente complexas, mas vamos tentar entender. Imagine que você tem uma foto JPEG. O algoritmo divide a imagem em vários blocos de 8×8 pixels (ou seja, são 64 pixels por bloco). Cada bloco é codificado com transformadas discretas de cosseno, muito utilizadas em algoritmos de compressão. Um dos 64 coeficientes (DC) representa o brilho do bloco, e os outros 63 (AC) guardam as informações detalhadas do bloco (a textura de um objeto, por exemplo).

No final das contas, “informações detalhadas” são apenas bits (no caso, cada coeficiente tem 10 bits). O Lepton varre o bloco em zigue-zague, desconsiderando tudo o que for zero, e guarda o tamanho binário dos coeficientes AC em unário (“2” é representado como 110, “5” é 111110 e assim por diante).

Depois, ele escreve “1” se o coeficiente for positivo ou “0” se for negativo. Por fim, o Lepton representa em binário o valor do coeficiente AC. Em binário, qualquer número acima de 0 começa com “1”, então o Lepton simplesmente omite esse “1” na hora de gravar. Pronto, economizamos dados aqui.

dropbox-lepton

E o coeficiente DC (de brilho), que normalmente é gravado antes dos AC na maioria dos formatos de imagem, fica gravado depois no Lepton. Como há muitos coeficientes AC no bloco, é possível prever qual será o DC. Então, o algoritmo só guarda a diferença entre o DC verdadeiro e o DC previsto pelo Lepton, o que também ajuda a reduzir o espaço ocupado. Boom! E isso é totalmente lossless, ou seja, dá para restaurar exatamente o JPEG original, bit por bit.

Para quem ficou curioso, os detalhes estão no blog de tecnologia do Dropbox. E se você não entendeu nada da explicação e nem quer entender, não tem problema: o que realmente importa é que o Dropbox abriu o código-fonte do Lepton nesta quinta-feira (14), o que significa que outras empresas poderão se beneficiar da tecnologia e aplicá-las em outros produtos que você utilize. O código pode ser baixado no GitHub.

Aliás, lembrei que estou com episódios atrasados de Silicon Valley.

Receba mais notícias do Tecnoblog na sua caixa de entrada

* ao se inscrever você aceita a nossa política de privacidade
Newsletter
Paulo Higa

Paulo Higa

Ex-editor executivo

Paulo Higa é jornalista com MBA em Gestão pela FGV e uma década de experiência na cobertura de tecnologia. No Tecnoblog, atuou como editor-executivo e head de operações entre 2012 e 2023. Viajou para mais de 10 países para acompanhar eventos da indústria e já publicou 400 reviews de celulares, TVs e computadores. Foi coapresentador do Tecnocast e usa a desculpa de ser maratonista para testar wearables que ainda nem chegaram ao Brasil.

Canal Exclusivo

Relacionados