34typename std::enable_if<traits<T>::IsLieGroup, T>::type
35FindKarcherMean(
const std::vector<T, Eigen::aligned_allocator<T>> &elements);
39typename std::enable_if<traits<T>::IsLieGroup, T>::type
40FindKarcherMean(std::initializer_list<T> &&elements);
58 std::shared_ptr<JacobianFactor> whitenedJacobian_;
66 template <
typename CONTAINER>
68 std::optional<double> beta = {});
77 size_t dim()
const override {
return d_; }
81 return whitenedJacobian_;
typedef and functions to augment Eigen's MatrixXd
Global functions in a separate testing namespace.
Definition chartTesting.h:28
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition Group.h:37
const KeyVector & keys() const
Access the factor's involved variable keys.
Definition Factor.h:143
NonlinearFactor()
Default constructor for I/O only.
Definition NonlinearFactor.h:86
A non-templated config holding any types of Manifold-group elements.
Definition Values.h:65
double error(const Values &c) const override
Calculate the error of the factor: always zero.
Definition KarcherMeanFactor.h:74
KarcherMeanFactor(const CONTAINER &keys, int d=D, std::optional< double > beta={})
Construct from given keys.
Definition KarcherMeanFactor-inl.h:61
size_t dim() const override
get the dimension of the factor (number of rows on linearization)
Definition KarcherMeanFactor.h:77
std::shared_ptr< GaussianFactor > linearize(const Values &c) const override
linearize to a GaussianFactor
Definition KarcherMeanFactor.h:80
~KarcherMeanFactor() override
Destructor.
Definition KarcherMeanFactor.h:71