29 using namespace gtsam;
60 f.
add(measurement, 1);
66 Vector expectedError = Vector::Zero(2);
68 expectedFs << -0.001, -1.00001, 0, -0.1, 0, -0.01, 0, 0, 0, 1, 0, 0, 0, -0.1,
71 expectedE << 0.1, 0, 0.01, 0, 0.1, 0;
85 : Base(sharedNoiseModel) {}
Pose3 body_P_sensor() const
static int runAllTests(TestResult &result)
std::shared_ptr< GaussianFactor > linearize(const Values &values) const override
bool assert_equal(const Matrix &expected, const Matrix &actual, double tol)
static Pose3 body_P_sensor(Rot3::RzRyRx(-M_PI_2, 0.0, -M_PI_2), Point3(0.25, -0.10, 1.0))
A set of cameras, all with their own calibration.
Rot3 is a 3D rotation represented as a rotation matrix if the preprocessor symbol GTSAM_USE_QUATERNIO...
static shared_ptr Create(size_t dim)
Base class to create smart factors on poses or cameras.
Base class for all pinhole cameras.
static Point2 measurement(323.0, 240.0)
Base class for smart factors. This base class has no internal point, but it has a measurement...
#define EXPECT(condition)
Point2(* f)(const Point3 &, OptionalJacobian< 2, 3 >)
Array< double, 1, 3 > e(1./3., 0.5, 2.)
std::vector< MatrixZD, Eigen::aligned_allocator< MatrixZD > > FBlocks
StereoFactor(const SharedNoiseModel &sharedNoiseModel)
static Unit3 unit3(1.0, 2.1, 3.4)
SmartFactorBase< StereoCamera > Base
A Stereo Camera based on two Simple Cameras.
#define EXPECT_LONGS_EQUAL(expected, actual)
size_t dim() const override
Return the dimension (number of rows!) of the factor.
void add(const Z &measured, const Key &key)
double error(const Values &values) const override
TEST(SmartFactorBase, Pinhole)
Calibration used by Bundler.
noiseModel::Base::shared_ptr SharedNoiseModel
Vector unwhitenedError(const Cameras &cameras, const POINT &point, typename Cameras::FBlocks *Fs=nullptr, Matrix *E=nullptr) const