Introduzione alla compressione JPEG
Nel nostro ultimo tutorial sulla compressione delle immagini, discutiamo alcune delle tecniche utilizzate per la compressione
Discuteremo la compressione JPEG che è una compressione con perdita, poiché alcuni dati alla fine sono una perdita.
Discutiamo prima di cosa sia la compressione delle immagini.
Compressione dell'immagine
La compressione delle immagini è il metodo di compressione dei dati sulle immagini digitali.
L'obiettivo principale nella compressione delle immagini è:
- Archivia i dati in una forma efficiente
- Trasmetti i dati in una forma efficiente
La compressione delle immagini può essere con o senza perdita di dati.
Compressione JPEG
JPEG sta per Joint Photographic Experts Group. È il primo standard internazionale nella compressione delle immagini. È ampiamente usato oggi. Potrebbe essere sia lossy che lossless. Ma la tecnica di cui parleremo qui oggi è la tecnica di compressione con perdita.
Come funziona la compressione jpeg
Il primo passo è dividere un'immagine in blocchi con ciascuno delle dimensioni di 8 x8.
Per la cronaca, diciamo che questa immagine 8x8 contiene i seguenti valori.
L'intervallo delle intensità dei pixel ora va da 0 a 255. Modificheremo l'intervallo da -128 a 127.
Sottraendo 128 da ogni valore di pixel si ottiene un valore di pixel compreso tra -128 e 127. Dopo aver sottratto 128 da ogni valore di pixel, si ottengono i seguenti risultati.
Ora calcoleremo usando questa formula.
Il risultato viene da questo è memorizzato in diciamo matrice A (j, k).
Esiste una matrice standard utilizzata per calcolare la compressione JPEG, che è data da una matrice chiamata matrice di luminanza.
Questa matrice è fornita di seguito
Applicando la seguente formula
Abbiamo ottenuto questo risultato dopo l'applicazione.
Ora eseguiremo il vero trucco che viene fatto nella compressione JPEG che è il movimento ZIG-ZAG. La sequenza a zig zag per la matrice sopra è mostrata di seguito. Devi eseguire lo zig zag finché non trovi tutti gli zeri davanti. Quindi la nostra immagine è ora compressa.
Riassumendo la compressione JPEG
Il primo passo è convertire un'immagine in Y'CbCr e selezionare semplicemente il canale Y 'e suddividerla in blocchi 8 x 8. Quindi, partendo dal primo blocco, mappare l'intervallo da -128 a 127. Dopo di che devi trovare la trasformata di Fourier discreta della matrice. Il risultato di ciò dovrebbe essere quantizzato. L'ultimo passaggio è applicare la codifica a zig zag e farlo finché non trovi tutto zero.
Salva questo array unidimensionale e il gioco è fatto.
Note. You have to repeat this procedure for all the block of 8 x 8.