
Le tecniche di codifica lossless riducono le dimensioni dei file digitali.
La codifica senza perdita di dati, o compressione senza perdita di dati, si riferisce al processo di codifica dei dati in modo più efficiente in modo che occupi meno bit o byte ma in modo tale che i dati originali possano essere ricostruiti, bit per bit, quando i dati sono decompresso. Il vantaggio delle tecniche di codifica lossless è che producono un duplicato esatto dei dati originali, ma presentano anche alcuni svantaggi rispetto alle tecniche di codifica lossy.
Rapporto di compressione
Le tecniche di codifica senza perdita di dati non possono raggiungere alti livelli di compressione. Poche tecniche di codifica lossless possono raggiungere un rapporto di compressione superiore a 8:1 che si confronta sfavorevolmente con le cosiddette tecniche di codifica lossy. Le tecniche di codifica con perdita di dati, che ottengono la compressione scartando alcuni dei dati originali, possono ottenere rapporti di compressione di 10:1 per l'audio e 300:1 per il video con una perdita minima o assente di qualità. Secondo il New Biggin Photography Group un'immagine a colori RGB a 24 bit da 1.943 per 1.702 pixel con una dimensione originale di 9,9 megabyte può essere ridotto solo a 6,5 megabyte utilizzando il formato PNG senza perdita di dati ma può essere ridotto a solo 1 megabyte utilizzando il formato JPEG con perdita formato.
Video del giorno
Tempo di trasferimento
Qualsiasi applicazione che implichi l'archiviazione o la distribuzione di immagini digitali, o entrambe, presuppone che tali operazioni possano essere completate in un tempo ragionevole. Il tempo necessario per trasferire un'immagine digitale dipende dalle dimensioni dell'immagine compressa e dai rapporti di compressione che possono essere raggiunti da le tecniche di codifica lossless sono di gran lunga inferiori alle tecniche di codifica lossy, le tecniche di codifica lossless non sono adatte a queste applicazioni.
Codifica Huffman
Molte tecniche di codifica lossless, incluso PNG, utilizzano una forma di codifica nota come codifica di Huffman. Nella codifica di Huffman, più spesso un simbolo compare nei dati originali, più corta è la stringa binaria utilizzata per rappresentarlo nei dati compressi. Tuttavia, la codifica di Huffman richiede due passaggi, uno per costruire un modello statistico dei dati e un secondo per codificarlo, quindi è un processo relativamente lento. Ciò a sua volta significa che le tecniche di codifica lossless che utilizzano la codifica di Huffman sono notevolmente più lente di altre tecniche durante la lettura o la scrittura di file.
decodifica
Un altro svantaggio della codifica di Huffman è che le stringhe binarie oi codici nei dati codificati sono tutte di lunghezze diverse. Ciò rende difficile per il software di decodifica determinare quando ha raggiunto l'ultimo bit di dati e se i dati codificati sono corrotto - in altre parole contiene bit spuri o mancano dei bit - verrà decodificato in modo errato e l'output sarà senza senso.