JPEG-afbeelding (.jpg)

ISO/IEC Standaard

JPEG is de meest gebruikte standaard voor compressie met verlies voor digitale fotografie en webafbeeldingen, waarbij gebruik wordt gemaakt van de grotere gevoeligheid van het menselijk oog voor luminantie ten opzichte van chrominantie.

PNG naar JPG converteren

Gratis PNG-naar-JPG-converter in uw browser. Converteer bestanden direct op uw apparaat.

JPG online comprimeren

Privé - bestanden verlaten uw apparaat niet

Inspecteren en metadata

Besturingssystemen en bestandsanalysators herkennen JPG-bestanden aan de hand van de eerste binaire bytesequentie:

Selecteer of sleep bestanden hierheen

Privé - bestanden verlaten uw apparaat niet

of plak Ctrl+V
Privacygarantie zonder netwerktransmissie: 0 bytes geüpload naar externe servers. Alle verwerking vond lokaal plaats in uw browser-sandbox.

Bestandshandtekening op byteniveau (magic bytes)

Besturingssystemen en bestandsanalysators herkennen JPG-bestanden aan de hand van de eerste binaire bytesequentie:

HEX-HANDTEKENING (OFFSET 0):

FF D8 FF

ASCII-WEERGAVE: ÿØÿ

Standaardisatie: ISO/IEC 10918-1 / ITU-T T.81

Technische specificaties

ContainerarchitectuurDoor markers afgebakende binaire stroom (0xFF-voorvoegsel) verpakt in JFIF- of EXIF-headers
CompressieDiscrete cosinustransformatie (DCT) met verlies + run-length- en Huffman-entropiecodering
Bytevolgorde (endianness)Big-Endian voor markerlengten en kwantisatietabellen; Exif kan Little (II) of Big (MM) zijn
KleurruimtensRGB, Adobe RGB, CMYK, Y'CbCr, Grijstinten
Kanalen en structuur8-bit per kanaal (24-bit Truecolor) of 8-bit grijstinten
Maximale afmetingen65.535 x 65.535 pixels (gehele getallen zonder teken van 2 bytes)
TransparantieGeen (alleen opaak; geen ondersteuning voor alfakanaal)
Streaming en progressiefProgressieve JPEG-codering slaat meerdere spectrale passes op van lage naar hoge resolutie

Technische vergelijkingsmatrix: JPG versus concurrenten

Technisch kenmerkJPG (Huidig)WebPAVIFPNG
CompressieparadigmaDCT met verlies + Huffman-coderingMet verlies (VP8) en verliesvrijMet verlies (AV1) en verliesvrijVerliesvrije Deflate
AlfatransparantieGeen ondersteuning voor alfakanaal (altijd opaak)8-bit alfatransparantie8-bit / 10-bit / 12-bit alfaVolledige 8-bit / 16-bit alfa
Hardwarematige decoderingHardwarematige decodering is beschikbaar op veel GPU's en mobiele SoC's; ondersteuning verschilt per chip en apparaatWijdverbreide hardwaredecodering in moderne SoC'sSnel uitbreidende hardwaredecodering in moderne GPU'sSnelle decodering op basis van CPU
Compressie-efficiëntieGoed uitgangspunt voor foto'sKan kleiner zijn dan JPEG; resultaten verschillen per afbeelding en encoderKan kleiner zijn dan JPEG; resultaten verschillen per afbeelding en encoderInefficiënt voor fotografische inhoud
KleurbitdiepteStandaard 8-bit per kanaal (24-bit Truecolor)8-bit per kanaal10-bit en 12-bit HDR met breed kleurengamma8-bit en 16-bit per kanaal

Veelvoorkomende beschadigingen en gids voor hex-herstel

De afbeeldingsviewer toont 'Premature end of JPEG file' of het onderste deel van de foto is effen grijs of vertoont kleurige banden.

Oorzaak: Afgebroken download of onvolledige schrijfactie naar de opslag, waarbij de afsluitende marker 0xFFD9 (EOI) en de scangegevens van de afbeelding ontbreken.

Herstel: Voeg marker 0xFFD9 toe aan het einde van de afgeknotte stroom zodat decoders het intacte bovenste deel van de foto kunnen weergeven.

Afbeeldingskleuren lijken sterk verschoven, omgekeerd of psychedelisch.

Oorzaak: CMYK-kleurruimteheader omgekeerd of ongeldig ingebed ICC-profiel.

Herstel: Converteer de kleurruimte van CMYK naar sRGB met ImageMagick ('magick broken.jpg -colorspace sRGB fixed.jpg').

Bestand kan niet worden geopend en meldt 'Invalid marker found'.

Oorzaak: Bitcorruptie in de headers van de kwantisatietabel (DQT 0xFFDB) of de Huffman-tabel (DHT 0xFFC4).

Herstel: Vervang de beschadigde headermarkers door standaard baseline JFIF Huffman- en kwantisatietabellen geëxtraheerd uit een intacte JPEG.

Beveiligingsanalyse en aanvalsvectoren voor parsers

JPEG-beveiliging draait voornamelijk om privacylekken via metadata (EXIF) en bufferoverflows in verouderde C-decoders (libjpeg).

Bekende aanvalsvectoren

  • Openbaarmaking van gevoelige metadata: niet-verwijderde EXIF-headers met GPS-coördinaten, serienummers van camera's en miniatuurweergaven.
  • Buffer-over-reads en integeroverflows in verouderde libjpeg-versies bij het parseren van beschadigde herstartmarkers (RST) of progressieve scanscripts.
  • Polyglot-bestanden die JPEG-headers combineren met uitvoerbare ZIP- of RAR-archieven.

Aanbevolen beveiligingspraktijken: Verwijder altijd EXIF- en GPS-geolocatiemetadata wanneer u foto's van gebruikers publiceert, om hun privacy te beschermen. Gebruik moderne geheugenveilige decoders (zoals image-rs in Rust) of WebAssembly-decoders in een sandbox.

Historische oorsprong en mijlpalen

1998JFIF- en EXIF-containerstandaarden maken JPEG dominant in digitale camera's.
1992JPEG-specificatie goedgekeurd als ISO/IEC 10918-1.
1986Joint Photographic Experts Group opgericht onder ISO en CCITT.

Belangrijkste voordelen

  • JPEG-decodering wordt breed ondersteund door beeldsoftware en -hardware, hoewel de compatibiliteit per apparaat en toepassing verschilt.
  • Uitstekende compressieverhoudingen (10:1 tot 20:1) voor continue fotografische tonen.
  • Klein formaat met progressieve weergavemogelijkheid.

Technische beperkingen

  • Compressie met verlies veroorzaakt compressie-artefacten (ringing en blokvorming) langs scherpe randen.
  • Geen ondersteuning voor alfakanaal.
  • Generatieverlies treedt op telkens wanneer een bestand wordt gedecomprimeerd, bewerkt en opnieuw opgeslagen.

Interessante technische weetjes

  • De klassieke 'Lenna'-testafbeelding die werd gebruikt om JPEG-compressie te ontwikkelen, werd gescand uit de uitgave van november 1972 van het tijdschrift Playboy.
  • JPEG 4:2:0-subsampling halveert de chromaresolutie zowel horizontaal als verticaal, met nauwelijks waarneembaar kwaliteitsverlies.
  • Elke standaard JPEG begint met marker 0xFFD8 (Start of Image) en eindigt met 0xFFD9 (End of Image).

Veelgestelde technische vragen

Waarom vermindert het meerdere keren opslaan van een JPEG-bestand de beeldkwaliteit?

JPEG is een compressieformaat met onomkeerbaar verlies. Elke keer dat u een JPEG decomprimeert en opnieuw opslaat, verwijdert de DCT-kwantisatiestap hoogfrequente ruimtelijke details en worden de 8x8-pixelblokken opnieuw benaderd, wat cumulatieve artefacten door generatieverlies veroorzaakt.

Wat is progressieve JPEG en waarom is dit handig?

Een standaard baseline JPEG decodeert scanline voor scanline van boven naar beneden. Progressieve JPEG codeert afbeeldingsdata in meerdere spectrale doorgangen, waardoor browsers direct een onscherpe weergave in lage resolutie van de hele afbeelding kunnen renderen en deze geleidelijk scherper maken naarmate bytes worden gedownload.

Wat is kleursubsampling (4:2:0 vs 4:4:4)?

Het menselijk netvlies heeft meer staafjes (voor luminantie/helderheid) dan kegeltjes (voor kleur). JPEG benut dit door de volledige helderheidsresolutie (Y) te behouden en de kleurresolutie (Cb, Cr) horizontaal en verticaal te halveren (4:2:0). Zo wordt vóór de compressie 50% van de ruwe gegevens weggelaten, met een onmerkbaar verlies.

Kan een JPEG-afbeelding een transparante achtergrond hebben?

Nee. De standaard JPEG-specificatie heeft geen concept van een alfakanaal. Als transparantie is vereist, moet u de afbeelding converteren naar WebP, AVIF of PNG.

Gerelateerde conversieparen voor JPG

PNG naar JPG

Het converteren van PNG-rasterafbeeldingen naar het JPEG-formaat verkleint de bestandsgrootte door compressie met verlies (lossy) toe te passen. Hierdoor laden afbeeldingen sneller op websites en gebruiken ze minder opslagruimte.

JPG naar PNG

Het converteren van een JPEG-rasterafbeelding met verlies naar een verliesvrije PNG-rasterafbeelding voorkomt verder generatieverlies en voegt ondersteuning voor transparantie via een alfakanaal toe.

JPG naar WEBP

Het converteren van JPEG-afbeeldingen naar WebP kan de bestandsgrootte verkleinen bij een vergelijkbare visuele kwaliteit, hoewel de resultaten variëren per afbeeldingsinhoud en coderingsinstellingen.

WEBP naar JPG

Het converteren van WebP naar JPEG kan een stilstaande afbeelding makkelijker te gebruiken maken in software die geen WebP ondersteunt; JPEG behoudt geen transparantie of animatie.

HEIC naar JPG

Het converteren van HEIC-foto's naar JPEG-afbeeldingen zet het standaard cameraformaat van Apple om in breed leesbare rasterbestanden voor oudere software en webbrowsers.

AVIF naar JPG

Het converteren van AVIF-afbeeldingen naar JPEG kan helpen bij oudere software die het AV1 Image File Format niet ondersteunt.

JPG naar AVIF

Het converteren van een verouderde JPEG-afbeelding naar een AVIF-afbeelding verkleint de bestandsgrootte aanzienlijk met behoud van een hoge visuele natuurgetrouwheid dankzij geavanceerde moderne videocoderingstechnologie.

PSD naar JPG

Converteer zware Adobe Photoshop PSD-composities naar compacte, overal te bekijken JPEG-foto's.