Public Member Functions | Protected Member Functions | Protected Attributes
vgl_h_matrix_2d_optimize_lmq Class Reference

#include <vgl_h_matrix_2d_optimize_lmq.h>

Inheritance diagram for vgl_h_matrix_2d_optimize_lmq:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 vgl_h_matrix_2d_optimize_lmq (vgl_h_matrix_2d< double > const &initial_h)
 Constructor from initial homography to be optimized.
int minimum_number_of_correspondences () const
void set_verbose (bool v)
 set this to true for verbose run-time information.
void set_trace (bool trace)
 Termination tolerance on the gradient of the projection error.
void set_htol (const double htol)
 Termination tolerance on change in the solution.
void set_ftol (const double ftol)
 Termination tolerance on the sum of squared projection errors.
void set_gtol (const double gtol)
 Termination tolerance on the gradient of the projection error.
bool optimize (vcl_vector< vgl_homg_point_2d< double > > const &points1, vcl_vector< vgl_homg_point_2d< double > > const &points2, vgl_h_matrix_2d< double > &H)
 optimize homography from matched points.
bool optimize (vcl_vector< vgl_homg_line_2d< double > > const &lines1, vcl_vector< vgl_homg_line_2d< double > > const &lines2, vgl_h_matrix_2d< double > &H)
 optimize homography from matched lines.
bool optimize (vcl_vector< vgl_homg_point_2d< double > > const &points1, vcl_vector< vgl_homg_point_2d< double > > const &points2, vcl_vector< vgl_homg_line_2d< double > > const &lines1, vcl_vector< vgl_homg_line_2d< double > > const &lines2, vgl_h_matrix_2d< double > &H)
 optimize homography from matched points and lines.
vgl_h_matrix_2d< double > optimize (vcl_vector< vgl_homg_point_2d< double > > const &p1, vcl_vector< vgl_homg_point_2d< double > > const &p2)
 optimize homography from matched points - return h_matrix.
vgl_h_matrix_2d< double > optimize (vcl_vector< vgl_homg_line_2d< double > > const &l1, vcl_vector< vgl_homg_line_2d< double > > const &l2)
 optimize homography from matched lines - return h_matrix.
vgl_h_matrix_2d< double > optimize (vcl_vector< vgl_homg_point_2d< double > > const &p1, vcl_vector< vgl_homg_point_2d< double > > const &p2, vcl_vector< vgl_homg_line_2d< double > > const &l1, vcl_vector< vgl_homg_line_2d< double > > const &l2)
 optimize homography from matched points and lines - return h_matrix.

Protected Member Functions

bool optimize_h (vcl_vector< vgl_homg_point_2d< double > > const &points1, vcl_vector< vgl_homg_point_2d< double > > const &points2, vgl_h_matrix_2d< double > const &h_initial, vgl_h_matrix_2d< double > &h_optimized)
 the main routine for carrying out the optimization. (used by the others).
virtual bool optimize_p (vcl_vector< vgl_homg_point_2d< double > > const &points1, vcl_vector< vgl_homg_point_2d< double > > const &points2, vgl_h_matrix_2d< double > &H)
 compute from matched points.
virtual bool optimize_l (vcl_vector< vgl_homg_line_2d< double > > const &lines1, vcl_vector< vgl_homg_line_2d< double > > const &lines2, vgl_h_matrix_2d< double > &H)
 compute from matched lines.
virtual bool optimize_pl (vcl_vector< vgl_homg_point_2d< double > > const &points1, vcl_vector< vgl_homg_point_2d< double > > const &points2, vcl_vector< vgl_homg_line_2d< double > > const &lines1, vcl_vector< vgl_homg_line_2d< double > > const &lines2, vgl_h_matrix_2d< double > &H)
 compute from matched points and lines.

Protected Attributes

bool verbose_
bool trace_
double ftol_
double gtol_
double htol_
int max_iter_
vgl_h_matrix_2d< double > initial_h_

Detailed Description

Definition at line 19 of file vgl_h_matrix_2d_optimize_lmq.h.


Constructor & Destructor Documentation

vgl_h_matrix_2d_optimize_lmq::vgl_h_matrix_2d_optimize_lmq ( vgl_h_matrix_2d< double > const &  initial_h)

Constructor from initial homography to be optimized.

Construct a vgl_h_matrix_2d_optimize_lmq object.

Definition at line 15 of file vgl_h_matrix_2d_optimize_lmq.cxx.


Member Function Documentation

int vgl_h_matrix_2d_optimize_lmq::minimum_number_of_correspondences ( ) const [inline, virtual]

Implements vgl_h_matrix_2d_optimize.

Definition at line 25 of file vgl_h_matrix_2d_optimize_lmq.h.

bool vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_point_2d< double > > const &  points1,
vcl_vector< vgl_homg_point_2d< double > > const &  points2,
vgl_h_matrix_2d< double > &  H 
) [inline, inherited]

optimize homography from matched points.

Definition at line 106 of file vgl_h_matrix_2d_optimize.h.

bool vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_line_2d< double > > const &  lines1,
vcl_vector< vgl_homg_line_2d< double > > const &  lines2,
vgl_h_matrix_2d< double > &  H 
) [inline, inherited]

optimize homography from matched lines.

Definition at line 114 of file vgl_h_matrix_2d_optimize.h.

bool vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_point_2d< double > > const &  points1,
vcl_vector< vgl_homg_point_2d< double > > const &  points2,
vcl_vector< vgl_homg_line_2d< double > > const &  lines1,
vcl_vector< vgl_homg_line_2d< double > > const &  lines2,
vgl_h_matrix_2d< double > &  H 
) [inline, inherited]

optimize homography from matched points and lines.

Definition at line 122 of file vgl_h_matrix_2d_optimize.h.

vgl_h_matrix_2d<double> vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_point_2d< double > > const &  p1,
vcl_vector< vgl_homg_point_2d< double > > const &  p2 
) [inline, inherited]

optimize homography from matched points - return h_matrix.

Definition at line 133 of file vgl_h_matrix_2d_optimize.h.

vgl_h_matrix_2d<double> vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_line_2d< double > > const &  l1,
vcl_vector< vgl_homg_line_2d< double > > const &  l2 
) [inline, inherited]

optimize homography from matched lines - return h_matrix.

Definition at line 139 of file vgl_h_matrix_2d_optimize.h.

vgl_h_matrix_2d<double> vgl_h_matrix_2d_optimize::optimize ( vcl_vector< vgl_homg_point_2d< double > > const &  p1,
vcl_vector< vgl_homg_point_2d< double > > const &  p2,
vcl_vector< vgl_homg_line_2d< double > > const &  l1,
vcl_vector< vgl_homg_line_2d< double > > const &  l2 
) [inline, inherited]

optimize homography from matched points and lines - return h_matrix.

Definition at line 145 of file vgl_h_matrix_2d_optimize.h.

bool vgl_h_matrix_2d_optimize_lmq::optimize_h ( vcl_vector< vgl_homg_point_2d< double > > const &  points1,
vcl_vector< vgl_homg_point_2d< double > > const &  points2,
vgl_h_matrix_2d< double > const &  h_initial,
vgl_h_matrix_2d< double > &  h_optimized 
) [protected]

the main routine for carrying out the optimization. (used by the others).

optimize the normalized projection problem.

Definition at line 22 of file vgl_h_matrix_2d_optimize_lmq.cxx.

bool vgl_h_matrix_2d_optimize_lmq::optimize_l ( vcl_vector< vgl_homg_line_2d< double > > const &  lines1,
vcl_vector< vgl_homg_line_2d< double > > const &  lines2,
vgl_h_matrix_2d< double > &  H 
) [protected, virtual]

compute from matched lines.

Implements vgl_h_matrix_2d_optimize.

Definition at line 104 of file vgl_h_matrix_2d_optimize_lmq.cxx.

bool vgl_h_matrix_2d_optimize_lmq::optimize_p ( vcl_vector< vgl_homg_point_2d< double > > const &  points1,
vcl_vector< vgl_homg_point_2d< double > > const &  points2,
vgl_h_matrix_2d< double > &  H 
) [protected, virtual]

compute from matched points.

Implements vgl_h_matrix_2d_optimize.

Definition at line 54 of file vgl_h_matrix_2d_optimize_lmq.cxx.

bool vgl_h_matrix_2d_optimize_lmq::optimize_pl ( vcl_vector< vgl_homg_point_2d< double > > const &  points1,
vcl_vector< vgl_homg_point_2d< double > > const &  points2,
vcl_vector< vgl_homg_line_2d< double > > const &  lines1,
vcl_vector< vgl_homg_line_2d< double > > const &  lines2,
vgl_h_matrix_2d< double > &  H 
) [protected, virtual]

compute from matched points and lines.

Implements vgl_h_matrix_2d_optimize.

Definition at line 176 of file vgl_h_matrix_2d_optimize_lmq.cxx.

void vgl_h_matrix_2d_optimize::set_ftol ( const double  ftol) [inline, inherited]

Termination tolerance on the sum of squared projection errors.

The optimization is done in a normalized coordinate frame with unity point domain radius.

Definition at line 92 of file vgl_h_matrix_2d_optimize.h.

void vgl_h_matrix_2d_optimize::set_gtol ( const double  gtol) [inline, inherited]

Termination tolerance on the gradient of the projection error.

Definition at line 95 of file vgl_h_matrix_2d_optimize.h.

void vgl_h_matrix_2d_optimize::set_htol ( const double  htol) [inline, inherited]

Termination tolerance on change in the solution.

Definition at line 87 of file vgl_h_matrix_2d_optimize.h.

void vgl_h_matrix_2d_optimize::set_trace ( bool  trace) [inline, inherited]

Termination tolerance on the gradient of the projection error.

Definition at line 84 of file vgl_h_matrix_2d_optimize.h.

void vgl_h_matrix_2d_optimize::set_verbose ( bool  v) [inline, inherited]

set this to true for verbose run-time information.

Definition at line 81 of file vgl_h_matrix_2d_optimize.h.


Member Data Documentation

double vgl_h_matrix_2d_optimize::ftol_ [protected, inherited]

Definition at line 154 of file vgl_h_matrix_2d_optimize.h.

double vgl_h_matrix_2d_optimize::gtol_ [protected, inherited]

Definition at line 155 of file vgl_h_matrix_2d_optimize.h.

double vgl_h_matrix_2d_optimize::htol_ [protected, inherited]

Definition at line 156 of file vgl_h_matrix_2d_optimize.h.

vgl_h_matrix_2d<double> vgl_h_matrix_2d_optimize::initial_h_ [protected, inherited]

Definition at line 158 of file vgl_h_matrix_2d_optimize.h.

int vgl_h_matrix_2d_optimize::max_iter_ [protected, inherited]

Definition at line 157 of file vgl_h_matrix_2d_optimize.h.

bool vgl_h_matrix_2d_optimize::trace_ [protected, inherited]

Definition at line 153 of file vgl_h_matrix_2d_optimize.h.

bool vgl_h_matrix_2d_optimize::verbose_ [protected, inherited]

Definition at line 152 of file vgl_h_matrix_2d_optimize.h.


The documentation for this class was generated from the following files: