Obrázek JPEG (.jpg)
ISO/IEC StandardníJPEG je nejpoužívanější standard ztrátové komprese pro digitální fotografii a webovou grafiku, který využívá vyšší citlivost lidského oka na svítivost (luminanci) než na barvu (chrominanci).
Převést PNG na JPG
Bezplatný konvertor z PNG do JPG v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.
Komprese JPG online
Soukromě - soubory nikdy neopustí vaše zařízení
Kontrola a metadata
Operační systémy a analyzátory souborů identifikují soubory JPG kontrolou počáteční binární sekvence bajtů:
Podpis hlavičky na úrovni bajtů (Magic Bytes)
Operační systémy a analyzátory souborů identifikují soubory JPG kontrolou počáteční binární sekvence bajtů:
HEXADECIMÁLNÍ PODPIS (POSUN 0):
FF D8 FFASCII REPREZENTACE: ÿØÿ
Standardizace: ISO/IEC 10918-1 / ITU-T T.81
Technické specifikace
| Architektura kontejneru | Binární proud oddělený značkami (s předponou 0xFF) zabalený v hlavičkách JFIF nebo EXIF |
| Komprese | Ztrátová diskrétní kosinová transformace (DCT) + kódování délky běhu a Huffmanovo entropické kódování |
| Pořadí bajtů | Big-Endian pro délky značek a kvantizační tabulky; Exif může být Little (II) nebo Big (MM) |
| Barevné prostory | sRGB, Adobe RGB, CMYK, Y'CbCr, Grayscale |
| Kanály a struktura | 8 bitů na kanál (24bitové Truecolor) nebo 8bitová škála šedi |
| Max. rozměry | 65 535 x 65 535 pixelů (2bajtová celá čísla bez znaménka) |
| Průhlednost | Žádná (pouze neprůhledné obrázky; bez podpory alfa kanálu) |
| Streamování a progresivní načítání | Progresivní kódování JPEG ukládá vícenásobné spektrální průchody od nízkého po vysoké rozlišení |
Technická srovnávací matice: JPG vs konkurence
| Technický atribut | JPG (Aktuální) | WebP | AVIF | PNG |
|---|---|---|---|---|
| Kompresní paradigma | Ztrátové DCT + Huffmanovo kódování | Ztrátové (VP8) a bezztrátové | Ztrátové (AV1) a bezztrátové | Bezeztrátová komprese Deflate |
| Alfa průhlednost | Bez podpory alfa kanálu (vždy neprůhledné obrázky) | 8bitová alfa průhlednost | 8bitová / 10bitová / 12bitová alfa | Plná 8bitová / 16bitová alfa |
| Hardwarové dekódování | Podpora specializovaného hardwarového dekódování JPEG závisí na čipu a zařízení. | Rozšířené hardwarové dekódování v moderních SoC | Rychle se rozšiřující hardwarové dekódování v moderních GPU | Rychlé dekódování založené na CPU |
| Kompresní účinnost | Dobrý základ pro fotografie | Může být menší než JPEG; výsledek závisí na obrázku a kodéru | Může být menší než JPEG; výsledek závisí na obrázku a kodéru | Neefektivní pro fotografický obsah |
| Barevná hloubka | Standardních 8 bitů na kanál (24bitové Truecolor) | 8 bitů na kanál | 10bitový a 12bitový HDR gamut širokého barevného prostoru | 8 bitů a 16 bitů na kanál |
Běžné režimy poškození a příručka pro obnovení v hex
Prohlížeč obrázků hlásí „Předčasný konec souboru JPEG" nebo je dolní část fotografie jednobarevně šedá či s barevnými pruhy.
Hlavní příčina: Nedokončené stahování nebo neúplný zápis na úložiště, kde chybí koncová značka 0xFFD9 (EOI) a data skenu obrázku.
Obnovení: Připojte značku 0xFFD9 na konec zkráceného proudu, což dekodérům umožní zobrazit nepoškozenou horní část fotografie.
Barvy obrázku působí silně posunuté, inverzní nebo psychedelické.
Hlavní příčina: Invertovaná hlavička barevného prostoru CMYK nebo neplatný vložený profil ICC.
Obnovení: Převeďte barevný prostor z CMYK do sRGB pomocí nástroje ImageMagick („magick broken.jpg -colorspace sRGB fixed.jpg").
Soubor se nepodaří otevřít a zobrazí se hlášení „Nalezena neplatná značka".
Hlavní příčina: Poškození bitů uvnitř hlaviček kvantizační tabulky (DQT 0xFFDB) nebo Huffmanovy tabulky (DHT 0xFFC4).
Obnovení: Nahraďte poškozené značky hlaviček standardními základními Huffmanovými a kvantizačními tabulkami JFIF extrahovanými z neporušeného souboru JPEG.
Bezpečnostní analýza a vektory útoků na parser
Zabezpečení formátu JPEG se týká především úniků soukromí v metadatech (EXIF) a přetečení vyrovnávací paměti ve starších dekodérech v jazyce C (libjpeg).
Známé vektory útoků
- Zveřejnění citlivých metadat: Neodstraněné hlavičky EXIF obsahující souřadnice GPS, sériová čísla fotoaparátů a náhledové miniatury.
- Přetečení čtení vyrovnávací paměti a celočíselná přetečení při parsování ve starší knihovně libjpeg poškozující restartovací značky (RST) nebo skripty progresivního skenování.
- Polyglotní soubory kombinující hlavičky JPEG se spustitelnými archivy ZIP nebo RAR.
Doporučené bezpečnostní postupy: Při publikování uživatelských fotografií vždy odstraňte EXIF a metadata geografické polohy GPS, abyste chránili soukromí uživatelů. Používejte moderní dekodéry bezpečné pro paměť (například image-rs v jazyce Rust) nebo izolované dekodéry WebAssembly.
Historický vývoj a milníky
Klíčové výhody a přednosti
- Dekódování JPEG široce podporují obrazové programy a zařízení, kompatibilita se však liší podle zařízení a aplikace.
- Vynikající kompresní poměry (10:1 až 20:1) pro fotografické spojité tóny.
- Malý objem dat a možnost progresivního vykreslování.
Technická omezení a nevýhody
- Ztrátová komprese způsobuje kompresní artefakty (kroužkování a čtverečkování) podél ostrých hran.
- Žádná podpora kanálu průhlednosti.
- Ke ztrátě generace dochází při každém dekomprimování, úpravě a opětovném uložení souboru.
Zajímavé technické drobnosti
- Klasický zkušební snímek „Lenna", který se používal při vývoji komprese JPEG, byl naskenován z vydání magazínu Playboy z listopadu 1972.
- Podvzorkování JPEG 4:2:0 snižuje barevné rozlišení na polovinu v horizontálním i vertikálním směru, přičemž vnímatelné zhoršení kvality je téměř nulové.
- Každý standardní JPEG začíná značkou 0xFFD8 (Start of Image) a končí značkou 0xFFD9 (End of Image).
Často kladené technické otázky
Proč vícenásobné uložení souboru JPEG snižuje kvalitu obrazu?
JPEG je nevratně ztrátový kompresní formát. Pokaždé, když JPEG dekomprimujete a znovu uložíte, krok kvantizace DCT zahodí vysokofrekvenční prostorové detaily a znovu aproximuje bloky pixelů 8x8, což způsobuje kumulativní artefakty „ztráty generace“.
Co je to progresivní JPEG a proč je užitečný?
Standardní základní JPEG se dekóduje po řádcích shora dolů. Progresivní JPEG ukládá obrazová data v několika spektrálních průchodech, což prohlížečům umožňuje okamžitě vykreslit nízkorozlišené rozostření celého obrázku a postupně jej zostřovat při stahování dalších bajtů.
Co je to podvzorkování chrominance (4:2:0 vs 4:4:4)?
Lidská sítnice má více tyčinek (luminance/jas) než čípků (barva). JPEG toho využívá tak, že zachovává plné rozlišení jasu (Y) a přitom o polovinu snižuje rozlišení barvy (Cb, Cr) horizontálně i vertikálně (4:2:0), čímž před kompresí odstraní 50 % surových dat s nepostřehnutelnou ztrátou.
Může mít obrázek JPEG průhledné pozadí?
Ne. Standardní specifikace JPEG nepočítá s alfa kanálem. Pokud je požadována průhlednost, musíte obrázek převést do formátu WebP, AVIF nebo PNG.
Související konverzní páry pro JPG
Konverze rastrových obrázků PNG do formátu JPEG zmenšuje velikost souboru pomocí ztrátové komprese, což urychluje načítání obrázků na webu a šetří úložný prostor.
Převod ztrátového rastrového obrázku JPEG na bezztrátový rastrový obrázek PNG zabraňuje dalším ztrátám kvality při opakovaném ukládání a přidává podporu průhlednosti alfa kanálu.
Převod obrázků JPEG do WebP může při srovnatelné vizuální kvalitě zmenšit velikost souboru; výsledek však závisí na obsahu obrázku a nastavení kódování.
Převod statického obrázku WebP na JPEG může usnadnit jeho použití v softwaru, který WebP nepodporuje; JPEG nezachovává průhlednost ani animaci.
Převod fotografií HEIC na obrázky JPEG mění výchozí formát fotoaparátu Apple na univerzálně čitelné rastrové soubory pro starší software a webové prohlížeče.
Převod obrázků AVIF do JPEG může pomoci při práci se starším softwarem, který nepodporuje formát obrázků AV1.
Převod staršího obrázku JPEG na formát AVIF významně zmenšuje velikost souboru při zachování vysoké vizuální věrnosti díky moderní technologii kódování videa.
Převeďte objemné kompozice Adobe Photoshop PSD na kompaktní fotografie JPEG s univerzálním zobrazením.