| 
    Jafar
   
    
   
   | 
  
  
  
 
Mathematical part of our Bundle Adjustment implementation. More...
Mathematical part of our Bundle Adjustment implementation.
Definition at line 27 of file linearsys.hpp.
#include <linearsys.hpp>
Public Member Functions | |
| bundleLinearSys (const observationsContainer obsCon_) | |
| Default constructor.  | |
| void | afficheB1 (unsigned int indObs, unsigned int indVue) | 
| void | afficheB2 (unsigned int indObs, unsigned int indObj) | 
| template<typename typeCam > | |
| void | processData (bundle::observationsContainer &bobs, bundle::bundleVariables< typeCam > &bvar) | 
| Computation of the jacobian matrix J, of the gradient vector G and of the matrix A=trans(J)*SIGMA*J (see Lourakis's TR to more infos).  | |
| double | maxDiagA () | 
| Return the max value of the diagonal of A.   | |
| void | solveByLU (double mu=0.0) | 
| Resolve the linear system (A+muId)dp = g by LU decomposition.  | |
| void | solveByGC (double mu=0.0) | 
| Resolve the linear system (A+muId)dp = g by the Conjugate Gradient method.  | |
Public Attributes | |
| jblas::vec | gradient | 
| Gradient vector.  | |
| jblas::vec | deltap | 
| Incremental upate of the BA variables vector (extrinsic parameters + 3D points localization)  | |
Private Member Functions | |
| void | bundle_forward_substitution (double const mu) | 
| void | bundle_backward_substitution () | 
| After resvoling of S dpCPDV = T, dp3D is obtained by backward substitution.  | |
Private Attributes | |
| unsigned int | nbCam | 
| unsigned int | nbObj3D | 
| unsigned int | nbObs2D | 
| jmath::matofmat< double, 2, 6 > | B1 | 
| jmath::matofmat< double, 2, 3 > | B2 | 
| std::vector< jblas::mat66 > | U | 
| std::vector< jblas::mat33 > | V | 
| std::vector< jblas::mat33 > | invV | 
| jblas::mat | Y | 
| std::vector< jblas::mat_range * > | rangeY | 
| jblas::vec | T | 
| std::vector< jblas::vec_range * > | rangeT | 
| jblas::mat | S | 
| std::vector< jblas::mat_range * > | rangeS | 
| jblas::mat | D | 
| std::vector< jblas::mat_range * > | rangeD | 
| std::vector< jblas::vec_range * > | gradCpdv | 
| std::vector< jblas::vec_range * > | grad3d | 
| jblas::vec_range | dpcpdv | 
| jblas::vec_range | dp3d | 
| std::vector< jblas::vec_range * > | dp1cpdv | 
| std::vector< jblas::vec_range * > | dp1obj3d | 
| double jafar::bundle::bundleLinearSys::maxDiagA | ( | ) |  [inline] | 
        
Return the max value of the diagonal of A.
max(Aii) = max(max(Uii),max(V(ii))) This value is used to initialize mu (in the Levenberg Marquardt algorithm)
Definition at line 344 of file linearsys.hpp.
Referenced by jafar::bundle::bundleLM().
| Generated on Wed Oct 15 2014 00:37:32 for Jafar by doxygen 1.7.6.1 | 
 
 |