Concepts & Lab guides
Find explanations and interactive examples for the Lab’s tools and techniques.
57 guides
Algorithmic art: rules as an artistic material
Algorithmic art uses explicit procedures as part of making an image. The artist chooses the rules, input, constraints and decisions that turn computation into a work.
Anti-aliasing: sample edges without false structure
Aliasing occurs when a sampled grid cannot distinguish the variation in the original signal. Anti-aliasing reduces misleading patterns by filtering or integrating before sampling.
Bit depth and tonal steps
Bit depth describes how many binary digits encode a sample. More bits provide more representable levels, not necessarily more spatial detail.
Blur, denoising and sharpening
Neighborhood filters smooth or emphasize local variation. Averaging, rank selection and detail amplification solve different image problems.
Brushes, shapes and raster drawing
Raster drawing places marks directly into a layer’s pixel grid. Brush size, opacity, geometry and compositing determine which samples change.
Cellular automata: local rules, evolving patterns
A cellular automaton updates a grid of states using local rules. Complex-looking behavior can emerge from repeatedly applying the same small decision everywhere.
Chromatic adaptation and white points
Chromatic adaptation models how color coordinates change when the reference illumination changes while preserving a corresponding color appearance.
Clone stamp: paint from another part of an image
The clone stamp copies pixels from a source position to a destination stroke, preserving the spatial offset between the two.
Color adjustments: tone, hue, exposure and balance
Color adjustments remap the values of existing pixels. Different controls change different properties, even when several can make an image look brighter.
Color gamut mapping and clipping
A gamut is the set of colors a system can represent. Gamut mapping chooses a representable replacement for a requested color outside that set.
Color harmony: relationships on a hue wheel
Color harmony organizes a palette through relationships such as complementary, analogous and triadic hue spacing.
Color quantization: reduce an image to a palette
Color quantization replaces a large set of input colors with a smaller palette. The palette and assignment method determine what detail and relationships survive.
Color spaces: sRGB, CIELAB and OKLCH
A color space assigns coordinates to colors. The coordinate system affects interpolation, distance measurements and how adjustments behave.
Convolution kernels: calculate one pixel from its neighbors
A kernel combines each pixel with its neighbors. Change the weights to blur, sharpen, or find edges.
Delta E: measuring color difference
Delta E names a family of color-difference measures. ΔE76 is Euclidean distance in CIELAB; later formulas compensate for further perceptual unevenness.
Dithering: express missing tones with spatial patterns
Dithering distributes quantization decisions across neighboring pixels so a limited set of stored colors can suggest additional tones at viewing distance.
Domain warping: distort where a field is sampled
Domain warping changes the coordinates used to sample another function. A noise field bends another field’s domain before its values are evaluated.
Easing functions: shape the rate of change
An easing function maps a progress value to another progress value. It changes the pace of a transition while retaining its start and end.
Edge detection and gradient magnitude
Edge detection highlights local changes in an image. Gradient operators estimate change in horizontal and vertical directions and can combine them into a direction-independent magnitude.
Effect chains: order, parameters and reproducibility
An effect chain applies several operations in sequence, with each operation reading the previous result. Changing the order can change the image.
Elementary cellular automata and rule numbers
An elementary cellular automaton updates a one-dimensional row of binary cells from each cell and its two neighbors. Stacking generations makes a two-dimensional image.
Euclidean RGB distance
Euclidean RGB distance treats a color as a three-dimensional channel vector and measures a straight-line distance between two such vectors.
Exporting raster images and editable projects
An image export records rendered pixels. An editable project also stores the layers, frames and settings needed to continue composing.
Floyd–Steinberg error diffusion
Floyd–Steinberg dithering passes quantization error to four future neighbors using weights that sum to one.
Gamma expansion: decoding sRGB to linear light
Gamma expansion converts encoded color values into values proportional to light. For sRGB, the decoding curve has a linear segment near black and a power segment above it.
Glitch effects: pixel sorting, channel offsets and scanlines
Glitch treatments reorganize or modulate pixels to make digital structure visible. Their artifacts are deliberate operations rather than accidental file corruption.
Gradient mapping: recolor by tone
Gradient mapping replaces a pixel’s tonal value with a color sampled from a gradient. It recolors an existing image without changing its geometry.
Gradients: stops, geometry and interpolation
A gradient assigns colors by position. Its stops specify colors at particular locations, while geometry determines how canvas coordinates become positions along the gradient.
Halftoning and ordered screening
Halftoning uses spatial marks to suggest continuous tone. Mark size, spacing and arrangement determine how the eye combines them at a distance.
Image distortion: remap coordinates
A distortion changes where each output pixel reads its source. It transforms spatial relationships rather than directly changing the sampled color values.
Image kernels: blur, sharpen, emboss and directional edges
Image-kernel presets are particular coefficient choices for the same neighborhood operation. Their names describe a useful behavior, not a different editing system.
Image transforms: resize, rotate, flip and crop
Image transforms change a raster’s geometry. Some rearrange existing samples exactly; others must reconstruct pixels at new coordinates.
Interpolation and raster reconstruction
Interpolation estimates values between known samples. In raster work it determines how an image is reconstructed when positions or dimensions do not align with its pixel grid.
Julia sets: fix the rule, vary the starting point
A quadratic Julia-set image explores repeated z² + c with a fixed complex parameter c and a different starting z at each pixel.
Just-noticeable difference in color
A just-noticeable difference is a change an observer can detect under specified viewing conditions. It is an experimental threshold, not a universal property of a hex color.
Layers, alpha and blend modes
Layers combine several raster images into one composition. Their order, opacity and blend mode determine the visible result at each pixel.
Levels and curves: control the tone transfer
Levels and curves define how an input channel value becomes an output value. They make tonal compression, expansion and selective contrast explicit.
Luminance weighting and grayscale
Luminance weighting combines channels according to their contribution to a light-related signal. It gives green a larger weight than red or blue for sRGB primaries.
Manifold learning and color neighborhoods
Manifold learning studies lower-dimensional structure in high-dimensional data. In color analysis, it asks whether relationships between sampled colors can be represented more usefully in fewer coordinates.
Mathematical morphology: grow, shrink and extract shapes
Morphology transforms shapes by comparing a neighborhood defined by a structuring element. It works on binary images and can also operate on grayscale or channel values.
Noise octaves, FBM, turbulence and ridges
Noise octaves combine fields at progressively different frequencies and amplitudes. The sum determines both broad structure and fine detail.
Palette extraction: choose representative colors
Palette extraction summarizes an image with a small collection of colors. Different selection methods preserve different aspects of the source.
Perceptual uniformity in color spaces
A perceptually uniform color space aims to make similar coordinate distances correspond to similar perceived color differences.
Perlin noise: coherent variation from gradients
Perlin noise creates smooth spatial variation by interpolating contributions from gradients placed on a lattice.
Procedural generation: construct an image from rules
Procedural generation describes an image through rules and parameters rather than storing every design decision as an independently placed mark.
Procedural patterns: grids, tiles, waves and moiré
Procedural patterns describe repeated structure with rules. Spacing, orientation and local variation control how the rule becomes a raster image.
Procedural textures: build material-like structure
A procedural texture combines mathematical structure and color to suggest a surface without using a photograph of that surface.
Raster animation: frames, timing and onion skin
A raster animation is an ordered sequence of images shown over time. Frame rate controls how long each image remains visible.
Raster graphics: pixels, channels and resolution
A raster image stores a rectangular grid of color samples. Its pixel dimensions describe the image itself; zoom only changes how that grid is displayed.
Reaction–diffusion: Gray–Scott pattern formation
Reaction–diffusion combines local reactions with the spread of quantities through space. The Gray–Scott model can form spots, stripes and moving boundaries from two interacting fields.
Selections: constrain edits to a region
A selection specifies the part of an image an operation may change. The Lab uses rectangular selections in document-pixel coordinates.
Symmetry in raster drawing
Symmetry repeats a mark through geometric transformations. Mirroring reflects it; radial symmetry rotates copies around a center.
The Mandelbrot set and escape-time rendering
The Mandelbrot set contains complex parameters c for which repeated evaluation of z² + c, starting at zero, remains bounded.
Thresholding: fixed, Otsu and adaptive decisions
Thresholding assigns pixels to low or high values according to a tonal decision. The threshold can be global, estimated from a histogram, or adapted to a local neighborhood.
Vector quantization and palette clusters
Vector quantization represents many vectors with a smaller set of representative vectors. A color palette can act as that compact set.
White and Gaussian noise
Random-noise generators choose sample values from a distribution. The spatial relationship between samples and the value distribution are separate properties.
Worley noise and Voronoi fields
Worley noise derives a signal from distances to nearby feature points. Voronoi diagrams instead emphasize which feature point is nearest.
