29#ifndef __ICUB_OPT_AFFINITY_H__
30#define __ICUB_OPT_AFFINITY_H__
33#include <yarp/os/all.h>
34#include <yarp/sig/all.h>
59 std::deque<yarp::sig::Vector>
p0;
60 std::deque<yarp::sig::Vector>
p1;
78 virtual void setBounds(
const yarp::sig::Matrix &
min,
const yarp::sig::Matrix &
max);
88 virtual bool addPoints(
const yarp::sig::Vector &
p0,
const yarp::sig::Vector &
p1);
104 virtual void getPoints(std::deque<yarp::sig::Vector> &
p0, std::deque<yarp::sig::Vector> &
p1)
const;
A class that deals with the problem of determining the affine transformation matrix A between two set...
virtual size_t getNumPoints() const
Return the number of 3D-points pairs currently contained into the internal database.
std::deque< yarp::sig::Vector > p1
virtual bool setInitialGuess(const yarp::sig::Matrix &A)
Allow specifiying the initial guess for the affine transformation matrix we seek for.
virtual void setBounds(const yarp::sig::Matrix &min, const yarp::sig::Matrix &max)
Allow specifying the minimum and maximum bounds of the elements belonging to the affine transformatio...
virtual bool calibrate(yarp::sig::Matrix &A, double &error)
Perform optimization to determine the affine matrix A.
std::deque< yarp::sig::Vector > p0
double evalError(const yarp::sig::Matrix &A)
virtual bool addPoints(const yarp::sig::Vector &p0, const yarp::sig::Vector &p1)
Add to the internal database the 3D-point p0 and the 3D-point p1 which is supposed to correspond to A...
virtual bool setCalibrationOptions(const yarp::os::Property &options)
Allow setting further options used during calibration.
virtual void clearPoints()
Clear the internal database of 3D points.
virtual void getPoints(std::deque< yarp::sig::Vector > &p0, std::deque< yarp::sig::Vector > &p1) const
Retrieve copies of the database of 3D-points pairs.
virtual ~AffinityWithMatchedPoints()
Destructor.
AffinityWithMatchedPoints()
Default Constructor.
This file contains the definition of unique IDs for the body parts and the skin parts of the robot.