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.