00001 #ifndef rgrl_est_affine_h_ 00002 #define rgrl_est_affine_h_ 00003 00004 //: 00005 // \file 00006 // \author Amitha Perera 00007 // \date Feb 2003 00008 00009 #include "rgrl_estimator.h" 00010 00011 //: Affine transform estimator 00012 // 00013 class rgrl_est_affine 00014 : public rgrl_linear_estimator 00015 { 00016 public: 00017 //: Default constructor 00018 // 00019 // Does nothing. This constructor is adequate for algorithms that 00020 // call \a estimate(.) fucntion only. An example of the algorithm is 00021 // the rgrl_feature_based_registration. 00022 rgrl_est_affine(){} 00023 00024 // Constructor which takes the dimension of the dataset that the 00025 // estimator will be applied on. 00026 // 00027 rgrl_est_affine( unsigned int dimension ); 00028 00029 //: Estimates an affine transform. 00030 // 00031 // The return pointer is to a rgrl_trans_affine object. 00032 // 00033 // \sa rgrl_estimator::estimate 00034 // 00035 rgrl_transformation_sptr 00036 estimate( rgrl_set_of<rgrl_match_set_sptr> const& matches, 00037 rgrl_transformation const& cur_transform ) const; 00038 00039 00040 //: Estimates an affine transform. 00041 // 00042 // The return pointer is to a rgrl_trans_affine object. 00043 // 00044 // \sa rgrl_estimator::estimate 00045 // 00046 rgrl_transformation_sptr 00047 estimate( rgrl_match_set_sptr matches, 00048 rgrl_transformation const& cur_transform ) const; 00049 00050 //: Type of transformation estimated by this estimator. 00051 const vcl_type_info& transformation_type() const; 00052 00053 // Defines type-related functions 00054 rgrl_type_macro( rgrl_est_affine, rgrl_linear_estimator ) 00055 00056 }; 00057 00058 #endif // rgrl_est_affine_h_
1.5.1