CVR-Lib last update 20 Sep 2009

Geometric Image Transformations
[Image Transformations]

Classes and Data Structures used to transform images geometrically. More...

Collaboration diagram for Geometric Image Transformations:

Classes

class  cvr::boundaryExpansion
 Class boundaryExpansion. More...
class  cvr::geometricTransformBase
 Class geometricTransformBase. More...
class  cvr::geometricTransform< I >
 Class geometricTransform. More...
class  cvr::matrixTransform< I >
 Class matrixTransform. More...
class  cvr::affineTransformation2D
 Class affineTransformation2D. More...
class  cvr::euclideanTransformation2D
 Class euclideanTransformation2D. More...
class  cvr::ransacEstimation< E >
 Template Class ransacEstimation<E>. More...
class  cvr::similarityTransformation2D
 Class similarityTransformation2D. More...

Functions

template<typename T >
matrix< T > cvr::rotation (const point3D< T > &center, const point3D< T > &axis, const T &angle)
template<typename T >
matrix< T > cvr::rotation (const point< T > &center, const T &angle)
template<typename T >
matrix< T > cvr::translation (const point3D< T > &s)
template<typename T >
matrix< T > cvr::translation (const point< T > &s)
template<typename T >
matrix< T > cvr::scaling (const point3D< T > &s)
template<typename T >
matrix< T > cvr::scaling (const point< T > &s)
template<typename T >
matrix< T > cvr::projection (const T &f)

Detailed Description

Classes and Data Structures used to transform images geometrically.

Function Documentation

template<typename T >
matrix<T> cvr::projection ( const T &  f  )  [inline]

Global scope function to create a homogeneous projection matrix, with a focal distance f.

The matrix created has the form

\[ \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 1/f & 1 \end{bmatrix} \]

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
f focal distance.
Returns:
The 4x4 homogeneous matrix representing a 3D scale

template<typename T >
matrix<T> cvr::rotation ( const point< T > &  center,
const T &  angle 
) [inline]

Global scope function to create a rotation homogeneous matrix for 2D spaces, which is always a 3x3 matrix.

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
center Point in the space that is kept constant
angle Magnitude of the angle of the rotation
Returns:
The 3x3 homogeneous matrix representing a 2D rotation.

template<typename T >
matrix<T> cvr::rotation ( const point3D< T > &  center,
const point3D< T > &  axis,
const T &  angle 
) [inline]

Global scope function to create a rotation homogeneous matrix for 3D spaces, which is always a 4x4 matrix.

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
center Point in the space that is kept constant
axis Rotation axis.
angle Magnitude of the angle of the rotation
Returns:
The 4x4 homogeneous matrix representing a 3D rotation.

template<typename T >
matrix<T> cvr::scaling ( const point< T > &  s  )  [inline]

Global scope function to create a homogeneous matrix for scaling in 2D spaces.

The matrix created has the form

\[ \begin{bmatrix} s_x & 0 & 0 \\ 0 & s_y & 0 \\ 0 & 0 & 1 \end{bmatrix} \]

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
s Scale amount in each axis.
Returns:
The 3x3 homogeneous matrix representing a 2D scale

template<typename T >
matrix<T> cvr::scaling ( const point3D< T > &  s  )  [inline]

Global scope function to create a homogeneous matrix for scaling in 3D spaces.

The matrix created has the form

\[ \begin{bmatrix} s_x & 0 & 0 & 0 \\ 0 & s_y & 0 & 0 \\ 0 & 0 & s_z & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \]

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
s Scale amount in each axis.
Returns:
The 4x4 homogeneous matrix representing a 3D scale

template<typename T >
matrix<T> cvr::translation ( const point< T > &  s  )  [inline]

Global scope function to create a shift homogeneous matrix for 2D spaces, which is always a 3x3 matrix.

The matrix created has the form

\[ \begin{bmatrix} 1 & 0 & s_x \\ 0 & 1 & s_y \\ 0 & 0 & 1 \\ \end{bmatrix} \]

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
s Shift amount.
Returns:
The 3x3 homogeneous matrix representing a 2D shift.

template<typename T >
matrix<T> cvr::translation ( const point3D< T > &  s  )  [inline]

Global scope function to create a shift homogeneous matrix in a 3D space, which is always 4x4.

The matrix created has the form

\[ \begin{bmatrix} 1 & 0 & 0 & s_x \\ 0 & 1 & 0 & s_y \\ 0 & 0 & 1 & s_z \\ 0 & 0 & 0 & 1 \end{bmatrix} \]

The template parameter T represents the type of the matrix entries, which has to be a floating point type like double or float.

Parameters:
s Shift amount.
Returns:
The 4x4 homogeneous matrix representing a 3D shift.


Generated on Sun Sep 20 22:08:34 2009 for CVR-Lib by Doxygen 1.5.8