Joint Photographic Experts Group (.jpg)

ISO/IEC Standartinis

JPEG is the most widely adopted lossy compression standard for digital photography and web imagery, exploiting the human eye's higher sensitivity to luminance over chrominance.

Konvertuoti PNG į JPG

Nemokamas PNG į JPG konverteris naršyklėje. Konvertuokite failus akimirksniu savo įrenginyje.

Glaudinkite JPG internetu

100% privatus glaudinimas naršyklėje – failai niekada nepalieka jūsų įrenginio

Tikrinti ir metaduomenys

Operacinės sistemos ir failų analizatoriai atpažįsta JPG failus tikrindami pradinę dvejetainę baitų seką:

Pasirinkite arba tempkite failus

Pasirinkite arba nuvilkite failus čia

100% privatus konvertavimas naršyklėje - failai niekada nepalieka jūsų įrenginio

arba įklijuokite Ctrl+V
Nulinio tinklo perdavimo privatumo garantija: 0 baitų įkelta į išorinius serverius. Visas apdorojimas vyko vietoje, jūsų naršyklės smėlio dėžėje (sandbox).

Baitų lygio antraštės parašas (magiškieji baitai)

Operacinės sistemos ir failų analizatoriai atpažįsta JPG failus tikrindami pradinę dvejetainę baitų seką:

ŠEŠIOLIKTAINIS PARAŠAS (POSLINKIS 0):

FF D8 FF

ASCII ATVAIZDAVIMAS: ÿØÿ

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

Techninės specifikacijos

Konteinerio architektūraMarker-delimited binary stream (0xFF prefix) wrapped in JFIF or EXIF headers
GlaudinimasLossy Discrete Cosine Transform (DCT) + Run-length & Huffman entropy coding
Baitų seka (Endianness)Big-Endian for marker lengths and quantization tables; Exif can be Little (II) or Big (MM)
Spalvų erdvėssRGB, Adobe RGB, CMYK, Y'CbCr, Grayscale
Kanalai ir struktūra8-bit per channel (24-bit Truecolor) or 8-bit Grayscale
Maksimalūs matmenys65,535 x 65,535 pixels (2-byte unsigned integers)
SkaidrumasNone (Opaque only; no alpha channel support)
Srautas ir progresyvusis įkėlimasProgressive JPEG encoding stores multiple spectral passes from low to high resolution

Techninė palyginimo matrica: JPG vs konkurentai

Techninis atributasJPG (Dabartinis)WebPAVIFPNG
Compression ParadigmLossy DCT + Huffman codingLossy (VP8) & LosslessLossy (AV1) & LosslessLossless Deflate
Alpha TransparencyNo alpha channel support (always opaque)8-bit alpha transparency8-bit / 10-bit / 12-bit alphaFull 8-bit / 16-bit alpha
Hardware Decoding100% dedicated silicon in virtually every GPU and mobile SoCWidespread hardware decode in modern SoCsRapidly expanding hardware decode in modern GPUsCPU-based fast decode
Compression EfficiencyGood baseline for photographs25%-35% smaller than JPEG at equal quality40%-55% smaller than JPEG at equal qualityInefficient for photographic content
Color Bit DepthStandard 8-bit per channel (24-bit Truecolor)8-bit per channel10-bit & 12-bit HDR wide color gamut8-bit & 16-bit per channel

Dažni sugadinimo režimai ir šešioliktainio atkūrimo vadovas

⚠️ Image viewer shows 'Premature end of JPEG file' or the lower portion of the photo is solid gray or colorful banding.

Pirminė priežastis: Truncated download or incomplete storage write missing the 0xFFD9 (EOI) trailer marker and image scan payload.

Atkūrimas: Append marker 0xFFD9 to the end of the truncated stream to allow decoders to display the intact upper portion of the photograph.

⚠️ Image colors appear heavily shifted, inverted, or psychedelic.

Pirminė priežastis: CMYK color space header inverted or invalid embedded ICC profile.

Atkūrimas: Convert the color space from CMYK to sRGB using ImageMagick ('magick broken.jpg -colorspace sRGB fixed.jpg').

⚠️ File fails to open and reports 'Invalid marker found'.

Pirminė priežastis: Bit corruption inside the Quantization Table (DQT 0xFFDB) or Huffman Table (DHT 0xFFC4) headers.

Atkūrimas: Replace the damaged header markers with standard baseline JFIF Huffman and Quantization tables extracted from an intact JPEG.

Saugumo analizė ir analizatoriaus atakos vektoriai

JPEG security primarily involves metadata privacy leaks (EXIF) and buffer overflows in legacy C decoders (libjpeg).

Žinomi atakos vektoriai

  • Sensitive metadata disclosure: Unstripped EXIF headers containing GPS coordinates, camera serial numbers, and thumbnail previews.
  • Buffer over-reads and integer overflows in legacy libjpeg parsing corrupt restart markers (RST) or progressive scan scripts.
  • Polyglot files combining JPEG headers with executable ZIP or RAR archives.

Geriausia apsaugos praktika: Always strip EXIF and GPS geolocation metadata when publishing user photos to protect user privacy. Use modern memory-safe decoders (such as image-rs in Rust) or sandboxed WebAssembly decoders.

Istorinė kilmė ir svarbiausi etapai

1998JFIF and EXIF container standards establish digital camera dominance.
1992JPEG specification ratified as ISO/IEC 10918-1.
1986Joint Photographic Experts Group founded under ISO and CCITT.

Pagrindiniai privalumai

  • 100% universal hardware and software decoding support across all computers and cameras.
  • Excellent compression ratios (10:1 to 20:1) for photographic continuous tones.
  • Small payload footprint with progressive rendering capability.

Techniniai apribojimai ir trūkumai

  • Lossy compression causes compression artifacts (ringing and blockiness) along sharp edges.
  • No transparency channel support.
  • Generation loss occurs every time a file is decompressed, edited, and re-saved.

Įdomūs techniniai faktai

  • The classic 'Lenna' test image used to develop JPEG compression was scanned from the November 1972 issue of Playboy magazine.
  • JPEG 4:2:0 subsampling halves chroma resolution both horizontally and vertically with near-zero perceptual degradation.
  • Every standard JPEG begins with marker 0xFFD8 (Start of Image) and ends with 0xFFD9 (End of Image).

Dažniausiai užduodami techniniai klausimai

Why does saving a JPEG file multiple times reduce image quality?

JPEG is an irreversibly lossy compression format. Each time you decompress and re-save a JPEG, the DCT quantization step discards high-frequency spatial details and re-approximates 8x8 pixel blocks, causing cumulative 'generation loss' artifacts.

What is Progressive JPEG and why is it useful?

A standard baseline JPEG decodes scanline by scanline from top to bottom. Progressive JPEG encodes image data in multiple spectral passes, allowing browsers to render a low-resolution blur of the entire image instantly and sharpen it progressively as bytes download.

What is Chroma Subsampling (4:2:0 vs 4:4:4)?

The human retina has more rod cells (luminance/brightness) than cone cells (color). JPEG exploits this by preserving full brightness resolution (Y) while halving color resolution (Cb, Cr) horizontally and vertically (4:2:0), shedding 50% of the raw data before compression with imperceptible loss.

Can a JPEG image have a transparent background?

No. The standard JPEG specification has no concept of an alpha channel. If transparency is required, you must convert the image to WebP, AVIF, or PNG.