From alpha channel to WebAssembly — a concise, deep-linkable reference for every term that matters in image processing, compression, formats and web performance.
Compression
6 termsDCT (Discrete Cosine Transform)
#The mathematical transform that makes JPG compression work.
Decomposes an 8×8 pixel block into 64 frequency coefficients — low frequencies in the center, high frequencies at the edge. JPG quantizes high frequencies more aggressively because the eye perceives them less.
Visible compression traces from overly aggressive JPG.
Block artifacts (8×8 squares), mosquito noise (ringing around edges) and banding (steps in gradients) appear when quality is set too low or when an image is re-encoded as JPG multiple times in a row (generation loss).
Pixels stay byte-exact, only storage becomes more efficient.
PNG, WebP-Lossless and AVIF-Lossless work losslessly — no pixel is altered. Achieved through entropy coding (Deflate, Huffman) and prediction models.
Deliberately discards information the eye perceives poorly.
Uses psychovisual models to reduce data the human eye barely registers. JPG, WebP-Lossy and AVIF work this way. Invisible at the right quality setting (78–82 for JPG).
Mozilla encoder that produces JPG files 5–15% smaller than libjpeg.
Open-source fork of libjpeg-turbo (2014). Adds trellis quantization, optimized Huffman tables and a better default quantization matrix — fully compatible with any JPG decoder.
Rounding of DCT coefficients — the actual loss in JPG.
Each frequency coefficient is divided by a quantization table and rounded to an integer. High frequencies are quantized aggressively; low frequencies stay nearly intact. This is where the irretrievable loss happens.
Color & resolution
5 termsFourth image channel storing per-pixel transparency (0–255).
RGB + A. 0 = fully transparent, 255 = fully opaque. PNG and WebP support alpha; JPG does not.
Stores color information at lower resolution than luminance.
The eye is more sensitive to luminance than color. Standard notation: 4:4:4 (full color), 4:2:2 (half horizontal color), 4:2:0 (half horizontal + vertical — web default).
Color profile (ICC)
ICC-Profil#Defines how RGB values translate to actual displayed colors.
International Color Consortium Profile. Web standard is sRGB. Adobe RGB and Display-P3 cover wider gamuts but are ignored by older software.
Print dots vs. screen pixels per inch.
DPI (Dots Per Inch) is a print metric, PPI (Pixels Per Inch) a screen metric. Often used interchangeably in web contexts; technically PPI is correct. Print standard quality: 300 DPI at final print size.
Retina / Device Pixel Ratio
#Displays with double (or higher) pixel density.
Apple's marketing term for displays with 2× or 3× DPR. For sharp rendering, a 600 px container must load a 1200 px image, otherwise the result looks soft.
Web & performance
5 termsCLS (Cumulative Layout Shift)
#Measures how much layout elements shift during loading.
Images without explicit `width`/`height` attributes cause layout shifts and worsen the CLS value. Google recommends CLS below 0.1.
Core Web Vitals
Core Web Vitals#Google's metric set for user experience — LCP, INP, CLS.
Official Google ranking factor since 2021. Images directly affect LCP (load time) and CLS (layout stability).
Load images only when they scroll into the viewport.
Natively supported via `loading="lazy"` since 2019. Saves initial bandwidth and improves LCP. Hero images should explicitly use `loading="eager"`.
LCP (Largest Contentful Paint)
#Most important Core Web Vitals metric — time to largest visible element.
Measures the render time of the largest content element in the viewport. Target: under 2.5 seconds. Images often cause the LCP and need to be loaded with appropriate priority.
HTML attributes for serving correctly sized images per device.
With `srcset` you list image variants at different resolutions; the browser auto-picks the optimal one for viewport and DPR. `<picture>` adds format switching for AVIF/WebP fallbacks.