Fixed bug in new iSAM2 partial relinearization check that occurs when the Bayes Tree is empty
parent
0a66326891
commit
5ec2336f23
|
@ -168,13 +168,14 @@ FastSet<Index> ISAM2::Impl::CheckRelinearizationPartial(const ISAM2Clique::share
|
||||||
|
|
||||||
FastSet<Index> relinKeys;
|
FastSet<Index> relinKeys;
|
||||||
|
|
||||||
|
if(root) {
|
||||||
if(relinearizeThreshold.type() == typeid(double)) {
|
if(relinearizeThreshold.type() == typeid(double)) {
|
||||||
CheckRelinearizationRecursiveDouble(relinKeys, boost::get<double>(relinearizeThreshold), delta, root);
|
CheckRelinearizationRecursiveDouble(relinKeys, boost::get<double>(relinearizeThreshold), delta, root);
|
||||||
|
|
||||||
} else if(relinearizeThreshold.type() == typeid(FastMap<char,Vector>)) {
|
} else if(relinearizeThreshold.type() == typeid(FastMap<char,Vector>)) {
|
||||||
Ordering::InvertedMap decoder = ordering.invert();
|
Ordering::InvertedMap decoder = ordering.invert();
|
||||||
CheckRelinearizationRecursiveMap(relinKeys, boost::get<FastMap<char,Vector> >(relinearizeThreshold), delta, decoder, root);
|
CheckRelinearizationRecursiveMap(relinKeys, boost::get<FastMap<char,Vector> >(relinearizeThreshold), delta, decoder, root);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return relinKeys;
|
return relinKeys;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue