31 #include <Geometry/FMatrix.hh>
32 #include <Geometry/RMatrix.hh>
33 #include <Geometry/PMatrix.hh>
34 #include <Geometry/EpipolarLine.hh>
40 int main(
int argc,
char *argv[])
46 PMatrix P1(K1,R1,C1), P2(K2,R2,C2);
77 double minx = -0.704896591;
78 double miny = -0.5087899419;
79 double maxx = 0.6917137055;
80 double maxy = 0.5023428813;
81 HomgPoint2D epipoleinimage1(0,0,0), epipoleinimage2(0,0,0);
82 F.GetEpipolesHomogenized(epipoleinimage1, epipoleinimage2);
84 epipoleinimage2.DeterminePosition(minx, miny, maxx, maxy);
88 int res = e.
Recalc(minx,miny,maxx,maxy,epipoleinimage2,epos2);
89 cout<<
"result from recalc is "<<res<<endl;
97 cout<<
"Epipolar line is "<<e<<
" with epipole "<< epipoleinimage2
int Recalc(unsigned int width, unsigned int height, HomgPoint2D &epipole, enum HomgPoint2D::EPosition epos)
assumes that data_ is already set
virtual HomgPoint2D & GetFarIntersectionWithImageBorder()
class HomgPoint2D describes a point with 2 degrees of freedom in projective coordinates.
class representing a Fundamental matrix
class HomgPoint3D describes a point with 3 degrees of freedom in projective coordinates.
K describes the mapping from world coordinates (wcs) to pixel coordinates (pcs).
describes a projective 3D -> 2D mapping in homogenous coordinates
virtual HomgPoint2D & GetCloseIntersectionWithImageBorder()
A class for representing epipolar lines with useful functions like ScanLine().