MRPT logo

mrpt::vision::pinhole Namespace Reference

Functions related to pinhole camera models, point projections, etc. More...


Functions

void MRPTDLLIMPEXP projectPoints_no_distortion (const std::vector< mrpt::poses::CPoint3D > &in_points_3D, const mrpt::poses::CPose3D &cameraPose, const mrpt::math::CMatrixFloat &intrinsicParams, std::vector< mrpt::vision::TPixelCoordf > &projectedPoints, bool accept_points_behind=false)
 Project a set of 3D points into a camera at an arbitrary 6D pose using its calibration matrix (undistorted projection model).
void MRPTDLLIMPEXP projectPoints_with_distortion (const std::vector< mrpt::poses::CPoint3D > &in_points_3D, const mrpt::poses::CPose3D &cameraPose, const mrpt::math::CMatrixFloat &intrinsicParams, const std::vector< double > &distortionParams, std::vector< mrpt::vision::TPixelCoordf > &projectedPoints, bool accept_points_behind=false)
 Project a set of 3D points into a camera at an arbitrary 6D pose using its calibration matrix and distortion parameters (radial and tangential distortions projection model).
void MRPTDLLIMPEXP undistort_points (const std::vector< mrpt::vision::TPixelCoordf > &srcDistortedPixels, std::vector< mrpt::vision::TPixelCoordf > &dstUndistortedPixels, const mrpt::math::CMatrixFloat &intrinsicParams, const std::vector< double > &distortionParams)
 Undistort a list of points given by their pixel coordinates, provided the camera matrix and distortion coefficients.


Detailed Description

Functions related to pinhole camera models, point projections, etc.


Function Documentation

void MRPTDLLIMPEXP mrpt::vision::pinhole::projectPoints_no_distortion ( const std::vector< mrpt::poses::CPoint3D > &  in_points_3D,
const mrpt::poses::CPose3D cameraPose,
const mrpt::math::CMatrixFloat intrinsicParams,
std::vector< mrpt::vision::TPixelCoordf > &  projectedPoints,
bool  accept_points_behind = false 
)

Project a set of 3D points into a camera at an arbitrary 6D pose using its calibration matrix (undistorted projection model).

Parameters:
in_points_3D [IN] The list of 3D points in world coordinates (meters) to project.
cameraPose [IN] The pose of the camera in the world.
intrinsicParams [IN] The 3x3 calibration matrix. See http://babel.isa.uma.es/mrpt/index.php/Camera_Parameters
projectedPoints [OUT] The list of image coordinates (in pixels) for the projected points. At output this list is resized to the same number of input points.
accept_points_behind [IN] See the note below.
Note:
Points "behind" the camera (which couldn't be physically seen in the real world) are marked with pixel coordinates (-1,-1) to detect them as invalid, unless accept_points_behind is true. In that case they'll be projected normally.
See also:
projectPoints_with_distortion

void MRPTDLLIMPEXP mrpt::vision::pinhole::projectPoints_with_distortion ( const std::vector< mrpt::poses::CPoint3D > &  in_points_3D,
const mrpt::poses::CPose3D cameraPose,
const mrpt::math::CMatrixFloat intrinsicParams,
const std::vector< double > &  distortionParams,
std::vector< mrpt::vision::TPixelCoordf > &  projectedPoints,
bool  accept_points_behind = false 
)

Project a set of 3D points into a camera at an arbitrary 6D pose using its calibration matrix and distortion parameters (radial and tangential distortions projection model).

Parameters:
in_points_3D [IN] The list of 3D points in world coordinates (meters) to project.
cameraPose [IN] The pose of the camera in the world.
intrinsicParams [IN] The 3x3 calibration matrix. See http://babel.isa.uma.es/mrpt/index.php/Camera_Parameters
distortionParams [IN] The 4-length vector with the distortion parameters [k1 k2 p1 p2]. See http://babel.isa.uma.es/mrpt/index.php/Camera_Parameters
projectedPoints [OUT] The list of image coordinates (in pixels) for the projected points. At output this list is resized to the same number of input points.
accept_points_behind [IN] See the note below.
Note:
Points "behind" the camera (which couldn't be physically seen in the real world) are marked with pixel coordinates (-1,-1) to detect them as invalid, unless accept_points_behind is true. In that case they'll be projected normally.
See also:
projectPoints_no_distortion

void MRPTDLLIMPEXP mrpt::vision::pinhole::undistort_points ( const std::vector< mrpt::vision::TPixelCoordf > &  srcDistortedPixels,
std::vector< mrpt::vision::TPixelCoordf > &  dstUndistortedPixels,
const mrpt::math::CMatrixFloat intrinsicParams,
const std::vector< double > &  distortionParams 
)

Undistort a list of points given by their pixel coordinates, provided the camera matrix and distortion coefficients.

Parameters:
srcDistortedPixels [IN] The pixel coordinates as in the distorted image.
dstUndistortedPixels [OUT] The computed pixel coordinates without distortion.
intrinsicParams [IN] The 3x3 calibration matrix. See http://babel.isa.uma.es/mrpt/index.php/Camera_Parameters
distortionParams [IN] The 4-length vector with the distortion parameters [k1 k2 p1 p2]. See http://babel.isa.uma.es/mrpt/index.php/Camera_Parameters




Page generated by Doxygen 1.5.9 for MRPT 0.7.1 SVN: at Mon Aug 17 22:21:34 EDT 2009