10 #ifndef mrpt_vision_utils_H    11 #define mrpt_vision_utils_H    60                                 int                                         y_search_size=-1);
    93                         const double            focalLengthX,
    94                         const double            focalLengthY,
    96                         const double            centerY);
   143                         unsigned int            camIndex = 0,
   144                         unsigned int            resolutionX = 320,
   145                         unsigned int            resolutionY = 240 );
   158                                 CFeatureList            & leftList,
   159                                 CFeatureList            & rightList,
   160                                 float                   threshold = 1.0);
   168                                 const CFeatureList      & list,
   177                                 const poses::CPose3D    & Rt );
   214                                 const CFeatureList                  & list1,
   215                                 const CFeatureList                  & list2,
   216                                 CMatchedFeatureList                 & matches,
   217                                 const TMatchingOptions              & options = TMatchingOptions(),
   218                                 const TStereoSystemParams           & 
params = TStereoSystemParams() );
   228                                 const CMatchedFeatureList           & mList,
   249                                 const CFeatureList                  & theList,
   253                                 const CMatchedFeatureList                       & matches,
   255                                 std::vector<mrpt::math::TPoint3D>                                       & out_points );
   264                                 const CFeatureList                              & leftList,
   265                                 const CFeatureList                              & rightList,
   266                                 std::vector<mrpt::math::TPoint3D>                    & vP3D,
   267                                 const TStereoSystemParams           & 
params = TStereoSystemParams() );
   276                                 const CFeaturePtr                   & leftFeat,
   277                                 const CFeaturePtr                   & rightFeat,
   279                                 const TStereoSystemParams           & 
params = TStereoSystemParams() );
   288                                 CMatchedFeatureList                             & mfList,
   289                                 const TStereoSystemParams               & 
param,
   301                                 CFeatureList                                    & leftList,
   302                                 CFeatureList                                        & rightList,
   303                                 const TStereoSystemParams               & 
param,
   313                                 const std::vector<double>                & sg,
   324                                 const CMatchedFeatureList           & inMatches,
   326                                 const double                        & baseline,
   328                                 const std::vector<double>                & sg,
   338                                 const std::vector<double>                & sg,
 void VISION_IMPEXP projectMatchedFeatures(const CMatchedFeatureList &matches, const mrpt::utils::TStereoCamera &stereo_camera, std::vector< mrpt::math::TPoint3D > &out_points)
 
A pair (x,y) of pixel coordinates (subpixel resolution). 
 
double VISION_IMPEXP computeSAD(const mrpt::utils::CImage &patch1, const mrpt::utils::CImage &patch2)
Calculates the Sum of Absolutes Differences (range [0,1]) between two patches. 
 
Declares a matrix of booleans (non serializable). 
 
void VISION_IMPEXP cloudsToMatchedList(const mrpt::obs::CObservationVisualLandmarks &cloud1, const mrpt::obs::CObservationVisualLandmarks &cloud2, mrpt::utils::TMatchingPairList &outList)
Transform two clouds of 3D points into a matched list of points ... 
 
A class for storing images as grayscale or RGB bitmaps. 
 
void VISION_IMPEXP StereoObs2BRObs(const mrpt::obs::CObservationStereoImages &inObs, const std::vector< double > &sg, mrpt::obs::CObservationBearingRange &outObs)
Converts a stereo images observation into a bearing and range observation. 
 
Declares a class derived from "CObservation" that stores a Landmarks Map as seen from a stereo camera...
 
Column vector, like Eigen::MatrixX*, but automatically initialized to zeros since construction...
 
GLenum GLsizei GLenum GLenum const GLvoid * image
 
void VISION_IMPEXP addFeaturesToImage(const mrpt::utils::CImage &inImg, const CFeatureList &theList, mrpt::utils::CImage &outImg)
Draw rectangles around each of the features on a copy of the input image. 
 
void VISION_IMPEXP projectMatchedFeature(const CFeaturePtr &leftFeat, const CFeaturePtr &rightFeat, mrpt::math::TPoint3D &p3D, const TStereoSystemParams ¶ms=TStereoSystemParams())
Computes the 3D position of a particular matched feature. 
 
Structure to hold the parameters of a pinhole stereo camera model. 
 
mrpt::math::TPoint3D VISION_IMPEXP pixelTo3D(const mrpt::utils::TPixelCoordf &xy, const mrpt::math::CMatrixDouble33 &A)
Extract a UNITARY 3D vector in the direction of a 3D point, given from its (x,y) pixels coordinates...
 
A class for storing a map of 3D probabilistic landmarks. 
 
void VISION_IMPEXP openCV_cross_correlation(const mrpt::utils::CImage &img, const mrpt::utils::CImage &patch_img, size_t &x_max, size_t &y_max, double &max_val, int x_search_ini=-1, int y_search_ini=-1, int x_search_size=-1, int y_search_size=-1)
Computes the correlation between this image and another one, encapsulating the openCV function cvMatc...
 
Observation class for either a pair of left+right or left+disparity images from a stereo camera...
 
double VISION_IMPEXP computeMsd(const mrpt::utils::TMatchingPairList &list, const poses::CPose3D &Rt)
Computes the mean squared distance between a set of 3D correspondences ... 
 
void VISION_IMPEXP flip(mrpt::utils::CImage &img)
Invert an image using OpenCV function. 
 
mrpt::maps::CLandmarksMap CLandmarksMap
Backward compatible typedef. 
 
void VISION_IMPEXP rowChecking(CFeatureList &leftList, CFeatureList &rightList, float threshold=1.0)
Search for correspondences which are not in the same row and deletes them. 
 
mrpt::obs::CObservationVisualLandmarks CObservationVisualLandmarks
Backward compatible typedef. 
 
float VISION_IMPEXP computeMainOrientation(const mrpt::utils::CImage &image, unsigned int x, unsigned int y)
Computes the main orientation of a set of points with an image (for using in SIFT-based algorithms) ...
 
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries. 
 
A class used to store a 3D pose (a 3D translation + a rotation in 3D). 
 
void VISION_IMPEXP computeStereoRectificationMaps(const mrpt::utils::TCamera &cam1, const mrpt::utils::TCamera &cam2, const mrpt::poses::CPose3D &rightCameraPose, void *outMap1x, void *outMap1y, void *outMap2x, void *outMap2y)
Computes a pair of x-and-y maps for stereo rectification from a pair of cameras and the relative pose...
 
size_t VISION_IMPEXP matchFeatures(const CFeatureList &list1, const CFeatureList &list2, CMatchedFeatureList &matches, const TMatchingOptions &options=TMatchingOptions(), const TStereoSystemParams ¶ms=TStereoSystemParams())
Find the matches between two lists of features which must be of the same type. 
 
This observation represents a number of range-bearing value pairs, each one for a detected landmark...
 
void VISION_IMPEXP generateMask(const CMatchedFeatureList &mList, mrpt::math::CMatrixBool &mask1, mrpt::math::CMatrixBool &mask2, int wSize=10)
Calculates the Sum of Absolutes Differences (range [0,1]) between two patches. 
 
void VISION_IMPEXP deleteRepeatedFeats(CFeatureList &list)
Explore the feature list and removes features which are in the same coordinates. 
 
void VISION_IMPEXP getDispersion(const CFeatureList &list, mrpt::math::CVectorFloat &std, mrpt::math::CVectorFloat &mean)
Computes the dispersion of the features in the image. 
 
void VISION_IMPEXP normalizeImage(const mrpt::utils::CImage &image, mrpt::utils::CImage &nimage)
Normalizes the brigthness and contrast of an image by setting its mean value to zero and its standard...
 
GLenum const GLfloat * params
 
mrpt::math::CMatrixDouble33 VISION_IMPEXP defaultIntrinsicParamsMatrix(unsigned int camIndex=0, unsigned int resolutionX=320, unsigned int resolutionY=240)
Returns the stored, default intrinsic params matrix for a given camera: 
 
EIGEN_STRONG_INLINE double mean() const
Computes the mean of the entire matrix. 
 
Structure to hold the parameters of a pinhole camera model. 
 
mrpt::math::CMatrixDouble33 VISION_IMPEXP buildIntrinsicParamsMatrix(const double focalLengthX, const double focalLengthY, const double centerX, const double centerY)
Builds the intrinsic parameters matrix A from parameters: