Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Attributes | List of all members
BIAS::TrifocalTensorBase Class Reference

#include <Base/Geometry/TrifocalTensorBase.hh>

+ Inheritance diagram for BIAS::TrifocalTensorBase:
+ Collaboration diagram for BIAS::TrifocalTensorBase:

Public Member Functions

void CheckPointCorr (HomgPoint2D &p1, HomgPoint2D &p2, HomgPoint2D &p3, Matrix3x3< double > &res)
 
void Compose (RMatrixBase &R1, RMatrixBase &R2, RMatrixBase &R3, Vector3< double > &C1, Vector3< double > &C2, Vector3< double > &C3)
 composition for "normalized" (with K^-1) image points More...
 
void Compose (RMatrixBase &R1, RMatrixBase &R2, RMatrixBase &R3, HomgPoint3D &C1, HomgPoint3D &C2, HomgPoint3D &C3)
 
void Compose (RMatrixBase &R2, RMatrixBase &R3, Vector3< double > &C2, Vector3< double > &C3)
 composition for R1=I and C1=0 More...
 
void Compose (RMatrixBase &R2, RMatrixBase &R3, HomgPoint3D &C2, HomgPoint3D &C3)
 
void Destroy ()
 frees internal data More...
 
void Dump ()
 
TRIFOCALTENSOR_TYPE * GetData ()
 
const TRIFOCALTENSOR_TYPE * GetData () const
 
TRIFOCALTENSOR_TYPE *** GetDataArray ()
 
int GetDim1 () const
 
int GetDim2 () const
 
int GetDim3 () const
 
TRIFOCALTENSOR_TYPE GetLength () const
 
void GetMatrices (Matrix3x3< TRIFOCALTENSOR_TYPE > &T1, Matrix3x3< TRIFOCALTENSOR_TYPE > &T2, Matrix3x3< TRIFOCALTENSOR_TYPE > &T3) const
 
void LeftContravariantContraction1 (Vector3< TRIFOCALTENSOR_TYPE > &v, Matrix3x3< TRIFOCALTENSOR_TYPE > &res)
 computes the contraction of index 1 from left with contravariant vector , i.e. More...
 
Matrix3x3< TRIFOCALTENSOR_TYPE > LeftContravariantContraction1 (Vector3< TRIFOCALTENSOR_TYPE > &v)
 
void LeftContravariantContraction2 (Vector3< TRIFOCALTENSOR_TYPE > &v, Matrix3x3< TRIFOCALTENSOR_TYPE > &res)
 
Matrix3x3< TRIFOCALTENSOR_TYPE > LeftContravariantContraction2 (Vector3< TRIFOCALTENSOR_TYPE > &v)
 
void LeftContravariantContraction3 (Vector3< TRIFOCALTENSOR_TYPE > &v, Matrix3x3< TRIFOCALTENSOR_TYPE > &res)
 
Matrix3x3< TRIFOCALTENSOR_TYPE > LeftContravariantContraction3 (Vector3< TRIFOCALTENSOR_TYPE > &v)
 
void NewSize (const int i, const int j, const int k, const TRIFOCALTENSOR_TYPE &def=(TRIFOCALTENSOR_TYPE) 0.0)
 
void newsize (const int i, const int j, const int k, const TRIFOCALTENSOR_TYPE &def=(TRIFOCALTENSOR_TYPE) 0.0)
 
TRIFOCALTENSOR_TYPE & operator() (unsigned int i, unsigned int j, unsigned int k)
 direct data access through () operator: T_i^{jk} More...
 
TrifocalTensorBaseoperator= (const TrifocalTensorBase &t)
 
bool operator== (const Tensor3D< TRIFOCALTENSOR_TYPE > &t)
 checks if all tensor entries are equal (up-to-scale-equality is not checked) More...
 
void postmultiply1 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 Compute S_{ijk} = T_{pjk} M_{pi}. More...
 
void postmultiply2 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 Compute S_{ijk} = T_{ipk} M_{pj}. More...
 
void postmultiply3 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 Compute S_{ijk} = T_{ijp} M_{pk}. More...
 
void premultiply1 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 compute S_{ijk} = M_{ip} T_{pjk} More...
 
void premultiply2 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 compute S_{ijk} = M_{jp} T_{ipk} More...
 
void premultiply3 (const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &M, Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &result) const
 compute S_{ijk} = M_{kp} T_{ijp} More...
 
void Scale (TRIFOCALTENSOR_TYPEfactor)
 
void SetFromMatrices (const Matrix3x3< TRIFOCALTENSOR_TYPE > &T1, const Matrix3x3< TRIFOCALTENSOR_TYPE > &T2, const Matrix3x3< TRIFOCALTENSOR_TYPE > &T3)
 
void SetFromVector (const BIAS::Vector< TRIFOCALTENSOR_TYPE > &v)
 set the tensor by the rows of the vector. More...
 
void SetZero ()
 set all elements to zero More...
 
BIAS::Vector< TRIFOCALTENSOR_TYPE > ToVector ()
 
 TrifocalTensorBase ()
 
 TrifocalTensorBase (const TrifocalTensorBase &t)
 
 ~TrifocalTensorBase ()
 

Protected Attributes

TRIFOCALTENSOR_TYPE * _Data
 
TRIFOCALTENSOR_TYPE *** _DataArray
 
int _Dim1
 
int _Dim2
 
int _Dim3
 
int _Size
 

Detailed Description

Examples:
ExampleTFT.cpp.

Definition at line 41 of file TrifocalTensorBase.hh.

Constructor & Destructor Documentation

TrifocalTensorBase::TrifocalTensorBase ( )

Definition at line 31 of file TrifocalTensorBase.cpp.

TrifocalTensorBase::TrifocalTensorBase ( const TrifocalTensorBase t)

Definition at line 35 of file TrifocalTensorBase.cpp.

TrifocalTensorBase::~TrifocalTensorBase ( )

Definition at line 39 of file TrifocalTensorBase.cpp.

Member Function Documentation

void TrifocalTensorBase::CheckPointCorr ( HomgPoint2D p1,
HomgPoint2D p2,
HomgPoint2D p3,
Matrix3x3< double > &  res 
)
void TrifocalTensorBase::Compose ( RMatrixBase R1,
RMatrixBase R2,
RMatrixBase R3,
Vector3< double > &  C1,
Vector3< double > &  C2,
Vector3< double > &  C3 
)

composition for "normalized" (with K^-1) image points

Examples:
ExampleTFT.cpp.

Definition at line 54 of file TrifocalTensorBase.cpp.

References BIAS::Matrix3x3< T >::Mult(), and BIAS::Matrix3x3< T >::Transpose().

Referenced by Compose().

void TrifocalTensorBase::Compose ( RMatrixBase R1,
RMatrixBase R2,
RMatrixBase R3,
HomgPoint3D C1,
HomgPoint3D C2,
HomgPoint3D C3 
)

Definition at line 70 of file TrifocalTensorBase.cpp.

References Compose(), and BIAS::HomgPoint3D::GetEuclidean().

void TrifocalTensorBase::Compose ( RMatrixBase R2,
RMatrixBase R3,
Vector3< double > &  C2,
Vector3< double > &  C3 
)
void TrifocalTensorBase::Compose ( RMatrixBase R2,
RMatrixBase R3,
HomgPoint3D C2,
HomgPoint3D C3 
)

Definition at line 114 of file TrifocalTensorBase.cpp.

References Compose(), and BIAS::HomgPoint3D::GetEuclidean().

void BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::Destroy ( )
inherited

frees internal data

void TrifocalTensorBase::Dump ( )
TRIFOCALTENSOR_TYPE * BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetData ( )
inlineinherited

Definition at line 72 of file Tensor3D.hh.

const TRIFOCALTENSOR_TYPE * BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetData ( ) const
inlineinherited

Definition at line 78 of file Tensor3D.hh.

TRIFOCALTENSOR_TYPE *** BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetDataArray ( )
inlineinherited

Definition at line 75 of file Tensor3D.hh.

int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetDim1 ( ) const
inherited
int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetDim2 ( ) const
inherited
int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetDim3 ( ) const
inherited
TRIFOCALTENSOR_TYPE BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::GetLength ( ) const
inherited
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::GetMatrices ( Matrix3x3< TRIFOCALTENSOR_TYPE > &  T1,
Matrix3x3< TRIFOCALTENSOR_TYPE > &  T2,
Matrix3x3< TRIFOCALTENSOR_TYPE > &  T3 
) const
inlineinherited

Referenced by Dump().

void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction1 ( Vector3< TRIFOCALTENSOR_TYPE > &  v,
Matrix3x3< TRIFOCALTENSOR_TYPE > &  res 
)
inlineinherited

computes the contraction of index 1 from left with contravariant vector , i.e.

res[k][j] = sum_i v[i] * (*this)[k][j]

Author
woelk 07/2004

Referenced by CheckPointCorr().

Matrix3x3<TRIFOCALTENSOR_TYPE > BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction1 ( Vector3< TRIFOCALTENSOR_TYPE > &  v)
inlineinherited

Definition at line 60 of file Tensor3D3x3x3.hh.

void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction2 ( Vector3< TRIFOCALTENSOR_TYPE > &  v,
Matrix3x3< TRIFOCALTENSOR_TYPE > &  res 
)
inlineinherited
Matrix3x3<TRIFOCALTENSOR_TYPE > BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction2 ( Vector3< TRIFOCALTENSOR_TYPE > &  v)
inlineinherited

Definition at line 67 of file Tensor3D3x3x3.hh.

void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction3 ( Vector3< TRIFOCALTENSOR_TYPE > &  v,
Matrix3x3< TRIFOCALTENSOR_TYPE > &  res 
)
inlineinherited
Matrix3x3<TRIFOCALTENSOR_TYPE > BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::LeftContravariantContraction3 ( Vector3< TRIFOCALTENSOR_TYPE > &  v)
inlineinherited

Definition at line 74 of file Tensor3D3x3x3.hh.

void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::NewSize ( const int  i,
const int  j,
const int  k,
const TRIFOCALTENSOR_TYPE &  def = (T)0.0 
)
inherited
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::newsize ( const int  i,
const int  j,
const int  k,
const TRIFOCALTENSOR_TYPE &  def = (T)0.0 
)
inherited
TRIFOCALTENSOR_TYPE & BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::operator() ( unsigned int  i,
unsigned int  j,
unsigned int  k 
)
inlineinherited

direct data access through () operator: T_i^{jk}

Author
mdunda 07 2004

Definition at line 96 of file Tensor3D.hh.

TrifocalTensorBase & TrifocalTensorBase::operator= ( const TrifocalTensorBase t)

Definition at line 150 of file TrifocalTensorBase.cpp.

References BIAS::Tensor3D3x3x3< T >::operator=().

bool BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::operator== ( const Tensor3D< TRIFOCALTENSOR_TYPE > &  t)
inherited

checks if all tensor entries are equal (up-to-scale-equality is not checked)

Author
mdunda 07 2004
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::postmultiply1 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

Compute S_{ijk} = T_{pjk} M_{pi}.

Author
mdunda
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::postmultiply2 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

Compute S_{ijk} = T_{ipk} M_{pj}.

Author
mdunda
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::postmultiply3 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

Compute S_{ijk} = T_{ijp} M_{pk}.

Author
mdunda
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::premultiply1 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

compute S_{ijk} = M_{ip} T_{pjk}

Author
mdunda
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::premultiply2 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

compute S_{ijk} = M_{jp} T_{ipk}

Author
mdunda
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::premultiply3 ( const BIAS::Matrix3x3< TRIFOCALTENSOR_TYPE > &  M,
Tensor3D3x3x3< TRIFOCALTENSOR_TYPE > &  result 
) const
inherited

compute S_{ijk} = M_{kp} T_{ijp}

Author
mdunda
void BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::Scale ( TRIFOCALTENSOR_TYPE  factor)
inherited
void BIAS::Tensor3D3x3x3< TRIFOCALTENSOR_TYPE >::SetFromMatrices ( const Matrix3x3< TRIFOCALTENSOR_TYPE > &  T1,
const Matrix3x3< TRIFOCALTENSOR_TYPE > &  T2,
const Matrix3x3< TRIFOCALTENSOR_TYPE > &  T3 
)
inlineinherited

implementation

Referenced by Compose().

void BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::SetFromVector ( const BIAS::Vector< TRIFOCALTENSOR_TYPE > &  v)
inherited

set the tensor by the rows of the vector.

Vector size must be at least Dim1*Dim2*Dim3!

Author
mdunda
void BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::SetZero ( )
inherited

set all elements to zero

BIAS::Vector<TRIFOCALTENSOR_TYPE > BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::ToVector ( )
inherited
Returns
all tensor elements in a vector
Author
mdunda

Member Data Documentation

TRIFOCALTENSOR_TYPE * BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_Data
protectedinherited

Definition at line 107 of file Tensor3D.hh.

TRIFOCALTENSOR_TYPE *** BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_DataArray
protectedinherited

Definition at line 111 of file Tensor3D.hh.

int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_Dim1
protectedinherited

Definition at line 112 of file Tensor3D.hh.

int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_Dim2
protectedinherited

Definition at line 112 of file Tensor3D.hh.

int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_Dim3
protectedinherited

Definition at line 112 of file Tensor3D.hh.

int BIAS::Tensor3D< TRIFOCALTENSOR_TYPE >::_Size
protectedinherited

Definition at line 112 of file Tensor3D.hh.


The documentation for this class was generated from the following files: