Go to the documentation of this file.
   36     const std::shared_ptr<Cal3_S2Stereo>& 
K) {
 
   43     const std::vector<std::shared_ptr<Cal3_S2Stereo>>& Ks) {
 
   45   assert(poseKeys.size() == Ks.size());
 
   52     const std::shared_ptr<Cal3_S2Stereo>& 
K) {
 
   61     const std::string& 
s, 
const KeyFormatter& keyFormatter)
 const {
 
   62   std::cout << 
s << 
"SmartStereoProjectionPoseFactor, z = \n ";
 
   63   for (
const std::shared_ptr<Cal3_S2Stereo>& 
K : 
K_all_) {
 
   64     K->print(
"calibration = ");
 
   78   if (this->
active(values)) {
 
   89   for (
size_t i = 0; 
i < 
keys_.size(); 
i++) {
 
   91     if (Base::body_P_sensor_) {
 
   92       pose = 
pose.compose(*(Base::body_P_sensor_));
 
  
Smart stereo factor on poses, assuming camera calibration is fixed.
static const Pose3 pose(Rot3(Vector3(1, -1, -1).asDiagonal()), Point3(0, 0, 0.5))
double totalReprojectionError(const Cameras &cameras, std::optional< Point3 > externalPoint={}) const
Array< double, 1, 3 > e(1./3., 0.5, 2.)
const ZVector & measured() const
Return the 2D measurements (ZDim, in general).
SmartStereoProjectionPoseFactor(const SharedNoiseModel &sharedNoiseModel, const SmartStereoProjectionParams ¶ms=SmartStereoProjectionParams(), const std::optional< Pose3 > &body_P_sensor={})
static const SmartProjectionParams params
static Pose3 body_P_sensor(Rot3::RzRyRx(-M_PI_2, 0.0, -M_PI_2), Point3(0.25, -0.10, 1.0))
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
graph add(PriorFactor< Pose2 >(1, priorMean, priorNoise))
bool equals(const NonlinearFactor &p, double tol=1e-9) const override
equals
CameraSet< Camera > Cameras
noiseModel::Base::shared_ptr SharedNoiseModel
void add(const StereoPoint2 &measured, const Key &poseKey, const std::shared_ptr< Cal3_S2Stereo > &K)
std::vector< double > measurements
KeyVector keys_
The keys involved in this factor.
double error(const Values &values) const override
bool equals(const This &other, double tol=1e-9) const
check equality
std::vector< std::shared_ptr< Cal3_S2Stereo > > K_all_
shared pointer to calibration object (one for each camera)
virtual void print(const std::string &s="Factor", const KeyFormatter &formatter=DefaultKeyFormatter) const
print
Base::Cameras cameras(const Values &values) const override
std::uint64_t Key
Integer nonlinear key type.
virtual bool active(const Values &c) const
void print(const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const override
gtsam
Author(s): 
autogenerated on Wed May 28 2025 03:03:22