53 : Base(noiseModel, a, b), measured_w_aZb_(w_aZb.
point3()) {}
68 boost::optional<Matrix&> H1 = boost::none,
69 boost::optional<Matrix&> H2 = boost::none)
const override {
71 Matrix33 H_predicted_dir;
72 const Point3 predicted =
normalize(dir, H1 || H2 ? &H_predicted_dir :
nullptr);
73 if (H1) *H1 = -H_predicted_dir;
74 if (H2) *H2 = H_predicted_dir;
80 template <
class ARCHIVE>
82 ar& boost::serialization::make_nvp(
83 "Base", boost::serialization::base_object<Base>(*
this));
TranslationFactor(Key a, Key b, const Unit3 &w_aZb, const SharedNoiseModel &noiseModel)
TranslationFactor()
default constructor
const SharedNoiseModel & noiseModel() const
access to the noise model
static void normalize(Signature::Row &row)
Represents a 3D point on a unit sphere.
void serialize(ARCHIVE &ar, const unsigned int)
Vector evaluateError(const Point3 &Ta, const Point3 &Tb, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const override
Caclulate error: (norm(Tb - Ta) - measurement) where Tb and Ta are Point3 translations and measuremen...
static const Point3 point3(0.08, 0.08, 0.0)
friend class boost::serialization::access
NoiseModelFactor2< Point3, Point3 > Base
Non-linear factor base classes.
std::uint64_t Key
Integer nonlinear key type.
noiseModel::Base::shared_ptr SharedNoiseModel