27#ifndef __ICUB_OPT_CALIBREFERENCE_H__
28#define __ICUB_OPT_CALIBREFERENCE_H__
31#include <yarp/os/all.h>
32#include <yarp/sig/all.h>
67 std::deque<yarp::sig::Vector>
p0;
68 std::deque<yarp::sig::Vector>
p1;
88 virtual void setBounds(
const yarp::sig::Matrix &
min,
const yarp::sig::Matrix &
max);
139 virtual bool addPoints(
const yarp::sig::Vector &
p0,
const yarp::sig::Vector &
p1);
156 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 roto-translation matrix H and scaling factors ...
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.
std::deque< yarp::sig::Vector > p0
std::deque< yarp::sig::Vector > p1
virtual ~CalibReferenceWithMatchedPoints()
Destructor.
virtual bool calibrate(yarp::sig::Matrix &H, double &error)
Perform reference calibration to determine the matrix H.
virtual size_t getNumPoints() const
Return the number of 3D-points pairs currently contained into the internal database.
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 bool setInitialGuess(const yarp::sig::Matrix &H)
Allow specifiying the initial guess for the roto-translation matrix we seek for.
virtual void setScalingBounds(const yarp::sig::Vector &min, const yarp::sig::Vector &max)
Allow specifying the bounds for the 3D scaling factors.
virtual bool setScalingInitialGuess(const yarp::sig::Vector &s)
Allow specifiying the initial guess for the scaling factors.
virtual bool calibrate(yarp::sig::Matrix &H, double &s, double &error)
Perform reference calibration to determine the matrix H and the scalar scaling factor s.
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 transformation.
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 H...
double evalError(const yarp::sig::Matrix &H)
virtual bool calibrate(yarp::sig::Matrix &H, yarp::sig::Vector &s, double &error)
Perform reference calibration to determine the matrix H and the scaling factors S.
CalibReferenceWithMatchedPoints()
Default Constructor.
virtual void setBounds(const yarp::sig::Vector &min, const yarp::sig::Vector &max)
Allow specifying the bounding box for both the translation part (given in meters) and the rotation pa...
This file contains the definition of unique IDs for the body parts and the skin parts of the robot.