00001 // This is core/vpgl/vpgl_affine_fundamental_matrix.h 00002 #ifndef vpgl_affine_fundamental_matrix_h_ 00003 #define vpgl_affine_fundamental_matrix_h_ 00004 //: 00005 // \file 00006 // \brief A class for the fundamental matrix between two affine cameras.. 00007 // \author Thomas Pollard 00008 // \date June 8, 2005 00009 // \author Joseph Mundy, Matt Leotta, Vishal Jain 00010 // 00011 // The fundamental matrix has the form: 00012 // \verbatim 00013 // | 0 0 e | 00014 // | 0 0 d | 00015 // | a b c | 00016 // \endverbatim 00017 00018 #include <vnl/vnl_fwd.h> 00019 #include "vpgl_fundamental_matrix.h" 00020 00021 template <class T> 00022 class vpgl_affine_fundamental_matrix : public vpgl_fundamental_matrix<T> 00023 { 00024 public: 00025 00026 // Constructors:---------------------- 00027 00028 //: Default constructor creates dummy matrix. 00029 vpgl_affine_fundamental_matrix(); 00030 00031 //: Cast up from a regular vpgl_fundamental_matrix. 00032 vpgl_affine_fundamental_matrix( const vpgl_fundamental_matrix<T>& fm ); 00033 00034 // Getters and Setters:---------------- 00035 00036 //: Form the matrix from its free parameters. 00037 void set_from_params( T a, T b, T c, T d, T e ); 00038 }; 00039 00040 #endif // vpgl_affine_fundamental_matrix_h_