Gannjunior
19-05-2008, 12:17
Poichè questo 'test' è dedicato ai formati di registrazione delle videocamere attuali non so se va bene postarlo qua oppure su "Altre discussioni sull'informatica"...in quanto non esiste una vera e propria sezione per gli argomenti in questione.
La curiosità di approfondimento è nata da un 3d sulla hvx200 e sulla sony ex1 dove io e roby68, un utente di VM, abbiamo inziato una interessante conversazione sul comportamento dei codec intra e inter-frames.
Il succo del discorso è che ci domandavamo se, date due camere esattamente uguali fosse meglio quella che comprime interframes, per esempio in mpeg2 35mbit, o l'altra che comprime solo intra frames a 100mbit di compressione.
Quello su cui si deve però riflettere è che, se si ragiona solo in termini di massimizzazione della qualità nel minimo spazio, è chiaro che la compressione interframe vince e stravince. Se si vuole massimizzare invece l'editabilità ma soprattutto la necessità di avere una PRIMA acquisizione il piu possibile vicina alla realtà allora una compressione intra frame a bitrate molto elevato, a parità di altre condizioni, è una scelta piu adatta.
Vediamo tra breve una interessante tabella in cui ho cercato di riassumere un pò di dati e di casi limite, mettendo riferimenti di compressione intra e inter frames "noti" e molto utilizzati.
Prima di andare avanti voglio fare un piccola premessa affinchè tutti possano addentrarsi a leggere bene la tabella.
E' stato necessario affidarmi ad alcuni sistemi di Visual Quality (VQ) che si occupano di oggettivizzare la misura della stessa VQ senza incorrere nelle percezioni soggettive della qualità che ciascuno di noi ha.
Vi sono diversi strumenti di VQ (che ho potuto conoscere grazie al Alex_e_Basta). Utilizzerò il PSNR e il SSIM, due strumenti matematici che ci dicono "quanto" abbiamo perso durante una codifica da una certa fonte. Ovvero "quanto abbiamo perso" dall'originale.
- il PSNR è una misura puramente oggettiva. Misura esattamente, matematicamente, le differenze tra il frame originale e il frame compresso.
- il SSIM, sebbene anch'esso oggettivo, tende a dare piu peso a "come vedrebbe l'occhio umano". Cioè il SSIM pesa le differenze che rileva tra il frame originale e il compresso in funzione della percezione dell'occhio umano.
Dunque il SSIM è particolarmente indicato quando vogliamo effettuare dei confronti tra uno o piu codec lossy (che comprimono intra e interframe, cioè con perdita 'completa' di informazione) a partire da una certa fonte. Infatti quando ci limitiamo a guardare un video in TV a noi "poco" interessa che questo sia matematicamente piu o meno vicino all'originale.
Mi spiego: per esempio l'applicazione di un denoiser cioè di un filtro antirumore ad un video rumoroso renderebbe il video originale e quello compresso molto differenti matematicamente e questo il PSNR lo rileverebbe. Ma magari i nostri occhi potrebbero addirittura gradire di piu la compressione piu "pulita".
Ecco, questo è in grado di capirlo meglio il SSIM rispetto al PSNR.
Ho spiegato questo per dire che quello che è un limite del PSNR diventa un punto di forza in questo tipo di test, dove vogliamo misurare esattamente quale compressione riesce a contenere le differenze rispetto al frame originale, in modo del tutto oggettivo.
In quanto la fase della prima acquisizione con la nostra camera, molto probabilmente necessiterà di essere editata con effetti, dissolvenze o altro prima di essere ri-compressa nel prodotto finale destinato alla SOLA riproduzione (o alla distribuzione via web per esempio..).
Quindi in questa fase a noi non "viene bene" che un codec applichi modelli psicovisuali per risparmiare spazio garantendoci comunque un buon livello di percezione qualitativa. (ci potrà interessare dopo, ma non adesso).
Comunque, come vedete, non stiamo parlando di sistemi perfetti, in quanto entrambi hanno dei pregi e dei limiti.
------
Approfondimento:
PSNR -> http://en.wikipedia.org/wiki/Signal-to-noise_ratio
SSIM -> http://www.cns.nyu.edu/~zwang/
In realtà trovate ancora piu informazioni sul PSNR all'interno delle pubblicazioni di Zhou Wang sul SSIM.
---
Compressione Inter e Intra frames. Semplificando al massimo. Una compressione INTER è come quella del DVD per esempio. E' come quella utilizzata dalle camere HDV che comprimono su HDD, su schede di memoria o su miniDV. E' una compressione particolarmente efficiente che comprime sia 'nello spazio' che 'nel tempo'. Ed è completamente lossy, cioè con perdita "completa" di informazione. E' fondamentale quando si vuole riversare un film, un video o contenuti simili in un supporto dedicato unicamente alla riproduzione. E la sua vocazione nativa non sarebbe dunque rivolta ad una editabilità successiva.
La compressione INTRA frame nasce invece tipicamente con la vocazione di essere già "pronta" ad essere piu facilmente editata. Necessita di bitrate molto piu elevati e comprime solo 'nello spazio', cioè, per capirci, è un pò come una compressione jpeg. Comprime dunque ogni singolo fotogramma e, ogni fotogramma, benchè piu o meno compresso, viene conservato per intero. (nella compressione inter-frame non è cosi, perchè solo una parte dei fotogrammi vengono conservati per intero, gli altri vengono "calcolati" per differenze e approssimazioni attraverso particolari 'matrici'...).
Il perchè la compressione INTRA non sia facilmente fruibile nella camere commerciali o semiprofessionali è che per sua natura richiede bitrate (cioè spazio per capirci) molto elevati. Richiedendo molto spazio questo comporta problemi consistenti per una archiviazione "al volo" o cmq comporta problemi per archiviazioni di una certa "lunghezza"...
L'argomento è vastissimo...
Suggerisco, per esempio, come approfondimento, il sito www.benis.it dove Benedetto è davvero in gamba a 'snocciolare' argomenti molto complessi.
La curiosità di approfondimento è nata da un 3d sulla hvx200 e sulla sony ex1 dove io e roby68, un utente di VM, abbiamo inziato una interessante conversazione sul comportamento dei codec intra e inter-frames.
Il succo del discorso è che ci domandavamo se, date due camere esattamente uguali fosse meglio quella che comprime interframes, per esempio in mpeg2 35mbit, o l'altra che comprime solo intra frames a 100mbit di compressione.
Quello su cui si deve però riflettere è che, se si ragiona solo in termini di massimizzazione della qualità nel minimo spazio, è chiaro che la compressione interframe vince e stravince. Se si vuole massimizzare invece l'editabilità ma soprattutto la necessità di avere una PRIMA acquisizione il piu possibile vicina alla realtà allora una compressione intra frame a bitrate molto elevato, a parità di altre condizioni, è una scelta piu adatta.
Vediamo tra breve una interessante tabella in cui ho cercato di riassumere un pò di dati e di casi limite, mettendo riferimenti di compressione intra e inter frames "noti" e molto utilizzati.
Prima di andare avanti voglio fare un piccola premessa affinchè tutti possano addentrarsi a leggere bene la tabella.
E' stato necessario affidarmi ad alcuni sistemi di Visual Quality (VQ) che si occupano di oggettivizzare la misura della stessa VQ senza incorrere nelle percezioni soggettive della qualità che ciascuno di noi ha.
Vi sono diversi strumenti di VQ (che ho potuto conoscere grazie al Alex_e_Basta). Utilizzerò il PSNR e il SSIM, due strumenti matematici che ci dicono "quanto" abbiamo perso durante una codifica da una certa fonte. Ovvero "quanto abbiamo perso" dall'originale.
- il PSNR è una misura puramente oggettiva. Misura esattamente, matematicamente, le differenze tra il frame originale e il frame compresso.
- il SSIM, sebbene anch'esso oggettivo, tende a dare piu peso a "come vedrebbe l'occhio umano". Cioè il SSIM pesa le differenze che rileva tra il frame originale e il compresso in funzione della percezione dell'occhio umano.
Dunque il SSIM è particolarmente indicato quando vogliamo effettuare dei confronti tra uno o piu codec lossy (che comprimono intra e interframe, cioè con perdita 'completa' di informazione) a partire da una certa fonte. Infatti quando ci limitiamo a guardare un video in TV a noi "poco" interessa che questo sia matematicamente piu o meno vicino all'originale.
Mi spiego: per esempio l'applicazione di un denoiser cioè di un filtro antirumore ad un video rumoroso renderebbe il video originale e quello compresso molto differenti matematicamente e questo il PSNR lo rileverebbe. Ma magari i nostri occhi potrebbero addirittura gradire di piu la compressione piu "pulita".
Ecco, questo è in grado di capirlo meglio il SSIM rispetto al PSNR.
Ho spiegato questo per dire che quello che è un limite del PSNR diventa un punto di forza in questo tipo di test, dove vogliamo misurare esattamente quale compressione riesce a contenere le differenze rispetto al frame originale, in modo del tutto oggettivo.
In quanto la fase della prima acquisizione con la nostra camera, molto probabilmente necessiterà di essere editata con effetti, dissolvenze o altro prima di essere ri-compressa nel prodotto finale destinato alla SOLA riproduzione (o alla distribuzione via web per esempio..).
Quindi in questa fase a noi non "viene bene" che un codec applichi modelli psicovisuali per risparmiare spazio garantendoci comunque un buon livello di percezione qualitativa. (ci potrà interessare dopo, ma non adesso).
Comunque, come vedete, non stiamo parlando di sistemi perfetti, in quanto entrambi hanno dei pregi e dei limiti.
------
Approfondimento:
PSNR -> http://en.wikipedia.org/wiki/Signal-to-noise_ratio
SSIM -> http://www.cns.nyu.edu/~zwang/
In realtà trovate ancora piu informazioni sul PSNR all'interno delle pubblicazioni di Zhou Wang sul SSIM.
---
Compressione Inter e Intra frames. Semplificando al massimo. Una compressione INTER è come quella del DVD per esempio. E' come quella utilizzata dalle camere HDV che comprimono su HDD, su schede di memoria o su miniDV. E' una compressione particolarmente efficiente che comprime sia 'nello spazio' che 'nel tempo'. Ed è completamente lossy, cioè con perdita "completa" di informazione. E' fondamentale quando si vuole riversare un film, un video o contenuti simili in un supporto dedicato unicamente alla riproduzione. E la sua vocazione nativa non sarebbe dunque rivolta ad una editabilità successiva.
La compressione INTRA frame nasce invece tipicamente con la vocazione di essere già "pronta" ad essere piu facilmente editata. Necessita di bitrate molto piu elevati e comprime solo 'nello spazio', cioè, per capirci, è un pò come una compressione jpeg. Comprime dunque ogni singolo fotogramma e, ogni fotogramma, benchè piu o meno compresso, viene conservato per intero. (nella compressione inter-frame non è cosi, perchè solo una parte dei fotogrammi vengono conservati per intero, gli altri vengono "calcolati" per differenze e approssimazioni attraverso particolari 'matrici'...).
Il perchè la compressione INTRA non sia facilmente fruibile nella camere commerciali o semiprofessionali è che per sua natura richiede bitrate (cioè spazio per capirci) molto elevati. Richiedendo molto spazio questo comporta problemi consistenti per una archiviazione "al volo" o cmq comporta problemi per archiviazioni di una certa "lunghezza"...
L'argomento è vastissimo...
Suggerisco, per esempio, come approfondimento, il sito www.benis.it dove Benedetto è davvero in gamba a 'snocciolare' argomenti molto complessi.