From Wikipedia, the free encyclopedia - View original article
|Topics in calculus|
In vector calculus, the Jacobian matrix (pron.: //, //) is the matrix of all first-order partial derivatives of a vector- or scalar-valued function with respect to another vector. Suppose is a function from Euclidean n-space to Euclidean m-space. Such a function is given by m real-valued component functions, . The partial derivatives of all these functions (if they exist) can be organized in an m-by-n matrix, the Jacobian matrix of , as follows:
This matrix is also denoted by and . If are the usual orthogonal Cartesian coordinates, the i th row (i = 1, ..., m) of this matrix corresponds to the gradient of the ith component function Fi: . Note that some books define the Jacobian as the transpose of the matrix given above.
The Jacobian determinant (often simply called the Jacobian) is the determinant of the Jacobian matrix (if ).
The Jacobian of a function describes the orientation of a tangent plane to the function at a given point. In this way, the Jacobian generalizes the gradient of a scalar valued function of multiple variables which itself generalizes the derivative of a scalar-valued function of a scalar. In other words, the Jacobian for a scalar valued multivariable function is the gradient and that of a scalar valued function of scalar is simply its derivative. Likewise, the Jacobian can also be thought of as describing the amount of "stretching" that a transformation imposes. For example, if is used to transform an image, the Jacobian of , describes how much the image in the neighborhood of is stretched in the x and y directions.
If a function is differentiable at a point, its derivative is given in coordinates by the Jacobian, but a function doesn't need to be differentiable for the Jacobian to be defined, since only the partial derivatives are required to exist.
The importance of the Jacobian lies in the fact that it is a factor in one term of the best linear approximation to a differentiable function near a given point. In this sense, the Jacobian is the derivative of a multivariate function.
If p is a point in Rn and F is differentiable at p, then its derivative is given by JF(p). In this case, the linear map described by JF(p) is the best linear approximation of F near the point p, in the sense that
Compare this to a Taylor series for a scalar function of a scalar argument, truncated to first order:
In a sense, both the gradient and Jacobian are "first derivatives" — the former the first derivative of a scalar function of several variables, the latter the first derivative of a vector function of several variables. In general, the gradient can be regarded as a special version of the Jacobian: it is the Jacobian of a scalar function of several variables.
According to the inverse function theorem, the matrix inverse of the Jacobian matrix of an invertible function is the Jacobian matrix of the inverse function. That is, for some function F : Rn → Rn and a point p in Rn,
It follows that the (scalar) inverse of the Jacobian determinant of a transformation is the Jacobian determinant of the inverse transformation.
Consider a dynamical system of the form x' = F(x), where x' is the (component-wise) time derivative of x, and F : Rn → Rn is continuous and differentiable. If F(x0) = 0, then x0 is a stationary point (also called a critical point, not to be confused with a fixed point). The behavior of the system near a stationary point is related to the eigenvalues of JF(x0), the Jacobian of F at the stationary point. Specifically, if the eigenvalues all have real part with a magnitude less than 0, then the system is stable in the operating point, if any eigenvalue has a real part with a magnitude greater than 0, then the point is unstable. If the largest real part of the eigenvalues is equal to 0, the Jacobian matrix does not allow for an evaluation of the stability.
In computer vision the image Jacobian is known as the relationship between the movement of the camera and the apparent motion of the image (Optical Flow).
A point in the space with 3D coordinates in the frame of the camera, is projected in the image as a 2D point with coordinates , the relation between them is (neglecting the intrinsic parameters of the camera, and assuming focal distance 1) :
Grouping these equations
Finally for a given pixel in the image with coordinates : the apparent motion :
A system of coupled nonlinear equations can be solved iteratively by Newton's method. This method uses the Jacobian matrix of the system of equations.
The following is the detail code in MATLAB (although there is a built in 'jacobian' command)
function s = jacobian(f, x, tol) % f is a multivariable function handle, x is a starting point if nargin == 2 tol = 10^(-5); end while 1 % if x and f(x) are row vectors, we need transpose operations here y = x' - jacob(f, x)\f(x)'; % get the next point if norm(f(y))<tol % check error tolerate s = y'; return; end x = y'; end
function j = jacob(f, x) % approximately calculate Jacobian matrix k = length(x); j = zeros(k, k); x2 = x; dx = 0.001; for m = 1: k x2(m) = x(m)+dx; j(m, :) = (f(x2)-f(x))/dx; % partial derivatives in m-th row x2(m) = x(m); end
If m = n, then F is a function from n-space to n-space and the Jacobian matrix is a square matrix. We can then form its determinant, known as the Jacobian determinant. The Jacobian determinant is sometimes simply called "the Jacobian."
The Jacobian determinant at a given point gives important information about the behavior of F near that point. For instance, the continuously differentiable function F is invertible near a point p ∈ Rn if the Jacobian determinant at p is non-zero. This is the inverse function theorem. Furthermore, if the Jacobian determinant at p is positive, then F preserves orientation near p; if it is negative, F reverses orientation. The absolute value of the Jacobian determinant at p gives us the factor by which the function F expands or shrinks volumes near p; this is why it occurs in the general substitution rule.
The Jacobian determinant is used when making a change of variables when evaluating a multiple integral of a function over a region within its domain. To accommodate for the change of coordinates the magnitude of the Jacobian determinant arises as a multiplicative factor within the integral. Normally it is required that the change of coordinates be done in a manner which maintains an injectivity between the coordinates that determine the domain. Similarly, the Jacobian determinant represents the factor by which volumes change when space is distorted according to some function. The Jacobian determinant, as a result, is usually well-defined. The Jacobian can also be used to solve systems of differential equations at an equilibrium point or approximate solutions near an equilibrium point.
The Jacobian matrix for this coordinate change is
The determinant is r2 sin θ. As an example, since dV = dx1 dx2 dx3 this determinant implies that the differential volume element dV = r2 sin θ dr dθ dϕ. Nevertheless this determinant varies with coordinates. To avoid any variation the new coordinates can be defined as  Now the determinant equals 1 and volume element becomes .
Example 2. The Jacobian matrix of the function F : R3 → R4 with components
This example shows that the Jacobian need not be a square matrix.
Example 4. The Jacobian determinant of the function F : R3 → R3 with components
From this we see that F reverses orientation near those points where x1 and x2 have the same sign; the function is locally invertible everywhere except near points where x1 = 0 or x2 = 0. Intuitively, if you start with a tiny object around the point (1,1,1) and apply F to that object, you will get an object set with approximately 40 times the volume of the original one.