|
Jafar
|
Observation Model using a Stereo head, two uvd points for init, two rho-thetas for updates. More...
Observation Model using a Stereo head, two uvd points for init, two rho-thetas for updates.
Definition at line 798 of file segmentFeature.hpp.
#include <segmentFeature.hpp>

Public Member Functions | |
| StereoImagePluckerFeatureObserveModel (SegmentFeatureModel &featureModel_, jafar::camera::StereoBench const &stereoBench_) | |
| Observation::ObservationType | typeObs () const |
| Get observation type. | |
| void | setPixCov (jblas::vec const &pixCov_, double stabilizingFactor=1.0) |
| Set pixel covariances matrix. | |
| void | setDispVar (double dispVar, double stabilizingFactor=1.0) |
| Set pixel disparity variance. | |
| void | initInternalState (BaseFeature &feature, jafar::geom::T3DEuler const &robotPose_, Observation const &obs_) const |
| Init extremities of the segment. | |
| void | updateInternalState (BaseFeature &feature, jafar::geom::T3DEuler const &robotPose_, Observation const &obs_) const |
| Update extremities of the segment. | |
| void | predictExtObs (jblas::vec_range const &pose, jblas::sym_mat_range const &poseCov, jblas::vec3 const &ext, jblas::sym_mat const &extCov, jblas::vec &zPredExt, jblas::sym_mat &zPredExtCov) |
| Predict the extremes of the observed line, with their covariance in the image plane. | |
| void | predictExtObsJac (jblas::vec_range const &pose, jblas::vec3 const Ext, jblas::vec &eInImage, jblas::mat &JeR, jblas::mat &JeExt) |
| Predict the extreme and Jacobians. | |
| jblas::vec const & | computeInnovation (jblas::vec const &z_, jblas::vec const &zPred_) |
| Innovation. | |
| void | computeSensorR (Observation const &obs) |
| Build covariances matrix of observation. | |
| jblas::vec2 | extToRhoTheta (jblas::vec const &ext1, jblas::vec const &ext2) |
| Endpoints to Rho-Theta transform. | |
| void | extToRhoThetaJac (jblas::vec const &ext1, jblas::vec const &ext2, jblas::mat &J) |
| Endpoints to Rho-Theta transform. | |
Protected Member Functions | |
| jblas::vec3 | planeBaseToDirVector (jblas::vec3 const &an_, jblas::vec2 const &beta_) |
| Plane sub-vector a to plane base vector beta. | |
| void | planeBaseToDirVectorJac (jblas::vec_range const &an_, jblas::vec2 const &beta_, jblas::vec_range &b, jblas::mat33 &B_a) |
| Plane sub-vector a to plane base vector -- Jacobians. | |
| boost::tuple< double, double > | computeExtremitiesAbscissa (SegmentFeature const &segFeature_, geom::T3DEuler const &robotPose_, StereoSegmentObservation const &obs_) const |
| void | segmentExtremitiesPluckerLines (StereoSegmentObservation const &segObs_, jblas::vec &lineExt1Sensor, jblas::vec &lineExt2Sensor) const |
| jblas::vec const & | predictObservationInSensorFrame (const jblas::vec &feature_) |
| Prediction of the observation, the feature is expressed in the sensor frame featureInSensorFrame_. | |
| void | predictObservationInSensorFrameJac (const jblas::vec &feature_) |
| Jacobian of predictObservationInSensorFrame(). | |
| void | computeSensorRInit (Observation const &obs) |
| Compute sensor observation noise for initialization purposes. | |
| jblas::vec | inverseObservationInSensorFrame (Observation const &obs_) |
| void | inverseObservationInSensorFrameJac (Observation const &obs_) |
| jacobian of inverseObservationInSensorFrame() | |
Static Protected Member Functions | |
|
static boost::tuple< double, double, double > | pluckerLinesDistance (jblas::vec const &line1_, jblas::vec const &line2_) |
Protected Attributes | |
| SegmentFeatureModel & | segmentFeatureModel |
| jafar::camera::StereoBench | stereoBench |
| jblas::mat33 | Pl |
| jblas::mat33 | Plinv |
| jblas::sym_mat | p_pixCov |
| covariance on pixel coordinate (u,v) | |
| double | p_dispVar |
| covariance on pixel disparity | |
| void jafar::slam::StereoImagePluckerFeatureObserveModel::computeSensorR | ( | Observation const & | obs | ) | [virtual] |
Build covariances matrix of observation.
| obs | observation as a couple of stereo endpoints This function computes the covariances matrix of the measurement in the space defined for the Kalman updates, which is a couple of rho-theta lines, the stereo-rho-theta line. |
Reimplemented from jafar::slam::BaseFeatureObserveModel.
| jblas::vec2 jafar::slam::StereoImagePluckerFeatureObserveModel::extToRhoTheta | ( | jblas::vec const & | ext1, |
| jblas::vec const & | ext2 | ||
| ) |
Endpoints to Rho-Theta transform.
| ext1 | the first extremity of the detected segment |
| ext2 | the second extremity |
| void jafar::slam::StereoImagePluckerFeatureObserveModel::extToRhoThetaJac | ( | jblas::vec const & | ext1, |
| jblas::vec const & | ext2, | ||
| jblas::mat & | J | ||
| ) |
Endpoints to Rho-Theta transform.
| ext1 | the first extremity of the detected segment |
| ext2 | the second extremity |
| J | the Jacobian wrt (ext,ext2) |
| jblas::vec jafar::slam::StereoImagePluckerFeatureObserveModel::inverseObservationInSensorFrame | ( | Observation const & | obs_ | ) | [protected, virtual] |
inverse observation function in sensor frame, to be defined by user.
Implements jafar::slam::FeatureObserveModel.
| void jafar::slam::StereoImagePluckerFeatureObserveModel::predictExtObs | ( | jblas::vec_range const & | pose, |
| jblas::sym_mat_range const & | poseCov, | ||
| jblas::vec3 const & | ext, | ||
| jblas::sym_mat const & | extCov, | ||
| jblas::vec & | zPredExt, | ||
| jblas::sym_mat & | zPredExtCov | ||
| ) |
Predict the extremes of the observed line, with their covariance in the image plane.
| pose | the robot pose |
| poseCov | the robot pose covariance matrix |
| ext | one of the extremities in 3D space |
| extCov | the covariances matrix of the extreme in 3D space |
| zPredExt | the predicted extreme in the 2D image |
| zPredExtCov | the covariances matrix of the predicted extreme CAUTION: THIS IMPLEMENTATION IGNORES THE CROSS-VARIANCES ROBOT/FEATURE AND LEADS TO TOO BIG ELLIPSES IN THE IMAGE. |
| void jafar::slam::StereoImagePluckerFeatureObserveModel::predictExtObsJac | ( | jblas::vec_range const & | pose, |
| jblas::vec3 const | Ext, | ||
| jblas::vec & | eInImage, | ||
| jblas::mat & | JeR, | ||
| jblas::mat & | JeExt | ||
| ) |
Predict the extreme and Jacobians.
| pose | the robot pose |
| Ext | one of the extremities in 3D space |
| eInImage | the predicted extreme in the 2D image |
| JeR | and |
| JeExt | Jacobians of the prediction with respect to pose and extremity |
| Generated on Wed Oct 15 2014 00:37:49 for Jafar by doxygen 1.7.6.1 |
|