Interpolation (computer programming)
Encyclopedia
In the context of computer animation
, interpolation refers to inbetweening, or filling in frames between the key frames. It typically calculates the inbetween frames through use of (usually) piecewise polynomial interpolation
to draw images semi-automatically.
For all applications of this type, a set of "key points" is defined by the graphic artist. These are values that are rather widely separated in space or time, and represent the desired result, but only in very coarse steps. The computed interpolation process is then used to insert many new values in between these key points to give a "smoother" result.
In its simplest form, this is the drawing of two dimensional curves. The key points, placed by the artist, are used by the computer algorithm to form a smooth curve either through, or near these points. For a typical example of 2-D interpolation through key points see cardinal spline. For examples which go near key points see nonuniform rational B-spline
, or Bézier curve
. This is extended to the forming of three dimensional curves, shapes and complex, dynamic artistic patterns such as used in laser light shows.
The process can be extended to motions. The path of an object can be interpolated by providing some key locations, then calculating many in between locations for a smooth motion. In addition to position, the speed or velocity, as well as accelerations along a path, can be calculated to mimic real-life motion dynamics. Where the subjects are too large or complex to move, the camera position and orientation can be moved by this process. This last is commonly called motion control
.
Going further, orientations (rotations) of objects and parts of objects can be interpolated as well as parts of complete characters. This process mimics that used in early cartoon films. Master animators would draw key frames of the film, then, junior animators would draw the in-between frames. This is called inbetweening or tweening and the overall process is called "key frame
animation". To make these motions appear realistic, interpolation algorithms have been sought which follow, or approximate real life motion dynamics. This applies to things such as the motion of arms and legs from frame to frame, or the motion of all parts of a face, given the motion of the important, key points of the face. Defining the motion of key strands of hair, spread around an animal, can be made into full fur. Using custom algorithms, motions with unique, unnatural and entertaining visual characteristics can be formed. The color of an object can be defined by key color-locations or frames allowing the computation of smooth color gradients around an object or varying in time. Algorithms such as the Kochanek-Bartels spline
provide additional adjustment parameters which allow customizing the in-between behavior to suit a wide variety of situations. The article on tweening
currently demonstrates several of these.
Another important area of this subject is the computational burden of these algorithms. Algorithms with faster execution times are sought to produce more of these results in less time in order to complete these projects quicker. As the resolution increases to produce animated feature films, the amount of processing can increase greatly.
Computer animation
Computer animation is the process used for generating animated images by using computer graphics. The more general term computer generated imagery encompasses both static scenes and dynamic images, while computer animation only refers to moving images....
, interpolation refers to inbetweening, or filling in frames between the key frames. It typically calculates the inbetween frames through use of (usually) piecewise polynomial interpolation
Polynomial interpolation
In numerical analysis, polynomial interpolation is the interpolation of a given data set by a polynomial: given some points, find a polynomial which goes exactly through these points.- Applications :...
to draw images semi-automatically.
For all applications of this type, a set of "key points" is defined by the graphic artist. These are values that are rather widely separated in space or time, and represent the desired result, but only in very coarse steps. The computed interpolation process is then used to insert many new values in between these key points to give a "smoother" result.
In its simplest form, this is the drawing of two dimensional curves. The key points, placed by the artist, are used by the computer algorithm to form a smooth curve either through, or near these points. For a typical example of 2-D interpolation through key points see cardinal spline. For examples which go near key points see nonuniform rational B-spline
Nonuniform rational B-spline
Non-uniform rational basis spline is a mathematical model commonly used in computer graphics for generating and representing curves and surfaces which offers great flexibility and precision for handling both analytic and freeform shapes.- History :Development of NURBS began in the 1950s by...
, or Bézier curve
Bézier curve
A Bézier curve is a parametric curve frequently used in computer graphics and related fields. Generalizations of Bézier curves to higher dimensions are called Bézier surfaces, of which the Bézier triangle is a special case....
. This is extended to the forming of three dimensional curves, shapes and complex, dynamic artistic patterns such as used in laser light shows.
The process can be extended to motions. The path of an object can be interpolated by providing some key locations, then calculating many in between locations for a smooth motion. In addition to position, the speed or velocity, as well as accelerations along a path, can be calculated to mimic real-life motion dynamics. Where the subjects are too large or complex to move, the camera position and orientation can be moved by this process. This last is commonly called motion control
Motion control
Motion control is a sub-field of automation, in which the position or velocity of machines are controlled using some type of device such as a hydraulic pump, linear actuator, or an electric motor, generally a servo...
.
Going further, orientations (rotations) of objects and parts of objects can be interpolated as well as parts of complete characters. This process mimics that used in early cartoon films. Master animators would draw key frames of the film, then, junior animators would draw the in-between frames. This is called inbetweening or tweening and the overall process is called "key frame
Key frame
A key frame in animation and filmmaking is a drawing that defines the starting and ending points of any smooth transition. They are called "frames" because their position in time is measured in frames on a strip of film...
animation". To make these motions appear realistic, interpolation algorithms have been sought which follow, or approximate real life motion dynamics. This applies to things such as the motion of arms and legs from frame to frame, or the motion of all parts of a face, given the motion of the important, key points of the face. Defining the motion of key strands of hair, spread around an animal, can be made into full fur. Using custom algorithms, motions with unique, unnatural and entertaining visual characteristics can be formed. The color of an object can be defined by key color-locations or frames allowing the computation of smooth color gradients around an object or varying in time. Algorithms such as the Kochanek-Bartels spline
Kochanek-Bartels spline
In mathematics, a Kochanek-Bartels spline or Kochanek-Bartels curve is a cubic Hermite spline with tension, bias, and continuity parameters defined to change the behavior of the tangents.Given n + 1 knots,...
provide additional adjustment parameters which allow customizing the in-between behavior to suit a wide variety of situations. The article on tweening
Tweening
Inbetweening or tweening is the process of generating intermediate frames between two images to give the appearance that the first image evolves smoothly into the second image. Inbetweens are the drawings between the key frames which help to create the illusion of motion...
currently demonstrates several of these.
Another important area of this subject is the computational burden of these algorithms. Algorithms with faster execution times are sought to produce more of these results in less time in order to complete these projects quicker. As the resolution increases to produce animated feature films, the amount of processing can increase greatly.