Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
vpgl_ray_intersect_lsqr< T > Class Template Reference

#include <vpgl_ray_intersect.hxx>

Inheritance diagram for vpgl_ray_intersect_lsqr< T >:
Inheritance graph
[legend]

Public Types

enum  UseGradient
 

Public Member Functions

 vpgl_ray_intersect_lsqr (std::vector< const vpgl_camera< T > * > cams, std::vector< vgl_point_2d< T > > image_pts, unsigned num_residuals)
 Constructor. More...
 
 ~vpgl_ray_intersect_lsqr () override=default
 Destructor. More...
 
void f (vnl_vector< double > const &intersection_point, vnl_vector< double > &image_errors) override
 The main function. More...
 
void throw_failure ()
 
void clear_failure ()
 
virtual void gradf (vnl_vector< double > const &x, vnl_matrix< double > &jacobian)
 
void fdgradf (vnl_vector< double > const &x, vnl_matrix< double > &jacobian, double stepsize)
 
void ffdgradf (vnl_vector< double > const &x, vnl_matrix< double > &jacobian, double stepsize)
 
virtual void trace (int iteration, vnl_vector< double > const &x, vnl_vector< double > const &fx)
 
double rms (vnl_vector< double > const &x)
 
unsigned int get_number_of_unknowns () const
 
unsigned int get_number_of_residuals () const
 
bool has_gradient () const
 
bool VNL_ALGO_EXPORT vnl_discrete_diff_fwd (vnl_least_squares_function *lsf, double h, vnl_vector< double > const &x, vnl_matrix< double > &J)
 
bool VNL_ALGO_EXPORT vnl_discrete_diff_fwd (vnl_least_squares_function *lsf, vnl_vector< double > const &h, vnl_vector< double > const &x, vnl_matrix< double > &J)
 
bool VNL_ALGO_EXPORT vnl_discrete_diff_fwd (vnl_least_squares_function *lsf, vnl_vector< double > const &h, vnl_vector< double > const &x, vnl_vector< double > const &y, vnl_matrix< double > &J)
 
bool VNL_ALGO_EXPORT vnl_discrete_diff_sym (vnl_least_squares_function *lsf, double h, vnl_vector< double > const &x, vnl_matrix< double > &J)
 
bool VNL_ALGO_EXPORT vnl_discrete_diff_sym (vnl_least_squares_function *lsf, vnl_vector< double > const &h, vnl_vector< double > const &x, vnl_matrix< double > &J)
 

Public Attributes

 no_gradient
 
 use_gradient
 
bool failure
 

Protected Member Functions

 vpgl_ray_intersect_lsqr ()
 
void init (unsigned int number_of_unknowns, unsigned int number_of_residuals)
 

Protected Attributes

std::vector< const vpgl_camera< T > * > f_cameras_
 
std::vector< vgl_point_2d< T > > f_image_pts_
 
unsigned int p_
 
unsigned int n_
 
bool use_gradient_
 

Detailed Description

template<typename T>
class vpgl_ray_intersect_lsqr< T >

Definition at line 21 of file vpgl_ray_intersect.hxx.

Constructor & Destructor Documentation

◆ vpgl_ray_intersect_lsqr() [1/2]

template<typename T >
vpgl_ray_intersect_lsqr< T >::vpgl_ray_intersect_lsqr ( std::vector< const vpgl_camera< T > * >  cams,
std::vector< vgl_point_2d< T > >  image_pts,
unsigned  num_residuals 
)

Constructor.

Definition at line 51 of file vpgl_ray_intersect.hxx.

◆ ~vpgl_ray_intersect_lsqr()

template<typename T>
vpgl_ray_intersect_lsqr< T >::~vpgl_ray_intersect_lsqr ( )
overridedefault

Destructor.

◆ vpgl_ray_intersect_lsqr() [2/2]

template<typename T>
vpgl_ray_intersect_lsqr< T >::vpgl_ray_intersect_lsqr ( )
protected

Member Function Documentation

◆ f()

template<typename T >
void vpgl_ray_intersect_lsqr< T >::f ( vnl_vector< double > const &  intersection_point,
vnl_vector< double > &  image_errors 
)
overridevirtual

The main function.

Given the parameter vector x, compute the vector of residuals fx. fx has been sized appropriately before the call.

Implements vnl_least_squares_function.

Definition at line 66 of file vpgl_ray_intersect.hxx.

Member Data Documentation

◆ f_cameras_

template<typename T>
std::vector<const vpgl_camera<T>* > vpgl_ray_intersect_lsqr< T >::f_cameras_
protected

Definition at line 45 of file vpgl_ray_intersect.hxx.

◆ f_image_pts_

template<typename T>
std::vector<vgl_point_2d<T> > vpgl_ray_intersect_lsqr< T >::f_image_pts_
protected

Definition at line 46 of file vpgl_ray_intersect.hxx.


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