vpgl_calibration_matrix_compute.h
Go to the documentation of this file.
1 // This is core/vpgl/algo/vpgl_calibration_matrix_compute.h
2 #ifndef vpgl_calibration_matrix_compute_h_
3 #define vpgl_calibration_matrix_compute_h_
4 
5 //:
6 // \file
7 // \brief Computes a camera calibration matrix from points on a 3D world plane.
8 // \author Peter Carr
9 // \date 14 Feb 2013
10 
11 #include <vector>
12 #ifdef _MSC_VER
13 # include <vcl_msvc_warnings.h>
14 #endif
15 #include <vgl/vgl_point_2d.h>
18 
19 //:Various methods for computing the intrinsic matrix of a perspective camera
21 {
22  public:
23  //: Computes the calibration matrix for a natural camera (zero skew, square pixels)
24  // from a ground plane to image plane homography. A value for the
25  // principal point is needed for the computation.
26  // \param homography represents the mapping from the ground plane to the image plane
27  // \param principal_point is the optical centre of the image
28  // \param estimated calibration matrix with square pixels and zero skew
29  // \return true if successful.
30 
31  static
32  bool
33  natural(const vgl_h_matrix_2d<double>& homography,
34  const vgl_point_2d<double>& principal_point,
36 
37  static
38  bool
39  natural(const std::vector< vgl_point_2d<double> >& image_pts,
40  const std::vector< vgl_point_2d<double> >& ground_pts,
41  const vgl_point_2d<double>& principal_point,
43 };
44 
45 #endif // vpgl_calibration_matrix_compute_h_
Various methods for computing the intrinsic matrix of a perspective camera.
static bool natural(const vgl_h_matrix_2d< double > &homography, const vgl_point_2d< double > &principal_point, vpgl_calibration_matrix< double > &K)
Computes the calibration matrix for a natural camera (zero skew, square pixels).
A class for the calibration matrix component of a perspective camera matrix.