|
|
| ShonanAveraging3 (const Measurements &measurements, const Parameters ¶meters=Parameters()) |
| |
|
| ShonanAveraging3 (std::string g2oFile, const Parameters ¶meters=Parameters()) |
| |
|
| ShonanAveraging3 (const BetweenFactorPose3s &factors, const Parameters ¶meters=Parameters()) |
| |
|
Values | roundSolutionS (const Matrix &S) const |
| |
|
Values | roundSolutionS (const Matrix &S) const |
| |
|
Values | projectFrom (size_t p, const Values &values) const |
| |
|
Values | projectFrom (size_t p, const Values &values) const |
| |
| std::vector< BinaryMeasurement< T > > | maybeRobust (const std::vector< BinaryMeasurement< T > > &measurements, bool useRobustModel=false) const |
| | Helper function to convert measurements to robust noise model if flag is set. More...
|
| |
|
| ShonanAveraging (const Measurements &measurements, const Parameters ¶meters=Parameters()) |
| | Construct from set of relative measurements (given as BetweenFactor<Rot3> for now) NoiseModel must be isotropic.
|
| |
|
size_t | nrUnknowns () const |
| | Return number of unknowns.
|
| |
|
size_t | nrMeasurements () const |
| | Return number of measurements.
|
| |
|
const BinaryMeasurement< Rot > & | measurement (size_t k) const |
| | k^th binary measurement
|
| |
| Measurements | makeNoiseModelRobust (const Measurements &measurements, double k=1.345) const |
| | Update factors to use robust Huber loss. More...
|
| |
|
const Rot & | measured (size_t k) const |
| | k^th measurement, as a Rot.
|
| |
|
const KeyVector & | keys (size_t k) const |
| | Keys for k^th measurement, as a vector of Key values.
|
| |
|
double | cost (const Values &values) const |
| | Calculate cost for SO(3) Values should be of type Rot3.
|
| |
| Values | initializeRandomly (std::mt19937 &rng) const |
| | Initialize randomly at SO(d) More...
|
| |
|
Values | initializeRandomly () const |
| | Random initialization for wrapper, fixed random seed.
|
| |
| std::pair< Values, double > | run (const Values &initialEstimate, size_t pMin=d, size_t pMax=10) const |
| | Optimize at different values of p until convergence. More...
|
| |
|
Sparse | D () const |
| | Sparse version of D.
|
| |
|
Matrix | denseD () const |
| | Dense version of D.
|
| |
|
Sparse | Q () const |
| | Sparse version of Q.
|
| |
|
Matrix | denseQ () const |
| | Dense version of Q.
|
| |
|
Sparse | L () const |
| | Sparse version of L.
|
| |
|
Matrix | denseL () const |
| | Dense version of L.
|
| |
|
Sparse | computeLambda (const Matrix &S) const |
| | Version that takes pxdN Stiefel manifold elements.
|
| |
|
Matrix | computeLambda_ (const Values &values) const |
| | Dense versions of computeLambda for wrapper/testing.
|
| |
|
Matrix | computeLambda_ (const Matrix &S) const |
| | Dense versions of computeLambda for wrapper/testing.
|
| |
|
Sparse | computeA (const Values &values) const |
| | Compute A matrix whose Eigenvalues we will examine.
|
| |
|
Sparse | computeA (const Matrix &S) const |
| | Version that takes pxdN Stiefel manifold elements.
|
| |
|
Matrix | computeA_ (const Values &values) const |
| | Dense version of computeA for wrapper/testing.
|
| |
| double | computeMinEigenValue (const Values &values, Vector *minEigenVector=nullptr) const |
| | Compute minimum eigenvalue for optimality check. More...
|
| |
| double | computeMinEigenValueAP (const Values &values, Vector *minEigenVector=nullptr) const |
| | Compute minimum eigenvalue with accelerated power method. More...
|
| |
|
Values | roundSolutionS (const Matrix &S) const |
| | Project pxdN Stiefel manifold matrix S to Rot3^N.
|
| |
|
Matrix | riemannianGradient (size_t p, const Values &values) const |
| | Calculate the riemannian gradient of F(values) at values.
|
| |
| Values | initializeWithDescent (size_t p, const Values &values, const Vector &minEigenVector, double minEigenValue, double gradienTolerance=1e-2, double preconditionedGradNormTolerance=1e-4) const |
| | Given some values at p-1, return new values at p, by doing a line search along the descent direction, computed from the minimum eigenvector at p-1. More...
|
| |
|
Sparse | computeLambda (const Values &values) const |
| | Given an estimated local minimum Yopt for the (possibly lifted) relaxation, this function computes and returns the block-diagonal elements of the corresponding Lagrange multiplier.
|
| |
| NonlinearFactorGraph | buildGraphAt (size_t p) const |
| | Build graph for SO(p) More...
|
| |
| Values | initializeRandomlyAt (size_t p, std::mt19937 &rng) const |
| | Create initial Values of type SO(p) More...
|
| |
|
Values | initializeRandomlyAt (size_t p) const |
| | Version of initializeRandomlyAt with fixed random seed.
|
| |
|
double | costAt (size_t p, const Values &values) const |
| | Calculate cost for SO(p) Values should be of type SO(p)
|
| |
| std::pair< double, Vector > | computeMinEigenVector (const Values &values) const |
| | Compute minimum eigenvalue for optimality check. More...
|
| |
| bool | checkOptimality (const Values &values) const |
| | Check optimality. More...
|
| |
| boost::shared_ptr< LevenbergMarquardtOptimizer > | createOptimizerAt (size_t p, const Values &initial) const |
| | Try to create optimizer at SO(p) More...
|
| |
| Values | tryOptimizingAt (size_t p, const Values &initial) const |
| | Try to optimize at SO(p) More...
|
| |
|
Values | projectFrom (size_t p, const Values &values) const |
| | Project from SO(p) to Rot2 or Rot3 Values should be of type SO(p)
|
| |
|
Values | roundSolution (const Values &values) const |
| | Project from SO(p)^N to Rot2^N or Rot3^N Values should be of type SO(p)
|
| |