vpgl_affine_rectification.h
Go to the documentation of this file.
1 // This is core/vpgl/algo/vpgl_affine_rectification.h
2 #ifndef vpgl_affine_rectification_h_
3 #define vpgl_affine_rectification_h_
4 //:
5 // \file
6 // \brief Methods for computing an affine fundamental matrix, FA using a pair of affine cameras and using FA to find homographies for rectification
7 // \author Ozge C. Ozcanli
8 // \date Nov 27, 2013
9 
12 #include <vpgl/vpgl_proj_camera.h>
13 
15 {
16  public:
17  static vpgl_affine_camera<double>* compute_affine_cam(const std::vector< vgl_point_2d<double> >& image_pts,
18  const std::vector< vgl_point_3d<double> >& world_pts);
19 
20  //:extract the fundamental matrix from a pair of affine cameras
21  static bool compute_affine_f(const vpgl_affine_camera<double>* cam1,
22  const vpgl_affine_camera<double>* cam2,
24 
25  //: compute the rectification homographies using the affine fundamental matrix
26  // an image correspondence needs to be passed to find homographies
27  // (if cameras are known, one can use a known point in 3d in the scene, project it using the cameras and pass the output image points to this routine)
29  const std::vector<vnl_vector_fixed<double, 3> >& img_p1,
30  const std::vector<vnl_vector_fixed<double, 3> >& img_p2,
33 
34  vpgl_affine_rectification() = delete;
35  ~vpgl_affine_rectification() = delete;
36 };
37 
38 #endif // vpgl_affine_rectification_h_
A class for the affine camera model.
static bool compute_rectification(const vpgl_affine_fundamental_matrix< double > &FA, const std::vector< vnl_vector_fixed< double, 3 > > &img_p1, const std::vector< vnl_vector_fixed< double, 3 > > &img_p2, vnl_matrix_fixed< double, 3, 3 > &H1, vnl_matrix_fixed< double, 3, 3 > &H2)
compute the rectification homographies using the affine fundamental matrix.
A class for the fundamental matrix between two affine cameras.
A camera model using the standard 3x4 matrix representation.
static bool compute_affine_f(const vpgl_affine_camera< double > *cam1, const vpgl_affine_camera< double > *cam2, vpgl_affine_fundamental_matrix< double > &FA)
extract the fundamental matrix from a pair of affine cameras.
static vpgl_affine_camera< double > * compute_affine_cam(const std::vector< vgl_point_2d< double > > &image_pts, const std::vector< vgl_point_3d< double > > &world_pts)