Visual Servoing Platform
version 3.3.0 under development (2020-02-17)
|
#include <visp3/core/vpMomentArea.h>
Public Member Functions | |
vpMomentArea () | |
virtual | ~vpMomentArea () |
Inherited functionalities from vpMomentArea | |
void | compute () |
const char * | name () const |
void | printDependencies (std::ostream &os) const |
Inherited functionalities from vpMoment | |
const vpMomentObject & | getObject () const |
const std::vector< double > & | get () const |
void | linkTo (vpMomentDatabase &moments) |
void | update (vpMomentObject &object) |
Protected Member Functions | |
vpMomentDatabase & | getMoments () const |
Protected Attributes | |
std::vector< double > | values |
Friends | |
VISP_EXPORT std::ostream & | operator<< (std::ostream &os, const vpMomentArea &m) |
Class handling the surface moment.
For a dense planar object, the area corresponds to the zero-order moment:
When considering a discrete set of points, the moment simply corresponds to the number of points. Since this is of no use in a servoing scheme, this class uses in this case , which is invariant to planar translation and rotation.
Definition at line 62 of file vpMomentArea.h.
vpMomentArea::vpMomentArea | ( | ) |
|
inlinevirtual |
Definition at line 66 of file vpMomentArea.h.
References vpMoment::compute().
|
virtual |
Has the area for dense objects, for a discrete set of points. Gets the value of from vpMomentCentered.
Implements vpMoment.
Definition at line 49 of file vpMomentArea.cpp.
References vpMomentObject::DISCRETE, vpMomentCentered::get(), vpMomentDatabase::get(), vpMomentObject::get(), vpMoment::getMoments(), vpMoment::getObject(), vpException::notInitialized, and vpMoment::values.
Referenced by vpMomentCommon::updateAll().
|
inlineinherited |
Returns all values computed by the moment.
Definition at line 155 of file vpMoment.h.
Referenced by vpMomentGravityCenterNormalized::compute(), vpFeatureMomentArea::compute_interaction(), vpFeatureMomentAreaNormalized::compute_interaction(), vpFeatureMomentGravityCenterNormalized::compute_interaction(), vpMomentCentered::get(), vpFeatureMoment::init(), vpMomentGravityCenterNormalized::printDependencies(), and vpFeatureMoment::update().
|
inlineprotectedinherited |
Returns the linked moment database.
Definition at line 123 of file vpMoment.h.
Referenced by compute(), vpMomentGravityCenterNormalized::compute(), vpMomentCentered::compute(), vpMomentAreaNormalized::compute(), vpMomentCInvariant::compute(), vpMomentAlpha::compute(), vpMomentGravityCenterNormalized::printDependencies(), printDependencies(), vpMomentCentered::printDependencies(), vpMomentAreaNormalized::printDependencies(), and vpMomentAlpha::printDependencies().
|
inlineinherited |
Definition at line 150 of file vpMoment.h.
Referenced by compute(), vpMomentCentered::compute(), vpMomentGravityCenter::compute(), vpMomentAreaNormalized::compute(), vpMomentCInvariant::compute(), vpFeatureMomentArea::compute_interaction(), vpFeatureMomentBasic::compute_interaction(), vpFeatureMomentCentered::compute_interaction(), vpFeatureMomentAlpha::compute_interaction(), vpFeatureMomentAreaNormalized::compute_interaction(), vpFeatureMomentGravityCenter::compute_interaction(), vpFeatureMomentCInvariant::compute_interaction(), vpFeatureMomentGravityCenterNormalized::compute_interaction(), vpMomentBasic::get(), vpMomentCentered::get(), vpFeatureMomentBasic::interaction(), vpFeatureMomentCentered::interaction(), printDependencies(), vpMomentBasic::printDependencies(), vpMomentCentered::printDependencies(), vpMomentGravityCenter::printDependencies(), vpMomentAreaNormalized::printDependencies(), vpMomentCentered::printWithIndices(), vpMomentCentered::set(), and vpMomentCInvariant::vpMomentCInvariant().
|
inherited |
Links the moment to a database of moment primitives. If the moment depends on other moments, these moments must be linked to the same database.
data_base | : database of moment primitives. |
Definition at line 98 of file vpMoment.cpp.
References vpException::memoryAllocationError, and vpMoment::name().
Referenced by vpMomentCommon::getAlpha(), vpMomentCommon::getMu3(), vpMomentCommon::getSurface(), and vpMomentCommon::vpMomentCommon().
|
inlinevirtual |
Moment name.
Implements vpMoment.
Definition at line 72 of file vpMomentArea.h.
References vpMoment::operator<<, and vpMoment::printDependencies().
|
virtual |
If the vpMomentObject type is
Reimplemented from vpMoment.
Definition at line 90 of file vpMomentArea.cpp.
References vpMomentObject::DISCRETE, vpMomentCentered::get(), vpMomentDatabase::get(), vpMoment::getMoments(), vpMoment::getObject(), and vpException::notInitialized.
|
inherited |
Updates the moment with the current object. This does not compute any values.
moment_object | : object descriptor of the current camera vision. |
Definition at line 115 of file vpMoment.cpp.
|
friend |
Outputs the moment's values to a stream.
Definition at line 78 of file vpMomentArea.cpp.
|
protectedinherited |
Definition at line 118 of file vpMoment.h.
Referenced by compute(), vpMomentGravityCenterNormalized::compute(), vpMomentCentered::compute(), vpMomentGravityCenter::compute(), vpMomentAreaNormalized::compute(), vpMomentCInvariant::compute(), vpMomentAlpha::compute(), vpMomentCentered::get(), vpMomentGravityCenter::get(), vpMomentCInvariant::getMomentVector(), vpMomentCentered::set(), vpMomentAlpha::vpMomentAlpha(), vpMomentArea(), vpMomentAreaNormalized::vpMomentAreaNormalized(), vpMomentCInvariant::vpMomentCInvariant(), and vpMomentGravityCenter::vpMomentGravityCenter().