Gli svantaggi delle tecniche di codifica senza perdita di dati
La codifica senza perdita, 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 vengono decompressi. 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 livelli elevati di compressione. Poche tecniche di codifica senza perdita di dati possono raggiungere un rapporto di compressione superiore a 8:1 che si confronta sfavorevolmente con le cosiddette tecniche di codifica con perdita. Le tecniche di codifica con perdita, 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 di qualità minima o assente. 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 ridotta solo a 6,5 megabyte utilizzando il formato PNG senza perdita, ma può essere ridotta a solo 1 megabyte utilizzando il formato JPEG con perdita .
Tempo di trasferimento
Qualsiasi applicazione che comporti la memorizzazione o la distribuzione di immagini digitali, o entrambe, presuppone che queste operazioni possano essere completate in un periodo di tempo ragionevole. Il tempo necessario per trasferire un'immagine digitale dipende dalle dimensioni dell'immagine compressa e poiché i rapporti di compressione che possono essere raggiunti dalle tecniche di codifica senza perdita di dati sono di gran lunga inferiori rispetto alle tecniche di codifica con perdita, le tecniche di codifica senza perdita non sono adatte a queste applicazioni.
Codifica Huffman
Molte tecniche di codifica senza perdita di dati, incluso PNG, utilizzano una forma di codifica nota come codifica 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. Questo a sua volta significa che le tecniche di codifica lossless che utilizzano la codifica Huffman sono notevolmente più lente di altre tecniche durante la lettura o la scrittura di file.
Decodifica
Un altro svantaggio della codifica Huffman è che le stringhe binarie oi codici nei dati codificati hanno tutte 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 corrotti - in altre parole contengono bit spuri o mancano dei bit - verranno decodificati in modo errato e l'output sarà sciocchezze.