Ukládání fotek JPG

Počítače stolní, notebooky, tablety, tiskárny, scanery a vše, co nějak souvisí s PC

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Habesan
Příspěvky: 6924
Registrován: 12 led 2009, 01:00
Bydliště: Plzeňsko
Kontaktovat uživatele:

#46 Příspěvek od Habesan »

Další nicneříkající článek o JPEG. Už když napsal, že JPEG se objevil na začátku 80. let...

Je sice pravda, že ve specifikaci je popsána možnost vypočítat kvantizační tabulku z Q-factoru, stejně jako můžeš používat defaultní tabulku uvedenou tamtéž, ale také je tam napsáno, že to dělat nemusíš, a tabulku můžeš vzít kde chceš, stejně musí být v souboru vložena.

PC01: Uchovávat originál je zlaté pravidlo každého zaznamenávání!
Mnohé foťáky umožňují ukládat data ve formátu, kterému se všeobecně říká RAW, údajně by to měla být surová data ze smímače, je otázka jestli snad nejsou komprimována alespoň nějak bezeztrátově, ale rozhodně to není JPEG, a někdy je ten soubor i menší, než jaký by ho ten foťák vytvořil v JPEG.

To, s jakou "qvuvalitou" byl ten soubor komprimovám zjistíš z kvantizačních tabulek, které začínají markerem FFDB, protože ty mají (při daném způsobu DCT) největší vliv na ztrátovost komprese (=zaokrouhlovací chybu).
Například IrfanView nastavený na "75" má tabulky:
08 06 06 07 06 05 08 07 07 07 09 09 08 0A 0C 14 0D 0C 0B 0B 0C 19 12 13 0F 14 1D 1A 1F 1E 1D 1A 1C 1C 20 24 2E 27 20 22 2C 23 1C 1C 28 37 29 2C 30 31 34 34 34 1F 27 39 3D 38 32 3C 2E 33 34 32
a
09 09 09 0C 0B 0C 18 0D 0D 18 32 21 1C 21 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32

Pak samozřejmě záleží na tom, jestli je to Baseline DCT (podle markeru FFC0) nebo Progressive DCT (podle markeru FFC2), nebo jiná varianta JPEG.

Tabulky definující Huffmanovy kódy (začínají FFC4) mají význam pro bezeztrátovou část komprese. Většina programů a prakticky všechny foťáky si to usnadňují tím, že použijí defaultní tabulky, a o to nižší komprese dosáhnou. Zrovna IrfanView, zdá se, používá optimalizované Huffmanovo kódování, to znamená že během komprimace vypracuje každému obrázku takový kód, se kterým dosáhne nejlepší kódování pro daný obrázek.

Vlastně jsem se algoritmem JPEG začal původně zabývat právě proto, že mám averzi k jeho ztrátovosti a zanechávání fragmentů, prostě abych poznal nepřítele.
Sháním hasičák s CO2 "sněhový", raději funkční.
(Nemusí mít platnou revizi.)
(Celkově budu raději, když se to obejde bez papírů.)

masar
Příspěvky: 12295
Registrován: 03 pro 2005, 01:00

#47 Příspěvek od masar »

Je vidět, že se vyznáš a proto byl ten článek tobě "nic neříkající". Mně ale dokázal vysvětlit základní principy lépe, než doporučení ITU.
Dosud jsem se o to, co se "skrývá" za posuvníkem v nastavení kvality JPEGu moc nezajímal. Jsou to pro mě hůře stravitelná témata. Nicméně ověřil jsem si funkčnost programu v Pascalu ze zmíněné stránky a něco jsem se tím také naučil.
:wink:

Uživatelský avatar
PC01
Příspěvky: 290
Registrován: 18 dub 2011, 02:00

#48 Příspěvek od PC01 »

Habesan:
Ty tabulky mi moc neříkají, nejsem programátor. Můžeš mi to říct něják aby to pochopil i laik?
Můj foťák udělá řekněme fotku, která má rozlišení 4000 x 3000, je v JPG a má velikost kolem 4 MB. Kde teda najdu tu tabulku a jak podle ní poznám, na kolik mám nastavit ten posuvník při opětovném ukládání, aby soubor zbytečně nezvětšoval, ale ani nekomprimoval víc než už je?
Ukládat to v tom PNG, to by znamenalo že z té původní fotky co měla 4 MB, udělám fotku která bude mít asi 15 MB. To se mi zdá zbytečné.

AmarokCZ
Příspěvky: 2838
Registrován: 20 pro 2006, 01:00
Bydliště: Poličské krystalinikum
Kontaktovat uživatele:

#49 Příspěvek od AmarokCZ »

PC01 píše:Kde teda najdu tu tabulku a jak podle ní poznám, na kolik mám nastavit ten posuvník při opětovném ukládání, aby soubor zbytečně nezvětšoval, ale ani nekomprimoval víc než už je?
Stačí číst co tu už bylo napsáno!
http://www.ebastlirna.cz/modules.php?na ... 447#505447
http://www.zvodovodu.cz/ | Pokud neodpovídám na téma a chce něco vědět, pište SZ!

Odpovědět

Zpět na „Výpočetní technika“