32 #ifndef STATIC_ENVIRONMENT_FILTER_H_ 33 #define STATIC_ENVIRONMENT_FILTER_H_ 37 #include <pcl/registration/transformation_estimation_svd.h> 130 virtual void iterativeICP( pcl::PointCloud<pcl::PointXYZ>& previous_locations,
131 pcl::PointCloud<pcl::PointXYZ>& current_locations,
tf::Transform& previous_current_Tf);
163 pcl::registration::TransformationEstimationSVD<pcl::PointXYZ, pcl::PointXYZ>
_svdecomposer;
virtual void iterativeICP(pcl::PointCloud< pcl::PointXYZ > &previous_locations, pcl::PointCloud< pcl::PointXYZ > ¤t_locations, tf::Transform &previous_current_Tf)
Estimate the transformation between 2 sets of feature locations by iteratively estimating ICP until e...
virtual void estimateDeltaMotion(std::vector< Feature::Id > &supporting_features_ids, tf::Transform &previous_current_Tf)
Estimate the motion between the last 2 frames of the set of supporting features, assuming they are al...
tf::TransformListener _tf_listener
virtual void predictState(double time_interval_ns)
virtual void correctState()
double _tf_epsilon_angular
double _environment_motion_threshold
virtual ~StaticEnvironmentFilter()
virtual void setMotionConstraint(int motion_constraint)
Set a constraint for the motion of the RB Right now this is only used by the StaticEnvironmentFilter...
double _tf_epsilon_linear
virtual void addSupportingFeature(Feature::Id supporting_feat_id)
boost::shared_ptr< StaticEnvironmentFilter > Ptr
static_environment_tracker_t _computation_type
virtual void setComputationType(static_environment_tracker_t computation_type)
Set the computation type for the static environment Options: ICP based (t-1 to t) or EKF based (simil...
static_environment_tracker_t
pcl::registration::TransformationEstimationSVD< pcl::PointXYZ, pcl::PointXYZ > _svdecomposer
virtual void constrainMotion()
Function that constrains the last estimated pose of the static environment to the camera according to...
StaticEnvironmentFilter(double loop_period_ns, FeaturesDataBase::Ptr feats_database, double environment_motion_threshold)