Diit.cz - Novinky a informace o hardware, software a internetu

WebP: Google VP8 pro kompresi obrázků a fotografií

WebP logo
Formát videa WebM kombinující VP8, Ogg Vorbis a Matrošku máme na světě něco přes čtyři měsíce a za tu dobu stihl nadělat dost práce (zejména pomoci změnit názor MPEG LA na vybírání poplatků za H.264 na internetu). Nyní Google přichází s dalším pokusem, tentokrát se snaží rozčeřit zatuchlé vody komprese obrázků, lépe řečeno v dnešní době převážně digitálních fotografií, kterými se plní internet každým dnem možná po miliónech kusů. Nový formát ztrátové komprese obrazu WebP si bere na paškál zejména stařičký JPEG.

Kapitoly článků

1.  Porovnání WebP s dalšími formáty

Co je WebP zač?

Po technické stránce je WebP v podstatě klíčový snímek VP8 videa. Principielně je to jasné, protože jde o jeden snímek, nemůže to být ani P (predicted), ani B (bi-predicted) snímek, nýbrž I (intra). Kompresní mechanismus je plně založen na VP8, nebudeme se tedy k němu vracet a odkážeme vás na analýzu VP8 sepsanou předním vývojářem x264.

WebP používá logicky příponu souborů .webp, na internetu se identifikuje jako "image/webp" a jako systém metadat používá klasicky RIFF (Resource Interchange File Format, jako třeba AVI).

Analýza WebP v podání vývojáře x264

Tak jako u WebM, i v případě WebP se okamžitě po uvolnění podíval na jeho schopnosti Jason Garrett-Glaser, přední vývojář x264. Jeho porovnání zahrnuje právě i kompresi statických obrázků pomocí x264 a také Ogg Theora.

A začíná pěkně zostra: WebP totiž nepodporuje všechny schopnosti starého JPEGu. Barvy totiž kóduje pouze v 4:2:0, zatímco JPEG podporuje i 4:2:2 a 4:4:4. Podle Jasona Google neuvažuje o rozšíření možností WebP, proto toto můžeme brát jako faktickou definicii standardu. Přiznejme si však, že pro běžné použití, na nějž WebP cílí, tedy fotografie na webu, to zas tak významný problém nepředstavuje (ale je to rozhodně škoda).

Jak zaznělo v analýze VP8, tak jeho intra predikce je svým způsobem shodná s tou, kterou definuje H.264 standard. V čem, ale VP8, potažmo tedy i WebP zaostává, je absence i8x8 režimu, VP8 podporuje pouze i4x4 a i16x16 - a máme z hlediska komprese problém nejen u videa, ale i u statické fotografie.

Srovnání jednotlivých formátů se zúčastnili:

  • x264 s nastavením --tune stillimage --preset placebo
  • VP8 prezentované kvalitnější než Googlovou implementací libvpx s nastavením --best
  • JPEG komprimovaný skrze ffmpeg a poté prohnaný bezztrátovým zmenšovadlem JPEGů zvaným jpgcrush (jistě existují lepší JPEG kompresory, ale berme to zkrátka tak, že Jason použil tento postup)

Pro test byl použit 200. snímek z Park-joy videa, výsledné velikosti souborů byly 154, resp. 155, resp. 156 kB, Jason je prezentoval převedené do bezztrátového PNG (neboť statický x264 a WebP nemají zrovna moc podporu v prohlížečích).

Google WebP: ukázka x264
Google WebP: ukázka VP8
Google WebP: ukázka JPEG

Svůj dojem již máte, Jason to vidí tak, že libvpx je nejhorší z testované skupiny. Ale proč? VP8 má přece daleko, opravdu daleko lepší kódování entropie (podrobně vysvětleno v článku o WebM) než JPEG, má lepší intra predikci než JPEG, tak kde je problém?

Jak již bylo řečeno, VP8 neumí 8x8 tranformaci, proto musí použít 4x4 a ztratí tak víc detailů, ale to není to hlavní. Dle Jasona prostě VP8 optimalizuje na PSNR (peak signal-to-noise ratio alias špičkový poměr signálu k šumu - dogma, kterým se zaklíná většina testerů porovnávajících kvalitu video formátů z hlediska komprese) a přitom ignoruje veškeré psychovisuální záležitosti, tedy to, jak subjektivně a nedokonale vnímá obraz lidské oko a jak flexibilně to pak mozek dekóduje. Pro srovnání ukazuje, co se stane s nejkvalitnějším výstupem z x264, když místo na kvalitu výstupu komprimujete s nastavením pro co nejlepší PSNR volbou --tune psnr --preset placebo, která vyřadí veškere "psy" optimalizace, jednu z nejsilnějších zbraní kodeku x264, resp. formátu H.264.

Google WebP: ukázka x264 PSNR

Optimalizace na PSNR "pošle do kytek" visuální kvalitu i u H.264. Jason k tomu dodává pouze to, co "tluče do hlavy" čtenářům svého blogu stále dokola: kvalita encoderu je důležitější než specifikace formátu samotná. x264 je stále H.264 bez ohledu na to, jestli je použit přepínač "PSNR", nebo "psy", ale rozdíl v kvalitě výstupu je obrovský.

Google WebP: ukázka Theora Ptalarbvorm

Na závěr tu máme pro srovnání ještě výstup z Ogg Theora, a to z nejkvalitnějšího buildu známého jako Theora 1.2 (Ptalarbvorm) - jeho schopnosti ve vidu posuďte sami na vlastní stránce. Právě o tom Ptalarbvorm build je: přidává Theoře psychovisuální optimalizace a rozdíl je obrovský (a to Theora zakládá na VP3, o mnoho generací starším formátu!).

Dovolte nám malou poznámku na závěr: Jasonův test berte s určitou rezervou. Jako zdroj pro srovnání je totiž použit kus "nějakého videa", poněkud nám uniká, proč Jason nepředhodil encoderům jako zdroj nějakou pořádnou fotografii z D-SLR exportovanou z RAWu třeba do PNG, prostě kvalitní bezztrátový zdroj s vysokým rozlišením. Snímek z videa o rozlišení 1920×1080 se nám k posuzování kvality komprese obrázků zdá jako nevhodný a nedostatečný.

Kapitoly článků
1.  Porovnání WebP s dalšími formáty

David "David Ježek" Ježek

Bývalý zdejší redaktor (2005-2017), nyní diskusní rejpal.

více článků, blogů a informací o autorovi

Diskuse ke článku WebP: Google VP8 pro kompresi obrázků a fotografií

Pondělí, 11 Říjen 2010 - 12:39 | neurol23 | tech programu je urcite vice, dalsi je napriklad...
Pondělí, 11 Říjen 2010 - 10:35 | Pitrs | Zujala mě ta část o zmenšovadle Jpeg - JPGCrush...
Neděle, 10 Říjen 2010 - 13:31 | no-X | Jaké výhody? Vždyť to byl kvalitou vůbec nejhorší...
Sobota, 9 Říjen 2010 - 17:35 | aja beja | sorry - (poplatky nezatizene)
Sobota, 9 Říjen 2010 - 17:33 | aja beja | Zajimalo by mne kdy se zacne mluvit o WebF (fonty...
Sobota, 9 Říjen 2010 - 13:38 | JirkaH76 | porno, kopirovani... a rozhodne ne cena, ALE...
Sobota, 9 Říjen 2010 - 10:37 | JVc | cenu. tecka. je to tak jak pise no-X marketing...
Sobota, 9 Říjen 2010 - 00:41 | JirkaH76 | bal bla bla. VHS vyhralo, protoze melo pro...
Pátek, 8 Říjen 2010 - 22:13 | Jiří Tužil | No to je spíš taková pohádka o volném trhu a...
Pátek, 8 Říjen 2010 - 22:12 | no-X | Četls' vůbec obsah článku?

Zobrazit diskusi