MRPT  2.0.4
Classes | Functions
mrpt::obs::detail Namespace Reference

Classes

struct  TLevMarData
 

Functions

template<class POINTMAP >
void unprojectInto (mrpt::obs::CObservation3DRangeScan &src_obs, POINTMAP &dest_pointcloud, const mrpt::obs::T3DPointsProjectionParams &projectParams, const mrpt::obs::TRangeImageFilterParams &filterParams)
 
template<class POINTMAP >
void do_project_3d_pointcloud (const int H, const int W, const float *kxs, const float *kys, const float *kzs, mrpt::math::CMatrix_u16 &rangeImage, const float rangeUnits, mrpt::opengl::PointCloudAdapter< POINTMAP > &pca, std::vector< uint16_t > &idxs_x, std::vector< uint16_t > &idxs_y, const mrpt::obs::TRangeImageFilterParams &fp, bool MAKE_ORGANIZED, const int DECIM)
 
template<class POINTMAP >
void do_project_3d_pointcloud_SSE2 (const int H, const int W, const float *kxs, const float *kys, const float *kzs, mrpt::math::CMatrix_u16 &rangeImage, const float rangeUnits, mrpt::opengl::PointCloudAdapter< POINTMAP > &pca, std::vector< uint16_t > &idxs_x, std::vector< uint16_t > &idxs_y, const mrpt::obs::TRangeImageFilterParams &fp, bool MAKE_ORGANIZED)
 
template<typename POINTMAP >
void range2XYZ_LUT (mrpt::opengl::PointCloudAdapter< POINTMAP > &pca, mrpt::obs::CObservation3DRangeScan &src_obs, const mrpt::obs::T3DPointsProjectionParams &pp, const mrpt::obs::TRangeImageFilterParams &fp, const int H, const int W, const int DECIM, const bool use_rotated_LUT)
 
static void cam2vec (const TCamera &camPar, CVectorDouble &x)
 
static void vec2cam (const CVectorDouble &x, TCamera &camPar)
 
static void cost_func (const CVectorDouble &par, const TLevMarData &d, CVectorDouble &err)
 

Function Documentation

◆ cam2vec()

static void mrpt::obs::detail::cam2vec ( const TCamera camPar,
CVectorDouble x 
)
static

Definition at line 883 of file CObservation3DRangeScan.cpp.

References mrpt::img::TCamera::cx(), mrpt::img::TCamera::cy(), mrpt::img::TCamera::dist, mrpt::img::TCamera::fx(), mrpt::img::TCamera::fy(), mrpt::math::CVectorDynamic< T >::resize(), and mrpt::math::CVectorDynamic< T >::size().

Referenced by mrpt::obs::CObservation3DRangeScan::recoverCameraCalibrationParameters().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cost_func()

static void mrpt::obs::detail::cost_func ( const CVectorDouble par,
const TLevMarData d,
CVectorDouble err 
)
static

◆ do_project_3d_pointcloud()

template<class POINTMAP >
void mrpt::obs::detail::do_project_3d_pointcloud ( const int  H,
const int  W,
const float *  kxs,
const float *  kys,
const float *  kzs,
mrpt::math::CMatrix_u16 rangeImage,
const float  rangeUnits,
mrpt::opengl::PointCloudAdapter< POINTMAP > &  pca,
std::vector< uint16_t > &  idxs_x,
std::vector< uint16_t > &  idxs_y,
const mrpt::obs::TRangeImageFilterParams fp,
bool  MAKE_ORGANIZED,
const int  DECIM 
)
inline

Definition at line 326 of file CObservation3DRangeScan_project3D_impl.h.

References mrpt::math::MatrixVectorBase< Scalar, Derived >::coeff(), mrpt::math::MatrixVectorBase< Scalar, Derived >::coeffRef(), mrpt::obs::TRangeImageFilter::do_range_filter(), and mrpt::obs::TRangeImageFilterParams::mark_invalid_ranges.

Referenced by range2XYZ_LUT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ do_project_3d_pointcloud_SSE2()

template<class POINTMAP >
void mrpt::obs::detail::do_project_3d_pointcloud_SSE2 ( const int  H,
const int  W,
const float *  kxs,
const float *  kys,
const float *  kzs,
mrpt::math::CMatrix_u16 rangeImage,
const float  rangeUnits,
mrpt::opengl::PointCloudAdapter< POINTMAP > &  pca,
std::vector< uint16_t > &  idxs_x,
std::vector< uint16_t > &  idxs_y,
const mrpt::obs::TRangeImageFilterParams fp,
bool  MAKE_ORGANIZED 
)
inline

Definition at line 407 of file CObservation3DRangeScan_project3D_impl.h.

References mrpt::math::MatrixVectorBase< Scalar, Derived >::coeffRef(), mrpt::obs::TRangeImageFilterParams::mark_invalid_ranges, mrpt::obs::TRangeImageFilterParams::rangeCheckBetween, mrpt::obs::TRangeImageFilterParams::rangeMask_max, and mrpt::obs::TRangeImageFilterParams::rangeMask_min.

Referenced by range2XYZ_LUT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ range2XYZ_LUT()

template<typename POINTMAP >
void mrpt::obs::detail::range2XYZ_LUT ( mrpt::opengl::PointCloudAdapter< POINTMAP > &  pca,
mrpt::obs::CObservation3DRangeScan src_obs,
const mrpt::obs::T3DPointsProjectionParams pp,
const mrpt::obs::TRangeImageFilterParams fp,
const int  H,
const int  W,
const int  DECIM,
const bool  use_rotated_LUT 
)
inline

◆ unprojectInto()

template<class POINTMAP >
void mrpt::obs::detail::unprojectInto ( mrpt::obs::CObservation3DRangeScan src_obs,
POINTMAP &  dest_pointcloud,
const mrpt::obs::T3DPointsProjectionParams projectParams,
const mrpt::obs::TRangeImageFilterParams filterParams 
)

Definition at line 111 of file CObservation3DRangeScan_project3D_impl.h.

References ASSERT_, ASSERT_EQUAL_, ASSERTMSG_, mrpt::img::TColor::B, mrpt::math::CMatrixFixed< T, ROWS, COLS >::cast_float(), mrpt::math::CMatrixDynamic< T >::cols(), mrpt::poses::CPose3D::composeFrom(), mrpt::obs::T3DPointsProjectionParams::decimation, mrpt::img::TColor::G, mrpt::poses::CPoseOrPoint< DERIVEDCLASS, DIM >::getHomogeneousMatrixVal(), mrpt::obs::CObservation3DRangeScan::hasIntensityImage, mrpt::obs::CObservation3DRangeScan::hasRangeImage, mrpt::math::homogeneousMatrixInverse(), mrpt::math::MatrixBase< Scalar, Derived >::insertMatrix(), mrpt::obs::T3DPointsProjectionParams::layer, mrpt::obs::T3DPointsProjectionParams::MAKE_ORGANIZED, mrpt::img::TColor::R, mrpt::obs::CObservation3DRangeScan::rangeImage, mrpt::obs::CObservation3DRangeScan::rangeImageOtherLayers, mrpt::obs::CObservation3DRangeScan::resizePoints3DVectors(), mrpt::obs::T3DPointsProjectionParams::robotPoseInTheWorld, mrpt::round(), mrpt::math::CMatrixDynamic< T >::rows(), mrpt::math::CMatrixFixed< T, ROWS, COLS >::size(), and mrpt::obs::T3DPointsProjectionParams::takeIntoAccountSensorPoseOnRobot.

Referenced by mrpt::obs::CObservation3DRangeScan::convertTo2DScan(), mrpt::maps::CColouredOctoMap::internal_insertObservation(), and mrpt::maps::COccupancyGridMap3D::internal_insertObservationScan3D().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vec2cam()

static void mrpt::obs::detail::vec2cam ( const CVectorDouble x,
TCamera camPar 
)
static

Definition at line 894 of file CObservation3DRangeScan.cpp.

References mrpt::img::TCamera::dist, and mrpt::img::TCamera::intrinsicParams.

Referenced by cost_func(), and mrpt::obs::CObservation3DRangeScan::recoverCameraCalibrationParameters().

Here is the caller graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 33de1d0ad Sat Jun 20 11:02:42 2020 +0200 at sáb jun 20 17:35:17 CEST 2020