#include <vmal_rectifier.h>
Public Member Functions | |
| vmal_rectifier () | |
| Default constructor. | |
| vmal_rectifier (vmal_multi_view_data_vertex_sptr mvd_vertex, vmal_multi_view_data_edge_sptr mvd_edge, int ima_height, int ima_width) | |
| Constructor. | |
| vmal_rectifier (vcl_vector< vnl_vector< double > > *pts0, vcl_vector< vnl_vector< double > > *pts1, int ima_height, int ima_width) | |
| ~vmal_rectifier () | |
| void | rectification_matrix (vnl_double_3x3 &H0, vnl_double_3x3 &H1) |
| void | set_tritensor (TriTensor &tri) |
| void | compute_joint_epipolar_transform_new (vnl_double_3 *points0, vnl_double_3 *points1, int numpoints, vnl_double_3x3 &H0, vnl_double_3x3 &H1, int in_height, int in_width, int &out_height, int &out_width, double sweeti, double sweetj, bool affine) |
| void | compute_initial_joint_epipolar_transforms (vnl_double_3 *points0, vnl_double_3 *points1, int numpoints, vnl_double_3x3 &H0, vnl_double_3x3 &H1, double sweeti, double sweetj, bool affine) |
| int | compute_initial_joint_epipolar_transforms (const vnl_double_3x3 &Q, double ci, double cj, vnl_double_3x3 &H0, vnl_double_3x3 &H1) |
| Computes a pair of transformation matrices for an image pair that will define the joint epipolar projection. | |
| vnl_double_3x3 | matching_transform (const vnl_double_3x3 &Q, const vnl_double_3x3 &H1) |
| void | factor_Q_matrix_SR (const vnl_double_3x3 &Q, vnl_double_3x3 &R, vnl_double_3x3 &S) |
| This routine comes up with a factorization of Q into R S. | |
| vnl_double_3x3 | affine_correction (vnl_double_3 *points0, vnl_double_3 *points1, int numpoints, const vnl_double_3x3 &H0, const vnl_double_3x3 &H1) |
| void | apply_affine_correction (vnl_double_3 *points0, vnl_double_3 *points1, int numpoints, vnl_double_3x3 &H0, vnl_double_3x3 &H1) |
| void | rectify_rotate90 (int &height, int &width, vnl_double_3x3 &H0, vnl_double_3x3 &H1) |
| void | conditional_rectify_rotate180 (vnl_double_3x3 &H0, vnl_double_3x3 &H1) |
| void | resample (vnl_double_3x3 H0, vnl_double_3x3 H1, vil_image_view< vxl_byte > imgL, vil_image_view< vxl_byte > imgR) |
| vil_image_view< vxl_byte > * | GetRectifiedImageLeft () |
| vil_image_view< vxl_byte > * | GetRectifiedImageRight () |
Private Attributes | |
| vnl_double_3 * | lines0_p_ |
| vnl_double_3 * | lines0_q_ |
| vnl_double_3 * | lines1_p_ |
| vnl_double_3 * | lines1_q_ |
| vnl_double_3 * | points0_ |
| vnl_double_3 * | points1_ |
| int | numpoints_ |
| int | height_ |
| int | width_ |
| TriTensor | tritensor_ |
| vnl_double_3x3 | F12_ |
| vcl_vector< vnl_double_3 > | epipoles_ |
| bool | is_f_compute_ |
| vnl_double_3x3 | H0_ |
| vnl_double_3x3 | H1_ |
| vil_image_view< vxl_byte > * | rectL |
| vil_image_view< vxl_byte > * | rectR |
Definition at line 30 of file vmal_rectifier.h.
| vmal_rectifier::vmal_rectifier | ( | ) |
Default constructor.
Definition at line 20 of file vmal_rectifier.cxx.
| vmal_rectifier::vmal_rectifier | ( | vmal_multi_view_data_vertex_sptr | mvd_vertex, |
| vmal_multi_view_data_edge_sptr | mvd_edge, | ||
| int | ima_height, | ||
| int | ima_width | ||
| ) |
Constructor.
Definition at line 34 of file vmal_rectifier.cxx.
| vmal_rectifier::vmal_rectifier | ( | vcl_vector< vnl_vector< double > > * | pts0, |
| vcl_vector< vnl_vector< double > > * | pts1, | ||
| int | ima_height, | ||
| int | ima_width | ||
| ) |
Definition at line 73 of file vmal_rectifier.cxx.
| vmal_rectifier::~vmal_rectifier | ( | ) |
Definition at line 100 of file vmal_rectifier.cxx.
| vnl_double_3x3 vmal_rectifier::affine_correction | ( | vnl_double_3 * | points0, |
| vnl_double_3 * | points1, | ||
| int | numpoints, | ||
| const vnl_double_3x3 & | H0, | ||
| const vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 410 of file vmal_rectifier.cxx.
| void vmal_rectifier::apply_affine_correction | ( | vnl_double_3 * | points0, |
| vnl_double_3 * | points1, | ||
| int | numpoints, | ||
| vnl_double_3x3 & | H0, | ||
| vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 449 of file vmal_rectifier.cxx.
| void vmal_rectifier::compute_initial_joint_epipolar_transforms | ( | vnl_double_3 * | points0, |
| vnl_double_3 * | points1, | ||
| int | numpoints, | ||
| vnl_double_3x3 & | H0, | ||
| vnl_double_3x3 & | H1, | ||
| double | sweeti, | ||
| double | sweetj, | ||
| bool | affine | ||
| ) |
Definition at line 238 of file vmal_rectifier.cxx.
| int vmal_rectifier::compute_initial_joint_epipolar_transforms | ( | const vnl_double_3x3 & | Q, |
| double | ci, | ||
| double | cj, | ||
| vnl_double_3x3 & | H0, | ||
| vnl_double_3x3 & | H1 | ||
| ) |
Computes a pair of transformation matrices for an image pair that will define the joint epipolar projection.
This does a minimally distortion-free correction to H0 and then gets a matching H0.
Definition at line 297 of file vmal_rectifier.cxx.
| void vmal_rectifier::compute_joint_epipolar_transform_new | ( | vnl_double_3 * | points0, |
| vnl_double_3 * | points1, | ||
| int | numpoints, | ||
| vnl_double_3x3 & | H0, | ||
| vnl_double_3x3 & | H1, | ||
| int | in_height, | ||
| int | in_width, | ||
| int & | out_height, | ||
| int & | out_width, | ||
| double | sweeti, | ||
| double | sweetj, | ||
| bool | affine | ||
| ) |
Definition at line 203 of file vmal_rectifier.cxx.
| void vmal_rectifier::conditional_rectify_rotate180 | ( | vnl_double_3x3 & | H0, |
| vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 495 of file vmal_rectifier.cxx.
| void vmal_rectifier::factor_Q_matrix_SR | ( | const vnl_double_3x3 & | Q, |
| vnl_double_3x3 & | R, | ||
| vnl_double_3x3 & | S | ||
| ) |
This routine comes up with a factorization of Q into R S.
Definition at line 370 of file vmal_rectifier.cxx.
| vil_image_view<vxl_byte>* vmal_rectifier::GetRectifiedImageLeft | ( | ) | [inline] |
Definition at line 114 of file vmal_rectifier.h.
| vil_image_view<vxl_byte>* vmal_rectifier::GetRectifiedImageRight | ( | ) | [inline] |
Definition at line 115 of file vmal_rectifier.h.
| vnl_double_3x3 vmal_rectifier::matching_transform | ( | const vnl_double_3x3 & | Q, |
| const vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 354 of file vmal_rectifier.cxx.
| void vmal_rectifier::rectification_matrix | ( | vnl_double_3x3 & | H0, |
| vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 112 of file vmal_rectifier.cxx.
| void vmal_rectifier::rectify_rotate90 | ( | int & | height, |
| int & | width, | ||
| vnl_double_3x3 & | H0, | ||
| vnl_double_3x3 & | H1 | ||
| ) |
Definition at line 466 of file vmal_rectifier.cxx.
| void vmal_rectifier::resample | ( | vnl_double_3x3 | H0, |
| vnl_double_3x3 | H1, | ||
| vil_image_view< vxl_byte > | imgL, | ||
| vil_image_view< vxl_byte > | imgR | ||
| ) |
Definition at line 523 of file vmal_rectifier.cxx.
| void vmal_rectifier::set_tritensor | ( | TriTensor & | tri | ) |
Definition at line 181 of file vmal_rectifier.cxx.
vcl_vector<vnl_double_3> vmal_rectifier::epipoles_ [private] |
Definition at line 131 of file vmal_rectifier.h.
vnl_double_3x3 vmal_rectifier::F12_ [private] |
Definition at line 130 of file vmal_rectifier.h.
vnl_double_3x3 vmal_rectifier::H0_ [private] |
Definition at line 133 of file vmal_rectifier.h.
vnl_double_3x3 vmal_rectifier::H1_ [private] |
Definition at line 133 of file vmal_rectifier.h.
int vmal_rectifier::height_ [private] |
Definition at line 127 of file vmal_rectifier.h.
bool vmal_rectifier::is_f_compute_ [private] |
Definition at line 132 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::lines0_p_ [private] |
Definition at line 118 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::lines0_q_ [private] |
Definition at line 119 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::lines1_p_ [private] |
Definition at line 120 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::lines1_q_ [private] |
Definition at line 121 of file vmal_rectifier.h.
int vmal_rectifier::numpoints_ [private] |
Definition at line 125 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::points0_ [private] |
Definition at line 123 of file vmal_rectifier.h.
vnl_double_3* vmal_rectifier::points1_ [private] |
Definition at line 124 of file vmal_rectifier.h.
vil_image_view<vxl_byte>* vmal_rectifier::rectL [private] |
Definition at line 135 of file vmal_rectifier.h.
vil_image_view<vxl_byte>* vmal_rectifier::rectR [private] |
Definition at line 136 of file vmal_rectifier.h.
TriTensor vmal_rectifier::tritensor_ [private] |
Definition at line 129 of file vmal_rectifier.h.
int vmal_rectifier::width_ [private] |
Definition at line 128 of file vmal_rectifier.h.
1.7.5.1