2 #ifndef vpgl_invmap_cost_function_h_ 3 #define vpgl_invmap_cost_function_h_ 44 #endif // vpgl_invmap_cost_function_h_
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.
~vpgl_invmap_cost_function() override=default
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).
vnl_vector_fixed< double, 4 > plane_
plane coefficients.
const vpgl_camera< double > * cam_ptr_
rational camera.
double f(vnl_vector< double > const &x) override
The cost function. x is a vector holding the two plane parameters.
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.
plane_param pp_
the well-conditioned parameterization.
plane_param
Which parameterization to use for the plane.
vnl_vector_fixed< double, 2 > image_point_
image point.