37 #ifdef GTSAM_ALLOW_DEPRECATED_SINCE_V41 45 typedef boost::shared_ptr<SimpleCamera> shared_ptr;
58 explicit SimpleCamera(
const Pose3&
pose) :
80 return SimpleCamera(Base::LevelPose(pose2, height), K);
84 static SimpleCamera Level(
const Pose2& pose2,
double height) {
85 return SimpleCamera::Level(
Cal3_S2(), pose2, height);
97 static SimpleCamera Lookat(
const Point3& eye,
const Point3& target,
99 return SimpleCamera(Base::LookatPose(eye, target, upVector), K);
107 explicit SimpleCamera(
const Vector &
v) :
117 SimpleCamera::shared_ptr clone()
const {
return boost::make_shared<SimpleCamera>(*this); }
125 SimpleCamera retract(
const Vector&
d)
const {
126 if ((
size_t) d.size() == 6)
127 return SimpleCamera(this->
pose().retract(d), calibration());
129 return SimpleCamera(this->
pose().retract(d.head(6)),
130 calibration().retract(d.tail(calibration().
dim())));
138 GTSAM_EXPORT SimpleCamera simpleCamera(
const Matrix34&
P);
148 template <
typename T>
149 struct Range<SimpleCamera, T> :
HasRange<SimpleCamera, T, double> {};
Both ManifoldTraits and Testable.
static Cal3_S2 K(500, 500, 0.1, 640/2, 480/2)
Calibration of a camera with radial distortion, calculations in base class Cal3DS2_Base.
Base class for all pinhole cameras.
static const Pose3 pose(Rot3(Vector3(1,-1,-1).asDiagonal()), Point3(0, 0, 0.5))
const mpreal dim(const mpreal &a, const mpreal &b, mp_rnd_t r=mpreal::get_default_rnd())
Unified Calibration Model, see Mei07icra for details.
Calibration used by Bundler.
The most common 5DOF 3D->2D calibration.