contrib/oxl/mvl/HMatrix2DSimilarityCompute.h
Go to the documentation of this file.
00001 // This is oxl/mvl/HMatrix2DSimilarityCompute.h
00002 #ifndef HMatrix2DSimilarityCompute_h_
00003 #define HMatrix2DSimilarityCompute_h_
00004 #ifdef VCL_NEEDS_PRAGMA_INTERFACE
00005 #pragma interface
00006 #endif
00007 //:
00008 // \file
00009 //
00010 // HMatrix2DSimilarityCompute contains a linear method to compute
00011 // a 2D similarity transformation. The H returned is such that
00012 // \f\[ x_2 \sim H x_1 \f\]
00013 //
00014 // \author
00015 //     David Capel, Oxford RRG, 13 May 98
00016 // \verbatim
00017 // Modifications:
00018 //     FSM 23-08-98 made modification as described in HMatrix2DAffineCompute.h
00019 // \endverbatim
00020 
00021 #include <mvl/HMatrix2DCompute.h>
00022 
00023 class HMatrix2DSimilarityCompute : public HMatrix2DCompute
00024 {
00025  public:
00026   HMatrix2DSimilarityCompute(void);
00027   ~HMatrix2DSimilarityCompute();
00028 
00029   // left in for capes :
00030   static HMatrix2D compute(PairMatchSetCorner const& matches);
00031   static HMatrix2D compute(PointArray const& p1, PointArray const& p2);
00032   int minimum_number_of_correspondences() const { return 2; }
00033  protected:
00034   bool compute_p(PointArray const&, PointArray const&, HMatrix2D *);
00035  private:
00036   static bool tmp_fun(PointArray const&, PointArray const&, HMatrix2D*);
00037 };
00038 
00039 #endif // HMatrix2DSimilarityCompute_h_