Run-length encoding: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m cambio categoria: algoritmi di compressione
m typo
Riga 1:
In [[informatica]], l'[[algoritmo]] '''Run-length encoding''' ('''RLE''') è storicamente il primo algoritmo di [[compressione]] per le immagini inventato, utilizzato nei [[Fax|fax]] ben prima che le elaborazioni grafiche al computer fossero un'attività comune. L'RLE è ''[[lossless]]'' (''senza perdita''), ovvero permette di comprimere e decomprimere senza alcuna perdita di informazione.
 
Solitamente si applica alle immagini e si fonda sull'assunto che l'immagine abbia pochi colori, ma può essere utilizzato su qualunque file dove si trovino lunghe sequenze dove lo stesso [[byte]] viene ripetuto. La compressione RLE viene spesso impiegata anche nei protocolli di rete (ad esempio, [[IBM]] [[SNA]]) o nei formati di dati di applicazioni in cui il tempo di elaborazione è critico (ad esempio, alcuni filmati [[Audio Video Interleave|AVI]]), perché è il formato che permette la maggior velocità di decompressione.
 
L'algoritmo di RLE cerca nei dati da comprimere una serie di elementi uguali (in un'immagine [[bitmap]], essa corrisponde ad una campitura piatta), e la sostituisce con un solo elemento, quindi un carattere speciale e infine il numero di volte che esso va ripetuto. Per esempio supponiamo di avere un'immagine dove la prima riga è formata da cento [[pixel]] neri, il RLE memorizzerà il primo [[pixel]] nero poi metterà il carattere speciale e in seguito memorizzerà il numero 100. Così invece di occupare cento locazioni la prima riga ne occuperà solo 3. Il carattere speciale è definito diversamente da ogni [[implementare|implementazione]] dell'algoritmo, e serve a distinguere un elemento normale da uno compresso.