Go to the documentation of this file.00001
00059
00060
00061
00062
00063
00064
00065
00066 #ifndef SCP_REGISTRATION_H_
00067 #define SCP_REGISTRATION_H_
00068
00069 #include "../dof/tflink.h"
00070 #include "object.h"
00071
00072 namespace Slam_CurvedPolygon
00073 {
00074 template<typename _DOF6>
00075 class Registration
00076 {
00077 public:
00078 typedef _DOF6 DOF6;
00079 typedef Slam_CurvedPolygon::Object<DOF6> OBJECT;
00080
00081 protected:
00082
00088 void findCorrespondences(const OBJCTXT &ctxt, DOF6 &tf, std::list<OBJECT::Ptr> &cors);
00089
00090
00095 void optimizeLink(const OBJCTXT &ctxt, DOF6 &tf, std::list<OBJECT::Ptr> &cors, const TYPE &thr);
00096
00097
00098 public:
00099
00100 bool registration(const OBJCTXT &ctxt, DOF6 &tf, typename DOF6::TYPE &probability_success_rate, typename DOF6::TYPE &probability_error_rate);
00101
00102
00103 };
00104
00105 #include "impl/registration.hpp"
00106
00107
00108 #endif