Compressão Extrema,
Detalhes Mantidos.
A eficiência de compressão do WebP vem de sua codificação preditiva baseada em blocos. Ele usa partes da imagem que já foram decodificadas para construir previsões para novos pixels.
Isso significa tamanhos de arquivo menores, tempos de carregamento mais rápidos e menor consumo de largura de banda.
* Baseado no índice de qualidade SSIM, WebP com perda é 25-34% menor que JPEG com qualidade equivalente.
Lógica Central da Compressão
function Predict(NeighborPixels) {
// Prever pixel atual usando vizinhos
Predicted_P = Average(Left, Top, TopLeft);
// Armazenar apenas a diferença (Residual)
return Actual_P - Predicted_P;
}
WebP não armazena a cor de cada pixel diretamente (como BMP). Em vez disso, ele "adivinha" a cor do pixel atual com base nos pixels conhecidos ao redor. Ele só precisa armazenar a pequena quantidade de dados onde "adivinhou errado" (o residual). Isso reduz drasticamente o tamanho do arquivo.
Recursos Completos
Não apenas um substituto para JPEG, mas uma evolução de PNG e GIF.
Com & Sem Perda
WebP é único por suportar tanto compressão com perda (tecnologia de vídeo VP8) quanto compressão sem perda (WebP Lossless).
Transparência Alfa
Mesmo no modo com perda, WebP suporta um canal Alfa de 8 bits. Isso é algo que o JPEG não pode fazer.
Suporte a Animação
WebP pode substituir o GIF. Suporta animação com e sem perda, geralmente 64% menor que GIF.
Arquitetura Subjacente
Codificação Preditiva
A compressão com perda WebP é baseada na codificação de quadros-chave VP8. Divide a imagem em macroblocos 16x16 e ainda em sub-blocos 4x4 para predição.
Codificação Entrópica
Os dados residuais e vetores de movimento passam por uma Codificação Aritmética baseada em contexto, que é mais eficiente que a Codificação Huffman do JPEG.