3dpcp/include/slam6d/icp6Dhelix.h

39 lines
1,008 B
C
Raw Normal View History

2012-09-16 12:33:11 +00:00
/** @file
* @brief Definition of the ICP error function minimization
* @author Peter Schneider. Institute of Computer Science, University of Koblenz and Landau, Germany.
* @author Andreas Nuechter. Jacobs University Bremen gGmbH, Germany
*/
#ifndef __ICP6DHELIX_H__
#define __ICP6DHELIX_H__
#include "icp6Dminimizer.h"
#include "newmat/newmatio.h"
using namespace NEWMAT;
/**
* @brief Implementation of the ICP error function minimization via helix-translation
*/
class icp6D_HELIX : public icp6Dminimizer
{
public:
/**
* Constructor
*/
icp6D_HELIX(bool quiet = false) : icp6Dminimizer(quiet) {};
/**
* Destructor
*/
virtual ~icp6D_HELIX() {};
double Point_Point_Align(const vector<PtPair>& Pairs, double *alignxf,
const double centroid_m[3], const double centroid_d[3]);
static void computeRt(const ColumnVector* ccs, const int vectorOffset, double *alignxf);
inline int getAlgorithmID() { return 5; };
};
#endif