Digital compositing

Digital compositing is the process of digitally assembling multiple images to make a final image, typically for print, motion pictures or screen display. It is the evolution into the digital realm of optical film compositing.



The basic operation used is known as 'alpha blending', where an opacity value, 'α' is used to control the proportions of two input pixel values that end up a single output pixel.

Consider three pixels;

  • a foreground pixel, f
  • a background pixel, b
  • a composited pixel, c


  • α, the opacity value of the foreground pixel. (α=1 for opaque foreground, α=0 for a completely transparent foreground). A monochrome raster image where the pixel values are to be interpreted as alpha values is known as a matte.

Then, considering all three colour channels, and assuming that the colour channels are expressed in a γ=1 colour space (that is to say, the measured values are proportional to light intensity), we have:

cr = α fr + (1 − α) br
cg = α fg + (1 − α) bg
cb = α fb + (1 − α) bb

Note that if the operations are performed in a colour space where γ is not equal to 1 then the operation will lead to non-linear effects which can potentially be seen as aliasing artifacts (or 'jaggies') along sharp edges in the matte. More generally, nonlinear compositing can have effects such as "halos" around composited objects, because the influence of the alpha channel is non-linear. It is possible for a compositing artist to compensate for the effects of compositing in non-linear space.

Performing alpha blending is an expensive operation if performed on an entire image or 3D scene. If this operation has to be done in real time video games there is an easy trick to boost performance.

cout = α fin + (1 − α) bin
cout = α fin + bin − α bin
cout = bin + α (fin − bin)

By simply rewriting the mathematical expression one can save 50% of the multiplications required.

Algebraic properties

When many partially transparent layers need to be composited together, it is worthwhile to consider the algebraic properties of compositing operators used. Specifically, the associativity and commutativity determine when repeated calculation can or cannot be avoided.

Consider the case when we have four layers to blend to produce the final image: F=A*(B*(C*D)) where A, B, C, D are partially transparent image layers and "*" denotes a compositing operator (with the left layer on top of the right layer). If only layer C changes, we should find a way to avoid re-blending all of the layers when computing F. Without any special considerations, four full-image blends would need to occur. For compositing operators that are commutative, such as additive blending, it is safe to re-order the blending operations. In this case, we might compute T=A*(B*D) only once and simply blend T*C to produce F, a single operation. Unfortunately, most operators are not commutative. However, many are associative, suggesting it is safe to re-group operations without changing their order. In this case we may compute S=A*B once and save this result. To form F with an associative operator, we need only do two additional compositing operations to integrate the new layer C: F=S*(C*D). Note that this expression indicates compositing C with all of the layers below it in one step and then blending all of the layers on top of it with the previous result to produce the final image in the second step.

If all layers of an image change regularly but a large number of layer still need to be composited (such as in distributed rendering), the commutativity of a compositing operator can still be exploited to speed up computation through parallelism even when there is no gain from pre-computation. Again, consider the image F=A*(B*(C*D)). Each compositing operation in this expression depends on the next, leading to serial computation. However, commutativity can allow us to rewrite F=(A*B)*(C*D) where there are clearly two operations that do not depend on each other that may be executed in parallel. In general, we can build a tree of pair-wise compositing operations with a height that is logarithmic in the number of layers.


The most historically significant nonlinear compositing system was the Cineon, which operated in a logarithmic color space, which more closely mimics the natural light response of film emulsions (the Cineon system, made by Kodak, is no longer in production). Due to the limitations of processing speed and memory, compositing artists did not usually have the luxury of having the system make intermediate conversions to linear space for the compositing steps. Over time, the limitations have become much less significant, and now most compositing is done in a linear color space, even in cases where the source imagery is in a logarithmic color space.

Compositing often also includes scaling, retouching and colour correction of images.

Node-based and layer-based compositing

There are two radically different digital compositing workflows: node-based compositing and layer-based compositing.

Node-based compositing represents an entire composite as a tree graph, linking media objects and effects in a procedural map, intuitively laying out the progression from source input to final output, and is in fact the way all compositing applications internally handle composites. This type of compositing interface allows great flexibility, including the ability to modify the parameters of an earlier image processing step "in context" (while viewing the final composite). Node-based compositing packages often handle keyframing and time effects poorly, as their workflow does not stem directly from a timeline, as do layer-based compositing packages. Software which incorporates a node based interface include Apple Shake, Blender, eyeon Fusion, and Foundry Nuke.

Layer-based compositing represents each media object in a composite as a separate layer within a timeline, each with its own time bounds, effects, and keyframes. All the layers are stacked, one above the next, in any desired order; and the bottom layer is usually rendered as a base in the resultant image, with each higher layer being progressively rendered on top of the previously composited of layers, moving upward until all layers have been rendered into the final composite. Layer-based compositing is very well suited for rapid 2D and limited 3D effects such as in motion graphics, but becomes awkward for more complex composites entailing a large number of layers. A partial solution to this is some programs' ability to view the composite-order of elements (such as images, effects, or other attributes) with a visual diagram called a flowchart to nest compositions, or "comps," directly into other compositions, thereby adding complexity to the render-order by first compositing layers in the beginning composition, then combining that resultant image with the layered images from the proceeding composition, and so on. An example of this exists in the Adobe program After Effects.

See also

Further reading

  • T. Porter and T. Duff, "Compositing Digital Images", Proceedings of SIGGRAPH '84, 18 (1984).
  • The Art and Science of Digital Compositing (ISBN 0-12-133960-2)

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Digital Compositing — VP The process of digitally assembling multiple images to make a final image. Adobe After Effects, Apple Shake and Autodesk Smoke are digital compositing applications …   Audio and video glossary

  • Compositing — (englisch für Zusammensetzung, Mischung) ist ein Begriff aus der Video und Filmtechnik und findet in der Postproduktion eines Filmes als visueller Effekt Anwendung. Im Compositing werden zwei oder mehr voneinander getrennt aufgenommene oder… …   Deutsch Wikipedia

  • Digital intermediate — (typically abbreviated to DI) is a motion picture finishing process which classically involves digitizing a motion picture and manipulating the color and other image characteristics. It often replaces or augments the photochemical timing process… …   Wikipedia

  • Compositing — This article is about visual effects. For the process of combining several democratic motions, see compositing (democracy). For the technique of compositing typeset by hand, see typesetting. For compositing in graphic design and still photography …   Wikipedia

  • Compositing — Le compositing (en français, la « composition ») est un ensemble de méthodes numériques consistant à mélanger plusieurs sources d’images pour en faire un plan unique qui sera intégré dans le montage. Pour un film d animation, il s agit… …   Wikipédia en Français

  • Digital Domain — Productions Type Privately held company Industry Visual effects, CGI animation Found …   Wikipedia

  • Digital puppetry — is the manipulation and performance of digitally animated 2D or 3D figures and objects in a virtual environment that are rendered in real time by computers. It is most commonly used in filmmaking and television production, but has also been… …   Wikipedia

  • Digital Fusion — est un logiciel de compositing créé par Eyeon. La version actuelle est connu sous le nom de Fusion. V5.3 Catégorie : Logiciel graphique …   Wikipédia en Français

  • Digital Negative — For the informal use of digital negative , see Raw image format. Digital Negative (DNG) Filename extension .dng Developed by Adobe Systems Initial release …   Wikipedia

  • Digital Content Creation — Als Digital content creation wird der Bereich innerhalb einer Produktionspipeline bezeichnet, der sich mit der Erstellung von multimedialen Inhalten beschäftigt. Darunter werden verschiedenste Technologien zusammengefasst. Generell fallen alle… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”