Various methods for converting to a generic camera. More...
#include <vpgl_camera_convert.h>
Static Public Member Functions | |
static bool | convert (vpgl_local_rational_camera< double > const &rat_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
Convert a local rational camera to a generic camera. | |
static bool | convert (vpgl_local_rational_camera< double > const &rat_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, double local_z_min, double local_z_max, unsigned level=0) |
Convert a local rational camera to a generic camera, using user-specified z bounds. | |
static bool | convert (vpgl_proj_camera< double > const &prj_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
Convert a proj_camera to a generic camera. | |
static bool | convert (vpgl_perspective_camera< double > const &per_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
Convert a perspective_camera to a generic camera. | |
static bool | convert_with_margin (vpgl_perspective_camera< double > const &per_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, int margin, unsigned level=0) |
static bool | convert (vpgl_affine_camera< double > const &aff_cam, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
Convert an affine_camera to a generic camera. | |
static bool | convert (vpgl_camera_double_sptr const &camera, int ni, int nj, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
:convert an abstract camera to generic camera. | |
static bool | convert (vpgl_geo_camera &geocam, int ni, int nj, double height, vpgl_generic_camera< double > &gen_cam, unsigned level=0) |
Convert a geocam (transformtaion matrix read from a geotiff header + an lvcs) to a generic camera. | |
Private Member Functions | |
vpgl_generic_camera_convert () | |
Static Private Member Functions | |
static bool | upsample_rays (vcl_vector< vgl_ray_3d< double > > const &ray_nbrs, vgl_ray_3d< double > const &ray, vcl_vector< vgl_ray_3d< double > > &interp_rays) |
interpolate rays to fill next higher resolution pyramid layer. | |
static vgl_ray_3d< double > | interp_pair (vgl_ray_3d< double > const &r0, vgl_ray_3d< double > const &r1, double n_grid) |
interpolate a span of rays base on a linear interpolation. n_grid is the step distance from r1. r0 and r1 are one unit apart. |
Various methods for converting to a generic camera.
Definition at line 71 of file vpgl_camera_convert.h.
vpgl_generic_camera_convert::vpgl_generic_camera_convert | ( | ) | [private] |
bool vpgl_generic_camera_convert::convert | ( | vpgl_local_rational_camera< double > const & | rat_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
Convert a local rational camera to a generic camera.
Definition at line 781 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_local_rational_camera< double > const & | rat_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
double | local_z_min, | ||
double | local_z_max, | ||
unsigned | level = 0 |
||
) | [static] |
Convert a local rational camera to a generic camera, using user-specified z bounds.
Note that the z values are relative to the local coordinate system
Definition at line 814 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_proj_camera< double > const & | prj_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
Convert a proj_camera to a generic camera.
Definition at line 975 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_perspective_camera< double > const & | per_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
Convert a perspective_camera to a generic camera.
Definition at line 993 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_affine_camera< double > const & | aff_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
Convert an affine_camera to a generic camera.
Definition at line 1034 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_camera_double_sptr const & | camera, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
:convert an abstract camera to generic camera.
Definition at line 1059 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert | ( | vpgl_geo_camera & | geocam, |
int | ni, | ||
int | nj, | ||
double | height, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
unsigned | level = 0 |
||
) | [static] |
Convert a geocam (transformtaion matrix read from a geotiff header + an lvcs) to a generic camera.
all rays have the same direction.
Definition at line 1084 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::convert_with_margin | ( | vpgl_perspective_camera< double > const & | per_cam, |
int | ni, | ||
int | nj, | ||
vpgl_generic_camera< double > & | gen_cam, | ||
int | margin, | ||
unsigned | level = 0 |
||
) | [static] |
Definition at line 1011 of file vpgl_camera_convert.cxx.
vgl_ray_3d< double > vpgl_generic_camera_convert::interp_pair | ( | vgl_ray_3d< double > const & | r0, |
vgl_ray_3d< double > const & | r1, | ||
double | n_grid | ||
) | [static, private] |
interpolate a span of rays base on a linear interpolation. n_grid is the step distance from r1. r0 and r1 are one unit apart.
Definition at line 760 of file vpgl_camera_convert.cxx.
bool vpgl_generic_camera_convert::upsample_rays | ( | vcl_vector< vgl_ray_3d< double > > const & | ray_nbrs, |
vgl_ray_3d< double > const & | ray, | ||
vcl_vector< vgl_ray_3d< double > > & | interp_rays | ||
) | [static, private] |
interpolate rays to fill next higher resolution pyramid layer.
Definition at line 717 of file vpgl_camera_convert.cxx.