Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Types | List of all members
vpgl_invmap_cost_function Class Reference

#include <vpgl_invmap_cost_function.h>

Inheritance diagram for vpgl_invmap_cost_function:
Inheritance graph
[legend]

Public Member Functions

 vpgl_invmap_cost_function (vnl_vector_fixed< double, 2 > const &image_point, vnl_vector_fixed< double, 4 > const &plane, const vpgl_camera< double > *rcam)
 Constructor - rcam pointer is not deleted by this class. More...
 
 ~vpgl_invmap_cost_function () override=default
 
double f (vnl_vector< double > const &x) override
 The cost function. x is a vector holding the two plane parameters. More...
 
void set_params (vnl_vector_fixed< double, 3 > const &xyz, vnl_vector_fixed< double, 2 > &x)
 set the parameter values from the 3-d point. More...
 
void set_params (vnl_vector_fixed< double, 3 > const &xyz, vnl_vector< double > &x)
 set the parameter values from the 3-d point. More...
 
void point_3d (vnl_vector_fixed< double, 2 > const &x, vnl_vector_fixed< double, 3 > &xyz)
 get the 3-d point defined by the parameters (and the plane). More...
 
void point_3d (vnl_vector< double > const &x, vnl_vector_fixed< double, 3 > &xyz)
 get the 3-d point defined by the parameters (and the plane). More...
 
virtual void gradf (vnl_vector< double > const &x, vnl_vector< double > &gradient)
 
vnl_vector< double > gradf (vnl_vector< double > const &x)
 
virtual void compute (vnl_vector< double > const &x, double *f, vnl_vector< double > *g)
 
int get_number_of_unknowns () const
 
void fdgradf (vnl_vector< double > const &x, vnl_vector< double > &gradient, double stepsize=1e-5)
 
vnl_vector< double > fdgradf (vnl_vector< double > const &x)
 
virtual double reported_error (double f_value)
 
virtual double get_range_min () const
 
virtual double get_range_max () const
 
virtual vnl_unary_function< double, vnl_vector< double > > * Copy () const
 

Public Attributes

int dim
 

Protected Member Functions

void set_number_of_unknowns (int number_of_unknowns)
 

Protected Attributes

vnl_vector_fixed< double, 2 > image_point_
 image point. More...
 
vnl_vector_fixed< double, 4 > plane_
 plane coefficients. More...
 
const vpgl_camera< double > * cam_ptr_
 rational camera. More...
 
plane_param pp_
 the well-conditioned parameterization. More...
 

Private Types

enum  plane_param { X_Y =0, X_Z, Y_Z }
 Which parameterization to use for the plane. More...
 

Detailed Description

Definition at line 10 of file vpgl_invmap_cost_function.h.

Member Enumeration Documentation

◆ plane_param

Which parameterization to use for the plane.

Enumerator
X_Y 
X_Z 
Y_Z 

Definition at line 13 of file vpgl_invmap_cost_function.h.

Constructor & Destructor Documentation

◆ vpgl_invmap_cost_function()

vpgl_invmap_cost_function::vpgl_invmap_cost_function ( vnl_vector_fixed< double, 2 > const &  image_point,
vnl_vector_fixed< double, 4 > const &  plane,
const vpgl_camera< double > *  rcam 
)

Constructor - rcam pointer is not deleted by this class.

Definition at line 13 of file vpgl_invmap_cost_function.cxx.

◆ ~vpgl_invmap_cost_function()

vpgl_invmap_cost_function::~vpgl_invmap_cost_function ( )
overridedefault

Member Function Documentation

◆ f()

double vpgl_invmap_cost_function::f ( vnl_vector< double > const &  x)
overridevirtual

The cost function. x is a vector holding the two plane parameters.

The main function.

Reimplemented from vnl_cost_function.

Definition at line 30 of file vpgl_invmap_cost_function.cxx.

◆ point_3d() [1/2]

void vpgl_invmap_cost_function::point_3d ( vnl_vector_fixed< double, 2 > const &  x,
vnl_vector_fixed< double, 3 > &  xyz 
)

get the 3-d point defined by the parameters (and the plane).

Definition at line 113 of file vpgl_invmap_cost_function.cxx.

◆ point_3d() [2/2]

void vpgl_invmap_cost_function::point_3d ( vnl_vector< double > const &  x,
vnl_vector_fixed< double, 3 > &  xyz 
)

get the 3-d point defined by the parameters (and the plane).

(Deprecated interface)

Definition at line 148 of file vpgl_invmap_cost_function.cxx.

◆ set_params() [1/2]

void vpgl_invmap_cost_function::set_params ( vnl_vector_fixed< double, 3 > const &  xyz,
vnl_vector_fixed< double, 2 > &  x 
)

set the parameter values from the 3-d point.

Definition at line 50 of file vpgl_invmap_cost_function.cxx.

◆ set_params() [2/2]

void vpgl_invmap_cost_function::set_params ( vnl_vector_fixed< double, 3 > const &  xyz,
vnl_vector< double > &  x 
)

set the parameter values from the 3-d point.

(Deprecated interface)

Definition at line 81 of file vpgl_invmap_cost_function.cxx.

Member Data Documentation

◆ cam_ptr_

const vpgl_camera<double>* vpgl_invmap_cost_function::cam_ptr_
protected

rational camera.

Definition at line 39 of file vpgl_invmap_cost_function.h.

◆ image_point_

vnl_vector_fixed<double, 2> vpgl_invmap_cost_function::image_point_
protected

image point.

Definition at line 35 of file vpgl_invmap_cost_function.h.

◆ plane_

vnl_vector_fixed<double, 4> vpgl_invmap_cost_function::plane_
protected

plane coefficients.

Definition at line 37 of file vpgl_invmap_cost_function.h.

◆ pp_

plane_param vpgl_invmap_cost_function::pp_
protected

the well-conditioned parameterization.

Definition at line 41 of file vpgl_invmap_cost_function.h.


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