Standard Video. Video Digitali

Размер: px
Начинать показ со страницы:

Download "Standard Video. Video Digitali"

Транскрипт

1 Standard Video Video Digitali

2 L'immagine sovrastante mostra l'evoluzione nel tempo dei vari formati di compressione video realizzati dalle associazioni sopra indicate.

3

4 Intra-Frames: I fotogrammi sono codificati senza riferimento a qualsiasi fotogramma, tranne se stessi. Può essere generato da un encoder per creare un punto di accesso casuale (per consentire a un decodificatore di avviare la decodifica in maniera corretta, partendo da zero in quella posizione dell'immagine). In genere richiedono più bit per essere codificati rispetto ad altri tipi di frame. Spesso, i fotogrammi vengono utilizzati per l'accesso casuale e sono usati come riferimento per la decodifica di altre immagini.

5 P-Frames: Inizialmente richiede la decodifica di qualche altra immagine per essere decodificato.può contenere sia i dati dell' immagine, gli spostamenti del vettore di movimento e le combinazioni dei due. Può fare riferimento a immagini precedenti, al fine di decodifica. In genere richiedono meno bit per la codifica rispetto agli I-Frames.

6 B-Frames: Richiede la precedente decodifica di altri frames prima di essere decodificato. Può contenere sia i dati dell'immagine e gli spostamenti del vettore movimento o la combinazione dei due. Sostanzialmente i fotogrammi B sono di tipo "Bidirezionale", nel senso che fanno riferimento sia a ciò che li precede, sia a quello che segue.

7 Inserire in un fotogramma informazioni che si riferiscono ad un fotogramma successivo è possibile solo alterando l'ordine in cui i fotogrammi vengono archiviati all'interno del file video compresso. In genere richiedono meno bit per la codifica rispetto agli I-frame o ai P-frame.

8 ESEMPIO SULLA MEMORIZZAZIONE DEI FRAME I/P/B Consideriamo la seguente sequenza di frame con i relativi macroblocchi:

9 ESEMPIO SULLA MEMORIZZAZIONE DEI FRAME I/P/B Ecco uno schema grafico: L'encoder e il decoder processano i frame in un ordine diverso e ciò viene fatto in maniera automatica dai sw, senza bisogno di alcun intervento nei parametri:

10 Vecchi formati: Il formato MPEG-1: l'obiettivo di questo formato era il raggiungimento della qualità VHS e per ottenerla, il video è codificato a 352x288 pixel (288 linee orizzontali da 352 punti ciascuna) per quanto riguarda la luminosità, mentre per quanto riguarda il colore l'immagine è ulteriormente divisa per due ed è pertanto codificata a 176x144.

11 Vecchi formati: Il formato MPEG-1: il codec MPEG-1 effettua una serie di operazioni di compressione delle immagini che sfruttano non solo l'algoritmo DCT, ma anche le differenze tra un fotogramma e l'altro. Anzichè memorizzare tutti i fotogrammi per intero, se ne memorizzano soltanto alcuni come tali (ad intervalli prefissati e regolari), e tra di essi ci si limita a memorizzare una serie di frames incompleti nei quali vengono "scritte" solo le informazioni che subiscono delle variazioni rispetto alle immagini precedenti.

12 Vecchi formati: Il formato MPEG-2: L'obiettivo dell'mpeg-2 era quello di creare un formato flessibile ed adatto a varie applicazioni, in grado anche di codificare in digitale le immagini con una qualità equivalente a quella analogica (corrispondente alla qualità delle trasmissioni televisive), e l'audio con quella cinematografica, utilizzando flussi di dati fino a 60 Mbit/sec.

13 Vecchi formati: Il formato MPEG-2: La caratteristica principale dell'mpeg-2 è la sua scalabilità, ovvero la possibilità di creare soluzioni di codifica e decodifica più o meno complesse in base al tipo di prodotto da realizzare, aggiungendo poi altre caratteristiche quali la possibilità di trasmettere il flusso multimediale su reti a banda larga, assicurando una buona robustezza nei confronti degli errori della rete, il trasporto parallelo di molteplici canali audio, le funzioni di protezione e di controllo di accesso al flusso, per citarne i principali.

14 Vecchi formati: Il formato MPEG-2: Per consentire all'industria di procedere gradualmente con l'implementazione dello standard, il comitato di lavoro dell'mpeg ha definito una serie di livelli e di profili in base ai quali ogni soluzione tecnica può essere sviluppata e verificata. Non tutte le combinazioni portano ad un sottoinsieme di

15 Vecchi formati: Il formato MPEG-2: specifiche valide, per questo i cinque profili ed i quattro livelli si combinano solo in 11 soluzioni. I profili sono: Simple (SP), Main (MP), SNR, Spatial Scalable, High. Mentre i livelli sono Low (LL), Main (ML), High 1440 (H- 14), High (HL)

16 Vecchi formati: Il formato MPEG-2: Varie Soluzioni:

17 Vecchi formati: Il formato MPEG-4: L' MPEG4 usa fondamentalmente lo stesso algoritmo di compressione di MPEG1 e MPEG2, ma in modo molto più efficiente. La differenza sostanziale è che il sistema riesce a distinguere i vari livelli di un immagine, lo sfondo e i primi piani. Se lo sfondo rimane uguale allora nei fotogrammi successivi non verranno memorizzati, risparmiando così prezioso spazio. Inoltre è possibile elaborare queste immagini più semplicemente, estrapolando gli attori o gli oggetti dallo sfondo con grande facilità.

18 H.264: Che cos'è e come funziona? Premessa: La definizione della codifica video MPEG-2 risale alla prima metà degli anni novanta, negli ultimi anni gli esperti hanno proseguito il loro lavoro per ottenere codifiche sempre più efficienti. L'evoluzione degli algoritmi, ma soprattutto delle capacità di elaborazione integrabili nei microchip ha consentito la definizione del sistema AVC (Advanced Video Coding) che ha buone possibilità di trovare ampia applicazione nei prossimi anni.

19 H.264: Che cos'è e come funziona? Premessa: Lo standard specifica la codifica del video (VCL, Video Coding Layer), e il formato con cui organizzare i dati video per il trasporto e la memorizzazione.

20 H.264: Che cos'è e come funziona? Algoritmi e profili: Lo standard AVC, così come avviene nel caso di MPEG-1 ed MPEG-2, non definisce un CODEC (cioè codificatore e decodificatore, COder ed DECoder), bensì la sintassi del flusso dati (stream syntax) e il metodo di decodificarlo. I tool, cioè gli algoritmi, adottati, non sono sostanzialmente diversi da quelli illustrati per MPEG-2 video: la maggiore efficienza di codifica è dovuta alla cura dei dettagli di ciascun elemento funzionale.

21 H.264: Che cos'è e come funziona? La codifica: Per ciascun elemento funzionale nel seguito si descrivono brevemente i miglioramenti apportati in AVC rispetto ad MPEG-2, che possono essere sintetizzati in: Applicazione della trasformata su blocchi più piccoli. Miglioramenti relativi alla valutazione e alla compensazione del movimento. Filtro di ricostruzione nel loop di decodifica per ridurre l'effetto di blocchettizzazione. miglioramento della codifica entropica.

22 H.264: Che cos'è e come funziona? Macroblocchi e slice: I macroblocchi sono anche in AVC costituiti da 16x16 elementi di immagine: 16x16 campioni (sample) di luminanza e 8x8 campioni per ciascuna componente di crominanza C B e C R. I blocchi (block) sono costituiti da 4x4 campioni (un quarto della dimensione adottata in MPEG-2).

23 H.264: Che cos'è e come funziona? Macroblocchi e slice: I macroblocchi sono organizzati in slice, un sottoinsieme di immagine decodificabile indipendentemente dalle altre. L'ordine di trasmissione dei macroblocchi non è necessariamente quello originario nell'immagine, ma è indicato dal codificatore in una apposita mappa (Macroblock Allocation Map).

24 H.264: Che cos'è e come funziona? Macroblocchi e slice: Sono definiti 5 differenti tipi di slice. I primi tre, analogamente a quanto visto per MPEG-2, sono I (intra), P (predictive) e B (bi- predictive) e le predizioni sono ottenute a partire dalle picture precedentemente codificate. In AVC più picture possono essere utilizzate per le predizioni e pertanto codificatore e decodificatore memorizzano le picture utilizzate per le predizioni in una apposita memoria (multipicture buffer) e il controllo per la gestione del buffer è specificato nel flusso dati.

25 H.264: Che cos'è e come funziona? Macroblocchi e slice: Nelle applicazioni di streaming via internet spesso lo stesso video è codificato a differenti bitrate ed il decoder tenta di accedere al flusso a bit-rate più elevato, che fornisce una più elevata qualità, ma se le condizioni del canale non lo permettono, commuta al flusso a bit-rate più basso.

26 H.264: Che cos'è e come funziona? Macroblocchi e slice: In AVC sono stati pertanto definiti ulteriori due tipi di slice, denominati SI (Switching I) e SP (Switching P) che consentono un'efficiente commutazione fra flussi di dati a bit-rate differente, senza rinunciare al massimo sfruttamento della ridondanza temporale.

27 H.264: Che cos'è e come funziona? Predizione e codifica Intra: Nella codifica intra è sfruttata la sola correlazione spaziale: per aumentare l'efficienza vengono codificate le differenze fra i campioni del macroblocco e i campioni precedentemente codificati, tipicamente quelli posizionati sopra e a sinistra. Nel caso di aree con scarso dettaglio si può adottare la codifica intra sull'intera area 16x16.

28 H.264: Che cos'è e come funziona? Predizione e codifica Inter: Nella codifica di tipo inter si parte da una predizione ottenuta, sfruttando la correlazione temporale, da uno o due quadri precedentemente codificati. La predizione può essere ottenuta mediante una stima ed una compensazione del movimento (motion compesated prediction). A differenza degli standard precedenti, la dimensione del blocco su cui si effettua la predizione può variare da 16x16 fino a 4x4.

29 H.264: Che cos'è e come funziona?

30 H.264: Che cos'è e come funziona? Predizione e codifica Inter: Questo metodo di partizionare i macroblock in sub- block è denominato tree structured motion compensation e in fase di codifica sono possibili molteplici scelte che hanno implicazioni differenti sul numero di bit necessario a codificare i vettori movimento e le differenze residue: in genere dimensioni elevate del blocco sono convenienti in aree piatte, mentre in aree ricche di dettagli si può trarre vantaggio dall'uso di aree ridotte.

31 H.264: Che cos'è e come funziona? Trasformata e quantizzazione: Il tipo di trasformata adottato è basato sulla DCT (Discrete Cosine Transform), ma sono state apportate delle modifiche affinché le operazioni richiedano somme e scalamenti effettuabili con numeri interi a 16 bit in modo da non avere perdita di precisione effettuando la trasformazione diretta seguita da quella inversa. Esistono 52 passi di quantizzazione, denominati Q p e questa ampia gamma di valori permette al codificatore di raggiungere il miglior compromesso fra qualità e bitrate.

32 H.264: Che cos'è e come funziona? Filtro di ricostruzione: L'effetto di blocchettizzazione è uno dei degradamenti caratteristici delle tecniche di compressione che operano su macroblocchi di campioni video: è particolarmente visibile e fastidioso. AVC introduce un filtro apposito che è applicato prima della trasformata inversa sia nel codificatore, sia nel decodificatore. Si ottengono due principali vantaggi: una minore visibilità dei bordi dei blocchi e una migliore predizione inter con compensazione del movimento.

33 H.264: Che cos'è e come funziona?

34 H.264: Che cos'è e come funziona? Codifica VLC: I simboli che rappresentano i parametri relativi ai modi di codifica e predizione, i vettori movimento e i coefficienti della trasformata vengono codificati con codici a lunghezza variabile. Una codifica a lunghezza variabile (VLC, Variable Lenght Coding) è basata su tabelle di assegnazione statiche oppure è basata sul contesto CAVLC (Context Adaptive Variable Lenght Coding). Il CAVLC utilizza diverse tabelle VLC specificatamente ottimizzate per i vari elementi sintattici in base a quelli precedentemente trasmessi.

35 H.264: Che cos'è e come funziona? Codifica VLC: La codifica a lunghezza variabile sfrutta le sequenze di zero, l'elevata frequenza di valori +1 e -1, e la correlazione fra il numero di coefficienti non nulli di un blocco e quello nei blocchi adiacenti.

36 H.264: Applicazioni Pratiche Come applicazioni pratiche di compressione video abbiamo fatto uso dell'encoder x264. Ora andremo a vedere come creare un video H.264 di alta qualità partendo da un video non compresso. Per operare usiamo il metodo il constant rate Factor (CRF). Il rate control è un metodo che deciderà quanti bit verranno utilizzati per ogni fotogramma. Questo determinerà la dimensione del file e anche con che qualità è fatto il video.

37 H.264: Applicazioni Pratiche Constant Rate Factor (CRF): Questo metodo consente all'encoder di tentare di raggiungere una certa qualità di output per l'intero file quando la dimensione del file di output è di minore importanza. Questo fornisce un'efficienza di compressione massima con una sola passata. Ogni frame ha la necessità di mantenere il livello di qualità richiesto.

38 H.264: Applicazioni Pratiche Scegliere un valore CRF: La gamma della scala di quantizzazione è 0-51: dove 0 è lossless, 23 è di default, e 51 è il valore peggiore possibile. Un valore più basso corrisponde a una qualità superiore e un valore accettabile si aggira intorno al range Consideriamo il valore 18 come un valore visivamente senza perdita o quasi: dovrebbe apparire lo stesso input ma effettivamente non è tecnicamente senza perdita. Il range è esponenziale, aumentando il valore CRF a +6 otteniamo circa la metà del bitrate, mentre a -6 otteniamo circa il doppio del bitrate.

39 H.264: Applicazioni Pratiche Scegliere un valore CRF: Generalmente si sceglie il CRF più alto che ancora fornisce una qualità accettabile. Se il risultato sembra buono, allora si può provare un valore maggiore e se il risultato non è dei migliori allora conviene scegliere un valore più basso. Questa scala di quantizzazione CRF si applica solo a encoder x264 a 8-bit (la scala di quantizzazione x264 a 10 bit è 0-63).

40 H.264: Applicazioni Pratiche Scegliere un preset: Un preset è un insieme di opzioni in grado di fornire una certa velocità di codifica in base al rapporto di compressione. Un preset più lento fornirà una migliore compressione. Questo significa che, per esempio, se si vuole una certa dimensione del file o un bit rate costante, è possibile ottenere una migliore qualità con un preset più lento.

41 H.264: Applicazioni Pratiche Scegliere un preset: Allo stesso modo, per una codifica a qualità costante, si può semplicemente salvare il bitrate scegliendo un preset più lento. I Preset correnti in ordine di velocità decrescente sono: ultraveloce, superveloce, molto veloce, più veloce, veloce, medio, lento, più lento, molto lento. Il preset di default è medio.

42 H.264: Applicazioni Pratiche Utilizzare le impostazioni: Dopo aver scelto le impostazioni adeguate allora queste valgono per le codifiche successive. Questo farà sì che tutti avranno qualità simile. CRF Esempio ffmpeg -i input -c:v libx264 -preset slow -crf 22 -c:a copy output.mkv Si noti che in questo esempio il flusso audio del file di input è semplicemente copiato verso l'uscita, e non ri-codificato.

43 H.264: Applicazioni Pratiche Lossless H.264: È possibile utilizzare l'opzione -qp 0 o -crf 0 per codificare un input in un output senza perdite. L'uso di -qp è consigliato rispetto a -CRF per lossless perché x264 a 8-bit e a 10-bit utilizzano valori diversi di -CRF per lossless.

44 H.264: Applicazioni Pratiche Due preset utili per questo sono ultrafast o veryslow poiché sia una velocità di codifica veloce o una migliore compressione di solito sono i fattori più importanti. Lossless Example (fastest encoding) ffmpeg -i input -c:v libx264 -preset ultrafast -qp 0 output.mkv Lossless Example (best compression) ffmpeg -i input -c:v libx264 -preset veryslow -qp 0 output.mkv

Che cosa è, come funziona: Advanced Video Coding (AVC - H.264): Il prossimo futuro

Che cosa è, come funziona: Advanced Video Coding (AVC - H.264): Il prossimo futuro ing. Marzio Barbero e ing. Natasha Shpuza Che cosa è, come funziona: Advanced Video Coding (AVC - H.264): Il prossimo futuro Parte I Fig. 1 - Il Joint Video Team comprende esperti di MPEG e dell'itu- T

Подробнее

H.264/SVC (Scalable video coding)

H.264/SVC (Scalable video coding) Gli standard di codifica video Marco Cagnazzo Elaborazione dei Segnali Multimediali 28 maggio 2010 Sommario MPEG-1 Tipi di frame ME/MC a precisione frazionaria MPEG-2 e scalabilità MPEG-4 e codifica a

Подробнее

Tecnologie Multimediali a.a. 2018/2019. Docente: DOTT.SSA VALERIA FIONDA

Tecnologie Multimediali a.a. 2018/2019. Docente: DOTT.SSA VALERIA FIONDA Tecnologie Multimediali a.a. 2018/2019 Docente: DOTT.SSA VALERIA FIONDA Rappresentazione digitale dell audio IL CAMPIONAMENTO E LA QUANTIZZAZIONE I dati multimediali vengono digitalizzati attraverso due

Подробнее

Codifica dell Informazione

Codifica dell Informazione Francesco Folino CODIFICA DI DATI E ISTRUZIONI Algoritmi Istruzioni che operano su dati Per scrivere un programma è necessario rappresentare dati e istruzioni in un formato tale che l esecutore automatico

Подробнее

UNIVERSITÀ DEGLI STUDI DI TRIESTE

UNIVERSITÀ DEGLI STUDI DI TRIESTE UNIVERSITÀ DEGLI STUDI DI TRIESTE Corso di Elaborazione Elettronica di Immagini CODIFICA ED ELABORAZIONE DI SEQUENZE VIDEO Sommario Formati video Codifica di sequenze video 1 Formati video 2 3 Cenni su

Подробнее

4.3: La Codifica dei Suoni e dei Video

4.3: La Codifica dei Suoni e dei Video Rappresentazione dei Dati Multimediali Prof. Alberto Postiglione Università degli Studi di Salerno Dipartimento di Scienze Aziendali - Management & Innovation Systems 4.3: La Codifica dei Suoni e dei Video

Подробнее

Compressione delle immagini (codifica JPEG)

Compressione delle immagini (codifica JPEG) Compressione delle immagini (codifica JPEG) ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Motivazioni a favore della compressione 2 Es. Si consideri di voler proiettare un ora di un film mediante un dispositivo

Подробнее

La codifica di sorgente

La codifica di sorgente Tecn_prog_sist_inform Gerboni Roberta è la rappresentazione efficiente dei dati generati da una sorgente discreta al fine poi di trasmetterli su di un opportuno canale privo di rumore. La codifica di canale

Подробнее

1 PERCHÉ LA AG-HPX301E È UNA CAMERA RIVOLUZIONARIA?

1 PERCHÉ LA AG-HPX301E È UNA CAMERA RIVOLUZIONARIA? 1 PERCHÉ LA AG-HPX301E È UNA CAMERA RIVOLUZIONARIA? Per diversi motivi, a cominciare dal fatto che introduce in un prodotto dal costo inferiore ai 10.000 Euro un codec di registrazione fino ad oggi utilizzato

Подробнее

Codifica dei caratteri ASCII ESTESO. Codifica delle immagini. Codifica immagini bitmap

Codifica dei caratteri ASCII ESTESO. Codifica delle immagini. Codifica immagini bitmap Codifica dei caratteri I caratteri di un testo vengono codificati tramite sequenze di bit, utilizzando un codice di traduzione. Quello più usato è il codice ASCII (American Standard Code for Information

Подробнее

Codifica dell Informazione

Codifica dell Informazione Introduzione all Informatica Fabrizio Angiulli Codifica dell Informazione CODIFICA DI DATI E ISTRUZIONI Algoritmi Istruzioni che operano su dati Per scrivere un programma è necessario rappresentare dati

Подробнее

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte Rappresentazione digitale delle informazioni Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte Ordini di grandezza Codifica delle immagini Codifica

Подробнее

La codifica dei suoni

La codifica dei suoni La codifica dei suoni Le fasi fondamentali per la digitalizzazione: campionamento quantizzazione di un campione codifica La codifica dei suoni Si effettuano dei campionamenti sull'onda sonora (cioè si

Подробнее

Analogico vs digitale

Analogico vs digitale Analogico vs digitale Informazione classificatoria e più che classificatoria Informazione classificatoria: è questo, ma avrebbe potuto essere quest altro altro. Informazione più che classificatoria: riconoscere

Подробнее

L informazione numerica

L informazione numerica L informazione numerica Sorgenti di informazione Abbiamo esaminato delle sorgenti di informazione analogiche (audio, video). Abbiamo visto come trasmetterle a distanza per mezzo di sistemi analogici. Come

Подробнее

Indice. A Riassunto formule principali sulla Teoria dell Informazione per sorgenti135

Indice. A Riassunto formule principali sulla Teoria dell Informazione per sorgenti135 Indice 8 Teoria dell Informazione per sorgenti 123 8.1 Introduzione.................................... 123 8.2 Codifica di sorgente............................... 123 8.2.1 Classificazione tecniche di

Подробнее

Codifica di Huffman e Lempel-Ziv-Welch A L B E R T O B E L U S S I A N N O A C C A D E M I C O /

Codifica di Huffman e Lempel-Ziv-Welch A L B E R T O B E L U S S I A N N O A C C A D E M I C O / Codifica di Huffman e Lempel-Ziv-Welch 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 0 / 2 0 1 1 Tipi di compressione Senza perdita (lossless): permettono di ricostruire perfettamente

Подробнее

FONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Compressione audio

FONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Compressione audio FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Compressione audio 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1

Подробнее

La codifica del suono. Informatica di Base D -- Rossano Gaeta 102

La codifica del suono. Informatica di Base D -- Rossano Gaeta 102 La codifica del suono 102 La codifica dei suoni: la voce Se volessimo codificare la voce umana dovremmo: Campionare il segnale vocale ogni 125 milionesimi di secondo (producendo 8000 campioni al secondo)

Подробнее

Compressione dei dati multimediali

Compressione dei dati multimediali Universita' di Verona Dipartimento di Informatica Compressione dei dati multimediali Davide Quaglia a.a. 2009/2010 1 Natura dei dati multimediali 2 Generazione dei suoni I suoni sono generati da onde di

Подробнее

La codifica del testo

La codifica del testo La codifica delle informazioni Informatica e sistemi di elaborazione delle informazioni La codifica delle informazioni Informatica e sistemi di elaborazione delle informazioni I slide Informatica e sistemi

Подробнее

Compressione dei dati. Appunti di Sistemi A cura del prof. Ing. Mario Catalano

Compressione dei dati. Appunti di Sistemi A cura del prof. Ing. Mario Catalano Compressione dei dati Appunti di Sistemi A cura del prof. Ing. Mario Catalano Compressione di dati Cosa significa comprimere i dati? Eliminare l'informazione ridondante, in modo da poter rappresentare

Подробнее

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La

Подробнее

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1 Concetti base della Tecnologia dell informazione Algoritmi Come interpreta un computer un problema? Algoritmi Algoritmo: sequenza ordinata di istruzioni per risolvere un problema (tradotto: sequenza di

Подробнее