Visual Servoing Platform version 3.7.0
Loading...
Searching...
No Matches
vpLuminanceMapping Class Referenceabstract

#include <vpFeatureLuminanceMapping.h>

Inheritance diagram for vpLuminanceMapping:

Public Member Functions

 vpLuminanceMapping (unsigned int mappingSize)
virtual ~vpLuminanceMapping ()
virtual void map (const vpImage< unsigned char > &I, vpColVector &s)=0
virtual void interaction (const vpImage< unsigned char > &I, const vpMatrix &LI, const vpColVector &s, vpMatrix &L)=0
virtual void inverse (const vpColVector &s, vpImage< unsigned char > &I)=0
unsigned int getProjectionSize () const
unsigned int getBorder () const
void setBorder (unsigned border)

Static Public Member Functions

static void imageAsVector (const vpImage< unsigned char > &I, vpColVector &Ivec, unsigned border)
static void imageAsMatrix (const vpImage< unsigned char > &I, vpMatrix &Imat, unsigned border)

Protected Attributes

unsigned m_mappingSize
unsigned m_border

Detailed Description

Base class for functions that map an image and its interaction matrix to a different domain.

Definition at line 57 of file vpFeatureLuminanceMapping.h.

Constructor & Destructor Documentation

◆ vpLuminanceMapping()

vpLuminanceMapping::vpLuminanceMapping ( unsigned int mappingSize)
inline

Construct a new vp Luminance Mapping object.

Parameters
mappingSizeThe size of the space that this transformation maps to.

Definition at line 65 of file vpFeatureLuminanceMapping.h.

References m_mappingSize.

Referenced by vpLuminanceDCT::vpLuminanceDCT(), vpLuminanceDCT::vpLuminanceDCT(), vpLuminancePCA::vpLuminancePCA(), vpLuminancePCA::vpLuminancePCA(), and vpLuminancePCA::vpLuminancePCA().

◆ ~vpLuminanceMapping()

virtual vpLuminanceMapping::~vpLuminanceMapping ( )
inlinevirtual

Destructor.

Definition at line 70 of file vpFeatureLuminanceMapping.h.

Member Function Documentation

◆ getBorder()

unsigned int vpLuminanceMapping::getBorder ( ) const
inline

Returns the number of pixels that are removed by the photometric VS computation.

Returns
space size
Examples
catchLuminanceMapping.cpp.

Definition at line 114 of file vpFeatureLuminanceMapping.h.

References m_border.

◆ getProjectionSize()

unsigned int vpLuminanceMapping::getProjectionSize ( ) const
inline

Returns the size of the space to which an image is mapped to.

Returns
space size
Examples
catchLuminanceMapping.cpp.

Definition at line 107 of file vpFeatureLuminanceMapping.h.

References m_mappingSize.

Referenced by vpLuminanceDCT::vpLuminanceDCT().

◆ imageAsMatrix()

void vpLuminanceMapping::imageAsMatrix ( const vpImage< unsigned char > & I,
vpMatrix & Imat,
unsigned border )
static

◆ imageAsVector()

BEGIN_VISP_NAMESPACE void vpLuminanceMapping::imageAsVector ( const vpImage< unsigned char > & I,
vpColVector & Ivec,
unsigned border )
static

◆ interaction()

virtual void vpLuminanceMapping::interaction ( const vpImage< unsigned char > & I,
const vpMatrix & LI,
const vpColVector & s,
vpMatrix & L )
pure virtual

Compute the interaction matrix associated with the representation s.

Parameters
Iinput image used to compute s
LIPhotometric interaction matrix associated to I (see vpFeatureLuminance)
sthe already computed representation
LThe output interaction matrix, of dimensions getProjectionSize() x 6

Implemented in vpLuminanceDCT, and vpLuminancePCA.

◆ inverse()

virtual void vpLuminanceMapping::inverse ( const vpColVector & s,
vpImage< unsigned char > & I )
pure virtual

Reconstruct I from a representation s.

Parameters
sthe representation
IOutput lossy reconstruction

Implemented in vpLuminanceDCT, and vpLuminancePCA.

◆ map()

virtual void vpLuminanceMapping::map ( const vpImage< unsigned char > & I,
vpColVector & s )
pure virtual

Map an image I to a representation s. This representation s has getProjectionSize() rows.

Note that when combined with vpFeatureLuminanceMapping, The image I does not have the same size as the image input of vpFeatureLuminanceMapping::build. I is the center crop of this image.

Parameters
IThe input image
sThe resulting representation that will serve as visual servoing features.

Implemented in vpLuminanceDCT, and vpLuminancePCA.

◆ setBorder()

void vpLuminanceMapping::setBorder ( unsigned border)
inline

Set the number of pixels that are removed by the photometric VS computation This function should be called by vpFeatureLuminanceMapping.

Parameters
border
Examples
catchLuminanceMapping.cpp.

Definition at line 122 of file vpFeatureLuminanceMapping.h.

References m_border.

Member Data Documentation

◆ m_border

unsigned vpLuminanceMapping::m_border
protected

◆ m_mappingSize