small change to covariance stuff
parent
c13d909343
commit
a411cf9683
|
@ -122,7 +122,7 @@ int main(int argc, char** argv) {
|
||||||
|
|
||||||
initial.print("initial estimate");
|
initial.print("initial estimate");
|
||||||
|
|
||||||
// optimize using Levenburg-Marquadt optimization with an ordering from colamd
|
// optimize using Levenberg-Marquardt optimization with an ordering from colamd
|
||||||
|
|
||||||
// first using sequential elimination
|
// first using sequential elimination
|
||||||
OptimizerSeqential::shared_values resultSequential = OptimizerSeqential::optimizeLM(graph, initial);
|
OptimizerSeqential::shared_values resultSequential = OptimizerSeqential::optimizeLM(graph, initial);
|
||||||
|
|
|
@ -76,11 +76,12 @@ int main(int argc, char** argv) {
|
||||||
Values result = *optimizer_result.values();
|
Values result = *optimizer_result.values();
|
||||||
result.print("final result");
|
result.print("final result");
|
||||||
|
|
||||||
Vector mean; Matrix covariance;
|
/* Get covariances */
|
||||||
boost::tie( mean, covariance) = optimizer_result.marginalStandard(x1);
|
Matrix covariance1 = optimizer_result.marginalStandard(x1);
|
||||||
|
Matrix covariance2 = optimizer_result.marginalStandard(x2);
|
||||||
|
|
||||||
print(mean, "Mean");
|
print(covariance1, "Covariance1");
|
||||||
print(covariance, "Covariance");
|
print(covariance2, "Covariance2");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,8 +161,8 @@ namespace gtsam {
|
||||||
/**
|
/**
|
||||||
* Return mean and covariance on a single variable
|
* Return mean and covariance on a single variable
|
||||||
*/
|
*/
|
||||||
std::pair<Vector, Matrix> marginalStandard(Symbol j) const {
|
Matrix marginalStandard(Symbol j) const {
|
||||||
return solver_->marginalStandard((*ordering_)[j]);
|
return solver_->marginalStandard((*ordering_)[j]).second;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue