| |
- mrpt.pymrpt.mrpt.Stringifyable(pybind11_builtins.pybind11_object)
-
- CMetricMap(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.system.CObservable, mrpt.pymrpt.mrpt.Stringifyable, mrpt.pymrpt.mrpt.opengl.Visualizable)
-
- CBeaconMap
- CHeightGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, CHeightGridMap2D_Base)
- CLandmarksMap
- CMultiMetricMap
- COccupancyGridMap2D(CMetricMap, CLogOddsGridMap2D_signed_char_t)
- COccupancyGridMap3D(CMetricMap, CLogOddsGridMap3D_signed_char_t)
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
-
- CColouredOctoMap
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
-
- COctoMap
- CPointsMap(CMetricMap, mrpt.pymrpt.mrpt.opengl.PLY_Importer, mrpt.pymrpt.mrpt.opengl.PLY_Exporter)
-
- CColouredPointsMap
- CPointsMapXYZI
- CSimplePointsMap
- CWeightedPointsMap
- CRandomFieldGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t)
-
- CGasConcentrationGridMap2D
- CHeightGridMap2D_MRF(CRandomFieldGridMap2D, CHeightGridMap2D_Base)
- CWirelessPowerGridMap2D
- CReflectivityGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, CLogOddsGridMap2D_signed_char_t)
- mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t(mrpt.pymrpt.mrpt.bayes.CParticleFilterCapable)
-
- CMultiMetricMapPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t)
- mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t(pybind11_builtins.pybind11_object)
-
- CMultiMetricMapPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t)
- mrpt.pymrpt.mrpt.config.CLoadableOptions(pybind11_builtins.pybind11_object)
-
- TMapGenericParams(mrpt.pymrpt.mrpt.config.CLoadableOptions, mrpt.pymrpt.mrpt.serialization.CSerializable)
- TSetOfMetricMapInitializers
- mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t(pybind11_builtins.pybind11_object)
-
- CRandomFieldGridMap3D(mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, mrpt.pymrpt.mrpt.serialization.CSerializable)
- mrpt.pymrpt.mrpt.opengl.Visualizable(pybind11_builtins.pybind11_object)
-
- CMetricMap(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.system.CObservable, mrpt.pymrpt.mrpt.Stringifyable, mrpt.pymrpt.mrpt.opengl.Visualizable)
-
- CBeaconMap
- CHeightGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, CHeightGridMap2D_Base)
- CLandmarksMap
- CMultiMetricMap
- COccupancyGridMap2D(CMetricMap, CLogOddsGridMap2D_signed_char_t)
- COccupancyGridMap3D(CMetricMap, CLogOddsGridMap3D_signed_char_t)
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
-
- CColouredOctoMap
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
-
- COctoMap
- CPointsMap(CMetricMap, mrpt.pymrpt.mrpt.opengl.PLY_Importer, mrpt.pymrpt.mrpt.opengl.PLY_Exporter)
-
- CColouredPointsMap
- CPointsMapXYZI
- CSimplePointsMap
- CWeightedPointsMap
- CRandomFieldGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t)
-
- CGasConcentrationGridMap2D
- CHeightGridMap2D_MRF(CRandomFieldGridMap2D, CHeightGridMap2D_Base)
- CWirelessPowerGridMap2D
- CReflectivityGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, CLogOddsGridMap2D_signed_char_t)
- mrpt.pymrpt.mrpt.poses.CPointPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t)
-
- CBeacon
- mrpt.pymrpt.mrpt.serialization.CSerializable(mrpt.pymrpt.mrpt.rtti.CObject)
-
- CLandmark
- CMetricMap(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.system.CObservable, mrpt.pymrpt.mrpt.Stringifyable, mrpt.pymrpt.mrpt.opengl.Visualizable)
-
- CBeaconMap
- CHeightGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, CHeightGridMap2D_Base)
- CLandmarksMap
- CMultiMetricMap
- COccupancyGridMap2D(CMetricMap, CLogOddsGridMap2D_signed_char_t)
- COccupancyGridMap3D(CMetricMap, CLogOddsGridMap3D_signed_char_t)
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
-
- CColouredOctoMap
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
-
- COctoMap
- CPointsMap(CMetricMap, mrpt.pymrpt.mrpt.opengl.PLY_Importer, mrpt.pymrpt.mrpt.opengl.PLY_Exporter)
-
- CColouredPointsMap
- CPointsMapXYZI
- CSimplePointsMap
- CWeightedPointsMap
- CRandomFieldGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t)
-
- CGasConcentrationGridMap2D
- CHeightGridMap2D_MRF(CRandomFieldGridMap2D, CHeightGridMap2D_Base)
- CWirelessPowerGridMap2D
- CReflectivityGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, CLogOddsGridMap2D_signed_char_t)
- CMultiMetricMapPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t)
- CRBPFParticleData
- CRandomFieldGridMap3D(mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, mrpt.pymrpt.mrpt.serialization.CSerializable)
- CSimpleMap
- TMapGenericParams(mrpt.pymrpt.mrpt.config.CLoadableOptions, mrpt.pymrpt.mrpt.serialization.CSerializable)
- mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t(pybind11_builtins.pybind11_object)
-
- CMultiMetricMapPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t)
- mrpt.pymrpt.mrpt.system.CObservable(pybind11_builtins.pybind11_object)
-
- CMetricMap(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.system.CObservable, mrpt.pymrpt.mrpt.Stringifyable, mrpt.pymrpt.mrpt.opengl.Visualizable)
-
- CBeaconMap
- CHeightGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, CHeightGridMap2D_Base)
- CLandmarksMap
- CMultiMetricMap
- COccupancyGridMap2D(CMetricMap, CLogOddsGridMap2D_signed_char_t)
- COccupancyGridMap3D(CMetricMap, CLogOddsGridMap3D_signed_char_t)
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
-
- CColouredOctoMap
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
-
- COctoMap
- CPointsMap(CMetricMap, mrpt.pymrpt.mrpt.opengl.PLY_Importer, mrpt.pymrpt.mrpt.opengl.PLY_Exporter)
-
- CColouredPointsMap
- CPointsMapXYZI
- CSimplePointsMap
- CWeightedPointsMap
- CRandomFieldGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t)
-
- CGasConcentrationGridMap2D
- CHeightGridMap2D_MRF(CRandomFieldGridMap2D, CHeightGridMap2D_Base)
- CWirelessPowerGridMap2D
- CReflectivityGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, CLogOddsGridMap2D_signed_char_t)
- mrpt.pymrpt.mrpt.system.mrptEvent(pybind11_builtins.pybind11_object)
-
- mrptEventMetricMapClear
- mrptEventMetricMapInsert
- pybind11_builtins.pybind11_object(builtins.object)
-
- CHeightGridMap2D_Base
- CLogOddsGridMap2D_signed_char_t
- CLogOddsGridMap3D_signed_char_t
- CLogOddsGridMapLUT_signed_char_t
- CPointCloudFilterBase
-
- CPointCloudFilterByDistance
- OccGridCellTraits
- THeightGridmapCell
- TMatchingExtraResults
- TMatchingParams
- TMatchingRatioParams
- TRandomFieldCell
- TRandomFieldVoxel
class CBeacon(mrpt.pymrpt.mrpt.poses.CPointPDF) |
|
The class for storing individual "beacon landmarks" under a variety of 3D
position PDF distributions.
This class is used for storage within the class CBeaconMap.
The class implements the same methods than the interface "CPointPDF", and
invoking them actually becomes
a mapping into the methods of the current PDF representation of the
beacon, selectable by means of "m_typePDF"
CBeaconMap, CPointPDFSOG |
|
- Method resolution order:
- CBeacon
- mrpt.pymrpt.mrpt.poses.CPointPDF
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CBeacon) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CBeacon::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CBeacon) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CBeacon, arg0: mrpt.pymrpt.mrpt.maps.CBeacon) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CBeacon, arg0: mrpt.pymrpt.mrpt.maps.CBeacon) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CBeacon, : mrpt.pymrpt.mrpt.maps.CBeacon) -> mrpt.pymrpt.mrpt.maps.CBeacon
C++: mrpt::maps::CBeacon::operator=(const class mrpt::maps::CBeacon &) --> class mrpt::maps::CBeacon &
- bayesianFusion(...)
- bayesianFusion(*args, **kwargs)
Overloaded function.
1. bayesianFusion(self: mrpt.pymrpt.mrpt.maps.CBeacon, p1: mrpt.pymrpt.mrpt.poses.CPointPDF, p2: mrpt.pymrpt.mrpt.poses.CPointPDF) -> None
2. bayesianFusion(self: mrpt.pymrpt.mrpt.maps.CBeacon, p1: mrpt.pymrpt.mrpt.poses.CPointPDF, p2: mrpt.pymrpt.mrpt.poses.CPointPDF, minMahalanobisDistToDrop: float) -> None
Bayesian fusion of two point distributions (product of two
distributions->new distribution), then save the result in this object
(WARNING: See implementing classes to see classes that can and cannot be
mixtured!)
The first distribution to fuse
The second distribution to fuse
If set to different of 0, the result of
very separate Gaussian modes (that will result in negligible components)
in SOGs will be dropped to reduce the number of modes in the output.
C++: mrpt::maps::CBeacon::bayesianFusion(const class mrpt::poses::CPointPDF &, const class mrpt::poses::CPointPDF &, const double) --> void
- changeCoordinatesReference(...)
- changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CBeacon, newReferenceBase: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
this = p (+) this. This can be used to convert a PDF from local
coordinates to global, providing the point (newReferenceBase) from which
"to project" the current pdf. Result PDF substituted the currently
stored one in the object.
C++: mrpt::maps::CBeacon::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CBeacon) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CBeacon::clone() const --> class mrpt::rtti::CObject *
- copyFrom(...)
- copyFrom(self: mrpt.pymrpt.mrpt.maps.CBeacon, o: mrpt.pymrpt.mrpt.poses.CPointPDF) -> None
Copy operator, translating if necesary (for example, between particles
and gaussian representations)
C++: mrpt::maps::CBeacon::copyFrom(const class mrpt::poses::CPointPDF &) --> void
- drawSingleSample(...)
- drawSingleSample(self: mrpt.pymrpt.mrpt.maps.CBeacon, outSample: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
Draw a sample from the pdf.
C++: mrpt::maps::CBeacon::drawSingleSample(class mrpt::poses::CPoint3D &) const --> void
- generateObservationModelDistribution(...)
- generateObservationModelDistribution(*args, **kwargs)
Overloaded function.
1. generateObservationModelDistribution(self: mrpt.pymrpt.mrpt.maps.CBeacon, sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPntOnRobot: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
2. generateObservationModelDistribution(self: mrpt.pymrpt.mrpt.maps.CBeacon, sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPntOnRobot: mrpt.pymrpt.mrpt.poses.CPoint3D, centerPoint: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
3. generateObservationModelDistribution(self: mrpt.pymrpt.mrpt.maps.CBeacon, sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPntOnRobot: mrpt.pymrpt.mrpt.poses.CPoint3D, centerPoint: mrpt.pymrpt.mrpt.poses.CPoint3D, maxDistanceFromCenter: float) -> None
Compute the observation model p(z_t|x_t) for a given observation (range
value), and return it as an approximate SOG.
Note that if the beacon is a SOG itself, the number of gaussian modes
will be square.
As a speed-up, if a "center point"+"maxDistanceFromCenter" is supplied
(maxDistanceFromCenter!=0), those modes farther than this sphere will be
discarded.
Parameters such as the stdSigma of the sensor are gathered from
"myBeaconMap"
The result is one "ring" for each Gaussian mode that represent the
beacon position in this object.
The position of the sensor on the robot is used to shift the resulting
densities such as they represent the position of the robot, not the
sensor.
CBeaconMap::insertionOptions, generateRingSOG
C++: mrpt::maps::CBeacon::generateObservationModelDistribution(float, class mrpt::poses::CPointPDFSOG &, const class mrpt::maps::CBeaconMap *, const class mrpt::poses::CPoint3D &, const class mrpt::poses::CPoint3D &, float) const --> void
- getAsMatlabDrawCommands(...)
- getAsMatlabDrawCommands(self: mrpt.pymrpt.mrpt.maps.CBeacon, out_Str: List[str]) -> None
Gets a set of MATLAB commands which draw the current state of the
beacon:
C++: mrpt::maps::CBeacon::getAsMatlabDrawCommands(class std::vector<std::string > &) const --> void
- getCovarianceAndMean(...)
- getCovarianceAndMean(self: mrpt.pymrpt.mrpt.maps.CBeacon) -> Tuple[mrpt.pymrpt.mrpt.math.CMatrixFixed_double_3UL_3UL_t, mrpt.pymrpt.mrpt.poses.CPoint3D]
C++: mrpt::maps::CBeacon::getCovarianceAndMean() const --> class std::tuple<class mrpt::math::CMatrixFixed<double, 3, 3>, class mrpt::poses::CPoint3D>
- getMean(...)
- getMean(self: mrpt.pymrpt.mrpt.maps.CBeacon, mean_point: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
C++: mrpt::maps::CBeacon::getMean(class mrpt::poses::CPoint3D &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CBeacon, o: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Saves a 3D representation of the beacon into a given OpenGL scene
C++: mrpt::maps::CBeacon::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.maps.CBeacon, file: str) -> bool
Save PDF's particles to a text file. See derived classes for more
information about the format of generated files
C++: mrpt::maps::CBeacon::saveToTextFile(const std::string &) const --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CBeacon::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CBeacon::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
- generateRingSOG(...) from builtins.PyCapsule
- generateRingSOG(*args, **kwargs)
Overloaded function.
1. generateRingSOG(sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPnt: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
2. generateRingSOG(sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPnt: mrpt.pymrpt.mrpt.poses.CPoint3D, covarianceCompositionToAdd: mrpt.pymrpt.mrpt.math.CMatrixFixed_double_3UL_3UL_t) -> None
3. generateRingSOG(sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPnt: mrpt.pymrpt.mrpt.poses.CPoint3D, covarianceCompositionToAdd: mrpt.pymrpt.mrpt.math.CMatrixFixed_double_3UL_3UL_t, clearPreviousContentsOutPDF: bool) -> None
4. generateRingSOG(sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPnt: mrpt.pymrpt.mrpt.poses.CPoint3D, covarianceCompositionToAdd: mrpt.pymrpt.mrpt.math.CMatrixFixed_double_3UL_3UL_t, clearPreviousContentsOutPDF: bool, centerPoint: mrpt.pymrpt.mrpt.poses.CPoint3D) -> None
5. generateRingSOG(sensedRange: float, outPDF: mrpt.pymrpt.mrpt.poses.CPointPDFSOG, myBeaconMap: mrpt::maps::CBeaconMap, sensorPnt: mrpt.pymrpt.mrpt.poses.CPoint3D, covarianceCompositionToAdd: mrpt.pymrpt.mrpt.math.CMatrixFixed_double_3UL_3UL_t, clearPreviousContentsOutPDF: bool, centerPoint: mrpt.pymrpt.mrpt.poses.CPoint3D, maxDistanceFromCenter: float) -> None
This static method returns a SOG with ring-shape (or as a 3D sphere)
that can be used to initialize a beacon if observed the first time.
sensorPnt is the center of the ring/sphere, i.e. the absolute position
of the range sensor.
If clearPreviousContentsOutPDF=false, the SOG modes will be added to
the current contents of outPDF
If the 3x3 matrix covarianceCompositionToAdd is provided, it will be
add to every Gaussian (to model the composition of uncertainty).
generateObservationModelDistribution
C++: mrpt::maps::CBeacon::generateRingSOG(float, class mrpt::poses::CPointPDFSOG &, const class mrpt::maps::CBeaconMap *, const class mrpt::poses::CPoint3D &, const class mrpt::math::CMatrixFixed<double, 3, 3> *, bool, const class mrpt::poses::CPoint3D &, float) --> void
Data descriptors defined here:
- m_ID
- m_locationGauss
- m_locationMC
- m_locationSOG
- m_typePDF
Data and other attributes defined here:
- TTypePDF = <class 'mrpt.pymrpt.mrpt.maps.CBeacon.TTypePDF'>
- pdfGauss = <TTypePDF.pdfGauss: 1>
- pdfMonteCarlo = <TTypePDF.pdfMonteCarlo: 0>
- pdfSOG = <TTypePDF.pdfSOG: 2>
Static methods inherited from mrpt.pymrpt.mrpt.poses.CPointPDF:
- is_3D(...) from builtins.PyCapsule
- is_3D() -> bool
C++: mrpt::poses::CPointPDF::is_3D() --> bool
- is_PDF(...) from builtins.PyCapsule
- is_PDF() -> bool
C++: mrpt::poses::CPointPDF::is_PDF() --> bool
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t:
- getCovariance(...)
- getCovariance(*args, **kwargs)
Overloaded function.
1. getCovariance(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t, cov: mrpt::math::CMatrixDynamic<double>) -> None
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getCovariance(class mrpt::math::CMatrixDynamic<double> &) const --> void
2. getCovariance(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t, cov: mrpt::math::CMatrixFixed<double, 3ul, 3ul>) -> None
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getCovariance(class mrpt::math::CMatrixFixed<double, 3, 3> &) const --> void
3. getCovariance(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t) -> mrpt::math::CMatrixFixed<double, 3ul, 3ul>
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getCovariance() const --> class mrpt::math::CMatrixFixed<double, 3, 3>
- getCovarianceDynAndMean(...)
- getCovarianceDynAndMean(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t, cov: mrpt::math::CMatrixDynamic<double>, mean_point: mrpt::poses::CPoint3D) -> None
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getCovarianceDynAndMean(class mrpt::math::CMatrixDynamic<double> &, class mrpt::poses::CPoint3D &) const --> void
- getCovarianceEntropy(...)
- getCovarianceEntropy(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t) -> float
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getCovarianceEntropy() const --> double
- getInformationMatrix(...)
- getInformationMatrix(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t, inf: mrpt::math::CMatrixFixed<double, 3ul, 3ul>) -> None
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getInformationMatrix(class mrpt::math::CMatrixFixed<double, 3, 3> &) const --> void
- getMeanVal(...)
- getMeanVal(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t) -> mrpt::poses::CPoint3D
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::getMeanVal() const --> class mrpt::poses::CPoint3D
- isInfType(...)
- isInfType(self: mrpt.pymrpt.mrpt.math.CProbabilityDensityFunction_mrpt_poses_CPoint3D_3UL_t) -> bool
C++: mrpt::math::CProbabilityDensityFunction<mrpt::poses::CPoint3D, 3>::isInfType() const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CBeaconMap(CMetricMap) |
|
A class for storing a map of 3D probabilistic beacons, using a Montecarlo,
Gaussian, or Sum of Gaussians (SOG) representation (for range-only SLAM).
The individual beacons are defined as mrpt::maps::CBeacon objects.
When invoking CBeaconMap::insertObservation(), landmarks will be extracted
and fused into the map.
The only currently supported observation type is
mrpt::obs::CObservationBeaconRanges.
See insertionOptions and likelihoodOptions for parameters used when
creating and fusing beacon landmarks.
Use "TInsertionOptions::insertAsMonteCarlo" to select between 2 different
behaviors:
- Initial PDF of beacons: MonteCarlo, after convergence, pass to
Gaussians; or
- Initial PDF of beacons: SOG, after convergence, a single Gaussian.
Refer to the papers: []
CMetricMap |
|
- Method resolution order:
- CBeaconMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CBeaconMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __getitem__(...)
- __getitem__(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, i: int) -> mrpt.pymrpt.mrpt.maps.CBeacon
Access to individual beacons
C++: mrpt::maps::CBeaconMap::operator[](size_t) --> class mrpt::maps::CBeacon &
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, arg0: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, arg0: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CBeaconMap::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, : mrpt.pymrpt.mrpt.maps.CBeaconMap) -> mrpt.pymrpt.mrpt.maps.CBeaconMap
C++: mrpt::maps::CBeaconMap::operator=(const class mrpt::maps::CBeaconMap &) --> class mrpt::maps::CBeaconMap &
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, newOrg: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Changes the reference system of the map to a given 3D pose.
C++: mrpt::maps::CBeaconMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, newOrg: mrpt.pymrpt.mrpt.poses.CPose3D, otherMap: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> None
Changes the reference system of the map "otherMap" and save the result
in "this" map.
C++: mrpt::maps::CBeaconMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &, const class mrpt::maps::CBeaconMap *) --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CBeaconMap::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CBeaconMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CBeaconMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- get(...)
- get(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, i: int) -> mrpt.pymrpt.mrpt.maps.CBeacon
Access to individual beacons
C++: mrpt::maps::CBeaconMap::get(size_t) --> class mrpt::maps::CBeacon &
- getBeaconByID(...)
- getBeaconByID(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, id: int) -> mrpt.pymrpt.mrpt.maps.CBeacon
Returns a pointer to the beacon with the given ID, or nullptr if it does
not exist.
C++: mrpt::maps::CBeaconMap::getBeaconByID(int64_t) --> class mrpt::maps::CBeacon *
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map.
C++: mrpt::maps::CBeaconMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CBeaconMap::isEmpty() const --> bool
- push_back(...)
- push_back(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, m: mrpt.pymrpt.mrpt.maps.CBeacon) -> None
Inserts a copy of the given mode into the SOG
C++: mrpt::maps::CBeaconMap::push_back(const class mrpt::maps::CBeacon &) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, N: int) -> None
Resize the number of SOG modes
C++: mrpt::maps::CBeaconMap::resize(size_t) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
In the case of this class, these files are generated:
- "filNamePrefix"+"_3D.m": A script for MATLAB for drawing landmarks
as
3D ellipses.
- "filNamePrefix"+"_3D.3DScene": A 3D scene with a "ground plane
grid"
and the set of ellipsoids in 3D.
- "filNamePrefix"+"_covs.m": A textual representation (see
saveToTextFile)
C++: mrpt::maps::CBeaconMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- saveToMATLABScript3D(...)
- saveToMATLABScript3D(*args, **kwargs)
Overloaded function.
1. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, file: str) -> bool
2. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, file: str, style: str) -> bool
3. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, file: str, style: str, confInterval: float) -> bool
Save to a MATLAB script which displays 3D error ellipses for the map.
The name of the file to save the script to.
The MATLAB-like string for the style of the lines (see
'help plot' in MATLAB for possibilities)
The ellipsoids will be drawn from the center to a given
confidence interval in [0,1], e.g. 2 sigmas=0.95 (default is 2std = 0.95
confidence intervals)
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CBeaconMap::saveToMATLABScript3D(const std::string &, const char *, float) const --> bool
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, fil: str) -> None
Save a text file with a row per beacon, containing this 11 elements:
- X Y Z: Mean values
- VX VY VZ: Variances of each dimension (C11, C22, C33)
- DET2D DET3D: Determinant of the 2D and 3D covariance matrixes.
- C12, C13, C23: Cross covariances
C++: mrpt::maps::CBeaconMap::saveToTextFile(const std::string &) const --> void
- simulateBeaconReadings(...)
- simulateBeaconReadings(self: mrpt.pymrpt.mrpt.maps.CBeaconMap, in_robotPose: mrpt.pymrpt.mrpt.poses.CPose3D, in_sensorLocationOnRobot: mrpt.pymrpt.mrpt.poses.CPoint3D, out_Observations: mrpt::obs::CObservationBeaconRanges) -> None
Simulates a reading toward each of the beacons in the landmarks map, if
any.
This robot pose is used to simulate the ranges to
each beacon.
The 3D position of the sensor on the
robot
The results will be stored here. NOTICE that the
fields
"CObservationBeaconRanges::minSensorDistance","CObservationBeaconRanges::maxSensorDistance"
and "CObservationBeaconRanges::stdError" MUST BE FILLED OUT before
calling this function.
An observation will be generated for each beacon in the map, but notice
that some of them may be missed if out of the sensor maximum range.
C++: mrpt::maps::CBeaconMap::simulateBeaconReadings(const class mrpt::poses::CPose3D &, const class mrpt::poses::CPoint3D &, class mrpt::obs::CObservationBeaconRanges &) const --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CBeaconMap) -> int
Returns the stored landmarks count.
C++: mrpt::maps::CBeaconMap::size() const --> size_t
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CBeaconMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CBeaconMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
- likelihoodOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CBeaconMap.TInsertionOptions'>
- This struct contains data for choosing the method by which new beacons
are inserted in the map.
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CBeaconMap.TLikelihoodOptions'>
- With this struct options are provided to the likelihood computations
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CBeaconMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CBeaconMap.TMapDefinitionBase'>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CColouredOctoMap(COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) |
|
A three-dimensional probabilistic occupancy grid, implemented as an
octo-tree with the "octomap" C++ library.
This version stores both, occupancy information and RGB colour data at
each octree node. See the base class mrpt::maps::COctoMapBase.
CMetricMap, the example in "MRPT/samples/octomap_simple" |
|
- Method resolution order:
- CColouredOctoMap
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CColouredOctoMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, resolution: float) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, arg0: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, arg0: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, : mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> mrpt.pymrpt.mrpt.maps.CColouredOctoMap
C++: mrpt::maps::CColouredOctoMap::operator=(const class mrpt::maps::CColouredOctoMap &) --> class mrpt::maps::CColouredOctoMap &
- calcNumNodes(...)
- calcNumNodes(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
Traverses the tree to calculate the total number of nodes
C++: mrpt::maps::CColouredOctoMap::calcNumNodes() const --> size_t
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CColouredOctoMap::clone() const --> class mrpt::rtti::CObject *
- getAsOctoMapVoxels(...)
- getAsOctoMapVoxels(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, gl_obj: mrpt.pymrpt.mrpt.opengl.COctoMapVoxels) -> None
C++: mrpt::maps::CColouredOctoMap::getAsOctoMapVoxels(class mrpt::opengl::COctoMapVoxels &) const --> void
- getClampingThresMax(...)
- getClampingThresMax(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getClampingThresMax() const --> double
- getClampingThresMaxLog(...)
- getClampingThresMaxLog(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getClampingThresMaxLog() const --> float
- getClampingThresMin(...)
- getClampingThresMin(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getClampingThresMin() const --> double
- getClampingThresMinLog(...)
- getClampingThresMinLog(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getClampingThresMinLog() const --> float
- getMetricMax(...)
- getMetricMax(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float) -> None
maximum value of the bounding box of all known space in x, y, z
C++: mrpt::maps::CColouredOctoMap::getMetricMax(double &, double &, double &) --> void
- getMetricMin(...)
- getMetricMin(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float) -> None
minimum value of the bounding box of all known space in x, y, z
C++: mrpt::maps::CColouredOctoMap::getMetricMin(double &, double &, double &) --> void
- getMetricSize(...)
- getMetricSize(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float) -> None
Size of OcTree (all known space) in meters for x, y and z dimension
C++: mrpt::maps::CColouredOctoMap::getMetricSize(double &, double &, double &) --> void
- getNumLeafNodes(...)
- getNumLeafNodes(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
Traverses the tree to calculate the total number of leaf nodes
C++: mrpt::maps::CColouredOctoMap::getNumLeafNodes() const --> size_t
- getOccupancyThres(...)
- getOccupancyThres(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getOccupancyThres() const --> double
- getOccupancyThresLog(...)
- getOccupancyThresLog(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getOccupancyThresLog() const --> float
- getPointColour(...)
- getPointColour(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float, r: int, g: int, b: int) -> bool
Get the RGB colour of a point
false if the point is not mapped, in which case the
returned colour is undefined.
C++: mrpt::maps::CColouredOctoMap::getPointColour(const float, const float, const float, unsigned char &, unsigned char &, unsigned char &) const --> bool
- getProbHit(...)
- getProbHit(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getProbHit() const --> double
- getProbHitLog(...)
- getProbHitLog(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getProbHitLog() const --> float
- getProbMiss(...)
- getProbMiss(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getProbMiss() const --> double
- getProbMissLog(...)
- getProbMissLog(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getProbMissLog() const --> float
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::getResolution() const --> double
- getTreeDepth(...)
- getTreeDepth(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
C++: mrpt::maps::CColouredOctoMap::getTreeDepth() const --> unsigned int
- getVoxelColourMethod(...)
- getVoxelColourMethod(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> mrpt.pymrpt.mrpt.maps.CColouredOctoMap.TColourUpdate
Get the method used to update voxels colour
C++: mrpt::maps::CColouredOctoMap::getVoxelColourMethod() --> enum mrpt::maps::CColouredOctoMap::TColourUpdate
- insertRay(...)
- insertRay(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, end_x: float, end_y: float, end_z: float, sensor_x: float, sensor_y: float, sensor_z: float) -> None
Just like insertPointCloud but with a single ray.
C++: mrpt::maps::CColouredOctoMap::insertRay(const float, const float, const float, const float, const float, const float) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> bool
Returns true if the map is empty/no observation has been inserted
C++: mrpt::maps::CColouredOctoMap::isEmpty() const --> bool
- isPointWithinOctoMap(...)
- isPointWithinOctoMap(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float) -> bool
Check whether the given point lies within the volume covered by the
octomap (that is, whether it is "mapped")
C++: mrpt::maps::CColouredOctoMap::isPointWithinOctoMap(const float, const float, const float) const --> bool
- memoryFullGrid(...)
- memoryFullGrid(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
Memory usage of a full grid of the same size as the OcTree in
bytes (for comparison)
C++: mrpt::maps::CColouredOctoMap::memoryFullGrid() const --> size_t
- memoryUsage(...)
- memoryUsage(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
Memory usage of the complete octree in bytes (may vary between
architectures)
C++: mrpt::maps::CColouredOctoMap::memoryUsage() const --> size_t
- memoryUsageNode(...)
- memoryUsageNode(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
Memory usage of the a single octree node
C++: mrpt::maps::CColouredOctoMap::memoryUsageNode() const --> size_t
- setClampingThresMax(...)
- setClampingThresMax(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, thresProb: float) -> None
C++: mrpt::maps::CColouredOctoMap::setClampingThresMax(double) --> void
- setClampingThresMin(...)
- setClampingThresMin(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, thresProb: float) -> None
C++: mrpt::maps::CColouredOctoMap::setClampingThresMin(double) --> void
- setOccupancyThres(...)
- setOccupancyThres(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, prob: float) -> None
C++: mrpt::maps::CColouredOctoMap::setOccupancyThres(double) --> void
- setProbHit(...)
- setProbHit(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, prob: float) -> None
C++: mrpt::maps::CColouredOctoMap::setProbHit(double) --> void
- setProbMiss(...)
- setProbMiss(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, prob: float) -> None
C++: mrpt::maps::CColouredOctoMap::setProbMiss(double) --> void
- setVoxelColourMethod(...)
- setVoxelColourMethod(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, new_method: mrpt.pymrpt.mrpt.maps.CColouredOctoMap.TColourUpdate) -> None
Set the method used to update voxels colour
C++: mrpt::maps::CColouredOctoMap::setVoxelColourMethod(enum mrpt::maps::CColouredOctoMap::TColourUpdate) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> int
The number of nodes in the tree
C++: mrpt::maps::CColouredOctoMap::size() const --> size_t
- updateVoxel(...)
- updateVoxel(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float, occupied: bool) -> None
Manually updates the occupancy of the voxel at (x,y,z) as being occupied
(true) or free (false), using the log-odds parameters in
C++: mrpt::maps::CColouredOctoMap::updateVoxel(const double, const double, const double, bool) --> void
- updateVoxelColour(...)
- updateVoxelColour(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap, x: float, y: float, z: float, r: int, g: int, b: int) -> None
Manually update the colour of the voxel at (x,y,z)
C++: mrpt::maps::CColouredOctoMap::updateVoxelColour(const double, const double, const double, const unsigned char, const unsigned char, const unsigned char) --> void
- volume(...)
- volume(self: mrpt.pymrpt.mrpt.maps.CColouredOctoMap) -> float
C++: mrpt::maps::CColouredOctoMap::volume() --> double
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CColouredOctoMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CColouredOctoMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- AVERAGE = <TColourUpdate.AVERAGE: 2>
- INTEGRATE = <TColourUpdate.INTEGRATE: 0>
- SET = <TColourUpdate.SET: 1>
- TColourUpdate = <class 'mrpt.pymrpt.mrpt.maps.CColouredOctoMap.TColourUpdate'>
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CColouredOctoMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CColouredOctoMap.TMapDefinitionBase'>
Methods inherited from COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> str
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::asString() const --> std::string
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- castRay(...)
- castRay(*args, **kwargs)
Overloaded function.
1. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>) -> bool
2. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool) -> bool
3. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool, maxRange: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::castRay(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, struct mrpt::math::TPoint3D_<double> &, bool, double) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
Computes the ratio in [0,1] of correspondences between "this" and the
"otherMap" map, whose 6D pose relative to "this" is "otherMapPose"
In the case of a multi-metric map, this returns the average between the
maps. This method always return 0 for grid maps.
[IN] The other map to compute the matching with.
[IN] The 6D pose of the other map as seen from
"this".
[IN] Matching parameters
The matching ratio [0,1]
determineMatching2D
C++: mrpt::maps::CMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- getPointOccupancy(...)
- getPointOccupancy(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, x: float, y: float, z: float, prob_occupancy: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getPointOccupancy(const float, const float, const float, double &) const --> bool
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, o: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- insertPointCloud(...)
- insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, ptMap: mrpt.pymrpt.mrpt.maps.CPointsMap, sensor_x: float, sensor_y: float, sensor_z: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::insertPointCloud(const class mrpt::maps::CPointsMap &, const float, const float, const float) --> void
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(*args, **kwargs)
Overloaded function.
1. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, filNamePrefix: str) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::saveMetricMapRepresentationToFile(const std::string &) const --> void
2. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::CMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t:
- genericMapParams
- insertionOptions
- likelihoodOptions
- renderingOptions
Data and other attributes inherited from COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ree_octomap_ColorOcTreeNode_t.TInsertionOptions'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ee_octomap_ColorOcTreeNode_t.TLikelihoodOptions'>
- TRenderingOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ree_octomap_ColorOcTreeNode_t.TRenderingOptions'>
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CColouredPointsMap(CPointsMap) |
|
A map of 2D/3D points with individual colours (RGB).
For different color schemes, see CColouredPointsMap::colorScheme
Colors are defined in the range [0,1].
mrpt::maps::CPointsMap, mrpt::maps::CMetricMap,
mrpt::serialization::CSerializable |
|
- Method resolution order:
- CColouredPointsMap
- CPointsMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.opengl.PLY_Importer
- mrpt.pymrpt.mrpt.opengl.PLY_Exporter
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CColouredPointsMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, arg0: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, arg0: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> None
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.maps.CColouredPointsMap
C++: mrpt::maps::CColouredPointsMap::operator=(const class mrpt::maps::CPointsMap &) --> class mrpt::maps::CColouredPointsMap &
2. assign(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, o: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> mrpt.pymrpt.mrpt.maps.CColouredPointsMap
C++: mrpt::maps::CColouredPointsMap::operator=(const class mrpt::maps::CColouredPointsMap &) --> class mrpt::maps::CColouredPointsMap &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CColouredPointsMap::clone() const --> class mrpt::rtti::CObject *
- colourFromObservation(...)
- colourFromObservation(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservationImage, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
Colour a set of points from a CObservationImage and the global pose of
the robot
C++: mrpt::maps::CColouredPointsMap::colourFromObservation(const class mrpt::obs::CObservationImage &, const class mrpt::poses::CPose3D &) --> bool
- getPointColor(...)
- getPointColor(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, R: float, G: float, B: float) -> None
Retrieves a point color (colors range is [0,1])
C++: mrpt::maps::CColouredPointsMap::getPointColor(size_t, float &, float &, float &) const --> void
- getPointColor_fast(...)
- getPointColor_fast(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, R: float, G: float, B: float) -> None
Like but without checking for out-of-index erors
C++: mrpt::maps::CColouredPointsMap::getPointColor_fast(size_t, float &, float &, float &) const --> void
- getPointRGB(...)
- getPointRGB(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Retrieves a point and its color (colors range is [0,1])
C++: mrpt::maps::CColouredPointsMap::getPointRGB(size_t, float &, float &, float &, float &, float &, float &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Override of the default 3D scene builder to account for the individual
points' color.
C++: mrpt::maps::CColouredPointsMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- hasColorPoints(...)
- hasColorPoints(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> bool
Returns true if the point map has a color field for each point
C++: mrpt::maps::CColouredPointsMap::hasColorPoints() const --> bool
- insertPointFast(...)
- insertPointFast(*args, **kwargs)
Overloaded function.
1. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, x: float, y: float) -> None
2. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, x: float, y: float, z: float) -> None
The virtual method for *without* calling
mark_as_modified()
C++: mrpt::maps::CColouredPointsMap::insertPointFast(float, float, float) --> void
- insertPointRGB(...)
- insertPointRGB(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Adds a new point given its coordinates and color (colors range is [0,1])
C++: mrpt::maps::CColouredPointsMap::insertPointRGB(float, float, float, float, float, float) --> void
- reserve(...)
- reserve(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, newLength: int) -> None
from CPointsMap
@{
C++: mrpt::maps::CColouredPointsMap::reserve(size_t) --> void
- resetPointsMinDist(...)
- resetPointsMinDist(*args, **kwargs)
Overloaded function.
1. resetPointsMinDist(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap) -> None
2. resetPointsMinDist(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, defValue: float) -> None
Reset the minimum-observed-distance buffer for all the points to a
predefined value
C++: mrpt::maps::CColouredPointsMap::resetPointsMinDist(float) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, newLength: int) -> None
C++: mrpt::maps::CColouredPointsMap::resize(size_t) --> void
- save3D_and_colour_to_text_file(...)
- save3D_and_colour_to_text_file(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, file: str) -> bool
Save to a text file. In each line contains X Y Z (meters) R G B (range
[0,1]) for each point in the map.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CColouredPointsMap::save3D_and_colour_to_text_file(const std::string &) const --> bool
- setPointColor(...)
- setPointColor(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, R: float, G: float, B: float) -> None
Changes just the color of a given point from the map. First index is 0.
Throws std::exception on index out of bound.
C++: mrpt::maps::CColouredPointsMap::setPointColor(size_t, float, float, float) --> void
- setPointColor_fast(...)
- setPointColor_fast(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, R: float, G: float, B: float) -> None
Like but without checking for out-of-index erors
C++: mrpt::maps::CColouredPointsMap::setPointColor_fast(size_t, float, float, float) --> void
- setPointRGB(...)
- setPointRGB(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Changes a given point from map. First index is 0.
Throws std::exception on index out of bound.
C++: mrpt::maps::CColouredPointsMap::setPointRGB(size_t, float, float, float, float, float, float) --> void
- setSize(...)
- setSize(self: mrpt.pymrpt.mrpt.maps.CColouredPointsMap, newLength: int) -> None
C++: mrpt::maps::CColouredPointsMap::setSize(size_t) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CColouredPointsMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CColouredPointsMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- colorScheme
Data and other attributes defined here:
- TColourOptions = <class 'mrpt.pymrpt.mrpt.maps.CColouredPointsMap.TColourOptions'>
- The definition of parameters for generating colors from laser scans
- TColouringMethod = <class 'mrpt.pymrpt.mrpt.maps.CColouredPointsMap.TColouringMethod'>
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CColouredPointsMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CColouredPointsMap.TMapDefinitionBase'>
- cmFromHeightRelativeToSensor = <TColouringMethod.cmFromHeightRelativeToSensor: 0>
- cmFromHeightRelativeToSensorGray = <TColouringMethod.cmFromHeightRelativeToSensorGray: 1>
- cmFromHeightRelativeToSensorJet = <TColouringMethod.cmFromHeightRelativeToSensor: 0>
- cmFromIntensityImage = <TColouringMethod.cmFromIntensityImage: 2>
Methods inherited from CPointsMap:
- __iadd__(...)
- __iadd__(self: mrpt.pymrpt.mrpt.maps.CPointsMap, anotherMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Inserts another map into this one.
insertAnotherMap()
C++: mrpt::maps::CPointsMap::operator+=(const class mrpt::maps::CPointsMap &) --> void
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CPointsMap::asString() const --> std::string
- boundingBox(...)
- boundingBox(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.math.TBoundingBox_float_t
Computes the bounding box of all the points, or (0,0 ,0,0, 0,0) if there
are no points.
Results are cached unless the map is somehow modified to avoid repeated
calculations.
C++: mrpt::maps::CPointsMap::boundingBox() const --> struct mrpt::math::TBoundingBox_<float>
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose2D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
3. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, other: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Copy all the points from "other" map to "this", replacing each point
by
(pose compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::maps::CPointsMap &, const class mrpt::poses::CPose3D &) --> void
- clipOutOfRange(...)
- clipOutOfRange(self: mrpt.pymrpt.mrpt.maps.CPointsMap, point: mrpt::math::TPoint2D_<double>, maxRange: float) -> None
Delete points which are more far than "maxRange" away from the given
"point".
C++: mrpt::maps::CPointsMap::clipOutOfRange(const struct mrpt::math::TPoint2D_<double> &, float) --> void
- clipOutOfRangeInZ(...)
- clipOutOfRangeInZ(self: mrpt.pymrpt.mrpt.maps.CPointsMap, zMin: float, zMax: float) -> None
Delete points out of the given "z" axis range have been removed.
C++: mrpt::maps::CPointsMap::clipOutOfRangeInZ(float, float) --> void
- compute3DDistanceToMesh(...)
- compute3DDistanceToMesh(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap2: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, maxDistForCorrespondence: float, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
Computes the matchings between this and another 3D points map.
This method matches each point in the other map with the centroid of the
3 closest points in 3D
from this map (if the distance is below a defined threshold).
[IN] The other map to compute the
matching with.
[IN] The pose of the other map as seen
from "this".
[IN] Maximum 2D linear distance
between two points to be matched.
[OUT] The detected matchings pairs.
[OUT] The ratio [0,1] of points in
otherMap with at least one correspondence.
determineMatching3D
C++: mrpt::maps::CPointsMap::compute3DDistanceToMesh(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, float, class mrpt::tfest::TMatchingPairListTempl<float> &, float &) --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CPointsMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
STL-like method to check whether the map is empty:
C++: mrpt::maps::CPointsMap::empty() const --> bool
- enableFilterByHeight(...)
- enableFilterByHeight(*args, **kwargs)
Overloaded function.
1. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, enable: bool) -> None
Enable/disable the filter-by-height functionality
setHeightFilterLevels
Default upon construction is disabled.
C++: mrpt::maps::CPointsMap::enableFilterByHeight(bool) --> void
- extractCylinder(...)
- extractCylinder(self: mrpt.pymrpt.mrpt.maps.CPointsMap, center: mrpt::math::TPoint2D_<double>, radius: float, zmin: float, zmax: float, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Extracts the points in the map within a cylinder in 3D defined the
provided radius and zmin/zmax values.
C++: mrpt::maps::CPointsMap::extractCylinder(const struct mrpt::math::TPoint2D_<double> &, const double, const double, const double, class mrpt::maps::CPointsMap *) --> void
- extractPoints(...)
- extractPoints(*args, **kwargs)
Overloaded function.
1. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float) -> None
3. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float) -> None
4. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float, B: float) -> None
Extracts the points in the map within the area defined by two corners.
The points are coloured according the R,G,B input data.
C++: mrpt::maps::CPointsMap::extractPoints(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, class mrpt::maps::CPointsMap *, double, double, double) --> void
- getHeightFilterLevels(...)
- getHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Get the min/max Z levels for points to be actually inserted in the map
enableFilterByHeight, setHeightFilterLevels
C++: mrpt::maps::CPointsMap::getHeightFilterLevels(double &, double &) const --> void
- getLargestDistanceFromOrigin(...)
- getLargestDistanceFromOrigin(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
This method returns the largest distance from the origin to any of the
points, such as a sphere centered at the origin with this radius cover
ALL the points in the map (the results are buffered, such as, if the map
is not modified, the second call will be much faster than the first one).
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOrigin() const --> float
- getLargestDistanceFromOriginNoRecompute(...)
- getLargestDistanceFromOriginNoRecompute(self: mrpt.pymrpt.mrpt.maps.CPointsMap, output_is_valid: bool) -> float
Like but returns in
= false if the distance was not already computed, skipping its
computation then, unlike getLargestDistanceFromOrigin()
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOriginNoRecompute(bool &) const --> float
- getPoint(...)
- getPoint(*args, **kwargs)
Overloaded function.
1. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Access to a given point from map, as a 2D point. First index is 0.
Throws std::exception on index out of bound.
setPoint, getPointFast
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &, float &) const --> void
2. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &) const --> void
3. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &, double &) const --> void
4. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &) const --> void
5. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint2D_<double> &) const --> void
6. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint3D_<double> &) const --> void
- getPointFast(...)
- getPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Just like but without checking out-of-bound index and
without returning the point weight, just XYZ.
C++: mrpt::maps::CPointsMap::getPointFast(size_t, float &, float &, float &) const --> void
- getPointWeight(...)
- getPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int) -> int
Gets the point weight, which is ignored in all classes (defaults to 1)
but in those which actually store that field (Note: No checks are done
for out-of-bounds index).
setPointWeight
C++: mrpt::maps::CPointsMap::getPointWeight(size_t) const --> unsigned int
- insertAnotherMap(...)
- insertAnotherMap(*args, **kwargs)
Overloaded function.
1. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D, filterOutPointsAtZero: bool) -> None
Insert the contents of another map into this one with some geometric
transformation, without fusing close points.
The other map whose points are to be inserted into this
one.
The pose of the other map in the coordinates of THIS map
If true, points at (0,0,0) (in the frame of
reference of `otherMap`) will be assumed to be invalid and will not be
copied.
fuseWith, addFrom
C++: mrpt::maps::CPointsMap::insertAnotherMap(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose3D &, const bool) --> void
- insertPoint(...)
- insertPoint(*args, **kwargs)
Overloaded function.
1. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
Provides a way to insert (append) individual points into the map: the
missing fields of child
classes (color, weight, etc) are left to their default values
C++: mrpt::maps::CPointsMap::insertPoint(float, float, float) --> void
3. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::insertPoint(const struct mrpt::math::TPoint3D_<double> &) --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
@}
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- internal_computeObservationLikelihoodPointCloud3D(...)
- internal_computeObservationLikelihoodPointCloud3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_in_map: mrpt.pymrpt.mrpt.poses.CPose3D, xs: float, ys: float, zs: float, num_pts: int) -> float
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihoodPointCloud3D(const class mrpt::poses::CPose3D &, const float *, const float *, const float *, const unsigned long) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CPointsMap::isEmpty() const --> bool
- isFilterByHeightEnabled(...)
- isFilterByHeightEnabled(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Return whether filter-by-height is enabled
enableFilterByHeight
C++: mrpt::maps::CPointsMap::isFilterByHeightEnabled() const --> bool
- kdtree_distance(...)
- kdtree_distance(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p1: float, idx_p2: int, size: int) -> float
Returns the distance between the vector "p1[0:size-1]" and the data
point with index "idx_p2" stored in the class:
C++: mrpt::maps::CPointsMap::kdtree_distance(const float *, size_t, size_t) const --> float
- kdtree_get_point_count(...)
- kdtree_get_point_count(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Must return the number of data points
C++: mrpt::maps::CPointsMap::kdtree_get_point_count() const --> size_t
- kdtree_get_pt(...)
- kdtree_get_pt(self: mrpt.pymrpt.mrpt.maps.CPointsMap, idx: int, dim: int) -> float
Returns the dim'th component of the idx'th point in the class:
C++: mrpt::maps::CPointsMap::kdtree_get_pt(size_t, int) const --> float
- load2D_from_text_file(...)
- load2D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y" coordinate
pair, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load2D_from_text_file(const std::string &) --> bool
- load2Dor3D_from_text_file(...)
- load2Dor3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str, is_3D: bool) -> bool
2D or 3D generic implementation of and
load3D_from_text_file
C++: mrpt::maps::CPointsMap::load2Dor3D_from_text_file(const std::string &, const bool) --> bool
- load3D_from_text_file(...)
- load3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y Z" coordinate
tuple, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load3D_from_text_file(const std::string &) --> bool
- mark_as_modified(...)
- mark_as_modified(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Users normally don't need to call this. Called by this class or children
classes, set m_largestDistanceFromOriginIsUpdated=false, invalidates the
kd-tree cache, and such.
C++: mrpt::maps::CPointsMap::mark_as_modified() const --> void
- save2D_to_text_file(...)
- save2D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save2D_to_text_file(const std::string &) const --> bool
- save3D_to_text_file(...)
- save3D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y Z" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save3D_to_text_file(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CPointsMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface)
C++: mrpt::maps::CPointsMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setHeightFilterLevels(...)
- setHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Set the min/max Z levels for points to be actually inserted in the map
(only if was called before).
C++: mrpt::maps::CPointsMap::setHeightFilterLevels(const double, const double) --> void
- setPoint(...)
- setPoint(*args, **kwargs)
Overloaded function.
1. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes a given point from map, with Z defaulting to 0 if not provided.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float, float) --> void
2. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint2D_<double> &) --> void
3. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint3D_<double> &) --> void
4. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float) --> void
- setPointFast(...)
- setPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes the coordinates of the given point (0-based index), *without*
checking for out-of-bounds and *without* calling mark_as_modified().
Also, color, intensity, or other data is left unchanged.
setPoint
C++: mrpt::maps::CPointsMap::setPointFast(size_t, float, float, float) --> void
- setPointWeight(...)
- setPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, w: int) -> None
Sets the point weight, which is ignored in all classes but those which
actually store that field (Note: No checks are done for out-of-bounds
index).
getPointWeight
C++: mrpt::maps::CPointsMap::setPointWeight(size_t, unsigned long) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Returns the number of stored points in the map.
C++: mrpt::maps::CPointsMap::size() const --> size_t
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondence(float, float) const --> float
- squareDistanceToClosestCorrespondenceT(...)
- squareDistanceToClosestCorrespondenceT(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p0: mrpt::math::TPoint2D_<double>) -> float
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondenceT(const struct mrpt::math::TPoint2D_<double> &) const --> float
Data descriptors inherited from CPointsMap:
- insertionOptions
- likelihoodOptions
- renderOptions
Data and other attributes inherited from CPointsMap:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoPointsMap
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TLikelihoodOptions'>
- Options used when evaluating "computeObservationLikelihood" in the
derived classes.
CObservation::computeObservationLikelihood
- TRenderOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TRenderOptions'>
- Rendering options, used in getAs3DObject()
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Importer:
- getLoadPLYErrorString(...)
- getLoadPLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Importer::getLoadPLYErrorString() const --> std::string
- loadFromPlyFile(...)
- loadFromPlyFile(*args, **kwargs)
Overloaded function.
1. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str) -> bool
2. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str]) -> bool
3. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str], file_obj_info: List[str]) -> bool
Loads from a PLY file.
The filename to open. It can be either in binary or
text format.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error in the file format or reading it. To obtain
more details on the error you can call getLoadPLYErrorString()
C++: mrpt::opengl::PLY_Importer::loadFromPlyFile(const std::string &, class std::vector<std::string > *, class std::vector<std::string > *) --> bool
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Exporter:
- getSavePLYErrorString(...)
- getSavePLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Exporter::getSavePLYErrorString() const --> std::string
- saveToPlyFile(...)
- saveToPlyFile(*args, **kwargs)
Overloaded function.
1. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str) -> bool
2. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool) -> bool
3. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str]) -> bool
4. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str], file_obj_info: List[str]) -> bool
Saves to a PLY file.
The filename to be saved.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error writing the file. To obtain more details on
the error you can call getSavePLYErrorString()
C++: mrpt::opengl::PLY_Exporter::saveToPlyFile(const std::string &, bool, const class std::vector<std::string > &, const class std::vector<std::string > &) const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGasConcentrationGridMap2D(CRandomFieldGridMap2D) |
|
CGasConcentrationGridMap2D represents a PDF of gas concentrations over a 2D
area.
There are a number of methods available to build the gas grid-map,
depending on the value of
"TMapRepresentation maptype" passed in the constructor (see base class
mrpt::maps::CRandomFieldGridMap2D).
Update the map with insertIndividualReading() or insertObservation()
mrpt::maps::CRandomFieldGridMap2D, mrpt::maps::CMetricMap,
mrpt::containers::CDynamicGrid, The application icp-slam,
mrpt::maps::CMultiMetricMap |
|
- Method resolution order:
- CGasConcentrationGridMap2D
- CRandomFieldGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CGasConcentrationGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float, arg4: float) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, mapType: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
8. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> None
9. __init__(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, : mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D
C++: mrpt::maps::CGasConcentrationGridMap2D::operator=(const class mrpt::maps::CGasConcentrationGridMap2D &) --> class mrpt::maps::CGasConcentrationGridMap2D &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CGasConcentrationGridMap2D::clone() const --> class mrpt::rtti::CObject *
- getAs3DObject(...)
- getAs3DObject(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, meanObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects, varObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns two 3D objects representing the mean and variance maps
C++: mrpt::maps::CGasConcentrationGridMap2D::getAs3DObject(class mrpt::opengl::CSetOfObjects &, class mrpt::opengl::CSetOfObjects &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map
C++: mrpt::maps::CGasConcentrationGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- getWindAs3DObject(...)
- getWindAs3DObject(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, windObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns the 3D object representing the wind grid information
C++: mrpt::maps::CGasConcentrationGridMap2D::getWindAs3DObject(class std::shared_ptr<class mrpt::opengl::CSetOfObjects> &) const --> void
- increaseUncertainty(...)
- increaseUncertainty(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, STD_increase_value: float) -> None
Increase the kf_std of all cells from the m_map
This mehod is usually called by the main_map to simulate loss of
confidence in measurements when time passes
C++: mrpt::maps::CGasConcentrationGridMap2D::increaseUncertainty(const double) --> void
- simulateAdvection(...)
- simulateAdvection(self: mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D, STD_increase_value: float) -> bool
Implements the transition model of the gasConcentration map using the
information of the wind maps
C++: mrpt::maps::CGasConcentrationGridMap2D::simulateAdvection(double) --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CGasConcentrationGridMap2D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CGasConcentrationGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- LUT
- insertionOptions
Data and other attributes defined here:
- TGaussianCell = <class 'mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D.TGaussianCell'>
- TGaussianWindTable = <class 'mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D.TGaussianWindTable'>
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D.TInsertionOptions'>
- Parameters related with inserting observations into the map:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CGasConcentrationGridMap2D.TMapDefinitionBase'>
Methods inherited from CRandomFieldGridMap2D:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CRandomFieldGridMap2D::asString() const --> std::string
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, c: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> float
C++: mrpt::maps::CRandomFieldGridMap2D::cell2float(const struct mrpt::maps::TRandomFieldCell &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CRandomFieldGridMap2D::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::CRandomFieldGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- enableProfiler(...)
- enableProfiler(*args, **kwargs)
Overloaded function.
1. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
2. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableProfiler(bool) --> void
- enableVerbose(...)
- enableVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable_verbose: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableVerbose(bool) --> void
- getAsBitmapFile(...)
- getAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_img: mrpt.pymrpt.mrpt.img.CImage) -> None
Returns an image just as described in
C++: mrpt::maps::CRandomFieldGridMap2D::getAsBitmapFile(class mrpt::img::CImage &) const --> void
- getAsMatrix(...)
- getAsMatrix(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_mat: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Like saveAsBitmapFile(), but returns the data in matrix form (first row
in the matrix is the upper (y_max) part of the map)
C++: mrpt::maps::CRandomFieldGridMap2D::getAsMatrix(class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMapType(...)
- getMapType(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation
Return the type of the random-field grid map, according to parameters
passed on construction.
C++: mrpt::maps::CRandomFieldGridMap2D::getMapType() --> enum mrpt::maps::CRandomFieldGridMap2D::TMapRepresentation
- getMeanAndCov(...)
- getMeanAndCov(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_cov: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Return the mean and covariance vector of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndCov(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMeanAndSTD(...)
- getMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Return the mean and STD vectors of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) const --> void
- insertIndividualReading(...)
- insertIndividualReading(*args, **kwargs)
Overloaded function.
1. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>) -> None
2. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool) -> None
3. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool) -> None
4. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool, reading_stddev: float) -> None
Direct update of the map with a reading in a given position of the map,
using
the appropriate method according to mapType passed in the constructor.
This is a direct way to update the map, an alternative to the generic
insertObservation() method which works with mrpt::obs::CObservation
objects.
C++: mrpt::maps::CRandomFieldGridMap2D::insertIndividualReading(const double, const struct mrpt::math::TPoint2D_<double> &, const bool, const bool, const double) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted (in
this class it always return false,
unless redefined otherwise in base classes)
C++: mrpt::maps::CRandomFieldGridMap2D::isEmpty() const --> bool
- isEnabledVerbose(...)
- isEnabledVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isEnabledVerbose() const --> bool
- isProfilerEnabled(...)
- isProfilerEnabled(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isProfilerEnabled() const --> bool
- predictMeasurement(...)
- predictMeasurement(*args, **kwargs)
Overloaded function.
1. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool) -> None
2. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool, interp_method: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod) -> None
Returns the prediction of the measurement at some (x,y) coordinates, and
its certainty (in the form of the expected variance).
C++: mrpt::maps::CRandomFieldGridMap2D::predictMeasurement(const double, const double, double &, double &, bool, const enum mrpt::maps::CRandomFieldGridMap2D::TGridInterpolationMethod) --> void
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
2. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell, additionalMarginMeters: float) -> None
Changes the size of the grid, maintaining previous contents.
setSize
C++: mrpt::maps::CRandomFieldGridMap2D::resize(double, double, double, double, const struct mrpt::maps::TRandomFieldCell &, double) --> void
- saveAsBitmapFile(...)
- saveAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save the current map as a graphical file (BMP,PNG,...).
The file format will be derived from the file extension (see
CImage::saveToFile )
It depends on the map representation model:
mrAchim: Each pixel is the ratio
mrKalmanFilter: Each pixel is the mean value of the Gaussian that
represents each cell.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsBitmapFile(const std::string &) const --> void
- saveAsMatlab3DGraph(...)
- saveAsMatlab3DGraph(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save a matlab ".m" file which represents as 3D surfaces the mean and a
given confidence level for the concentration of each cell.
This method can only be called in a KF map model.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(const std::string &) const --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filNamePrefix: str) -> None
The implementation in this class just calls all the corresponding method
of the contained metric maps
C++: mrpt::maps::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setCellsConnectivity(...)
- setCellsConnectivity(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_connectivity_descriptor: mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor) -> None
Sets a custom object to define the connectivity between cells. Must call
clear() or setSize() afterwards for the changes to take place.
C++: mrpt::maps::CRandomFieldGridMap2D::setCellsConnectivity(const class std::shared_ptr<struct mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor> &) --> void
- setMeanAndSTD(...)
- setMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Load the mean and STD vectors of the full Kalman filter estimate (works
for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::setMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
Changes the size of the grid, erasing previous contents.
Optional user-supplied object that
will visit all grid cells to define their connectivity with neighbors and
the strength of existing edges. If present, it overrides all options in
insertionOptions
resize
C++: mrpt::maps::CRandomFieldGridMap2D::setSize(const double, const double, const double, const double, const double, const struct mrpt::maps::TRandomFieldCell *) --> void
- updateMapEstimation(...)
- updateMapEstimation(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Run the method-specific procedure required to ensure that the mean &
variances are up-to-date with all inserted observations.
C++: mrpt::maps::CRandomFieldGridMap2D::updateMapEstimation() --> void
Data and other attributes inherited from CRandomFieldGridMap2D:
- ConnectivityDescriptor = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.ConnectivityDescriptor'>
- Base class for user-supplied objects capable of describing cells
connectivity, used to build prior factors of the MRF graph.
setCellsConnectivity()
- TGridInterpolationMethod = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod'>
- TInsertionOptionsCommon = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TInsertionOptionsCommon'>
- Parameters common to any derived class.
Derived classes should derive a new struct from this one, plus "public
CLoadableOptions",
and call the internal_* methods where appropiate to deal with the
variables declared here.
Derived classes instantions of their "TInsertionOptions" MUST set the
pointer "m_insertOptions_common" upon construction.
- TMapRepresentation = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation'>
- gimBilinear = <TGridInterpolationMethod.gimBilinear: 1>
- gimNearest = <TGridInterpolationMethod.gimNearest: 0>
- mrAchim = <TMapRepresentation.mrKernelDM: 0>
- mrGMRF_SD = <TMapRepresentation.mrGMRF_SD: 4>
- mrKalmanApproximate = <TMapRepresentation.mrKalmanApproximate: 2>
- mrKalmanFilter = <TMapRepresentation.mrKalmanFilter: 1>
- mrKernelDM = <TMapRepresentation.mrKernelDM: 0>
- mrKernelDMV = <TMapRepresentation.mrKernelDMV: 3>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int, cy: int) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByIndex(unsigned int, unsigned int) --> struct mrpt::maps::TRandomFieldCell *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByPos(double, double) --> struct mrpt::maps::TRandomFieldCell *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, value: mrpt::maps::TRandomFieldCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::fill(const struct mrpt::maps::TRandomFieldCell &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2y(int) const --> double
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::saveToTextFile(const std::string &) const --> bool
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::y2idx(double) const --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CHeightGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, CHeightGridMap2D_Base) |
|
Digital Elevation Model (DEM), a mesh or grid representation of a surface
which keeps the estimated height for each (x,y) location.
Important implemented features are the insertion of 2D laser scans (from
arbitrary 6D poses) and the exportation as 3D scenes.
Each cell contains the up-to-date average height from measured falling in
that cell. Algorithms that can be used:
- mrSimpleAverage: Each cell only stores the current average value.
This class implements generic version of
mrpt::maps::CMetric::insertObservation() accepting these types of sensory
data:
- mrpt::obs::CObservation2DRangeScan: 2D range scans
- mrpt::obs::CObservationVelodyneScan |
|
- Method resolution order:
- CHeightGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t
- CHeightGridMap2D_Base
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CHeightGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt::maps::CHeightGridMap2D::TMapRepresentation) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt::maps::CHeightGridMap2D::TMapRepresentation, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt::maps::CHeightGridMap2D::TMapRepresentation, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt::maps::CHeightGridMap2D::TMapRepresentation, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt::maps::CHeightGridMap2D::TMapRepresentation, arg1: float, arg2: float, arg3: float, arg4: float) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, mapType: mrpt::maps::CHeightGridMap2D::TMapRepresentation, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
8. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
9. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CHeightGridMap2D::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, : mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> mrpt.pymrpt.mrpt.maps.CHeightGridMap2D
C++: mrpt::maps::CHeightGridMap2D::operator=(const class mrpt::maps::CHeightGridMap2D &) --> class mrpt::maps::CHeightGridMap2D &
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, c: mrpt.pymrpt.mrpt.maps.THeightGridmapCell) -> float
C++: mrpt::maps::CHeightGridMap2D::cell2float(const struct mrpt::maps::THeightGridmapCell &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CHeightGridMap2D::clear() --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CHeightGridMap2D::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class it always returns 0
C++: mrpt::maps::CHeightGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- countObservedCells(...)
- countObservedCells(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> int
Return the number of cells with at least one height data inserted.
C++: mrpt::maps::CHeightGridMap2D::countObservedCells() const --> size_t
- dem_get_resolution(...)
- dem_get_resolution(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> float
C++: mrpt::maps::CHeightGridMap2D::dem_get_resolution() const --> double
- dem_get_size_x(...)
- dem_get_size_x(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> int
C++: mrpt::maps::CHeightGridMap2D::dem_get_size_x() const --> size_t
- dem_get_size_y(...)
- dem_get_size_y(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> int
C++: mrpt::maps::CHeightGridMap2D::dem_get_size_y() const --> size_t
- dem_get_z(...)
- dem_get_z(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, x: float, y: float, z_out: float) -> bool
C++: mrpt::maps::CHeightGridMap2D::dem_get_z(const double, const double, double &) const --> bool
- dem_get_z_by_cell(...)
- dem_get_z_by_cell(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, cx: int, cy: int, z_out: float) -> bool
C++: mrpt::maps::CHeightGridMap2D::dem_get_z_by_cell(size_t, size_t, double &) const --> bool
- dem_update_map(...)
- dem_update_map(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
C++: mrpt::maps::CHeightGridMap2D::dem_update_map() --> void
- getMapType(...)
- getMapType(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> mrpt.pymrpt.mrpt.maps.CHeightGridMap2D.TMapRepresentation
Return the type of the gas distribution map, according to parameters
passed on construction
C++: mrpt::maps::CHeightGridMap2D::getMapType() --> enum mrpt::maps::CHeightGridMap2D::TMapRepresentation
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map: by default, it will be a
mrpt::opengl::CMesh object, unless
it is specified otherwise in
mrpt::global_settings::HEIGHTGRIDMAP_EXPORT3D_AS_MESH
C++: mrpt::maps::CHeightGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertIndividualPoint(...)
- insertIndividualPoint(*args, **kwargs)
Overloaded function.
1. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, x: float, y: float, z: float) -> bool
2. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, x: float, y: float, z: float, params: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base.TPointInsertParams) -> bool
C++: mrpt::maps::CHeightGridMap2D::insertIndividualPoint(const double, const double, const double, const struct mrpt::maps::CHeightGridMap2D_Base::TPointInsertParams &) --> bool
- internal_clear(...)
- internal_clear(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> None
C++: mrpt::maps::CHeightGridMap2D::internal_clear() --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
C++: mrpt::maps::CHeightGridMap2D::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CHeightGridMap2D::isEmpty() const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D, filNamePrefix: str) -> None
C++: mrpt::maps::CHeightGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CHeightGridMap2D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CHeightGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
- m_mapType
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D.TInsertionOptions'>
- Parameters related with inserting observations into the map
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D.TMapDefinitionBase'>
- TMapRepresentation = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D.TMapRepresentation'>
- mrSimpleAverage = <TMapRepresentation.mrSimpleAverage: 0>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, cx: int, cy: int) -> mrpt::maps::THeightGridmapCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::cellByIndex(unsigned int, unsigned int) --> struct mrpt::maps::THeightGridmapCell *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, x: float, y: float) -> mrpt::maps::THeightGridmapCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::cellByPos(double, double) --> struct mrpt::maps::THeightGridmapCell *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, value: mrpt::maps::THeightGridmapCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::fill(const struct mrpt::maps::THeightGridmapCell &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::idx2y(int) const --> double
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt::maps::THeightGridmapCell) -> None
2. resize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt::maps::THeightGridmapCell, additionalMarginMeters: float) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::resize(double, double, double, double, const struct mrpt::maps::THeightGridmapCell &, double) --> void
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::saveToTextFile(const std::string &) const --> bool
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: mrpt::maps::THeightGridmapCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::setSize(const double, const double, const double, const double, const double, const struct mrpt::maps::THeightGridmapCell *) --> void
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_THeightGridmapCell_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::THeightGridmapCell>::y2idx(double) const --> int
Methods inherited from CHeightGridMap2D_Base:
- getMinMaxHeight(...)
- getMinMaxHeight(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, z_min: float, z_max: float) -> bool
Computes the minimum and maximum height in the grid.
False if there is no observed cell yet.
C++: mrpt::maps::CHeightGridMap2D_Base::getMinMaxHeight(float &, float &) const --> bool
- intersectLine3D(...)
- intersectLine3D(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, r1: mrpt.pymrpt.mrpt.math.TLine3D, obj: mrpt.pymrpt.mrpt.math.TObject3D) -> bool
@{
Gets the intersection between a 3D line and a Height Grid map (taking
into account the different heights of each individual cell)
C++: mrpt::maps::CHeightGridMap2D_Base::intersectLine3D(const struct mrpt::math::TLine3D &, struct mrpt::math::TObject3D &) const --> bool
Data and other attributes inherited from CHeightGridMap2D_Base:
- TPointInsertParams = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base.TPointInsertParams'>
- Extra params for insertIndividualPoint()
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CHeightGridMap2D_Base(pybind11_builtins.pybind11_object) |
|
Virtual base class for Digital Elevation Model (DEM) maps. See derived
classes for details.
This class implements those operations which are especific to DEMs. |
|
- Method resolution order:
- CHeightGridMap2D_Base
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, arg0: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, : mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base
C++: mrpt::maps::CHeightGridMap2D_Base::operator=(const class mrpt::maps::CHeightGridMap2D_Base &) --> class mrpt::maps::CHeightGridMap2D_Base &
- dem_get_resolution(...)
- dem_get_resolution(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> float
C++: mrpt::maps::CHeightGridMap2D_Base::dem_get_resolution() const --> double
- dem_get_size_x(...)
- dem_get_size_x(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> int
C++: mrpt::maps::CHeightGridMap2D_Base::dem_get_size_x() const --> size_t
- dem_get_size_y(...)
- dem_get_size_y(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> int
C++: mrpt::maps::CHeightGridMap2D_Base::dem_get_size_y() const --> size_t
- dem_get_z(...)
- dem_get_z(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, x: float, y: float, z_out: float) -> bool
Get cell 'z' (x,y) by metric coordinates.
false if out of bounds
or un-observed cell.
C++: mrpt::maps::CHeightGridMap2D_Base::dem_get_z(const double, const double, double &) const --> bool
- dem_get_z_by_cell(...)
- dem_get_z_by_cell(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, cx: int, cy: int, z_out: float) -> bool
Get cell 'z' by (cx,cy) cell indices.
false if out of bounds or
un-observed cell.
C++: mrpt::maps::CHeightGridMap2D_Base::dem_get_z_by_cell(size_t, size_t, double &) const --> bool
- dem_update_map(...)
- dem_update_map(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base) -> None
Ensure that all observations are reflected in the map estimate
C++: mrpt::maps::CHeightGridMap2D_Base::dem_update_map() --> void
- getMinMaxHeight(...)
- getMinMaxHeight(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, z_min: float, z_max: float) -> bool
Computes the minimum and maximum height in the grid.
False if there is no observed cell yet.
C++: mrpt::maps::CHeightGridMap2D_Base::getMinMaxHeight(float &, float &) const --> bool
- insertIndividualPoint(...)
- insertIndividualPoint(*args, **kwargs)
Overloaded function.
1. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, x: float, y: float, z: float) -> bool
2. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, x: float, y: float, z: float, params: mrpt::maps::CHeightGridMap2D_Base::TPointInsertParams) -> bool
Update the DEM with one new point.
mrpt::maps::CMetricMap::insertObservation() for inserting
higher-level objects like 2D/3D LIDAR scans
true if updated OK, false if (x,y) is out of bounds
C++: mrpt::maps::CHeightGridMap2D_Base::insertIndividualPoint(const double, const double, const double, const struct mrpt::maps::CHeightGridMap2D_Base::TPointInsertParams &) --> bool
- intersectLine3D(...)
- intersectLine3D(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, r1: mrpt.pymrpt.mrpt.math.TLine3D, obj: mrpt.pymrpt.mrpt.math.TObject3D) -> bool
@{
Gets the intersection between a 3D line and a Height Grid map (taking
into account the different heights of each individual cell)
C++: mrpt::maps::CHeightGridMap2D_Base::intersectLine3D(const struct mrpt::math::TLine3D &, struct mrpt::math::TObject3D &) const --> bool
Data and other attributes defined here:
- TPointInsertParams = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base.TPointInsertParams'>
- Extra params for insertIndividualPoint()
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CHeightGridMap2D_MRF(CRandomFieldGridMap2D, CHeightGridMap2D_Base) |
|
CHeightGridMap2D_MRF represents digital-elevation-model over a 2D area, with
uncertainty, based on a Markov-Random-Field (MRF) estimator.
There are a number of methods available to build the gas grid-map,
depending on the value of
"TMapRepresentation maptype" passed in the constructor (see base class
mrpt::maps::CRandomFieldGridMap2D).
Update the map with insertIndividualReading() or insertObservation()
mrpt::maps::CRandomFieldGridMap2D, mrpt::maps::CMetricMap,
mrpt::containers::CDynamicGrid, The application icp-slam,
mrpt::maps::CMultiMetricMap
New in MRPT 1.4.0 |
|
- Method resolution order:
- CHeightGridMap2D_MRF
- CRandomFieldGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t
- CHeightGridMap2D_Base
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CHeightGridMap2D_MRF::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float, arg4: float) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float, arg4: float, arg5: float) -> None
doc
8. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, mapType: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, run_first_map_estimation_now: bool) -> None
9. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> None
10. __init__(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, arg0: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, : mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF
C++: mrpt::maps::CHeightGridMap2D_MRF::operator=(const class mrpt::maps::CHeightGridMap2D_MRF &) --> class mrpt::maps::CHeightGridMap2D_MRF &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CHeightGridMap2D_MRF::clone() const --> class mrpt::rtti::CObject *
- dem_get_resolution(...)
- dem_get_resolution(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> float
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_get_resolution() const --> double
- dem_get_size_x(...)
- dem_get_size_x(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> int
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_get_size_x() const --> size_t
- dem_get_size_y(...)
- dem_get_size_y(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> int
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_get_size_y() const --> size_t
- dem_get_z(...)
- dem_get_z(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, x: float, y: float, z_out: float) -> bool
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_get_z(const double, const double, double &) const --> bool
- dem_get_z_by_cell(...)
- dem_get_z_by_cell(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, cx: int, cy: int, z_out: float) -> bool
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_get_z_by_cell(size_t, size_t, double &) const --> bool
- dem_update_map(...)
- dem_update_map(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> None
C++: mrpt::maps::CHeightGridMap2D_MRF::dem_update_map() --> void
- getAs3DObject(...)
- getAs3DObject(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, meanObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects, varObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns two 3D objects representing the mean and variance maps
C++: mrpt::maps::CHeightGridMap2D_MRF::getAs3DObject(class mrpt::opengl::CSetOfObjects &, class mrpt::opengl::CSetOfObjects &) const --> void
- getCommonInsertOptions(...)
- getCommonInsertOptions(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TInsertionOptionsCommon
Get the part of the options common to all CRandomFieldGridMap2D classes
C++: mrpt::maps::CHeightGridMap2D_MRF::getCommonInsertOptions() --> struct mrpt::maps::CRandomFieldGridMap2D::TInsertionOptionsCommon *
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map
C++: mrpt::maps::CHeightGridMap2D_MRF::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertIndividualPoint(...)
- insertIndividualPoint(*args, **kwargs)
Overloaded function.
1. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, x: float, y: float, z: float) -> bool
2. insertIndividualPoint(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, x: float, y: float, z: float, params: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base.TPointInsertParams) -> bool
C++: mrpt::maps::CHeightGridMap2D_MRF::insertIndividualPoint(const double, const double, const double, const struct mrpt::maps::CHeightGridMap2D_Base::TPointInsertParams &) --> bool
- internal_clear(...)
- internal_clear(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF) -> None
C++: mrpt::maps::CHeightGridMap2D_MRF::internal_clear() --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
C++: mrpt::maps::CHeightGridMap2D_MRF::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CHeightGridMap2D_MRF::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CHeightGridMap2D_MRF::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF.TInsertionOptions'>
- Parameters related with inserting observations into the map
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_MRF.TMapDefinitionBase'>
Methods inherited from CRandomFieldGridMap2D:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CRandomFieldGridMap2D::asString() const --> std::string
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, c: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> float
C++: mrpt::maps::CRandomFieldGridMap2D::cell2float(const struct mrpt::maps::TRandomFieldCell &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CRandomFieldGridMap2D::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::CRandomFieldGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- enableProfiler(...)
- enableProfiler(*args, **kwargs)
Overloaded function.
1. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
2. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableProfiler(bool) --> void
- enableVerbose(...)
- enableVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable_verbose: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableVerbose(bool) --> void
- getAsBitmapFile(...)
- getAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_img: mrpt.pymrpt.mrpt.img.CImage) -> None
Returns an image just as described in
C++: mrpt::maps::CRandomFieldGridMap2D::getAsBitmapFile(class mrpt::img::CImage &) const --> void
- getAsMatrix(...)
- getAsMatrix(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_mat: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Like saveAsBitmapFile(), but returns the data in matrix form (first row
in the matrix is the upper (y_max) part of the map)
C++: mrpt::maps::CRandomFieldGridMap2D::getAsMatrix(class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMapType(...)
- getMapType(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation
Return the type of the random-field grid map, according to parameters
passed on construction.
C++: mrpt::maps::CRandomFieldGridMap2D::getMapType() --> enum mrpt::maps::CRandomFieldGridMap2D::TMapRepresentation
- getMeanAndCov(...)
- getMeanAndCov(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_cov: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Return the mean and covariance vector of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndCov(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMeanAndSTD(...)
- getMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Return the mean and STD vectors of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) const --> void
- insertIndividualReading(...)
- insertIndividualReading(*args, **kwargs)
Overloaded function.
1. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>) -> None
2. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool) -> None
3. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool) -> None
4. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool, reading_stddev: float) -> None
Direct update of the map with a reading in a given position of the map,
using
the appropriate method according to mapType passed in the constructor.
This is a direct way to update the map, an alternative to the generic
insertObservation() method which works with mrpt::obs::CObservation
objects.
C++: mrpt::maps::CRandomFieldGridMap2D::insertIndividualReading(const double, const struct mrpt::math::TPoint2D_<double> &, const bool, const bool, const double) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted (in
this class it always return false,
unless redefined otherwise in base classes)
C++: mrpt::maps::CRandomFieldGridMap2D::isEmpty() const --> bool
- isEnabledVerbose(...)
- isEnabledVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isEnabledVerbose() const --> bool
- isProfilerEnabled(...)
- isProfilerEnabled(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isProfilerEnabled() const --> bool
- predictMeasurement(...)
- predictMeasurement(*args, **kwargs)
Overloaded function.
1. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool) -> None
2. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool, interp_method: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod) -> None
Returns the prediction of the measurement at some (x,y) coordinates, and
its certainty (in the form of the expected variance).
C++: mrpt::maps::CRandomFieldGridMap2D::predictMeasurement(const double, const double, double &, double &, bool, const enum mrpt::maps::CRandomFieldGridMap2D::TGridInterpolationMethod) --> void
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
2. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell, additionalMarginMeters: float) -> None
Changes the size of the grid, maintaining previous contents.
setSize
C++: mrpt::maps::CRandomFieldGridMap2D::resize(double, double, double, double, const struct mrpt::maps::TRandomFieldCell &, double) --> void
- saveAsBitmapFile(...)
- saveAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save the current map as a graphical file (BMP,PNG,...).
The file format will be derived from the file extension (see
CImage::saveToFile )
It depends on the map representation model:
mrAchim: Each pixel is the ratio
mrKalmanFilter: Each pixel is the mean value of the Gaussian that
represents each cell.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsBitmapFile(const std::string &) const --> void
- saveAsMatlab3DGraph(...)
- saveAsMatlab3DGraph(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save a matlab ".m" file which represents as 3D surfaces the mean and a
given confidence level for the concentration of each cell.
This method can only be called in a KF map model.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(const std::string &) const --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filNamePrefix: str) -> None
The implementation in this class just calls all the corresponding method
of the contained metric maps
C++: mrpt::maps::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setCellsConnectivity(...)
- setCellsConnectivity(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_connectivity_descriptor: mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor) -> None
Sets a custom object to define the connectivity between cells. Must call
clear() or setSize() afterwards for the changes to take place.
C++: mrpt::maps::CRandomFieldGridMap2D::setCellsConnectivity(const class std::shared_ptr<struct mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor> &) --> void
- setMeanAndSTD(...)
- setMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Load the mean and STD vectors of the full Kalman filter estimate (works
for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::setMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
Changes the size of the grid, erasing previous contents.
Optional user-supplied object that
will visit all grid cells to define their connectivity with neighbors and
the strength of existing edges. If present, it overrides all options in
insertionOptions
resize
C++: mrpt::maps::CRandomFieldGridMap2D::setSize(const double, const double, const double, const double, const double, const struct mrpt::maps::TRandomFieldCell *) --> void
- updateMapEstimation(...)
- updateMapEstimation(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Run the method-specific procedure required to ensure that the mean &
variances are up-to-date with all inserted observations.
C++: mrpt::maps::CRandomFieldGridMap2D::updateMapEstimation() --> void
Data and other attributes inherited from CRandomFieldGridMap2D:
- ConnectivityDescriptor = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.ConnectivityDescriptor'>
- Base class for user-supplied objects capable of describing cells
connectivity, used to build prior factors of the MRF graph.
setCellsConnectivity()
- TGridInterpolationMethod = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod'>
- TInsertionOptionsCommon = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TInsertionOptionsCommon'>
- Parameters common to any derived class.
Derived classes should derive a new struct from this one, plus "public
CLoadableOptions",
and call the internal_* methods where appropiate to deal with the
variables declared here.
Derived classes instantions of their "TInsertionOptions" MUST set the
pointer "m_insertOptions_common" upon construction.
- TMapRepresentation = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation'>
- gimBilinear = <TGridInterpolationMethod.gimBilinear: 1>
- gimNearest = <TGridInterpolationMethod.gimNearest: 0>
- mrAchim = <TMapRepresentation.mrKernelDM: 0>
- mrGMRF_SD = <TMapRepresentation.mrGMRF_SD: 4>
- mrKalmanApproximate = <TMapRepresentation.mrKalmanApproximate: 2>
- mrKalmanFilter = <TMapRepresentation.mrKalmanFilter: 1>
- mrKernelDM = <TMapRepresentation.mrKernelDM: 0>
- mrKernelDMV = <TMapRepresentation.mrKernelDMV: 3>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int, cy: int) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByIndex(unsigned int, unsigned int) --> struct mrpt::maps::TRandomFieldCell *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByPos(double, double) --> struct mrpt::maps::TRandomFieldCell *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, value: mrpt::maps::TRandomFieldCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::fill(const struct mrpt::maps::TRandomFieldCell &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2y(int) const --> double
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::saveToTextFile(const std::string &) const --> bool
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::y2idx(double) const --> int
Methods inherited from CHeightGridMap2D_Base:
- getMinMaxHeight(...)
- getMinMaxHeight(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, z_min: float, z_max: float) -> bool
Computes the minimum and maximum height in the grid.
False if there is no observed cell yet.
C++: mrpt::maps::CHeightGridMap2D_Base::getMinMaxHeight(float &, float &) const --> bool
- intersectLine3D(...)
- intersectLine3D(self: mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base, r1: mrpt.pymrpt.mrpt.math.TLine3D, obj: mrpt.pymrpt.mrpt.math.TObject3D) -> bool
@{
Gets the intersection between a 3D line and a Height Grid map (taking
into account the different heights of each individual cell)
C++: mrpt::maps::CHeightGridMap2D_Base::intersectLine3D(const struct mrpt::math::TLine3D &, struct mrpt::math::TObject3D &) const --> bool
Data and other attributes inherited from CHeightGridMap2D_Base:
- TPointInsertParams = <class 'mrpt.pymrpt.mrpt.maps.CHeightGridMap2D_Base.TPointInsertParams'>
- Extra params for insertIndividualPoint()
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CLandmark(mrpt.pymrpt.mrpt.serialization.CSerializable) |
|
The class for storing "landmarks" (visual or laser-scan-extracted
features,...)
The descriptors for each kind of descriptor are stored in the vector
"features", which
will typically consists of only 1 element, or 2 elements for landmarks
obtained from stereo images.
CLandmarksMap |
|
- Method resolution order:
- CLandmark
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CLandmark) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CLandmark::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CLandmark) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CLandmark, arg0: mrpt.pymrpt.mrpt.maps.CLandmark) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CLandmark, arg0: mrpt.pymrpt.mrpt.maps.CLandmark) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CLandmark, : mrpt.pymrpt.mrpt.maps.CLandmark) -> mrpt.pymrpt.mrpt.maps.CLandmark
C++: mrpt::maps::CLandmark::operator=(const class mrpt::maps::CLandmark &) --> class mrpt::maps::CLandmark &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CLandmark) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CLandmark::clone() const --> class mrpt::rtti::CObject *
- createOneFeature(...)
- createOneFeature(self: mrpt.pymrpt.mrpt.maps.CLandmark) -> None
Creates one feature in the vector "features", calling the appropriate
constructor of the smart pointer, so after calling this method
"features[0]" is a valid pointer to a CFeature object.
C++: mrpt::maps::CLandmark::createOneFeature() --> void
- getPose(...)
- getPose(*args, **kwargs)
Overloaded function.
1. getPose(self: mrpt.pymrpt.mrpt.maps.CLandmark, p: mrpt.pymrpt.mrpt.poses.CPointPDFGaussian) -> None
Returns the pose as an object:
C++: mrpt::maps::CLandmark::getPose(class mrpt::poses::CPointPDFGaussian &) const --> void
2. getPose(self: mrpt.pymrpt.mrpt.maps.CLandmark, p: mrpt.pymrpt.mrpt.poses.CPoint3D, COV: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
C++: mrpt::maps::CLandmark::getPose(class mrpt::poses::CPoint3D &, class mrpt::math::CMatrixDynamic<double> &) const --> void
- getType(...)
- getType(self: mrpt.pymrpt.mrpt.maps.CLandmark) -> mrpt.pymrpt.mrpt.vision.TKeyPointMethod
Gets the type of the first feature in its feature vector. The vector
must not be empty.
C++: mrpt::maps::CLandmark::getType() const --> enum mrpt::vision::TKeyPointMethod
- setPose(...)
- setPose(self: mrpt.pymrpt.mrpt.maps.CLandmark, p: mrpt.pymrpt.mrpt.poses.CPointPDFGaussian) -> None
Sets the pose from an object:
C++: mrpt::maps::CLandmark::setPose(const class mrpt::poses::CPointPDFGaussian &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CLandmark::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CLandmark::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- ID
- features
- normal
- pose_cov_11
- pose_cov_12
- pose_cov_13
- pose_cov_22
- pose_cov_23
- pose_cov_33
- pose_mean
- seenTimesCount
- timestampLastSeen
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CLandmarksMap(CMetricMap) |
|
A class for storing a map of 3D probabilistic landmarks.
Currently these types of landmarks are defined: (see mrpt::maps::CLandmark)
- For "visual landmarks" from images: features with associated
descriptors.
- For laser scanners: each of the range measuremnts, as "occupancy"
landmarks.
- For grid maps: "Panoramic descriptor" feature points.
- For range-only localization and SLAM: Beacons. It is also supported
the simulation of expected beacon-to-sensor readings, observation
likelihood,...
How to load landmarks from observations:
When invoking CLandmarksMap::insertObservation(), the values in
CLandmarksMap::insertionOptions will
determinate the kind of landmarks that will be extracted and fused into
the map. Supported feature
extraction processes are listed next:
Observation class: Generated Landmarks:
Comments:
CObservationImage vlSIFT 1) A SIFT feature is
created for each SIFT detected in the image,
2) Correspondences between SIFTs features and existing ones are
finded by computeMatchingWith3DLandmarks,
3) The corresponding feaures are fused, and the new ones added,
with an initial uncertainty according to insertionOptions
CObservationStereoImages vlSIFT Each image is
separately procesed by the method for CObservationImage observations
CObservationStereoImages vlColor TODO...
CObservation2DRangeScan glOccupancy A landmark is
added for each range in the scan, with its appropiate covariance matrix derived
from the jacobians matrixes.
CMetricMap |
|
- Method resolution order:
- CLandmarksMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CLandmarksMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CLandmarksMap::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, : mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> mrpt.pymrpt.mrpt.maps.CLandmarksMap
C++: mrpt::maps::CLandmarksMap::operator=(const class mrpt::maps::CLandmarksMap &) --> class mrpt::maps::CLandmarksMap &
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> None
C++: mrpt::maps::CLandmarksMap::auxParticleFilterCleanUp() --> void
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, newOrg: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Changes the reference system of the map to a given 3D pose.
C++: mrpt::maps::CLandmarksMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, newOrg: mrpt.pymrpt.mrpt.poses.CPose3D, otherMap: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> None
Changes the reference system of the map "otherMap" and save the result
in "this" map.
C++: mrpt::maps::CLandmarksMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &, const class mrpt::maps::CLandmarksMap *) --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CLandmarksMap::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
** END FAMD ****
C++: mrpt::maps::CLandmarksMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeLikelihood_RSLC_2007(...)
- computeLikelihood_RSLC_2007(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, s: mrpt.pymrpt.mrpt.maps.CLandmarksMap, sensorPose: mrpt.pymrpt.mrpt.poses.CPose2D) -> float
Computes the (logarithmic) likelihood function for a sensed observation
"o" according to "this" map.
This is the implementation of the algorithm reported in the paper:
J.L. Blanco, J. Gonzalez, and J.A. Fernandez-Madrigal, "A
Consensus-based Approach for Estimating the Observation Likelihood of
Accurate Range Sensors", in IEEE International Conference on Robotics and
Automation (ICRA), Rome (Italy), Apr 10-14, 2007
C++: mrpt::maps::CLandmarksMap::computeLikelihood_RSLC_2007(const class mrpt::maps::CLandmarksMap *, const class mrpt::poses::CPose2D &) const --> double
- computeMatchingWith2D(...)
- computeMatchingWith2D(*args, **kwargs)
Overloaded function.
1. computeMatchingWith2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, maxDistForCorrespondence: float, maxAngularDistForCorrespondence: float, angularDistPivotPoint: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
2. computeMatchingWith2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, maxDistForCorrespondence: float, maxAngularDistForCorrespondence: float, angularDistPivotPoint: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float, sumSqrDist: float) -> None
3. computeMatchingWith2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, maxDistForCorrespondence: float, maxAngularDistForCorrespondence: float, angularDistPivotPoint: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float, sumSqrDist: float, onlyKeepTheClosest: bool) -> None
4. computeMatchingWith2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, maxDistForCorrespondence: float, maxAngularDistForCorrespondence: float, angularDistPivotPoint: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float, sumSqrDist: float, onlyKeepTheClosest: bool, onlyUniqueRobust: bool) -> None
C++: mrpt::maps::CLandmarksMap::computeMatchingWith2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, float, float, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, float &, float *, bool, bool) const --> void
- fuseWith(...)
- fuseWith(*args, **kwargs)
Overloaded function.
1. fuseWith(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, other: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> None
2. fuseWith(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, other: mrpt.pymrpt.mrpt.maps.CLandmarksMap, justInsertAllOfThem: bool) -> None
Fuses the contents of another map with this one, updating "this" object
with the result.
This process involves fusing corresponding landmarks, then adding the
new ones.
The other landmarkmap, whose landmarks will be inserted
into "this"
If set to "true", all the landmarks in
"other" will be inserted into "this" without checking for possible
correspondences (may appear duplicates ones, etc...)
C++: mrpt::maps::CLandmarksMap::fuseWith(class mrpt::maps::CLandmarksMap &, bool) --> void
- getMapMaxID(...)
- getMapMaxID(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> int
C++: mrpt::maps::CLandmarksMap::getMapMaxID() --> long
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map.
COLOR_LANDMARKS_IN_3DSCENES
C++: mrpt::maps::CLandmarksMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the (logarithmic) likelihood that a given observation was taken
from a given pose in the world being modeled with this map.
In the current implementation, this method behaves in a different way
according to the nature of
the observation's class:
- "mrpt::obs::CObservation2DRangeScan": This calls
"computeLikelihood_RSLC_2007".
- "mrpt::obs::CObservationStereoImages": This calls
"computeLikelihood_SIFT_LandmarkMap".
Observation class: Generated
Landmarks: Comments:
CObservationImage vlSIFT 1) A SIFT feature is
created for each SIFT detected in the image,
2) Correspondences between SIFTs features and existing ones
are found by computeMatchingWith3DLandmarks,
3) The corresponding feaures are fused, and the new ones
added,
with an initial uncertainty according to insertionOptions
CObservationStereoImages vlSIFT Each image is
separately procesed by the method for CObservationImage observations
CObservationStereoImages vlColor TODO...
CObservation2DRangeScan glOccupancy A
landmark is added for each range in the scan, with its appropiate
covariance matrix derived from the jacobians matrixes.
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a likelihood value > 0.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CLandmarksMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CLandmarksMap::isEmpty() const --> bool
- loadSiftFeaturesFromImageObservation(...)
- loadSiftFeaturesFromImageObservation(*args, **kwargs)
Overloaded function.
1. loadSiftFeaturesFromImageObservation(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, obs: mrpt.pymrpt.mrpt.obs.CObservationImage) -> None
2. loadSiftFeaturesFromImageObservation(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, obs: mrpt.pymrpt.mrpt.obs.CObservationImage, feat_options: mrpt.pymrpt.mrpt.vision.CFeatureExtraction.TOptions) -> None
Loads into this landmarks map the SIFT features extracted from an image
observation (Previous contents of map will be erased)
The robot is assumed to be at the origin of the map.
Some options may be applicable from "insertionOptions"
(insertionOptions.SIFTsLoadDistanceOfTheMean)
Optionally, you can pass here parameters for
changing the default SIFT detector settings.
C++: mrpt::maps::CLandmarksMap::loadSiftFeaturesFromImageObservation(const class mrpt::obs::CObservationImage &, const struct mrpt::vision::CFeatureExtraction::TOptions &) --> void
- loadSiftFeaturesFromStereoImageObservation(...)
- loadSiftFeaturesFromStereoImageObservation(*args, **kwargs)
Overloaded function.
1. loadSiftFeaturesFromStereoImageObservation(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, obs: mrpt.pymrpt.mrpt.obs.CObservationStereoImages, fID: int) -> None
2. loadSiftFeaturesFromStereoImageObservation(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, obs: mrpt.pymrpt.mrpt.obs.CObservationStereoImages, fID: int, feat_options: mrpt.pymrpt.mrpt.vision.CFeatureExtraction.TOptions) -> None
Loads into this landmarks map the SIFT features extracted from an
observation consisting of a pair of stereo-image (Previous contents of
map will be erased)
The robot is assumed to be at the origin of the map.
Some options may be applicable from "insertionOptions"
Optionally, you can pass here parameters for
changing the default SIFT detector settings.
C++: mrpt::maps::CLandmarksMap::loadSiftFeaturesFromStereoImageObservation(const class mrpt::obs::CObservationStereoImages &, long, const struct mrpt::vision::CFeatureExtraction::TOptions &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
In the case of this class, these files are generated:
- "filNamePrefix"+"_3D.m": A script for MATLAB for drawing landmarks
as
3D ellipses.
- "filNamePrefix"+"_3D.3DScene": A 3D scene with a "ground plane
grid"
and the set of ellipsoids in 3D.
C++: mrpt::maps::CLandmarksMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- saveToMATLABScript2D(...)
- saveToMATLABScript2D(*args, **kwargs)
Overloaded function.
1. saveToMATLABScript2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str) -> bool
2. saveToMATLABScript2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str, style: str) -> bool
3. saveToMATLABScript2D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str, style: str, stdCount: float) -> bool
Save to a MATLAB script which displays 2D error ellipses for the map
(top-view, projection on the XY plane).
The name of the file to save the script to.
The MATLAB-like string for the style of the lines (see
'help plot' in MATLAB for possibilities)
The ellipsoids will be drawn from the center to
"stdCount" times the "standard deviations". (default is 2std = 95%
confidence intervals)
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CLandmarksMap::saveToMATLABScript2D(std::string, const char *, float) --> bool
- saveToMATLABScript3D(...)
- saveToMATLABScript3D(*args, **kwargs)
Overloaded function.
1. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str) -> bool
2. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str, style: str) -> bool
3. saveToMATLABScript3D(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str, style: str, confInterval: float) -> bool
Save to a MATLAB script which displays 3D error ellipses for the map.
The name of the file to save the script to.
The MATLAB-like string for the style of the lines (see
'help plot' in MATLAB for possibilities)
The ellipsoids will be drawn from the center to a given
confidence interval in [0,1], e.g. 2 sigmas=0.95 (default is 2std = 0.95
confidence intervals)
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CLandmarksMap::saveToMATLABScript3D(std::string, const char *, float) const --> bool
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, file: str) -> bool
Save to a text file.
In line "i" there are the (x,y,z) mean values of the i'th landmark +
type of landmark + # times seen + timestamp + RGB/descriptor + ID
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CLandmarksMap::saveToTextFile(std::string) --> bool
- simulateBeaconReadings(...)
- simulateBeaconReadings(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap, in_robotPose: mrpt.pymrpt.mrpt.poses.CPose3D, in_sensorLocationOnRobot: mrpt.pymrpt.mrpt.poses.CPoint3D, out_Observations: mrpt.pymrpt.mrpt.obs.CObservationBeaconRanges) -> None
Simulates a noisy reading toward each of the beacons in the landmarks
map, if any.
This robot pose is used to simulate the ranges to
each beacon.
The 3D position of the sensor on the
robot
The results will be stored here. NOTICE that the
fields
"CObservationBeaconRanges::minSensorDistance","CObservationBeaconRanges::maxSensorDistance"
and "CObservationBeaconRanges::stdError" MUST BE FILLED OUT before
calling this function.
An observation will be generated for each beacon in the map, but notice
that some of them may be missed if out of the sensor maximum range.
C++: mrpt::maps::CLandmarksMap::simulateBeaconReadings(const class mrpt::poses::CPose3D &, const class mrpt::poses::CPoint3D &, class mrpt::obs::CObservationBeaconRanges &) const --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CLandmarksMap) -> int
Returns the stored landmarks count.
C++: mrpt::maps::CLandmarksMap::size() const --> size_t
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CLandmarksMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CLandmarksMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- fuseOptions
- insertionOptions
- insertionResults
- landmarks
- likelihoodOptions
Data and other attributes defined here:
- TCustomSequenceLandmarks = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TCustomSequenceLandmarks'>
- The list of landmarks: the wrapper class is just for maintaining the
KD-Tree representation
- TFuseOptions = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TFuseOptions'>
- With this struct options are provided to the fusion process.
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
- TInsertionResults = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TInsertionResults'>
- This struct stores extra results from invoking insertObservation
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TLikelihoodOptions'>
- With this struct options are provided to the likelihood computations.
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CLandmarksMap.TMapDefinitionBase'>
Methods inherited from CMetricMap:
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CLogOddsGridMap2D_signed_char_t(pybind11_builtins.pybind11_object) |
| |
- Method resolution order:
- CLogOddsGridMap2D_signed_char_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, arg0: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, : mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t) -> mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::operator=(const struct mrpt::maps::CLogOddsGridMap2D<signed char> &) --> struct mrpt::maps::CLogOddsGridMap2D<signed char> &
- updateCell_fast_occupied(...)
- updateCell_fast_occupied(*args, **kwargs)
Overloaded function.
1. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(signed char *, const signed char, const signed char) --> void
Static methods defined here:
- updateCell_fast_free(...) from builtins.PyCapsule
- updateCell_fast_free(*args, **kwargs)
Overloaded function.
1. updateCell_fast_free(x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_free(theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(signed char *, const signed char, const signed char) --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CLogOddsGridMap3D_signed_char_t(pybind11_builtins.pybind11_object) |
| |
- Method resolution order:
- CLogOddsGridMap3D_signed_char_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, : mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t) -> mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::operator=(const struct mrpt::maps::CLogOddsGridMap3D<signed char> &) --> struct mrpt::maps::CLogOddsGridMap3D<signed char> &
- updateCell_fast_free(...)
- updateCell_fast_free(*args, **kwargs)
Overloaded function.
1. updateCell_fast_free(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_free(signed char *, const signed char, const signed char) --> void
2. updateCell_fast_free(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, x: int, y: int, z: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_free(const unsigned int, const unsigned int, const unsigned int, const signed char, const signed char) --> void
- updateCell_fast_occupied(...)
- updateCell_fast_occupied(*args, **kwargs)
Overloaded function.
1. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_occupied(signed char *, const signed char, const signed char) --> void
2. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, x: int, y: int, z: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_occupied(const unsigned int, const unsigned int, const unsigned int, const signed char, const signed char) --> void
Data descriptors defined here:
- m_grid
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CMetricMap(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.system.CObservable, mrpt.pymrpt.mrpt.Stringifyable, mrpt.pymrpt.mrpt.opengl.Visualizable) |
|
Declares a virtual base class for all metric maps storage classes.
In this class virtual methods are provided to allow the insertion
of any type of "CObservation" objects into the metric map, thus
updating the map (doesn't matter if it is a 2D/3D grid, a point map, etc.).
Observations don't include any information about the
robot pose, just the raw observation and information about
the sensor pose relative to the robot mobile base coordinates origin.
Note that all metric maps implement this mrpt::system::CObservable
interface,
emitting the following events:
- mrpt::obs::mrptEventMetricMapClear: Upon call of the ::clear() method.
- mrpt::obs::mrptEventMetricMapInsert: Upon insertion of an observation
that effectively modifies the map (e.g. inserting an image into a grid map
will NOT raise an event, inserting a laser scan will).
To check what observations are supported by each metric map, see
All derived class must implement a static class factory
`<metric_map_class>::MapDefinition()` that builds a default
TMetricMapInitializer
CObservation, CSensoryFrame, CMultiMetricMap |
|
- Method resolution order:
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CMetricMap, : mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt.pymrpt.mrpt.maps.CMetricMap
C++: mrpt::maps::CMetricMap::operator=(const class mrpt::maps::CMetricMap &) --> class mrpt::maps::CMetricMap &
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
Computes the ratio in [0,1] of correspondences between "this" and the
"otherMap" map, whose 6D pose relative to "this" is "otherMapPose"
In the case of a multi-metric map, this returns the average between the
maps. This method always return 0 for grid maps.
[IN] The other map to compute the matching with.
[IN] The 6D pose of the other map as seen from
"this".
[IN] Matching parameters
The matching ratio [0,1]
determineMatching2D
C++: mrpt::maps::CMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CMetricMap::isEmpty() const --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CMetricMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::CMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Static methods defined here:
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Returns a deep copy (clone) of the object, indepently of its class.
C++: mrpt::rtti::CObject::clone() const --> class mrpt::rtti::CObject *
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.Stringifyable:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.Stringifyable) -> str
Returns a human-friendly textual description of the object. For classes
with a large/complex internal state, only a summary should be returned
instead of the exhaustive enumeration of all data members.
C++: mrpt::Stringifyable::asString() const --> std::string
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.opengl.Visualizable, o: mrpt::opengl::CSetOfObjects) -> None
Inserts 3D primitives representing this object into the provided
container.
Note that the former contents of `o` are not cleared.
getVisualization()
C++: mrpt::opengl::Visualizable::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CMultiMetricMap(CMetricMap) |
|
This class stores any customizable set of metric maps.
The internal metric maps can be accessed directly by the user as smart
pointers with CMultiMetricMap::mapByIndex() or via `iterator`s.
The utility of this container is to operate on several maps simultaneously:
update them by inserting observations,
evaluate the likelihood of one observation by fusing (multiplying) the
likelihoods over the different maps, etc.
These kinds of metric maps can be kept inside (list may be
incomplete, refer to classes derived from mrpt::maps::CMetricMap):
- mrpt::maps::CSimplePointsMap: For 2D or 3D range scans, ...
- mrpt::maps::COccupancyGridMap2D: 2D, horizontal laser range
scans, at different altitudes.
- mrpt::maps::COccupancyGridMap3D: 3D occupancy voxel map.
- mrpt::maps::COctoMap: For 3D occupancy grids of variable resolution,
with octrees (based on the library `octomap`).
- mrpt::maps::CColouredOctoMap: The same than above, but nodes can store
RGB data appart from occupancy.
- mrpt::maps::CLandmarksMap: For visual landmarks,etc...
- mrpt::maps::CGasConcentrationGridMap2D: For gas concentration maps.
- mrpt::maps::CWirelessPowerGridMap2D: For wifi power maps.
- mrpt::maps::CBeaconMap: For range-only SLAM.
- mrpt::maps::CHeightGridMap2D: For elevation maps of height for each
(x,y) location (Digital elevation model, DEM)
- mrpt::maps::CHeightGridMap2D_MRF: DEMs as Markov Random Field (MRF)
- mrpt::maps::CReflectivityGridMap2D: For maps of "reflectivity" for
each (x,y) location.
- mrpt::maps::CColouredPointsMap: For point map with color.
- mrpt::maps::CWeightedPointsMap: For point map with weights (capable of
"fusing").
See CMultiMetricMap::setListOfMaps() for the method for initializing this
class programmatically.
See also TSetOfMetricMapInitializers::loadFromConfigFile for a template of
".ini"-like configuration
file that can be used to define which maps to create and all their
parameters.
Alternatively, the list of maps is public so it can be directly
manipulated/accessed in CMultiMetricMap::maps
Configuring the list of maps: Alternatives
--------------------------------------------
**Method #1: Using map definition structures**
**Method #2: Using a configuration file**
See TSetOfMetricMapInitializers::loadFromConfigFile() for details on expected
file format.
**Method #3: Manual manipulation**
[New in MRPT 1.3.0]: `likelihoodMapSelection`, which selected the map
to be used when
computing the likelihood of an observation, has been removed. Use the
`enableObservationLikelihood`
property of each individual map declaration.
[New in MRPT 1.3.0]: `enableInsertion_{pointsMap,...}` have been also
removed.
Use the `enableObservationInsertion` property of each map declaration.
This class belongs to [mrpt-slam] instead of [mrpt-maps] due to the
dependency on map classes in mrpt-vision.
CMetricMap |
|
- Method resolution order:
- CMultiMetricMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMultiMetricMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, initializers: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, arg0: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, arg0: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CMultiMetricMap::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, o: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> mrpt.pymrpt.mrpt.maps.CMultiMetricMap
Creates a deep copy
C++: mrpt::maps::CMultiMetricMap::operator=(const class mrpt::maps::CMultiMetricMap &) --> class mrpt::maps::CMultiMetricMap &
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> None
C++: mrpt::maps::CMultiMetricMap::auxParticleFilterCleanUp() --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CMultiMetricMap::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CMultiMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CMultiMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMultiMetricMap::getAsSimplePointsMap() const --> const class mrpt::maps::CSimplePointsMap *
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, outObj: mrpt::opengl::CSetOfObjects) -> None
C++: mrpt::maps::CMultiMetricMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap) -> bool
Returns true if **all** maps returns true in their isEmpty() method
C++: mrpt::maps::CMultiMetricMap::isEmpty() const --> bool
- mapByIndex(...)
- mapByIndex(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, idx: int) -> mrpt.pymrpt.mrpt.maps.CMetricMap
Gets the i-th map
std::runtime_error On out-of-bounds
C++: mrpt::maps::CMultiMetricMap::mapByIndex(size_t) const --> class std::shared_ptr<class mrpt::maps::CMetricMap>
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, filNamePrefix: str) -> None
C++: mrpt::maps::CMultiMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setListOfMaps(...)
- setListOfMaps(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMap, init: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
Sets the list of internal map according to the passed list of map
initializers (current maps will be deleted)
C++: mrpt::maps::CMultiMetricMap::setListOfMaps(const class mrpt::maps::TSetOfMetricMapInitializers &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CMultiMetricMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMultiMetricMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- maps
Methods inherited from CMetricMap:
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CMultiMetricMapPDF(mrpt.pymrpt.mrpt.serialization.CSerializable, mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t) |
|
Declares a class that represents a Rao-Blackwellized set of particles for
solving the SLAM problem (This class is the base of RBPF-SLAM applications).
This class is used internally by the map building algorithm in
"mrpt::slam::CMetricMapBuilderRBPF"
mrpt::slam::CMetricMapBuilderRBPF |
|
- Method resolution order:
- CMultiMetricMapPDF
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t
- mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t
- mrpt.pymrpt.mrpt.bayes.CParticleFilterCapable
- mrpt.pymrpt.mrpt.slam.PF_implementation_mrpt_maps_CRBPFParticleData_mrpt_maps_CMultiMetricMapPDF_mrpt_bayes_particle_storage_mode_POINTER_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMultiMetricMapPDF::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- PF_SLAM_computeObservationLikelihoodForParticle(...)
- PF_SLAM_computeObservationLikelihoodForParticle(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions, particleIndexForMap: int, observation: mrpt.pymrpt.mrpt.obs.CSensoryFrame, x: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Evaluate the observation likelihood for one particle at a given location
C++: mrpt::maps::CMultiMetricMapPDF::PF_SLAM_computeObservationLikelihoodForParticle(const struct mrpt::bayes::CParticleFilter::TParticleFilterOptions &, size_t, const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) const --> double
- PF_SLAM_implementation_custom_update_particle_with_new_pose(...)
- PF_SLAM_implementation_custom_update_particle_with_new_pose(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, particleData: mrpt.pymrpt.mrpt.maps.CRBPFParticleData, newPose: mrpt.pymrpt.mrpt.math.TPose3D) -> None
C++: mrpt::maps::CMultiMetricMapPDF::PF_SLAM_implementation_custom_update_particle_with_new_pose(class mrpt::maps::CRBPFParticleData *, const struct mrpt::math::TPose3D &) const --> void
- PF_SLAM_implementation_doWeHaveValidObservations(...)
- PF_SLAM_implementation_doWeHaveValidObservations(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, particles: List[mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, (mrpt::bayes::particle_storage_mode)1>], sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
C++: mrpt::maps::CMultiMetricMapPDF::PF_SLAM_implementation_doWeHaveValidObservations(const class std::deque<struct mrpt::bayes::CProbabilityParticle<class mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER> > &, const class mrpt::obs::CSensoryFrame *) const --> bool
- PF_SLAM_implementation_skipRobotMovement(...)
- PF_SLAM_implementation_skipRobotMovement(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> bool
C++: mrpt::maps::CMultiMetricMapPDF::PF_SLAM_implementation_skipRobotMovement() const --> bool
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, opts: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions, mapsInitializers: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, predictionOptions: mrpt::maps::CMultiMetricMapPDF::TPredictionParams) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, arg0: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, arg0: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, : mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF
C++: mrpt::maps::CMultiMetricMapPDF::operator=(const class mrpt::maps::CMultiMetricMapPDF &) --> class mrpt::maps::CMultiMetricMapPDF &
- clear(...)
- clear(*args, **kwargs)
Overloaded function.
1. clear(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, initialPose: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Clear all elements of the maps, and restore all paths to a single
starting pose
C++: mrpt::maps::CMultiMetricMapPDF::clear(const class mrpt::poses::CPose2D &) --> void
2. clear(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, initialPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
C++: mrpt::maps::CMultiMetricMapPDF::clear(const class mrpt::poses::CPose3D &) --> void
3. clear(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, prevMap: mrpt.pymrpt.mrpt.maps.CSimpleMap, currentPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Resets the map by loading an already-mapped map for past poses.
Current robot pose should be normally set to the last keyframe
in the simplemap.
C++: mrpt::maps::CMultiMetricMapPDF::clear(const class mrpt::maps::CSimpleMap &, const class mrpt::poses::CPose3D &) --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CMultiMetricMapPDF::clone() const --> class mrpt::rtti::CObject *
- getAveragedMetricMapEstimation(...)
- getAveragedMetricMapEstimation(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> mrpt.pymrpt.mrpt.maps.CMultiMetricMap
Returns the weighted averaged map based on the current best estimation.
If you need a persistent copy of this object, please use
"CSerializable::duplicate" and use the copy.
Almost 100% sure you would prefer the best current map, given by
getCurrentMostLikelyMetricMap()
C++: mrpt::maps::CMultiMetricMapPDF::getAveragedMetricMapEstimation() --> const class mrpt::maps::CMultiMetricMap *
- getCurrentEntropyOfPaths(...)
- getCurrentEntropyOfPaths(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> float
Returns the current entropy of paths, computed as the average entropy of
poses along the path, where entropy of each pose estimation is computed
as the entropy of the gaussian approximation covariance.
C++: mrpt::maps::CMultiMetricMapPDF::getCurrentEntropyOfPaths() --> double
- getCurrentJointEntropy(...)
- getCurrentJointEntropy(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> float
Returns the joint entropy estimation over paths and maps, acording to
"Information Gain-based Exploration Using" by C. Stachniss, G. Grissetti
and W.Burgard.
C++: mrpt::maps::CMultiMetricMapPDF::getCurrentJointEntropy() --> double
- getCurrentMostLikelyMetricMap(...)
- getCurrentMostLikelyMetricMap(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> mrpt.pymrpt.mrpt.maps.CMultiMetricMap
Returns a pointer to the current most likely map (associated to the most
likely particle)
C++: mrpt::maps::CMultiMetricMapPDF::getCurrentMostLikelyMetricMap() const --> const class mrpt::maps::CMultiMetricMap *
- getEstimatedPosePDF(...)
- getEstimatedPosePDF(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, out_estimation: mrpt.pymrpt.mrpt.poses.CPose3DPDFParticles) -> None
Returns the current estimate of the robot pose, as a particles PDF.
getEstimatedPosePDFAtTime
C++: mrpt::maps::CMultiMetricMapPDF::getEstimatedPosePDF(class mrpt::poses::CPose3DPDFParticles &) const --> void
- getEstimatedPosePDFAtTime(...)
- getEstimatedPosePDFAtTime(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, timeStep: int, out_estimation: mrpt.pymrpt.mrpt.poses.CPose3DPDFParticles) -> None
Returns the estimate of the robot pose as a particles PDF for the
instant of time "timeStep", from 0 to N-1.
getEstimatedPosePDF
C++: mrpt::maps::CMultiMetricMapPDF::getEstimatedPosePDFAtTime(size_t, class mrpt::poses::CPose3DPDFParticles &) const --> void
- getLastPose(...)
- getLastPose(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, i: int, pose_is_valid: bool) -> mrpt.pymrpt.mrpt.math.TPose3D
@{
C++: mrpt::maps::CMultiMetricMapPDF::getLastPose(size_t, bool &) const --> struct mrpt::math::TPose3D
- getNumberOfObservationsInSimplemap(...)
- getNumberOfObservationsInSimplemap(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> int
Get the number of CSensoryFrame inserted into the internal member SFs
C++: mrpt::maps::CMultiMetricMapPDF::getNumberOfObservationsInSimplemap() const --> size_t
- getPath(...)
- getPath(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, i: int, out_path: List[mrpt.pymrpt.mrpt.math.TPose3D]) -> None
Return the path (in absolute coordinate poses) for the i'th particle.
On index out of bounds
C++: mrpt::maps::CMultiMetricMapPDF::getPath(size_t, class std::deque<struct mrpt::math::TPose3D> &) const --> void
- insertObservation(...)
- insertObservation(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
Insert an observation to the map, at each particle's pose and to each
particle's metric map.
The SF to be inserted
true if any may was updated, false otherwise
C++: mrpt::maps::CMultiMetricMapPDF::insertObservation(class mrpt::obs::CSensoryFrame &) --> bool
- saveCurrentPathEstimationToTextFile(...)
- saveCurrentPathEstimationToTextFile(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF, fil: str) -> None
A logging utility: saves the current path estimation for each particle
in a text file (a row per particle, each 3-column-entry is a set
[x,y,phi], respectively).
C++: mrpt::maps::CMultiMetricMapPDF::saveCurrentPathEstimationToTextFile(const std::string &) --> void
- updateSensoryFrameSequence(...)
- updateSensoryFrameSequence(self: mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF) -> None
Update the poses estimation of the member "SFs" according to the current
path belief.
C++: mrpt::maps::CMultiMetricMapPDF::updateSensoryFrameSequence() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CMultiMetricMapPDF::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMultiMetricMapPDF::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- options
Data and other attributes defined here:
- TPredictionParams = <class 'mrpt.pymrpt.mrpt.maps.CMultiMetricMapPDF.TPredictionParams'>
- The struct for passing extra simulation parameters to the
prediction/update stage
when running a particle filter.
prediction_and_update
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t:
- clearParticles(...)
- clearParticles(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> None
C++: mrpt::bayes::CParticleFilterData<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>::clearParticles() --> void
Data descriptors inherited from mrpt.pymrpt.mrpt.bayes.CParticleFilterData_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t:
- m_particles
Methods inherited from mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t:
- ESS(...)
- ESS(*args, **kwargs)
Overloaded function.
1. ESS(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> float
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::ESS() const --> double
2. ESS(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> float
Returns the normalized ESS (Estimated Sample Size), in the range [0,1].
Note that you do NOT need to normalize the weights before calling this.
C++: mrpt::bayes::CParticleFilterCapable::ESS() const --> double
- derived(...)
- derived(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> mrpt::maps::CMultiMetricMapPDF
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::derived() --> class mrpt::maps::CMultiMetricMapPDF &
- fastDrawSample(...)
- fastDrawSample(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions) -> int
Draws a random sample from the particle filter, in such a way that each
particle has a probability proportional to its weight (in the standard PF
algorithm).
This method can be used to generate a variable number of m_particles
when resampling: to vary the number of m_particles in the filter.
See prepareFastDrawSample for more information, or the
*href="http://www.mrpt.org/Particle_Filters" >Particle Filter
tutorial.
NOTES:
- You MUST call "prepareFastDrawSample" ONCE before calling this
method. That method must be called after modifying the particle filter
(executing one step, resampling, etc...)
- This method returns ONE index for the selected ("drawn") particle,
in
the range [0,M-1]
- You do not need to call "normalizeWeights" before calling this.
prepareFastDrawSample
C++: mrpt::bayes::CParticleFilterCapable::fastDrawSample(const struct mrpt::bayes::CParticleFilter::TParticleFilterOptions &) const --> size_t
- getW(...)
- getW(*args, **kwargs)
Overloaded function.
1. getW(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, i: int) -> float
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::getW(size_t) const --> double
2. getW(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, i: int) -> float
Access to i'th particle (logarithm) weight, where first one is index 0.
C++: mrpt::bayes::CParticleFilterCapable::getW(size_t) const --> double
- normalizeWeights(...)
- normalizeWeights(*args, **kwargs)
Overloaded function.
1. normalizeWeights(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> float
2. normalizeWeights(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, out_max_log_w: float) -> float
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::normalizeWeights(double *) --> double
3. normalizeWeights(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterCapable) -> float
4. normalizeWeights(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, out_max_log_w: float) -> float
Normalize the (logarithmic) weights, such as the maximum weight is zero.
If provided, will return with the maximum log_w
before normalizing, such as new_weights = old_weights - max_log_w.
The max/min ratio of weights ("dynamic range")
C++: mrpt::bayes::CParticleFilterCapable::normalizeWeights(double *) --> double
- particlesCount(...)
- particlesCount(*args, **kwargs)
Overloaded function.
1. particlesCount(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> int
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::particlesCount() const --> size_t
2. particlesCount(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t) -> int
Get the m_particles count.
C++: mrpt::bayes::CParticleFilterCapable::particlesCount() const --> size_t
- performResampling(...)
- performResampling(*args, **kwargs)
Overloaded function.
1. performResampling(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterCapable, PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions) -> None
2. performResampling(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions, out_particle_count: int) -> None
Performs a resample of the m_particles, using the method selected in the
constructor.
After computing the surviving samples, this method internally calls
"performSubstitution" to actually perform the particle replacement.
This method is called automatically by CParticleFilter::execute,
andshould not be invoked manually normally.
To just obtaining the sequence of resampled indexes from a sequence of
weights, use "resample"
The desired number of output particles
after resampling; 0 means don't modify the current number.
resample
C++: mrpt::bayes::CParticleFilterCapable::performResampling(const struct mrpt::bayes::CParticleFilter::TParticleFilterOptions &, size_t) --> void
- prediction_and_update(...)
- prediction_and_update(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, action: mrpt.pymrpt.mrpt.obs.CActionCollection, observation: mrpt.pymrpt.mrpt.obs.CSensoryFrame, PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions) -> None
Performs the prediction stage of the Particle Filter.
This method simply selects the appropiate protected method according to
the particle filter algorithm to run.
prediction_and_update_pfStandardProposal,prediction_and_update_pfAuxiliaryPFStandard,prediction_and_update_pfOptimalProposal,prediction_and_update_pfAuxiliaryPFOptimal
C++: mrpt::bayes::CParticleFilterCapable::prediction_and_update(const class mrpt::obs::CActionCollection *, const class mrpt::obs::CSensoryFrame *, const struct mrpt::bayes::CParticleFilter::TParticleFilterOptions &) --> void
- setW(...)
- setW(*args, **kwargs)
Overloaded function.
1. setW(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, i: int, w: float) -> None
C++: mrpt::bayes::CParticleFilterDataImpl<mrpt::maps::CMultiMetricMapPDF, std::deque<mrpt::bayes::CProbabilityParticle<mrpt::maps::CRBPFParticleData, mrpt::bayes::particle_storage_mode::POINTER>>>::setW(size_t, double) --> void
2. setW(self: mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t, i: int, w: float) -> None
Modifies i'th particle (logarithm) weight, where first one is index 0.
C++: mrpt::bayes::CParticleFilterCapable::setW(size_t, double) --> void
Static methods inherited from mrpt.pymrpt.mrpt.bayes.CParticleFilterDataImpl_mrpt_maps_CMultiMetricMapPDF_std_deque_mrpt_bayes_CProbabilityParticle_mrpt_maps_CRBPFParticleData_mrpt_bayes_particle_storage_mode_POINTER_t:
- defaultEvaluator(...) from builtins.PyCapsule
- defaultEvaluator(PF_options: mrpt.pymrpt.mrpt.bayes.CParticleFilter.TParticleFilterOptions, obj: mrpt.pymrpt.mrpt.bayes.CParticleFilterCapable, index: int, action: capsule, observation: capsule) -> float
The default evaluator function, which simply returns the particle
weight.
The action and the observation are declared as "void*" for a greater
flexibility.
prepareFastDrawSample
C++: mrpt::bayes::CParticleFilterCapable::defaultEvaluator(const struct mrpt::bayes::CParticleFilter::TParticleFilterOptions &, const class mrpt::bayes::CParticleFilterCapable *, size_t, const void *, const void *) --> double
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COccupancyGridMap2D(CMetricMap, CLogOddsGridMap2D_signed_char_t) |
|
A class for storing an occupancy grid map.
COccupancyGridMap2D is a class for storing a metric map
representation in the form of a probabilistic occupancy
grid map: value of 0 means certainly occupied, 1 means
a certainly empty cell. Initially 0.5 means uncertainty.
The cells keep the log-odd representation of probabilities instead of the
probabilities themselves.
More details can be found at https://www.mrpt.org/Occupancy_Grids
The algorithm for updating the grid from a laser scanner can optionally take
into account the progressive widening of the beams, as
described in [this page](http://www.mrpt.org/Occupancy_Grids)
Some implemented methods are:
- Update of individual cells
- Insertion of observations
- Voronoi diagram and critical points (
- Saving and loading from/to a bitmap
- Laser scans simulation for the map contents
- Entropy and information methods (See computeEntropy) |
|
- Method resolution order:
- COccupancyGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- CLogOddsGridMap2D_signed_char_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COccupancyGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: float) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: float, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: float, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: float, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, min_x: float, max_x: float, min_y: float, max_y: float, resolution: float) -> None
7. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> None
8. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::COccupancyGridMap2D::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, : mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D
C++: mrpt::maps::COccupancyGridMap2D::operator=(const class mrpt::maps::COccupancyGridMap2D &) --> class mrpt::maps::COccupancyGridMap2D &
- buildVoronoiDiagram(...)
- buildVoronoiDiagram(*args, **kwargs)
Overloaded function.
1. buildVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, threshold: float, robot_size: float) -> None
2. buildVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, threshold: float, robot_size: float, x1: int) -> None
3. buildVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, threshold: float, robot_size: float, x1: int, x2: int) -> None
4. buildVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, threshold: float, robot_size: float, x1: int, x2: int, y1: int) -> None
5. buildVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, threshold: float, robot_size: float, x1: int, x2: int, y1: int, y2: int) -> None
Build the Voronoi diagram of the grid map.
The threshold for binarizing the map.
Size in "units" (meters) of robot, approx.
Left coordinate of area to be computed. Default, entire map.
Right coordinate of area to be computed. Default, entire map.
Top coordinate of area to be computed. Default, entire map.
Bottom coordinate of area to be computed. Default, entire map.
findCriticalPoints
C++: mrpt::maps::COccupancyGridMap2D::buildVoronoiDiagram(float, float, int, int, int, int) --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COccupancyGridMap2D::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::COccupancyGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeClearance(...)
- computeClearance(*args, **kwargs)
Overloaded function.
1. computeClearance(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int, cy: int, basis_x: int, basis_y: int, nBasis: int) -> int
2. computeClearance(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int, cy: int, basis_x: int, basis_y: int, nBasis: int, GetContourPoint: bool) -> int
Compute the clearance of a given cell, and returns its two first
basis (closest obstacle) points.Used to build Voronoi and critical
points.
The clearance of the cell, in 1/100 of "cell".
The cell index
The cell index
Target buffer for coordinates of basis, having a size of
two "ints".
Target buffer for coordinates of basis, having a size of
two "ints".
The number of found basis: Can be 0,1 or 2.
If "true" the basis are not returned, but the
closest free cells.Default at false.
Build_VoronoiDiagram
C++: mrpt::maps::COccupancyGridMap2D::computeClearance(int, int, int *, int *, int *, bool) const --> int
3. computeClearance(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, maxSearchDistance: float) -> float
An alternative method for computing the clearance of a given location
(in meters).
The clearance (distance to closest OCCUPIED cell), in meters.
C++: mrpt::maps::COccupancyGridMap2D::computeClearance(float, float, float) const --> float
- computeEntropy(...)
- computeEntropy(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, info: mrpt::maps::COccupancyGridMap2D::TEntropyInfo) -> None
Computes the entropy and related values of this grid map.
The entropy is computed as the summed entropy of each cell, taking them
as discrete random variables following a Bernoulli distribution:
The output information is returned here
C++: mrpt::maps::COccupancyGridMap2D::computeEntropy(struct mrpt::maps::COccupancyGridMap2D::TEntropyInfo &) const --> void
- computeLikelihoodField_II(...)
- computeLikelihoodField_II(*args, **kwargs)
Overloaded function.
1. computeLikelihoodField_II(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
2. computeLikelihoodField_II(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt.pymrpt.mrpt.maps.CPointsMap, relativePose: mrpt.pymrpt.mrpt.poses.CPose2D) -> float
Computes the likelihood [0,1] of a set of points, given the current grid
map as reference.
The points map
The relative pose of the points map in this map's
coordinates, or nullptr for (0,0,0).
See "likelihoodOptions" for configuration parameters.
C++: mrpt::maps::COccupancyGridMap2D::computeLikelihoodField_II(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose2D *) const --> double
- computeLikelihoodField_Thrun(...)
- computeLikelihoodField_Thrun(*args, **kwargs)
Overloaded function.
1. computeLikelihoodField_Thrun(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
2. computeLikelihoodField_Thrun(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt.pymrpt.mrpt.maps.CPointsMap, relativePose: mrpt.pymrpt.mrpt.poses.CPose2D) -> float
Computes the likelihood [0,1] of a set of points, given the current grid
map as reference.
The points map
The relative pose of the points map in this map's
coordinates, or nullptr for (0,0,0).
See "likelihoodOptions" for configuration parameters.
C++: mrpt::maps::COccupancyGridMap2D::computeLikelihoodField_Thrun(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose2D *) const --> double
- computePathCost(...)
- computePathCost(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x1: float, y1: float, x2: float, y2: float) -> float
Compute the 'cost' of traversing a segment of the map according to the
occupancy of traversed cells.
This returns '1-mean(traversed cells occupancy)', i.e. 0.5 for
unknown cells, 1 for a free path.
C++: mrpt::maps::COccupancyGridMap2D::computePathCost(float, float, float, float) const --> float
- copyMapContentFrom(...)
- copyMapContentFrom(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> None
copy the gridmap contents, but not all the options, from another map
instance
C++: mrpt::maps::COccupancyGridMap2D::copyMapContentFrom(const class mrpt::maps::COccupancyGridMap2D &) --> void
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
See the base class for more details: In this class it is implemented as
correspondences of the passed points map to occupied cells.
NOTICE: That the "z" dimension is ignored in the points. Clip the points
as appropiated if needed before calling this method.
computeMatching3DWith
C++: mrpt::maps::COccupancyGridMap2D::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- fill(...)
- fill(*args, **kwargs)
Overloaded function.
1. fill(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> None
2. fill(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, default_value: float) -> None
Fills all the cells with a default value.
C++: mrpt::maps::COccupancyGridMap2D::fill(float) --> void
- findCriticalPoints(...)
- findCriticalPoints(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, filter_distance: float) -> None
Builds a list with the critical points from Voronoi diagram, which must
must be built before calling this method.
The minimum distance between two critical points.
buildVoronoiDiagram
C++: mrpt::maps::COccupancyGridMap2D::findCriticalPoints(float) --> void
- getArea(...)
- getArea(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the area of the gridmap, in square meters
C++: mrpt::maps::COccupancyGridMap2D::getArea() const --> double
- getAsImage(...)
- getAsImage(*args, **kwargs)
Overloaded function.
1. getAsImage(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage) -> None
2. getAsImage(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool) -> None
3. getAsImage(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool, forceRGB: bool) -> None
4. getAsImage(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool, forceRGB: bool, tricolor: bool) -> None
Returns the grid as a 8-bit graylevel image, where each pixel is a cell
(output image is RGB only if forceRGB is true)
If "tricolor" is true, only three gray levels will appear in the image:
gray for unobserved cells, and black/white for occupied/empty cells
respectively.
getAsImageFiltered
C++: mrpt::maps::COccupancyGridMap2D::getAsImage(class mrpt::img::CImage &, bool, bool, bool) const --> void
- getAsImageFiltered(...)
- getAsImageFiltered(*args, **kwargs)
Overloaded function.
1. getAsImageFiltered(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage) -> None
2. getAsImageFiltered(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool) -> None
3. getAsImageFiltered(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool, forceRGB: bool) -> None
Returns the grid as a 8-bit graylevel image, where each pixel is a cell
(output image is RGB only if forceRGB is true) - This method filters the
image for easy feature detection
If "tricolor" is true, only three gray levels will appear in the image:
gray for unobserved cells, and black/white for occupied/empty cells
respectively.
getAsImage
C++: mrpt::maps::COccupancyGridMap2D::getAsImageFiltered(class mrpt::img::CImage &, bool, bool) const --> void
- getAsPointCloud(...)
- getAsPointCloud(*args, **kwargs)
Overloaded function.
1. getAsPointCloud(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt::maps::CSimplePointsMap) -> None
2. getAsPointCloud(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, pm: mrpt::maps::CSimplePointsMap, occup_threshold: float) -> None
Get a point cloud with all (border) occupied cells as points
C++: mrpt::maps::COccupancyGridMap2D::getAsPointCloud(class mrpt::maps::CSimplePointsMap &, const float) const --> void
- getBasisCell(...)
- getBasisCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: int, y: int) -> int
Reads a cell in the "basis" maps.Used for Voronoi calculation
C++: mrpt::maps::COccupancyGridMap2D::getBasisCell(int, int) const --> unsigned char
- getBasisMap(...)
- getBasisMap(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> mrpt.pymrpt.mrpt.containers.CDynamicGrid_unsigned_char_t
Return the auxiliary "basis" map built while building the Voronoi
diagram
buildVoronoiDiagram
C++: mrpt::maps::COccupancyGridMap2D::getBasisMap() const --> const class mrpt::containers::CDynamicGrid<unsigned char> &
- getCell(...)
- getCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: int, y: int) -> float
Read the real valued [0,1] contents of a cell, given its index
C++: mrpt::maps::COccupancyGridMap2D::getCell(int, int) const --> float
- getPos(...)
- getPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float) -> float
Read the real valued [0,1] contents of a cell, given its coordinates
C++: mrpt::maps::COccupancyGridMap2D::getPos(float, float) const --> float
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the resolution of the grid map
C++: mrpt::maps::COccupancyGridMap2D::getResolution() const --> float
- getRow(...)
- getRow(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cy: int) -> int
Access to a "row": mainly used for drawing grid as a bitmap efficiently,
do not use it normally
C++: mrpt::maps::COccupancyGridMap2D::getRow(int) --> signed char *
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> int
Returns the horizontal size of grid map in cells count
C++: mrpt::maps::COccupancyGridMap2D::getSizeX() const --> unsigned int
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> int
Returns the vertical size of grid map in cells count
C++: mrpt::maps::COccupancyGridMap2D::getSizeY() const --> unsigned int
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D plane with its texture being the occupancy grid and
transparency proportional to "uncertainty" (i.e. a value of 0.5 is fully
transparent)
C++: mrpt::maps::COccupancyGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- getVoroniClearance(...)
- getVoroniClearance(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int, cy: int) -> int
Reads a the clearance of a cell (in centimeters), after building the
Voronoi diagram with
C++: mrpt::maps::COccupancyGridMap2D::getVoroniClearance(int, int) const --> uint16_t
- getVoronoiDiagram(...)
- getVoronoiDiagram(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> mrpt.pymrpt.mrpt.containers.CDynamicGrid_unsigned_short_t
Return the Voronoi diagram; each cell contains the distance to its
closer obstacle, or 0 if not part of the Voronoi diagram
buildVoronoiDiagram
C++: mrpt::maps::COccupancyGridMap2D::getVoronoiDiagram() const --> const class mrpt::containers::CDynamicGrid<unsigned short> &
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the "x" coordinate of right side of grid map
C++: mrpt::maps::COccupancyGridMap2D::getXMax() const --> float
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the "x" coordinate of left side of grid map
C++: mrpt::maps::COccupancyGridMap2D::getXMin() const --> float
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the "y" coordinate of bottom side of grid map
C++: mrpt::maps::COccupancyGridMap2D::getYMax() const --> float
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> float
Returns the "y" coordinate of top side of grid map
C++: mrpt::maps::COccupancyGridMap2D::getYMin() const --> float
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int) -> float
Transform a cell index into a coordinate value
C++: mrpt::maps::COccupancyGridMap2D::idx2x(size_t) const --> float
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cy: int) -> float
C++: mrpt::maps::COccupancyGridMap2D::idx2y(size_t) const --> float
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D) -> bool
Returns true upon map construction or after calling clear(), the return
changes to false upon successful insertObservation() or any other
method to load data in the map.
C++: mrpt::maps::COccupancyGridMap2D::isEmpty() const --> bool
- isStaticCell(...)
- isStaticCell(*args, **kwargs)
Overloaded function.
1. isStaticCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int, cy: int) -> bool
2. isStaticCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, cx: int, cy: int, threshold: float) -> bool
C++: mrpt::maps::COccupancyGridMap2D::isStaticCell(int, int, float) const --> bool
- isStaticPos(...)
- isStaticPos(*args, **kwargs)
Overloaded function.
1. isStaticPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float) -> bool
2. isStaticPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, threshold: float) -> bool
Returns "true" if cell is "static", i.e.if its occupancy is below a
given threshold
C++: mrpt::maps::COccupancyGridMap2D::isStaticPos(float, float, float) const --> bool
- laserScanSimulator(...)
- laserScanSimulator(*args, **kwargs)
Overloaded function.
1. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
2. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float) -> None
3. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, N: int) -> None
4. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, N: int, noiseStd: float) -> None
5. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, N: int, noiseStd: float, decimation: int) -> None
6. laserScanSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_Scan: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, N: int, noiseStd: float, decimation: int, angleNoiseStd: float) -> None
Simulates a laser range scan into the current grid map.
The simulated scan is stored in a CObservation2DRangeScan object, which
is also used
to pass some parameters: all previously stored characteristics (as
aperture,...) are
taken into account for simulation. Only a few more parameters are
needed. Additive gaussian noise can be optionally added to the simulated
scan.
[IN/OUT] This must be filled with desired parameters
before calling, and will contain the scan samples on return.
[IN] The robot pose in this map coordinates. Recall that
sensor pose relative to this robot pose must be specified in the
observation object.
[IN] The minimum occupancy threshold to consider a cell
to be occupied (Default: 0.5f)
[IN] The count of range scan "rays", by default to 361.
[IN] The standard deviation of measurement noise. If not
desired, set to 0.
[IN] The rays that will be simulated are at indexes: 0,
D, 2D, 3D, ... Default is D=1
[IN] The sigma of an optional Gaussian noise added
to the angles at which ranges are measured (in radians).
laserScanSimulatorWithUncertainty(), sonarSimulator(),
COccupancyGridMap2D::RAYTRACE_STEP_SIZE_IN_CELL_UNITS
C++: mrpt::maps::COccupancyGridMap2D::laserScanSimulator(class mrpt::obs::CObservation2DRangeScan &, const class mrpt::poses::CPose2D &, float, size_t, float, unsigned int, float) const --> void
- laserScanSimulatorWithUncertainty(...)
- laserScanSimulatorWithUncertainty(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, in_params: mrpt::maps::COccupancyGridMap2D::TLaserSimulUncertaintyParams, out_results: mrpt::maps::COccupancyGridMap2D::TLaserSimulUncertaintyResult) -> None
Like laserScanSimulatorWithUncertainty() (see it for a discussion of
most parameters) but taking into account
the robot pose uncertainty and generating a vector of predicted
variances for each ray.
Range uncertainty includes both, sensor noise and large non-linear
effects caused by borders and discontinuities in the environment
as seen from different robot poses.
[IN] Input settings. See TLaserSimulUncertaintyParams
[OUT] Output range + uncertainty.
laserScanSimulator(),
COccupancyGridMap2D::RAYTRACE_STEP_SIZE_IN_CELL_UNITS
C++: mrpt::maps::COccupancyGridMap2D::laserScanSimulatorWithUncertainty(const struct mrpt::maps::COccupancyGridMap2D::TLaserSimulUncertaintyParams &, struct mrpt::maps::COccupancyGridMap2D::TLaserSimulUncertaintyResult &) const --> void
- loadFromBitmap(...)
- loadFromBitmap(*args, **kwargs)
Overloaded function.
1. loadFromBitmap(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, resolution: float) -> bool
2. loadFromBitmap(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, resolution: float, origin: mrpt::math::TPoint2D_<double>) -> bool
Load the gridmap from a image in a file (the format can be any supported
by CImage::loadFromFile).
See loadFromBitmapFile() for the meaning of parameters
C++: mrpt::maps::COccupancyGridMap2D::loadFromBitmap(const class mrpt::img::CImage &, float, const struct mrpt::math::TPoint2D_<double> &) --> bool
- loadFromBitmapFile(...)
- loadFromBitmapFile(*args, **kwargs)
Overloaded function.
1. loadFromBitmapFile(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, file: str, resolution: float) -> bool
2. loadFromBitmapFile(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, file: str, resolution: float, origin: mrpt::math::TPoint2D_<double>) -> bool
Load the gridmap from a image in a file (the format can be any supported
by CImage::loadFromFile).
The file to be loaded.
The size of a pixel (cell), in meters. Recall cells are
always squared, so just a dimension is needed.
The `x` (0=first, increases left to right on the
image) and `y` (0=first, increases BOTTOM upwards on the image)
coordinates for the pixel which will be taken at the origin of map
coordinates (0,0). (Default=center of the image)
False on any
error.
loadFromBitmap
C++: mrpt::maps::COccupancyGridMap2D::loadFromBitmapFile(const std::string &, float, const struct mrpt::math::TPoint2D_<double> &) --> bool
- loadFromROSMapServerYAML(...)
- loadFromROSMapServerYAML(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, yamlFilePath: str) -> bool
Loads this gridmap from a .yaml file and an accompanying image file
given in the
[map_server YAML](http://wiki.ros.org/map_server#YAML_format) file
format.
Absolute or relative path to the `.yaml` file.
false on error, true on success.
FromROSMapServerYAML()
C++: mrpt::maps::COccupancyGridMap2D::loadFromROSMapServerYAML(const std::string &) --> bool
- resizeGrid(...)
- resizeGrid(*args, **kwargs)
Overloaded function.
1. resizeGrid(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float) -> None
2. resizeGrid(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, new_cells_default_value: float) -> None
3. resizeGrid(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, new_cells_default_value: float, additionalMargin: bool) -> None
Change the size of gridmap, maintaining previous contents.
The "x" coordinates of new left most side of grid.
The "x" coordinates of new right most side of grid.
The "y" coordinates of new top most side of grid.
The "y" coordinates of new bottom most side of grid.
The value of the new cells, tipically 0.5.
If set to true (default), an additional margin of
a few meters will be added to the grid, ONLY if the new coordinates are
larger than current ones.
setSize
C++: mrpt::maps::COccupancyGridMap2D::resizeGrid(float, float, float, float, float, bool) --> void
- saveAsBitmapFile(...)
- saveAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, file: str) -> bool
Saves the gridmap as a graphical file (BMP,PNG,...).
The format will be derived from the file extension (see
CImage::saveToFile )
False on any error.
C++: mrpt::maps::COccupancyGridMap2D::saveAsBitmapFile(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::COccupancyGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setBasisCell(...)
- setBasisCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: int, y: int, value: int) -> None
Change a cell in the "basis" maps.Used for Voronoi calculation
C++: mrpt::maps::COccupancyGridMap2D::setBasisCell(int, int, uint8_t) --> void
- setCell(...)
- setCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: int, y: int, value: float) -> None
Change the contents [0,1] of a cell, given its index
C++: mrpt::maps::COccupancyGridMap2D::setCell(int, int, float) --> void
- setPos(...)
- setPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, value: float) -> None
Change the contents [0,1] of a cell, given its coordinates
C++: mrpt::maps::COccupancyGridMap2D::setPos(float, float, float) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, default_value: float) -> None
Change the size of gridmap, erasing all its previous contents.
The "x" coordinates of left most side of grid.
The "x" coordinates of right most side of grid.
The "y" coordinates of top most side of grid.
The "y" coordinates of bottom most side of grid.
The new size of cells.
The value of cells, tipically 0.5.
ResizeGrid
C++: mrpt::maps::COccupancyGridMap2D::setSize(float, float, float, float, float, float) --> void
- simulateScanRay(...)
- simulateScanRay(*args, **kwargs)
Overloaded function.
1. simulateScanRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, angle_direction: float, out_range: float, out_valid: bool, max_range_meters: float) -> None
2. simulateScanRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, angle_direction: float, out_range: float, out_valid: bool, max_range_meters: float, threshold_free: float) -> None
3. simulateScanRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, angle_direction: float, out_range: float, out_valid: bool, max_range_meters: float, threshold_free: float, noiseStd: float) -> None
4. simulateScanRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, y: float, angle_direction: float, out_range: float, out_valid: bool, max_range_meters: float, threshold_free: float, noiseStd: float, angleNoiseStd: float) -> None
Simulate just one "ray" in the grid map. This method is used internally
to sonarSimulator and laserScanSimulator.
COccupancyGridMap2D::RAYTRACE_STEP_SIZE_IN_CELL_UNITS
C++: mrpt::maps::COccupancyGridMap2D::simulateScanRay(const double, const double, const double, float &, bool &, const double, const float, const double, const double) const --> void
- sonarSimulator(...)
- sonarSimulator(*args, **kwargs)
Overloaded function.
1. sonarSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_observation: mrpt.pymrpt.mrpt.obs.CObservationRange, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
2. sonarSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_observation: mrpt.pymrpt.mrpt.obs.CObservationRange, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float) -> None
3. sonarSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_observation: mrpt.pymrpt.mrpt.obs.CObservationRange, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, rangeNoiseStd: float) -> None
4. sonarSimulator(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, inout_observation: mrpt.pymrpt.mrpt.obs.CObservationRange, robotPose: mrpt.pymrpt.mrpt.poses.CPose2D, threshold: float, rangeNoiseStd: float, angleNoiseStd: float) -> None
Simulates the observations of a sonar rig into the current grid map.
The simulated ranges are stored in a CObservationRange object, which is
also used
to pass in some needed parameters, as the poses of the sonar sensors
onto the mobile robot.
[IN/OUT] This must be filled with desired
parameters before calling, and will contain the simulated ranges on
return.
[IN] The robot pose in this map coordinates. Recall that
sensor pose relative to this robot pose must be specified in the
observation object.
[IN] The minimum occupancy threshold to consider a cell
to be occupied (Default: 0.5f)
[IN] The standard deviation of measurement noise. If
not desired, set to 0.
[IN] The sigma of an optional Gaussian noise added
to the angles at which ranges are measured (in radians).
laserScanSimulator(),
COccupancyGridMap2D::RAYTRACE_STEP_SIZE_IN_CELL_UNITS
C++: mrpt::maps::COccupancyGridMap2D::sonarSimulator(class mrpt::obs::CObservationRange &, const class mrpt::poses::CPose2D &, float, float, float) const --> void
- subSample(...)
- subSample(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, downRatio: int) -> None
Performs a downsampling of the gridmap, by a given factor:
resolution/=ratio
C++: mrpt::maps::COccupancyGridMap2D::subSample(int) --> void
- updateCell(...)
- updateCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: int, y: int, v: float) -> None
Performs the Bayesian fusion of a new observation of a cell
updateInfoChangeOnly, updateCell_fast_occupied, updateCell_fast_free
C++: mrpt::maps::COccupancyGridMap2D::updateCell(int, int, float) --> void
- x2idx(...)
- x2idx(*args, **kwargs)
Overloaded function.
1. x2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float) -> int
Transform a coordinate value into a cell index
C++: mrpt::maps::COccupancyGridMap2D::x2idx(float) const --> int
2. x2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float) -> int
C++: mrpt::maps::COccupancyGridMap2D::x2idx(double) const --> int
3. x2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, x: float, xmin: float) -> int
Transform a coordinate value into a cell index, using a diferent "x_min"
value
C++: mrpt::maps::COccupancyGridMap2D::x2idx(float, float) const --> int
- y2idx(...)
- y2idx(*args, **kwargs)
Overloaded function.
1. y2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, y: float) -> int
C++: mrpt::maps::COccupancyGridMap2D::y2idx(float) const --> int
2. y2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, y: float) -> int
C++: mrpt::maps::COccupancyGridMap2D::y2idx(double) const --> int
3. y2idx(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, y: float, ymin: float) -> int
C++: mrpt::maps::COccupancyGridMap2D::y2idx(float, float) const --> int
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COccupancyGridMap2D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- FromROSMapServerYAML(...) from builtins.PyCapsule
- FromROSMapServerYAML(yamlFilePath: str) -> mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D
Creates a gridmap from a .yaml file and an accompanying image file
given in the
[map_server YAML](http://wiki.ros.org/map_server#YAML_format) file
format.
Absolute or relative path to the `.yaml` file.
loadFromROSMapServerYAML()
std::exception On error loading or parsing the files.
C++: mrpt::maps::COccupancyGridMap2D::FromROSMapServerYAML(const std::string &) --> class mrpt::maps::COccupancyGridMap2D
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COccupancyGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
- l2p(...) from builtins.PyCapsule
- l2p(l: int) -> float
Scales an integer representation of the log-odd into a real valued
probability in [0,1], using p=exp(l)/(1+exp(l))
C++: mrpt::maps::COccupancyGridMap2D::l2p(const signed char) --> float
- l2p_255(...) from builtins.PyCapsule
- l2p_255(l: int) -> int
Scales an integer representation of the log-odd into a linear scale
[0,255], using p=exp(l)/(1+exp(l))
C++: mrpt::maps::COccupancyGridMap2D::l2p_255(const signed char) --> uint8_t
- p2l(...) from builtins.PyCapsule
- p2l(p: float) -> int
Scales a real valued probability in [0,1] to an integer representation
of: log(p)-log(1-p) in the valid range of cellType
C++: mrpt::maps::COccupancyGridMap2D::p2l(const float) --> signed char
- saveAsBitmapTwoMapsWithCorrespondences(...) from builtins.PyCapsule
- saveAsBitmapTwoMapsWithCorrespondences(fileName: str, m1: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, m2: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, corrs: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t) -> bool
Saves a composite image with two gridmaps and lines representing a set
of correspondences between them.
saveAsEMFTwoMapsWithCorrespondences
False on any error.
C++: mrpt::maps::COccupancyGridMap2D::saveAsBitmapTwoMapsWithCorrespondences(const std::string &, const class mrpt::maps::COccupancyGridMap2D *, const class mrpt::maps::COccupancyGridMap2D *, const class mrpt::tfest::TMatchingPairListTempl<float> &) --> bool
- saveAsEMFTwoMapsWithCorrespondences(...) from builtins.PyCapsule
- saveAsEMFTwoMapsWithCorrespondences(fileName: str, m1: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, m2: mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D, corrs: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t) -> bool
Saves a composite image with two gridmaps and numbers for the
correspondences between them.
saveAsBitmapTwoMapsWithCorrespondences
False on any error.
C++: mrpt::maps::COccupancyGridMap2D::saveAsEMFTwoMapsWithCorrespondences(const std::string &, const class mrpt::maps::COccupancyGridMap2D *, const class mrpt::maps::COccupancyGridMap2D *, const class mrpt::tfest::TMatchingPairListTempl<float> &) --> bool
Data descriptors defined here:
- CriticalPointsList
- insertionOptions
- likelihoodOptions
- likelihoodOutputs
- updateInfoChangeOnly
Data and other attributes defined here:
- TCriticalPointsList = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TCriticalPointsList'>
- The structure used to store the set of Voronoi diagram
critical points.
findCriticalPoints
- TEntropyInfo = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TEntropyInfo'>
- Used for returning entropy related information
computeEntropy
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoGridMap
- TLaserSimulUncertaintyMethod = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLaserSimulUncertaintyMethod'>
- TLaserSimulUncertaintyParams = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLaserSimulUncertaintyParams'>
- Input params for laserScanSimulatorWithUncertainty()
- TLaserSimulUncertaintyResult = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLaserSimulUncertaintyResult'>
- Output params for laserScanSimulatorWithUncertainty()
- TLikelihoodMethod = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLikelihoodMethod'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLikelihoodOptions'>
- With this struct options are provided to the observation likelihood
computation process
- TLikelihoodOutput = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TLikelihoodOutput'>
- Some members of this struct will contain intermediate or output data
after calling "computeObservationLikelihood" for some likelihood
functions
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TMapDefinitionBase'>
- TUpdateCellsInfoChangeOnly = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap2D.TUpdateCellsInfoChangeOnly'>
- An internal structure for storing data related to counting the new
information apported by some observation
- lmCellsDifference = <TLikelihoodMethod.lmCellsDifference: 3>
- lmConsensus = <TLikelihoodMethod.lmConsensus: 2>
- lmConsensusOWA = <TLikelihoodMethod.lmConsensusOWA: 6>
- lmLikelihoodField_II = <TLikelihoodMethod.lmLikelihoodField_II: 5>
- lmLikelihoodField_Thrun = <TLikelihoodMethod.lmLikelihoodField_Thrun: 4>
- lmMeanInformation = <TLikelihoodMethod.lmMeanInformation: 0>
- lmRayTracing = <TLikelihoodMethod.lmRayTracing: 1>
- sumMonteCarlo = <TLaserSimulUncertaintyMethod.sumMonteCarlo: 1>
- sumUnscented = <TLaserSimulUncertaintyMethod.sumUnscented: 0>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from CLogOddsGridMap2D_signed_char_t:
- updateCell_fast_occupied(...)
- updateCell_fast_occupied(*args, **kwargs)
Overloaded function.
1. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(signed char *, const signed char, const signed char) --> void
Static methods inherited from CLogOddsGridMap2D_signed_char_t:
- updateCell_fast_free(...) from builtins.PyCapsule
- updateCell_fast_free(*args, **kwargs)
Overloaded function.
1. updateCell_fast_free(x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_free(theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(signed char *, const signed char, const signed char) --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COccupancyGridMap3D(CMetricMap, CLogOddsGridMap3D_signed_char_t) |
|
A 3D occupancy grid map with a regular, even distribution of voxels.
This is a faster alternative to COctoMap, but use with caution with limited
map extensions, since it could easily exaust available memory.
Each voxel follows a Bernoulli probability distribution: a value of 0 means
certainly occupied, 1 means a certainly empty voxel. Initially 0.5 means
uncertainty. |
|
- Method resolution order:
- COccupancyGridMap3D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- CLogOddsGridMap3D_signed_char_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COccupancyGridMap3D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, arg0: mrpt::math::TPoint3D_<double>) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, arg0: mrpt::math::TPoint3D_<double>, arg1: mrpt::math::TPoint3D_<double>) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, corner_min: mrpt::math::TPoint3D_<double>, corner_max: mrpt::math::TPoint3D_<double>, resolution: float) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> str
Returns a short description of the map.
C++: mrpt::maps::COccupancyGridMap3D::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, : mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D
C++: mrpt::maps::COccupancyGridMap3D::operator=(const class mrpt::maps::COccupancyGridMap3D &) --> class mrpt::maps::COccupancyGridMap3D &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COccupancyGridMap3D::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::COccupancyGridMap3D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
See docs in base class: in this class this always returns 0
C++: mrpt::maps::COccupancyGridMap3D::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- fill(...)
- fill(*args, **kwargs)
Overloaded function.
1. fill(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> None
2. fill(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, default_value: float) -> None
Fills all the voxels with a default value.
C++: mrpt::maps::COccupancyGridMap3D::fill(float) --> void
- getAsOctoMapVoxels(...)
- getAsOctoMapVoxels(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, gl_obj: mrpt.pymrpt.mrpt.opengl.COctoMapVoxels) -> None
renderingOptions
C++: mrpt::maps::COccupancyGridMap3D::getAsOctoMapVoxels(class mrpt::opengl::COctoMapVoxels &) const --> void
- getCellFreeness(...)
- getCellFreeness(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, cx: int, cy: int, cz: int) -> float
Read the real valued [0,1] (0:occupied, 1:free) contents of a voxel,
given its index
C++: mrpt::maps::COccupancyGridMap3D::getCellFreeness(unsigned int, unsigned int, unsigned int) const --> float
- getFreenessByPos(...)
- getFreenessByPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, x: float, y: float, z: float) -> float
Read the real valued [0,1] contents of a voxel, given its coordinates
C++: mrpt::maps::COccupancyGridMap3D::getFreenessByPos(float, float, float) const --> float
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map.
renderingOptions
C++: mrpt::maps::COccupancyGridMap3D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertPointCloud(...)
- insertPointCloud(*args, **kwargs)
Overloaded function.
1. insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, sensorCenter: mrpt::math::TPoint3D_<double>, pts: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, sensorCenter: mrpt::math::TPoint3D_<double>, pts: mrpt.pymrpt.mrpt.maps.CPointsMap, maxValidRange: float) -> None
Calls insertRay() for each point in the point cloud, using as sensor
central point (the origin of all rays), the given `sensorCenter`.
If a point has larger distance from
`sensorCenter` than `maxValidRange`, it will be considered a non-echo,
and NO occupied voxel will be created at the end of the segment.
insertionOptions parameters are observed in this method.
C++: mrpt::maps::COccupancyGridMap3D::insertPointCloud(const struct mrpt::math::TPoint3D_<double> &, const class mrpt::maps::CPointsMap &, const float) --> void
- insertRay(...)
- insertRay(*args, **kwargs)
Overloaded function.
1. insertRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, sensor: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>) -> None
2. insertRay(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, sensor: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, endIsOccupied: bool) -> None
Increases the freeness of a ray segment, and the occupancy of the voxel
at its end point (unless endIsOccupied=false).
Normally, users would prefer the higher-level method
CMetricMap::insertObservation()
C++: mrpt::maps::COccupancyGridMap3D::insertRay(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, bool) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D) -> bool
Returns true upon map construction or after calling clear(), the return
changes to false upon successful insertObservation() or any other
method to load data in the map.
C++: mrpt::maps::COccupancyGridMap3D::isEmpty() const --> bool
- resizeGrid(...)
- resizeGrid(*args, **kwargs)
Overloaded function.
1. resizeGrid(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, corner_min: mrpt::math::TPoint3D_<double>, corner_max: mrpt::math::TPoint3D_<double>) -> None
2. resizeGrid(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, corner_min: mrpt::math::TPoint3D_<double>, corner_max: mrpt::math::TPoint3D_<double>, new_voxels_default_value: float) -> None
Change the size of gridmap, maintaining previous contents.
Value of new voxels, tipically 0.5
setSize()
C++: mrpt::maps::COccupancyGridMap3D::resizeGrid(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, float) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, f: str) -> None
C++: mrpt::maps::COccupancyGridMap3D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setCellFreeness(...)
- setCellFreeness(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, cx: int, cy: int, cz: int, value: float) -> None
Change the contents [0,1] (0:occupied, 1:free) of a voxel, given its
index.
C++: mrpt::maps::COccupancyGridMap3D::setCellFreeness(unsigned int, unsigned int, unsigned int, float) --> void
- setFreenessByPos(...)
- setFreenessByPos(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, x: float, y: float, z: float, value: float) -> None
Change the contents [0,1] of a voxel, given its coordinates
C++: mrpt::maps::COccupancyGridMap3D::setFreenessByPos(float, float, float, float) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, corner_min: mrpt::math::TPoint3D_<double>, corner_max: mrpt::math::TPoint3D_<double>, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, corner_min: mrpt::math::TPoint3D_<double>, corner_max: mrpt::math::TPoint3D_<double>, resolution: float, default_value: float) -> None
Change the size of gridmap, erasing all its previous contents.
The new size of voxels.
The value of voxels, tipically 0.5.
ResizeGrid
C++: mrpt::maps::COccupancyGridMap3D::setSize(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, double, float) --> void
- updateCell(...)
- updateCell(self: mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D, cx_idx: int, cy_idx: int, cz_idx: int, v: float) -> None
Performs the Bayesian fusion of a new observation of a cell
updateInfoChangeOnly, updateCell_fast_occupied, updateCell_fast_free
C++: mrpt::maps::COccupancyGridMap3D::updateCell(int, int, int, float) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COccupancyGridMap3D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COccupancyGridMap3D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
- l2p(...) from builtins.PyCapsule
- l2p(l: int) -> float
Scales an integer representation of the log-odd into a real valued
probability in [0,1], using p=exp(l)/(1+exp(l))
C++: mrpt::maps::COccupancyGridMap3D::l2p(const signed char) --> float
- l2p_255(...) from builtins.PyCapsule
- l2p_255(l: int) -> int
Scales an integer representation of the log-odd into a linear scale
[0,255], using p=exp(l)/(1+exp(l))
C++: mrpt::maps::COccupancyGridMap3D::l2p_255(const signed char) --> uint8_t
- p2l(...) from builtins.PyCapsule
- p2l(p: float) -> int
Scales a real valued probability in [0,1] to an integer representation
of: log(p)-log(1-p) in the valid range of voxelType
C++: mrpt::maps::COccupancyGridMap3D::p2l(const float) --> signed char
Data descriptors defined here:
- insertionOptions
- likelihoodOptions
- renderingOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoGridMap
- TLikelihoodMethod = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TLikelihoodMethod'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TLikelihoodOptions'>
- With this struct options are provided to the observation likelihood
computation process
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TMapDefinitionBase'>
- TRenderingOptions = <class 'mrpt.pymrpt.mrpt.maps.COccupancyGridMap3D.TRenderingOptions'>
- Options for the conversion of a mrpt::maps::COccupancyGridMap3D into a
mrpt::opengl::COctoMapVoxels
- lmLikelihoodField_Thrun = <TLikelihoodMethod.lmLikelihoodField_Thrun: 0>
- lmRayTracing = <TLikelihoodMethod.lmRayTracing: 1>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from CLogOddsGridMap3D_signed_char_t:
- updateCell_fast_free(...)
- updateCell_fast_free(*args, **kwargs)
Overloaded function.
1. updateCell_fast_free(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_free(signed char *, const signed char, const signed char) --> void
2. updateCell_fast_free(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, x: int, y: int, z: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_free(const unsigned int, const unsigned int, const unsigned int, const signed char, const signed char) --> void
- updateCell_fast_occupied(...)
- updateCell_fast_occupied(*args, **kwargs)
Overloaded function.
1. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_occupied(signed char *, const signed char, const signed char) --> void
2. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap3D_signed_char_t, x: int, y: int, z: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap3D<signed char>::updateCell_fast_occupied(const unsigned int, const unsigned int, const unsigned int, const signed char, const signed char) --> void
Data descriptors inherited from CLogOddsGridMap3D_signed_char_t:
- m_grid
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COctoMap(COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) |
|
A three-dimensional probabilistic occupancy grid, implemented as an
octo-tree with the "octomap" C++ library.
This version only stores occupancy information at each octree node. See the
base class mrpt::maps::COctoMapBase.
CMetricMap, the example in "MRPT/samples/octomap_simple" |
|
- Method resolution order:
- COctoMap
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COctoMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.COctoMap, resolution: float) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.COctoMap, arg0: mrpt.pymrpt.mrpt.maps.COctoMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.COctoMap, arg0: mrpt.pymrpt.mrpt.maps.COctoMap) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.COctoMap, : mrpt.pymrpt.mrpt.maps.COctoMap) -> mrpt.pymrpt.mrpt.maps.COctoMap
C++: mrpt::maps::COctoMap::operator=(const class mrpt::maps::COctoMap &) --> class mrpt::maps::COctoMap &
- calcNumNodes(...)
- calcNumNodes(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
Traverses the tree to calculate the total number of nodes
C++: mrpt::maps::COctoMap::calcNumNodes() const --> size_t
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COctoMap::clone() const --> class mrpt::rtti::CObject *
- getAsOctoMapVoxels(...)
- getAsOctoMapVoxels(self: mrpt.pymrpt.mrpt.maps.COctoMap, gl_obj: mrpt.pymrpt.mrpt.opengl.COctoMapVoxels) -> None
C++: mrpt::maps::COctoMap::getAsOctoMapVoxels(class mrpt::opengl::COctoMapVoxels &) const --> void
- getClampingThresMax(...)
- getClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getClampingThresMax() const --> double
- getClampingThresMaxLog(...)
- getClampingThresMaxLog(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getClampingThresMaxLog() const --> float
- getClampingThresMin(...)
- getClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getClampingThresMin() const --> double
- getClampingThresMinLog(...)
- getClampingThresMinLog(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getClampingThresMinLog() const --> float
- getMetricMax(...)
- getMetricMax(self: mrpt.pymrpt.mrpt.maps.COctoMap, x: float, y: float, z: float) -> None
maximum value of the bounding box of all known space in x, y, z
C++: mrpt::maps::COctoMap::getMetricMax(double &, double &, double &) --> void
- getMetricMin(...)
- getMetricMin(self: mrpt.pymrpt.mrpt.maps.COctoMap, x: float, y: float, z: float) -> None
minimum value of the bounding box of all known space in x, y, z
C++: mrpt::maps::COctoMap::getMetricMin(double &, double &, double &) --> void
- getMetricSize(...)
- getMetricSize(self: mrpt.pymrpt.mrpt.maps.COctoMap, x: float, y: float, z: float) -> None
Size of OcTree (all known space) in meters for x, y and z dimension
C++: mrpt::maps::COctoMap::getMetricSize(double &, double &, double &) --> void
- getNumLeafNodes(...)
- getNumLeafNodes(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
Traverses the tree to calculate the total number of leaf nodes
C++: mrpt::maps::COctoMap::getNumLeafNodes() const --> size_t
- getOccupancyThres(...)
- getOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getOccupancyThres() const --> double
- getOccupancyThresLog(...)
- getOccupancyThresLog(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getOccupancyThresLog() const --> float
- getProbHit(...)
- getProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getProbHit() const --> double
- getProbHitLog(...)
- getProbHitLog(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getProbHitLog() const --> float
- getProbMiss(...)
- getProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getProbMiss() const --> double
- getProbMissLog(...)
- getProbMissLog(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getProbMissLog() const --> float
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::getResolution() const --> double
- getTreeDepth(...)
- getTreeDepth(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
C++: mrpt::maps::COctoMap::getTreeDepth() const --> unsigned int
- insertRay(...)
- insertRay(self: mrpt.pymrpt.mrpt.maps.COctoMap, end_x: float, end_y: float, end_z: float, sensor_x: float, sensor_y: float, sensor_z: float) -> None
Just like insertPointCloud but with a single ray.
C++: mrpt::maps::COctoMap::insertRay(const float, const float, const float, const float, const float, const float) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> bool
Returns true if the map is empty/no observation has been inserted
C++: mrpt::maps::COctoMap::isEmpty() const --> bool
- isPointWithinOctoMap(...)
- isPointWithinOctoMap(self: mrpt.pymrpt.mrpt.maps.COctoMap, x: float, y: float, z: float) -> bool
Check whether the given point lies within the volume covered by the
octomap (that is, whether it is "mapped")
C++: mrpt::maps::COctoMap::isPointWithinOctoMap(const float, const float, const float) const --> bool
- memoryFullGrid(...)
- memoryFullGrid(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
Memory usage of a full grid of the same size as the OcTree in
bytes (for comparison)
C++: mrpt::maps::COctoMap::memoryFullGrid() const --> size_t
- memoryUsage(...)
- memoryUsage(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
Memory usage of the complete octree in bytes (may vary between
architectures)
C++: mrpt::maps::COctoMap::memoryUsage() const --> size_t
- memoryUsageNode(...)
- memoryUsageNode(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
Memory usage of the a single octree node
C++: mrpt::maps::COctoMap::memoryUsageNode() const --> size_t
- setClampingThresMax(...)
- setClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMap, thresProb: float) -> None
C++: mrpt::maps::COctoMap::setClampingThresMax(double) --> void
- setClampingThresMin(...)
- setClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMap, thresProb: float) -> None
C++: mrpt::maps::COctoMap::setClampingThresMin(double) --> void
- setOccupancyThres(...)
- setOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMap, prob: float) -> None
C++: mrpt::maps::COctoMap::setOccupancyThres(double) --> void
- setProbHit(...)
- setProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMap, prob: float) -> None
C++: mrpt::maps::COctoMap::setProbHit(double) --> void
- setProbMiss(...)
- setProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMap, prob: float) -> None
C++: mrpt::maps::COctoMap::setProbMiss(double) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> int
The number of nodes in the tree
C++: mrpt::maps::COctoMap::size() const --> size_t
- updateVoxel(...)
- updateVoxel(self: mrpt.pymrpt.mrpt.maps.COctoMap, x: float, y: float, z: float, occupied: bool) -> None
Manually updates the occupancy of the voxel at (x,y,z) as being occupied
(true) or free (false), using the log-odds parameters in
C++: mrpt::maps::COctoMap::updateVoxel(const double, const double, const double, bool) --> void
- volume(...)
- volume(self: mrpt.pymrpt.mrpt.maps.COctoMap) -> float
C++: mrpt::maps::COctoMap::volume() --> double
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::COctoMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::COctoMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.COctoMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.COctoMap.TMapDefinitionBase'>
Methods inherited from COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> str
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::asString() const --> std::string
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- castRay(...)
- castRay(*args, **kwargs)
Overloaded function.
1. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>) -> bool
2. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool) -> bool
3. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool, maxRange: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::castRay(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, struct mrpt::math::TPoint3D_<double> &, bool, double) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
Computes the ratio in [0,1] of correspondences between "this" and the
"otherMap" map, whose 6D pose relative to "this" is "otherMapPose"
In the case of a multi-metric map, this returns the average between the
maps. This method always return 0 for grid maps.
[IN] The other map to compute the matching with.
[IN] The 6D pose of the other map as seen from
"this".
[IN] Matching parameters
The matching ratio [0,1]
determineMatching2D
C++: mrpt::maps::CMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- getPointOccupancy(...)
- getPointOccupancy(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, x: float, y: float, z: float, prob_occupancy: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getPointOccupancy(const float, const float, const float, double &) const --> bool
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, o: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- insertPointCloud(...)
- insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, ptMap: mrpt.pymrpt.mrpt.maps.CPointsMap, sensor_x: float, sensor_y: float, sensor_z: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::insertPointCloud(const class mrpt::maps::CPointsMap &, const float, const float, const float) --> void
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(*args, **kwargs)
Overloaded function.
1. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, filNamePrefix: str) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::saveMetricMapRepresentationToFile(const std::string &) const --> void
2. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::CMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t:
- genericMapParams
- insertionOptions
- likelihoodOptions
- renderingOptions
Data and other attributes inherited from COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TInsertionOptions'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TLikelihoodOptions'>
- TRenderingOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TRenderingOptions'>
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t(CMetricMap) |
| |
- Method resolution order:
- COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> str
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::asString() const --> std::string
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, : mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::operator=(const class mrpt::maps::COctoMapBase<class octomap::ColorOcTree, class octomap::ColorOcTreeNode> &) --> class mrpt::maps::COctoMapBase<class octomap::ColorOcTree, class octomap::ColorOcTreeNode> &
2. assign(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, : mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt.pymrpt.mrpt.maps.CMetricMap
C++: mrpt::maps::CMetricMap::operator=(const class mrpt::maps::CMetricMap &) --> class mrpt::maps::CMetricMap &
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- castRay(...)
- castRay(*args, **kwargs)
Overloaded function.
1. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>) -> bool
2. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool) -> bool
3. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool, maxRange: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::castRay(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, struct mrpt::math::TPoint3D_<double> &, bool, double) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
Computes the ratio in [0,1] of correspondences between "this" and the
"otherMap" map, whose 6D pose relative to "this" is "otherMapPose"
In the case of a multi-metric map, this returns the average between the
maps. This method always return 0 for grid maps.
[IN] The other map to compute the matching with.
[IN] The 6D pose of the other map as seen from
"this".
[IN] Matching parameters
The matching ratio [0,1]
determineMatching2D
C++: mrpt::maps::CMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsOctoMapVoxels(...)
- getAsOctoMapVoxels(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, gl_obj: mrpt.pymrpt.mrpt.opengl.COctoMapVoxels) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getAsOctoMapVoxels(class mrpt::opengl::COctoMapVoxels &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- getClampingThresMax(...)
- getClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getClampingThresMax() const --> double
- getClampingThresMaxLog(...)
- getClampingThresMaxLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getClampingThresMaxLog() const --> float
- getClampingThresMin(...)
- getClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getClampingThresMin() const --> double
- getClampingThresMinLog(...)
- getClampingThresMinLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getClampingThresMinLog() const --> float
- getOccupancyThres(...)
- getOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getOccupancyThres() const --> double
- getOccupancyThresLog(...)
- getOccupancyThresLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getOccupancyThresLog() const --> float
- getPointOccupancy(...)
- getPointOccupancy(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, x: float, y: float, z: float, prob_occupancy: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getPointOccupancy(const float, const float, const float, double &) const --> bool
- getProbHit(...)
- getProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getProbHit() const --> double
- getProbHitLog(...)
- getProbHitLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getProbHitLog() const --> float
- getProbMiss(...)
- getProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getProbMiss() const --> double
- getProbMissLog(...)
- getProbMissLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getProbMissLog() const --> float
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, o: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- insertPointCloud(...)
- insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, ptMap: mrpt.pymrpt.mrpt.maps.CPointsMap, sensor_x: float, sensor_y: float, sensor_z: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::insertPointCloud(const class mrpt::maps::CPointsMap &, const float, const float, const float) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CMetricMap::isEmpty() const --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(*args, **kwargs)
Overloaded function.
1. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, filNamePrefix: str) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::saveMetricMapRepresentationToFile(const std::string &) const --> void
2. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::CMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setClampingThresMax(...)
- setClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, thresProb: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::setClampingThresMax(double) --> void
- setClampingThresMin(...)
- setClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, thresProb: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::setClampingThresMin(double) --> void
- setOccupancyThres(...)
- setOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::setOccupancyThres(double) --> void
- setProbHit(...)
- setProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::setProbHit(double) --> void
- setProbMiss(...)
- setProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::ColorOcTree, octomap::ColorOcTreeNode>::setProbMiss(double) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_ColorOcTree_octomap_ColorOcTreeNode_t, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Static methods defined here:
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- genericMapParams
- insertionOptions
- likelihoodOptions
- renderingOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ree_octomap_ColorOcTreeNode_t.TInsertionOptions'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ee_octomap_ColorOcTreeNode_t.TLikelihoodOptions'>
- TRenderingOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octom...ree_octomap_ColorOcTreeNode_t.TRenderingOptions'>
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Returns a deep copy (clone) of the object, indepently of its class.
C++: mrpt::rtti::CObject::clone() const --> class mrpt::rtti::CObject *
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t(CMetricMap) |
| |
- Method resolution order:
- COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> str
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::asString() const --> std::string
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, : mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::operator=(const class mrpt::maps::COctoMapBase<class octomap::OcTree, class octomap::OcTreeNode> &) --> class mrpt::maps::COctoMapBase<class octomap::OcTree, class octomap::OcTreeNode> &
2. assign(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, : mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt.pymrpt.mrpt.maps.CMetricMap
C++: mrpt::maps::CMetricMap::operator=(const class mrpt::maps::CMetricMap &) --> class mrpt::maps::CMetricMap &
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- castRay(...)
- castRay(*args, **kwargs)
Overloaded function.
1. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>) -> bool
2. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool) -> bool
3. castRay(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, origin: mrpt::math::TPoint3D_<double>, direction: mrpt::math::TPoint3D_<double>, end: mrpt::math::TPoint3D_<double>, ignoreUnknownCells: bool, maxRange: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::castRay(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, struct mrpt::math::TPoint3D_<double> &, bool, double) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
Computes the ratio in [0,1] of correspondences between "this" and the
"otherMap" map, whose 6D pose relative to "this" is "otherMapPose"
In the case of a multi-metric map, this returns the average between the
maps. This method always return 0 for grid maps.
[IN] The other map to compute the matching with.
[IN] The 6D pose of the other map as seen from
"this".
[IN] Matching parameters
The matching ratio [0,1]
determineMatching2D
C++: mrpt::maps::CMetricMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsOctoMapVoxels(...)
- getAsOctoMapVoxels(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, gl_obj: mrpt.pymrpt.mrpt.opengl.COctoMapVoxels) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getAsOctoMapVoxels(class mrpt::opengl::COctoMapVoxels &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- getClampingThresMax(...)
- getClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getClampingThresMax() const --> double
- getClampingThresMaxLog(...)
- getClampingThresMaxLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getClampingThresMaxLog() const --> float
- getClampingThresMin(...)
- getClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getClampingThresMin() const --> double
- getClampingThresMinLog(...)
- getClampingThresMinLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getClampingThresMinLog() const --> float
- getOccupancyThres(...)
- getOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getOccupancyThres() const --> double
- getOccupancyThresLog(...)
- getOccupancyThresLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getOccupancyThresLog() const --> float
- getPointOccupancy(...)
- getPointOccupancy(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, x: float, y: float, z: float, prob_occupancy: float) -> bool
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getPointOccupancy(const float, const float, const float, double &) const --> bool
- getProbHit(...)
- getProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getProbHit() const --> double
- getProbHitLog(...)
- getProbHitLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getProbHitLog() const --> float
- getProbMiss(...)
- getProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getProbMiss() const --> double
- getProbMissLog(...)
- getProbMissLog(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> float
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getProbMissLog() const --> float
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, o: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, sf: mrpt.pymrpt.mrpt.obs.CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- insertPointCloud(...)
- insertPointCloud(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, ptMap: mrpt.pymrpt.mrpt.maps.CPointsMap, sensor_x: float, sensor_y: float, sensor_z: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::insertPointCloud(const class mrpt::maps::CPointsMap &, const float, const float, const float) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CMetricMap::isEmpty() const --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, Map: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(*args, **kwargs)
Overloaded function.
1. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, filNamePrefix: str) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::saveMetricMapRepresentationToFile(const std::string &) const --> void
2. saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface).
C++: mrpt::maps::CMetricMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setClampingThresMax(...)
- setClampingThresMax(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, thresProb: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::setClampingThresMax(double) --> void
- setClampingThresMin(...)
- setClampingThresMin(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, thresProb: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::setClampingThresMin(double) --> void
- setOccupancyThres(...)
- setOccupancyThres(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::setOccupancyThres(double) --> void
- setProbHit(...)
- setProbHit(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::setProbHit(double) --> void
- setProbMiss(...)
- setProbMiss(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, prob: float) -> None
C++: mrpt::maps::COctoMapBase<octomap::OcTree, octomap::OcTreeNode>::setProbMiss(double) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Static methods defined here:
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CMetricMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- genericMapParams
- insertionOptions
- likelihoodOptions
- renderingOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TInsertionOptions'>
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TLikelihoodOptions'>
- TRenderingOptions = <class 'mrpt.pymrpt.mrpt.maps.COctoMapBase_octomap_OcTree_octomap_OcTreeNode_t.TRenderingOptions'>
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Returns a deep copy (clone) of the object, indepently of its class.
C++: mrpt::rtti::CObject::clone() const --> class mrpt::rtti::CObject *
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPointCloudFilterBase(pybind11_builtins.pybind11_object) |
|
Virtual base class for all point-cloud filtering algorithm. See derived
classes for implementations.
CPointsMap |
|
- Method resolution order:
- CPointCloudFilterBase
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase, arg0: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase, : mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase) -> mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase
C++: mrpt::maps::CPointCloudFilterBase::operator=(const class mrpt::maps::CPointCloudFilterBase &) --> class mrpt::maps::CPointCloudFilterBase &
- filter(...)
- filter(*args, **kwargs)
Overloaded function.
1. filter(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase, inout_pointcloud: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, pc_reference_pose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. filter(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase, inout_pointcloud: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, pc_reference_pose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt::maps::CPointCloudFilterBase::TExtraFilterParams) -> None
Apply the filtering algorithm to the pointcloud.
C++: mrpt::maps::CPointCloudFilterBase::filter(class mrpt::maps::CPointsMap *, const mrpt::Clock::time_point, const class mrpt::poses::CPose3D &, struct mrpt::maps::CPointCloudFilterBase::TExtraFilterParams *) --> void
Data and other attributes defined here:
- TExtraFilterParams = <class 'mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase.TExtraFilterParams'>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPointCloudFilterByDistance(CPointCloudFilterBase) |
|
Implementation of pointcloud filtering based on requisities for minimum
neigbouring points in both,
the current timestamp and a previous one.
CPointsMap |
|
- Method resolution order:
- CPointCloudFilterByDistance
- CPointCloudFilterBase
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance, arg0: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance, arg0: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance, : mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance) -> mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance
C++: mrpt::maps::CPointCloudFilterByDistance::operator=(const class mrpt::maps::CPointCloudFilterByDistance &) --> class mrpt::maps::CPointCloudFilterByDistance &
- filter(...)
- filter(*args, **kwargs)
Overloaded function.
1. filter(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance, inout_pointcloud: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, pc_reference_pose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. filter(self: mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance, inout_pointcloud: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, pc_reference_pose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase.TExtraFilterParams) -> None
C++: mrpt::maps::CPointCloudFilterByDistance::filter(class mrpt::maps::CPointsMap *, const mrpt::Clock::time_point, const class mrpt::poses::CPose3D &, struct mrpt::maps::CPointCloudFilterBase::TExtraFilterParams *) --> void
Data descriptors defined here:
- options
Data and other attributes defined here:
- TOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointCloudFilterByDistance.TOptions'>
Data and other attributes inherited from CPointCloudFilterBase:
- TExtraFilterParams = <class 'mrpt.pymrpt.mrpt.maps.CPointCloudFilterBase.TExtraFilterParams'>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPointsMap(CMetricMap, mrpt.pymrpt.mrpt.opengl.PLY_Importer, mrpt.pymrpt.mrpt.opengl.PLY_Exporter) |
|
A cloud of points in 2D or 3D, which can be built from a sequence of laser
scans or other sensors.
This is a virtual class, thus only a derived class can be instantiated by
the user. The user most usually wants to use CSimplePointsMap.
This class implements generic version of
mrpt::maps::CMetric::insertObservation() accepting these types of sensory
data:
- mrpt::obs::CObservation2DRangeScan: 2D range scans
- mrpt::obs::CObservation3DRangeScan: 3D range scans (Kinect, etc...)
- mrpt::obs::CObservationRange: IRs, Sonars, etc.
- mrpt::obs::CObservationVelodyneScan
- mrpt::obs::CObservationPointCloud
Loading and saving in the standard LAS LiDAR point cloud format is supported
by installing `libLAS` and including the
header `<mrpt/maps/CPointsMaps_liblas.h>` in your program. Since MRPT 1.5.0
there is no need to build MRPT against libLAS to use this feature.
See LAS functions in
CMetricMap, CPoint, CSerializable |
|
- Method resolution order:
- CPointsMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.opengl.PLY_Importer
- mrpt.pymrpt.mrpt.opengl.PLY_Exporter
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CPointsMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __iadd__(...)
- __iadd__(self: mrpt.pymrpt.mrpt.maps.CPointsMap, anotherMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Inserts another map into this one.
insertAnotherMap()
C++: mrpt::maps::CPointsMap::operator+=(const class mrpt::maps::CPointsMap &) --> void
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CPointsMap::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CPointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.maps.CPointsMap
C++: mrpt::maps::CPointsMap::operator=(const class mrpt::maps::CPointsMap &) --> class mrpt::maps::CPointsMap &
- boundingBox(...)
- boundingBox(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.math.TBoundingBox_float_t
Computes the bounding box of all the points, or (0,0 ,0,0, 0,0) if there
are no points.
Results are cached unless the map is somehow modified to avoid repeated
calculations.
C++: mrpt::maps::CPointsMap::boundingBox() const --> struct mrpt::math::TBoundingBox_<float>
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose2D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
3. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, other: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Copy all the points from "other" map to "this", replacing each point
by
(pose compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::maps::CPointsMap &, const class mrpt::poses::CPose3D &) --> void
- clipOutOfRange(...)
- clipOutOfRange(self: mrpt.pymrpt.mrpt.maps.CPointsMap, point: mrpt::math::TPoint2D_<double>, maxRange: float) -> None
Delete points which are more far than "maxRange" away from the given
"point".
C++: mrpt::maps::CPointsMap::clipOutOfRange(const struct mrpt::math::TPoint2D_<double> &, float) --> void
- clipOutOfRangeInZ(...)
- clipOutOfRangeInZ(self: mrpt.pymrpt.mrpt.maps.CPointsMap, zMin: float, zMax: float) -> None
Delete points out of the given "z" axis range have been removed.
C++: mrpt::maps::CPointsMap::clipOutOfRangeInZ(float, float) --> void
- compute3DDistanceToMesh(...)
- compute3DDistanceToMesh(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap2: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, maxDistForCorrespondence: float, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
Computes the matchings between this and another 3D points map.
This method matches each point in the other map with the centroid of the
3 closest points in 3D
from this map (if the distance is below a defined threshold).
[IN] The other map to compute the
matching with.
[IN] The pose of the other map as seen
from "this".
[IN] Maximum 2D linear distance
between two points to be matched.
[OUT] The detected matchings pairs.
[OUT] The ratio [0,1] of points in
otherMap with at least one correspondence.
determineMatching3D
C++: mrpt::maps::CPointsMap::compute3DDistanceToMesh(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, float, class mrpt::tfest::TMatchingPairListTempl<float> &, float &) --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CPointsMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
STL-like method to check whether the map is empty:
C++: mrpt::maps::CPointsMap::empty() const --> bool
- enableFilterByHeight(...)
- enableFilterByHeight(*args, **kwargs)
Overloaded function.
1. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, enable: bool) -> None
Enable/disable the filter-by-height functionality
setHeightFilterLevels
Default upon construction is disabled.
C++: mrpt::maps::CPointsMap::enableFilterByHeight(bool) --> void
- extractCylinder(...)
- extractCylinder(self: mrpt.pymrpt.mrpt.maps.CPointsMap, center: mrpt::math::TPoint2D_<double>, radius: float, zmin: float, zmax: float, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Extracts the points in the map within a cylinder in 3D defined the
provided radius and zmin/zmax values.
C++: mrpt::maps::CPointsMap::extractCylinder(const struct mrpt::math::TPoint2D_<double> &, const double, const double, const double, class mrpt::maps::CPointsMap *) --> void
- extractPoints(...)
- extractPoints(*args, **kwargs)
Overloaded function.
1. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float) -> None
3. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float) -> None
4. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float, B: float) -> None
Extracts the points in the map within the area defined by two corners.
The points are coloured according the R,G,B input data.
C++: mrpt::maps::CPointsMap::extractPoints(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, class mrpt::maps::CPointsMap *, double, double, double) --> void
- getHeightFilterLevels(...)
- getHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Get the min/max Z levels for points to be actually inserted in the map
enableFilterByHeight, setHeightFilterLevels
C++: mrpt::maps::CPointsMap::getHeightFilterLevels(double &, double &) const --> void
- getLargestDistanceFromOrigin(...)
- getLargestDistanceFromOrigin(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
This method returns the largest distance from the origin to any of the
points, such as a sphere centered at the origin with this radius cover
ALL the points in the map (the results are buffered, such as, if the map
is not modified, the second call will be much faster than the first one).
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOrigin() const --> float
- getLargestDistanceFromOriginNoRecompute(...)
- getLargestDistanceFromOriginNoRecompute(self: mrpt.pymrpt.mrpt.maps.CPointsMap, output_is_valid: bool) -> float
Like but returns in
= false if the distance was not already computed, skipping its
computation then, unlike getLargestDistanceFromOrigin()
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOriginNoRecompute(bool &) const --> float
- getPoint(...)
- getPoint(*args, **kwargs)
Overloaded function.
1. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Access to a given point from map, as a 2D point. First index is 0.
Throws std::exception on index out of bound.
setPoint, getPointFast
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &, float &) const --> void
2. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &) const --> void
3. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &, double &) const --> void
4. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &) const --> void
5. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint2D_<double> &) const --> void
6. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint3D_<double> &) const --> void
- getPointFast(...)
- getPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Just like but without checking out-of-bound index and
without returning the point weight, just XYZ.
C++: mrpt::maps::CPointsMap::getPointFast(size_t, float &, float &, float &) const --> void
- getPointRGB(...)
- getPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Access to a given point from map, and its colors, if the map defines
them (othersise, R=G=B=1.0). First index is 0.
The return value is the weight of the point (the times it has
been fused)
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::getPointRGB(size_t, float &, float &, float &, float &, float &, float &) const --> void
- getPointWeight(...)
- getPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int) -> int
Gets the point weight, which is ignored in all classes (defaults to 1)
but in those which actually store that field (Note: No checks are done
for out-of-bounds index).
setPointWeight
C++: mrpt::maps::CPointsMap::getPointWeight(size_t) const --> unsigned int
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CPointsMap, outObj: mrpt::opengl::CSetOfObjects) -> None
Returns a 3D object representing the map.
The color of the points is controlled by renderOptions
C++: mrpt::maps::CPointsMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- hasColorPoints(...)
- hasColorPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the point map has a color field for each point
C++: mrpt::maps::CPointsMap::hasColorPoints() const --> bool
- insertAnotherMap(...)
- insertAnotherMap(*args, **kwargs)
Overloaded function.
1. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D, filterOutPointsAtZero: bool) -> None
Insert the contents of another map into this one with some geometric
transformation, without fusing close points.
The other map whose points are to be inserted into this
one.
The pose of the other map in the coordinates of THIS map
If true, points at (0,0,0) (in the frame of
reference of `otherMap`) will be assumed to be invalid and will not be
copied.
fuseWith, addFrom
C++: mrpt::maps::CPointsMap::insertAnotherMap(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose3D &, const bool) --> void
- insertPoint(...)
- insertPoint(*args, **kwargs)
Overloaded function.
1. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
Provides a way to insert (append) individual points into the map: the
missing fields of child
classes (color, weight, etc) are left to their default values
C++: mrpt::maps::CPointsMap::insertPoint(float, float, float) --> void
3. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::insertPoint(const struct mrpt::math::TPoint3D_<double> &) --> void
- insertPointFast(...)
- insertPointFast(*args, **kwargs)
Overloaded function.
1. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
The virtual method for *without* calling
mark_as_modified()
C++: mrpt::maps::CPointsMap::insertPointFast(float, float, float) --> void
- insertPointRGB(...)
- insertPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::insertPointRGB(float, float, float, float, float, float) --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
@}
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- internal_computeObservationLikelihoodPointCloud3D(...)
- internal_computeObservationLikelihoodPointCloud3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_in_map: mrpt.pymrpt.mrpt.poses.CPose3D, xs: float, ys: float, zs: float, num_pts: int) -> float
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihoodPointCloud3D(const class mrpt::poses::CPose3D &, const float *, const float *, const float *, const unsigned long) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CPointsMap::isEmpty() const --> bool
- isFilterByHeightEnabled(...)
- isFilterByHeightEnabled(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Return whether filter-by-height is enabled
enableFilterByHeight
C++: mrpt::maps::CPointsMap::isFilterByHeightEnabled() const --> bool
- kdtree_distance(...)
- kdtree_distance(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p1: float, idx_p2: int, size: int) -> float
Returns the distance between the vector "p1[0:size-1]" and the data
point with index "idx_p2" stored in the class:
C++: mrpt::maps::CPointsMap::kdtree_distance(const float *, size_t, size_t) const --> float
- kdtree_get_point_count(...)
- kdtree_get_point_count(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Must return the number of data points
C++: mrpt::maps::CPointsMap::kdtree_get_point_count() const --> size_t
- kdtree_get_pt(...)
- kdtree_get_pt(self: mrpt.pymrpt.mrpt.maps.CPointsMap, idx: int, dim: int) -> float
Returns the dim'th component of the idx'th point in the class:
C++: mrpt::maps::CPointsMap::kdtree_get_pt(size_t, int) const --> float
- load2D_from_text_file(...)
- load2D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y" coordinate
pair, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load2D_from_text_file(const std::string &) --> bool
- load2Dor3D_from_text_file(...)
- load2Dor3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str, is_3D: bool) -> bool
2D or 3D generic implementation of and
load3D_from_text_file
C++: mrpt::maps::CPointsMap::load2Dor3D_from_text_file(const std::string &, const bool) --> bool
- load3D_from_text_file(...)
- load3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y Z" coordinate
tuple, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load3D_from_text_file(const std::string &) --> bool
- mark_as_modified(...)
- mark_as_modified(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Users normally don't need to call this. Called by this class or children
classes, set m_largestDistanceFromOriginIsUpdated=false, invalidates the
kd-tree cache, and such.
C++: mrpt::maps::CPointsMap::mark_as_modified() const --> void
- reserve(...)
- reserve(self: mrpt.pymrpt.mrpt.maps.CPointsMap, newLength: int) -> None
Reserves memory for a given number of points: the size of the map does
not change, it only reserves the memory.
This is useful for situations where it is approximately known the final
size of the map. This method is more
efficient than constantly increasing the size of the buffers. Refer to
the STL C++ library's "reserve" methods.
C++: mrpt::maps::CPointsMap::reserve(size_t) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CPointsMap, newLength: int) -> None
Resizes all point buffers so they can hold the given number of points:
newly created points are set to default values,
and old contents are not changed.
reserve, setPoint, setPointFast, setSize
C++: mrpt::maps::CPointsMap::resize(size_t) --> void
- save2D_to_text_file(...)
- save2D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save2D_to_text_file(const std::string &) const --> bool
- save3D_to_text_file(...)
- save3D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y Z" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save3D_to_text_file(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CPointsMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface)
C++: mrpt::maps::CPointsMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setHeightFilterLevels(...)
- setHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Set the min/max Z levels for points to be actually inserted in the map
(only if was called before).
C++: mrpt::maps::CPointsMap::setHeightFilterLevels(const double, const double) --> void
- setPoint(...)
- setPoint(*args, **kwargs)
Overloaded function.
1. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes a given point from map, with Z defaulting to 0 if not provided.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float, float) --> void
2. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint2D_<double> &) --> void
3. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint3D_<double> &) --> void
4. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float) --> void
- setPointFast(...)
- setPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes the coordinates of the given point (0-based index), *without*
checking for out-of-bounds and *without* calling mark_as_modified().
Also, color, intensity, or other data is left unchanged.
setPoint
C++: mrpt::maps::CPointsMap::setPointFast(size_t, float, float, float) --> void
- setPointRGB(...)
- setPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::setPointRGB(size_t, float, float, float, float, float, float) --> void
- setPointWeight(...)
- setPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, w: int) -> None
Sets the point weight, which is ignored in all classes but those which
actually store that field (Note: No checks are done for out-of-bounds
index).
getPointWeight
C++: mrpt::maps::CPointsMap::setPointWeight(size_t, unsigned long) --> void
- setSize(...)
- setSize(self: mrpt.pymrpt.mrpt.maps.CPointsMap, newLength: int) -> None
Resizes all point buffers so they can hold the given number of points,
*erasing* all previous contents
and leaving all points to default values.
reserve, setPoint, setPointFast, setSize
C++: mrpt::maps::CPointsMap::setSize(size_t) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Returns the number of stored points in the map.
C++: mrpt::maps::CPointsMap::size() const --> size_t
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondence(float, float) const --> float
- squareDistanceToClosestCorrespondenceT(...)
- squareDistanceToClosestCorrespondenceT(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p0: mrpt::math::TPoint2D_<double>) -> float
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondenceT(const struct mrpt::math::TPoint2D_<double> &) const --> float
Static methods defined here:
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CPointsMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
- likelihoodOptions
- renderOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoPointsMap
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TLikelihoodOptions'>
- Options used when evaluating "computeObservationLikelihood" in the
derived classes.
CObservation::computeObservationLikelihood
- TRenderOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TRenderOptions'>
- Rendering options, used in getAs3DObject()
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Returns a deep copy (clone) of the object, indepently of its class.
C++: mrpt::rtti::CObject::clone() const --> class mrpt::rtti::CObject *
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Importer:
- getLoadPLYErrorString(...)
- getLoadPLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Importer::getLoadPLYErrorString() const --> std::string
- loadFromPlyFile(...)
- loadFromPlyFile(*args, **kwargs)
Overloaded function.
1. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str) -> bool
2. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str]) -> bool
3. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str], file_obj_info: List[str]) -> bool
Loads from a PLY file.
The filename to open. It can be either in binary or
text format.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error in the file format or reading it. To obtain
more details on the error you can call getLoadPLYErrorString()
C++: mrpt::opengl::PLY_Importer::loadFromPlyFile(const std::string &, class std::vector<std::string > *, class std::vector<std::string > *) --> bool
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Exporter:
- getSavePLYErrorString(...)
- getSavePLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Exporter::getSavePLYErrorString() const --> std::string
- saveToPlyFile(...)
- saveToPlyFile(*args, **kwargs)
Overloaded function.
1. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str) -> bool
2. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool) -> bool
3. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str]) -> bool
4. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str], file_obj_info: List[str]) -> bool
Saves to a PLY file.
The filename to be saved.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error writing the file. To obtain more details on
the error you can call getSavePLYErrorString()
C++: mrpt::opengl::PLY_Exporter::saveToPlyFile(const std::string &, bool, const class std::vector<std::string > &, const class std::vector<std::string > &) const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPointsMapXYZI(CPointsMap) |
|
A map of 3D points with reflectance/intensity (float).
mrpt::maps::CPointsMap, mrpt::maps::CMetricMap |
|
- Method resolution order:
- CPointsMapXYZI
- CPointsMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.opengl.PLY_Importer
- mrpt.pymrpt.mrpt.opengl.PLY_Exporter
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CPointsMapXYZI::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, arg0: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, arg0: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> None
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.maps.CPointsMapXYZI
C++: mrpt::maps::CPointsMapXYZI::operator=(const class mrpt::maps::CPointsMap &) --> class mrpt::maps::CPointsMapXYZI &
2. assign(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, o: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> mrpt.pymrpt.mrpt.maps.CPointsMapXYZI
C++: mrpt::maps::CPointsMapXYZI::operator=(const class mrpt::maps::CPointsMapXYZI &) --> class mrpt::maps::CPointsMapXYZI &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CPointsMapXYZI::clone() const --> class mrpt::rtti::CObject *
- getPointIntensity(...)
- getPointIntensity(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int) -> float
Retrieves a point intensity (range [0,1])
C++: mrpt::maps::CPointsMapXYZI::getPointIntensity(size_t) const --> float
- getPointIntensity_fast(...)
- getPointIntensity_fast(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int) -> float
Like but without checking for out-of-index erors
C++: mrpt::maps::CPointsMapXYZI::getPointIntensity_fast(size_t) const --> float
- getPointRGB(...)
- getPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int, x: float, y: float, z: float, R_intensity: float, G_intensity: float, B_intensity: float) -> None
Retrieves a point and its color (colors range is [0,1])
C++: mrpt::maps::CPointsMapXYZI::getPointRGB(size_t, float &, float &, float &, float &, float &, float &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Override of the default 3D scene builder to account for the individual
points' color.
C++: mrpt::maps::CPointsMapXYZI::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- hasColorPoints(...)
- hasColorPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI) -> bool
Returns true if the point map has a color field for each point
C++: mrpt::maps::CPointsMapXYZI::hasColorPoints() const --> bool
- insertPointFast(...)
- insertPointFast(*args, **kwargs)
Overloaded function.
1. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, x: float, y: float) -> None
2. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, x: float, y: float, z: float) -> None
The virtual method for *without* calling
mark_as_modified()
C++: mrpt::maps::CPointsMapXYZI::insertPointFast(float, float, float) --> void
- insertPointRGB(...)
- insertPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, x: float, y: float, z: float, R_intensity: float, G_ignored: float, B_ignored: float) -> None
Adds a new point given its coordinates and color (colors range is [0,1])
C++: mrpt::maps::CPointsMapXYZI::insertPointRGB(float, float, float, float, float, float) --> void
- loadFromKittiVelodyneFile(...)
- loadFromKittiVelodyneFile(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, filename: str) -> bool
Loads from a Kitti dataset Velodyne scan binary file.
The file can be gz compressed (only enabled if the filename ends in ".gz"
to prevent spurious false autodetection of gzip files).
true on success
C++: mrpt::maps::CPointsMapXYZI::loadFromKittiVelodyneFile(const std::string &) --> bool
- loadXYZI_from_text_file(...)
- loadXYZI_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, file: str) -> bool
Loads from a text file, each line having "X Y Z I", I in [0,1].
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMapXYZI::loadXYZI_from_text_file(const std::string &) --> bool
- reserve(...)
- reserve(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, newLength: int) -> None
from CPointsMap
@{
C++: mrpt::maps::CPointsMapXYZI::reserve(size_t) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, newLength: int) -> None
C++: mrpt::maps::CPointsMapXYZI::resize(size_t) --> void
- saveToKittiVelodyneFile(...)
- saveToKittiVelodyneFile(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, filename: str) -> bool
C++: mrpt::maps::CPointsMapXYZI::saveToKittiVelodyneFile(const std::string &) const --> bool
- saveXYZI_to_text_file(...)
- saveXYZI_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, file: str) -> bool
Save to a text file. In each line contains X Y Z (meters) I (intensity)
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMapXYZI::saveXYZI_to_text_file(const std::string &) const --> bool
- setPointColor_fast(...)
- setPointColor_fast(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int, R: float, G: float, B: float) -> None
Like but without checking for out-of-index erors
C++: mrpt::maps::CPointsMapXYZI::setPointColor_fast(size_t, float, float, float) --> void
- setPointIntensity(...)
- setPointIntensity(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int, intensity: float) -> None
Changes the intensity of a given point from the map. First index is 0.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMapXYZI::setPointIntensity(size_t, float) --> void
- setPointRGB(...)
- setPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, index: int, x: float, y: float, z: float, R_intensity: float, G_ignored: float, B_ignored: float) -> None
Changes a given point from map. First index is 0.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMapXYZI::setPointRGB(size_t, float, float, float, float, float, float) --> void
- setSize(...)
- setSize(self: mrpt.pymrpt.mrpt.maps.CPointsMapXYZI, newLength: int) -> None
C++: mrpt::maps::CPointsMapXYZI::setSize(size_t) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CPointsMapXYZI::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CPointsMapXYZI::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CPointsMapXYZI.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CPointsMapXYZI.TMapDefinitionBase'>
Methods inherited from CPointsMap:
- __iadd__(...)
- __iadd__(self: mrpt.pymrpt.mrpt.maps.CPointsMap, anotherMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Inserts another map into this one.
insertAnotherMap()
C++: mrpt::maps::CPointsMap::operator+=(const class mrpt::maps::CPointsMap &) --> void
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CPointsMap::asString() const --> std::string
- boundingBox(...)
- boundingBox(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.math.TBoundingBox_float_t
Computes the bounding box of all the points, or (0,0 ,0,0, 0,0) if there
are no points.
Results are cached unless the map is somehow modified to avoid repeated
calculations.
C++: mrpt::maps::CPointsMap::boundingBox() const --> struct mrpt::math::TBoundingBox_<float>
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose2D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
3. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, other: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Copy all the points from "other" map to "this", replacing each point
by
(pose compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::maps::CPointsMap &, const class mrpt::poses::CPose3D &) --> void
- clipOutOfRange(...)
- clipOutOfRange(self: mrpt.pymrpt.mrpt.maps.CPointsMap, point: mrpt::math::TPoint2D_<double>, maxRange: float) -> None
Delete points which are more far than "maxRange" away from the given
"point".
C++: mrpt::maps::CPointsMap::clipOutOfRange(const struct mrpt::math::TPoint2D_<double> &, float) --> void
- clipOutOfRangeInZ(...)
- clipOutOfRangeInZ(self: mrpt.pymrpt.mrpt.maps.CPointsMap, zMin: float, zMax: float) -> None
Delete points out of the given "z" axis range have been removed.
C++: mrpt::maps::CPointsMap::clipOutOfRangeInZ(float, float) --> void
- compute3DDistanceToMesh(...)
- compute3DDistanceToMesh(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap2: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, maxDistForCorrespondence: float, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
Computes the matchings between this and another 3D points map.
This method matches each point in the other map with the centroid of the
3 closest points in 3D
from this map (if the distance is below a defined threshold).
[IN] The other map to compute the
matching with.
[IN] The pose of the other map as seen
from "this".
[IN] Maximum 2D linear distance
between two points to be matched.
[OUT] The detected matchings pairs.
[OUT] The ratio [0,1] of points in
otherMap with at least one correspondence.
determineMatching3D
C++: mrpt::maps::CPointsMap::compute3DDistanceToMesh(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, float, class mrpt::tfest::TMatchingPairListTempl<float> &, float &) --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CPointsMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
STL-like method to check whether the map is empty:
C++: mrpt::maps::CPointsMap::empty() const --> bool
- enableFilterByHeight(...)
- enableFilterByHeight(*args, **kwargs)
Overloaded function.
1. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, enable: bool) -> None
Enable/disable the filter-by-height functionality
setHeightFilterLevels
Default upon construction is disabled.
C++: mrpt::maps::CPointsMap::enableFilterByHeight(bool) --> void
- extractCylinder(...)
- extractCylinder(self: mrpt.pymrpt.mrpt.maps.CPointsMap, center: mrpt::math::TPoint2D_<double>, radius: float, zmin: float, zmax: float, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Extracts the points in the map within a cylinder in 3D defined the
provided radius and zmin/zmax values.
C++: mrpt::maps::CPointsMap::extractCylinder(const struct mrpt::math::TPoint2D_<double> &, const double, const double, const double, class mrpt::maps::CPointsMap *) --> void
- extractPoints(...)
- extractPoints(*args, **kwargs)
Overloaded function.
1. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float) -> None
3. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float) -> None
4. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float, B: float) -> None
Extracts the points in the map within the area defined by two corners.
The points are coloured according the R,G,B input data.
C++: mrpt::maps::CPointsMap::extractPoints(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, class mrpt::maps::CPointsMap *, double, double, double) --> void
- getHeightFilterLevels(...)
- getHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Get the min/max Z levels for points to be actually inserted in the map
enableFilterByHeight, setHeightFilterLevels
C++: mrpt::maps::CPointsMap::getHeightFilterLevels(double &, double &) const --> void
- getLargestDistanceFromOrigin(...)
- getLargestDistanceFromOrigin(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
This method returns the largest distance from the origin to any of the
points, such as a sphere centered at the origin with this radius cover
ALL the points in the map (the results are buffered, such as, if the map
is not modified, the second call will be much faster than the first one).
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOrigin() const --> float
- getLargestDistanceFromOriginNoRecompute(...)
- getLargestDistanceFromOriginNoRecompute(self: mrpt.pymrpt.mrpt.maps.CPointsMap, output_is_valid: bool) -> float
Like but returns in
= false if the distance was not already computed, skipping its
computation then, unlike getLargestDistanceFromOrigin()
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOriginNoRecompute(bool &) const --> float
- getPoint(...)
- getPoint(*args, **kwargs)
Overloaded function.
1. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Access to a given point from map, as a 2D point. First index is 0.
Throws std::exception on index out of bound.
setPoint, getPointFast
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &, float &) const --> void
2. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &) const --> void
3. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &, double &) const --> void
4. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &) const --> void
5. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint2D_<double> &) const --> void
6. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint3D_<double> &) const --> void
- getPointFast(...)
- getPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Just like but without checking out-of-bound index and
without returning the point weight, just XYZ.
C++: mrpt::maps::CPointsMap::getPointFast(size_t, float &, float &, float &) const --> void
- getPointWeight(...)
- getPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int) -> int
Gets the point weight, which is ignored in all classes (defaults to 1)
but in those which actually store that field (Note: No checks are done
for out-of-bounds index).
setPointWeight
C++: mrpt::maps::CPointsMap::getPointWeight(size_t) const --> unsigned int
- insertAnotherMap(...)
- insertAnotherMap(*args, **kwargs)
Overloaded function.
1. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D, filterOutPointsAtZero: bool) -> None
Insert the contents of another map into this one with some geometric
transformation, without fusing close points.
The other map whose points are to be inserted into this
one.
The pose of the other map in the coordinates of THIS map
If true, points at (0,0,0) (in the frame of
reference of `otherMap`) will be assumed to be invalid and will not be
copied.
fuseWith, addFrom
C++: mrpt::maps::CPointsMap::insertAnotherMap(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose3D &, const bool) --> void
- insertPoint(...)
- insertPoint(*args, **kwargs)
Overloaded function.
1. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
Provides a way to insert (append) individual points into the map: the
missing fields of child
classes (color, weight, etc) are left to their default values
C++: mrpt::maps::CPointsMap::insertPoint(float, float, float) --> void
3. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::insertPoint(const struct mrpt::math::TPoint3D_<double> &) --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
@}
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- internal_computeObservationLikelihoodPointCloud3D(...)
- internal_computeObservationLikelihoodPointCloud3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_in_map: mrpt.pymrpt.mrpt.poses.CPose3D, xs: float, ys: float, zs: float, num_pts: int) -> float
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihoodPointCloud3D(const class mrpt::poses::CPose3D &, const float *, const float *, const float *, const unsigned long) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CPointsMap::isEmpty() const --> bool
- isFilterByHeightEnabled(...)
- isFilterByHeightEnabled(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Return whether filter-by-height is enabled
enableFilterByHeight
C++: mrpt::maps::CPointsMap::isFilterByHeightEnabled() const --> bool
- kdtree_distance(...)
- kdtree_distance(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p1: float, idx_p2: int, size: int) -> float
Returns the distance between the vector "p1[0:size-1]" and the data
point with index "idx_p2" stored in the class:
C++: mrpt::maps::CPointsMap::kdtree_distance(const float *, size_t, size_t) const --> float
- kdtree_get_point_count(...)
- kdtree_get_point_count(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Must return the number of data points
C++: mrpt::maps::CPointsMap::kdtree_get_point_count() const --> size_t
- kdtree_get_pt(...)
- kdtree_get_pt(self: mrpt.pymrpt.mrpt.maps.CPointsMap, idx: int, dim: int) -> float
Returns the dim'th component of the idx'th point in the class:
C++: mrpt::maps::CPointsMap::kdtree_get_pt(size_t, int) const --> float
- load2D_from_text_file(...)
- load2D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y" coordinate
pair, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load2D_from_text_file(const std::string &) --> bool
- load2Dor3D_from_text_file(...)
- load2Dor3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str, is_3D: bool) -> bool
2D or 3D generic implementation of and
load3D_from_text_file
C++: mrpt::maps::CPointsMap::load2Dor3D_from_text_file(const std::string &, const bool) --> bool
- load3D_from_text_file(...)
- load3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y Z" coordinate
tuple, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load3D_from_text_file(const std::string &) --> bool
- mark_as_modified(...)
- mark_as_modified(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Users normally don't need to call this. Called by this class or children
classes, set m_largestDistanceFromOriginIsUpdated=false, invalidates the
kd-tree cache, and such.
C++: mrpt::maps::CPointsMap::mark_as_modified() const --> void
- save2D_to_text_file(...)
- save2D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save2D_to_text_file(const std::string &) const --> bool
- save3D_to_text_file(...)
- save3D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y Z" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save3D_to_text_file(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CPointsMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface)
C++: mrpt::maps::CPointsMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setHeightFilterLevels(...)
- setHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Set the min/max Z levels for points to be actually inserted in the map
(only if was called before).
C++: mrpt::maps::CPointsMap::setHeightFilterLevels(const double, const double) --> void
- setPoint(...)
- setPoint(*args, **kwargs)
Overloaded function.
1. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes a given point from map, with Z defaulting to 0 if not provided.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float, float) --> void
2. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint2D_<double> &) --> void
3. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint3D_<double> &) --> void
4. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float) --> void
- setPointFast(...)
- setPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes the coordinates of the given point (0-based index), *without*
checking for out-of-bounds and *without* calling mark_as_modified().
Also, color, intensity, or other data is left unchanged.
setPoint
C++: mrpt::maps::CPointsMap::setPointFast(size_t, float, float, float) --> void
- setPointWeight(...)
- setPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, w: int) -> None
Sets the point weight, which is ignored in all classes but those which
actually store that field (Note: No checks are done for out-of-bounds
index).
getPointWeight
C++: mrpt::maps::CPointsMap::setPointWeight(size_t, unsigned long) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Returns the number of stored points in the map.
C++: mrpt::maps::CPointsMap::size() const --> size_t
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondence(float, float) const --> float
- squareDistanceToClosestCorrespondenceT(...)
- squareDistanceToClosestCorrespondenceT(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p0: mrpt::math::TPoint2D_<double>) -> float
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondenceT(const struct mrpt::math::TPoint2D_<double> &) const --> float
Data descriptors inherited from CPointsMap:
- insertionOptions
- likelihoodOptions
- renderOptions
Data and other attributes inherited from CPointsMap:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoPointsMap
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TLikelihoodOptions'>
- Options used when evaluating "computeObservationLikelihood" in the
derived classes.
CObservation::computeObservationLikelihood
- TRenderOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TRenderOptions'>
- Rendering options, used in getAs3DObject()
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Importer:
- getLoadPLYErrorString(...)
- getLoadPLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Importer::getLoadPLYErrorString() const --> std::string
- loadFromPlyFile(...)
- loadFromPlyFile(*args, **kwargs)
Overloaded function.
1. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str) -> bool
2. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str]) -> bool
3. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str], file_obj_info: List[str]) -> bool
Loads from a PLY file.
The filename to open. It can be either in binary or
text format.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error in the file format or reading it. To obtain
more details on the error you can call getLoadPLYErrorString()
C++: mrpt::opengl::PLY_Importer::loadFromPlyFile(const std::string &, class std::vector<std::string > *, class std::vector<std::string > *) --> bool
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Exporter:
- getSavePLYErrorString(...)
- getSavePLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Exporter::getSavePLYErrorString() const --> std::string
- saveToPlyFile(...)
- saveToPlyFile(*args, **kwargs)
Overloaded function.
1. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str) -> bool
2. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool) -> bool
3. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str]) -> bool
4. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str], file_obj_info: List[str]) -> bool
Saves to a PLY file.
The filename to be saved.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error writing the file. To obtain more details on
the error you can call getSavePLYErrorString()
C++: mrpt::opengl::PLY_Exporter::saveToPlyFile(const std::string &, bool, const class std::vector<std::string > &, const class std::vector<std::string > &) const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CRandomFieldGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) |
|
CRandomFieldGridMap2D represents a 2D grid map where each cell is associated
one real-valued property which is estimated by this map, either
as a simple value or as a probility distribution (for each cell).
There are a number of methods available to build the MRF grid-map,
depending on the value of
`TMapRepresentation maptype` passed in the constructor.
The following papers describe the mapping alternatives implemented here:
- `mrKernelDM`: A Gaussian kernel-based method. See:
- "Building gas concentration gridmaps with a mobile robot",
Lilienthal,
A. and Duckett, T., Robotics and Autonomous Systems, v.48, 2004.
- `mrKernelDMV`: A kernel-based method. See:
- "A Statistical Approach to Gas Distribution Modelling with Mobile
Robots--The Kernel DM+ V Algorithm", Lilienthal, A.J. and Reggente, M. and
Trincavelli, M. and Blanco, J.L. and Gonzalez, J., IROS 2009.
- `mrKalmanFilter`: A "brute-force" approach to estimate the entire map
with a dense (linear) Kalman filter. Will be very slow for mid or large maps.
It's provided just for comparison purposes, not useful in practice.
- `mrKalmanApproximate`: A compressed/sparse Kalman filter approach.
See:
- "A Kalman Filter Based Approach to Probabilistic Gas Distribution
Mapping", JL Blanco, JG Monroy, J Gonzalez-Jimenez, A Lilienthal, 28th
Symposium On Applied Computing (SAC), 2013.
- `mrGMRF_SD`: A Gaussian Markov Random Field (GMRF) estimator, with
these
constraints:
- `mrGMRF_SD`: Each cell only connected to its 4 immediate neighbors
(Up,
down, left, right).
- (Removed in MRPT 1.5.0: `mrGMRF_G`: Each cell connected to a
square
area
of neighbors cells)
- See papers:
- "Time-variant gas distribution mapping with obstacle
information",
Monroy, J. G., Blanco, J. L., & Gonzalez-Jimenez, J. Autonomous Robots,
40(1), 1-16, 2016.
Note that this class is virtual, since derived classes still have to
implement:
- mrpt::maps::CMetricMap::internal_computeObservationLikelihood()
- mrpt::maps::CMetricMap::internal_insertObservation()
- Serialization methods: writeToStream() and readFromStream()
[GMRF only] A custom connectivity pattern between cells can be defined by
calling setCellsConnectivity().
mrpt::maps::CGasConcentrationGridMap2D,
mrpt::maps::CWirelessPowerGridMap2D, mrpt::maps::CMetricMap,
mrpt::containers::CDynamicGrid, The application icp-slam,
mrpt::maps::CMultiMetricMap |
|
- Method resolution order:
- CRandomFieldGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CRandomFieldGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CRandomFieldGridMap2D::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, : mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D
C++: mrpt::maps::CRandomFieldGridMap2D::operator=(const class mrpt::maps::CRandomFieldGridMap2D &) --> class mrpt::maps::CRandomFieldGridMap2D &
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, c: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> float
C++: mrpt::maps::CRandomFieldGridMap2D::cell2float(const struct mrpt::maps::TRandomFieldCell &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CRandomFieldGridMap2D::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::CRandomFieldGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- enableProfiler(...)
- enableProfiler(*args, **kwargs)
Overloaded function.
1. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
2. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableProfiler(bool) --> void
- enableVerbose(...)
- enableVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable_verbose: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableVerbose(bool) --> void
- getAs3DObject(...)
- getAs3DObject(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, meanObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects, varObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns two 3D objects representing the mean and variance maps
C++: mrpt::maps::CRandomFieldGridMap2D::getAs3DObject(class mrpt::opengl::CSetOfObjects &, class mrpt::opengl::CSetOfObjects &) const --> void
- getAsBitmapFile(...)
- getAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_img: mrpt.pymrpt.mrpt.img.CImage) -> None
Returns an image just as described in
C++: mrpt::maps::CRandomFieldGridMap2D::getAsBitmapFile(class mrpt::img::CImage &) const --> void
- getAsMatrix(...)
- getAsMatrix(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_mat: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Like saveAsBitmapFile(), but returns the data in matrix form (first row
in the matrix is the upper (y_max) part of the map)
C++: mrpt::maps::CRandomFieldGridMap2D::getAsMatrix(class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMapType(...)
- getMapType(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation
Return the type of the random-field grid map, according to parameters
passed on construction.
C++: mrpt::maps::CRandomFieldGridMap2D::getMapType() --> enum mrpt::maps::CRandomFieldGridMap2D::TMapRepresentation
- getMeanAndCov(...)
- getMeanAndCov(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_cov: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Return the mean and covariance vector of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndCov(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMeanAndSTD(...)
- getMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Return the mean and STD vectors of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map (mean)
C++: mrpt::maps::CRandomFieldGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- insertIndividualReading(...)
- insertIndividualReading(*args, **kwargs)
Overloaded function.
1. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>) -> None
2. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool) -> None
3. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool) -> None
4. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool, reading_stddev: float) -> None
Direct update of the map with a reading in a given position of the map,
using
the appropriate method according to mapType passed in the constructor.
This is a direct way to update the map, an alternative to the generic
insertObservation() method which works with mrpt::obs::CObservation
objects.
C++: mrpt::maps::CRandomFieldGridMap2D::insertIndividualReading(const double, const struct mrpt::math::TPoint2D_<double> &, const bool, const bool, const double) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted (in
this class it always return false,
unless redefined otherwise in base classes)
C++: mrpt::maps::CRandomFieldGridMap2D::isEmpty() const --> bool
- isEnabledVerbose(...)
- isEnabledVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isEnabledVerbose() const --> bool
- isProfilerEnabled(...)
- isProfilerEnabled(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isProfilerEnabled() const --> bool
- predictMeasurement(...)
- predictMeasurement(*args, **kwargs)
Overloaded function.
1. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool) -> None
2. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool, interp_method: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod) -> None
Returns the prediction of the measurement at some (x,y) coordinates, and
its certainty (in the form of the expected variance).
C++: mrpt::maps::CRandomFieldGridMap2D::predictMeasurement(const double, const double, double &, double &, bool, const enum mrpt::maps::CRandomFieldGridMap2D::TGridInterpolationMethod) --> void
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
2. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell, additionalMarginMeters: float) -> None
Changes the size of the grid, maintaining previous contents.
setSize
C++: mrpt::maps::CRandomFieldGridMap2D::resize(double, double, double, double, const struct mrpt::maps::TRandomFieldCell &, double) --> void
- saveAsBitmapFile(...)
- saveAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save the current map as a graphical file (BMP,PNG,...).
The file format will be derived from the file extension (see
CImage::saveToFile )
It depends on the map representation model:
mrAchim: Each pixel is the ratio
mrKalmanFilter: Each pixel is the mean value of the Gaussian that
represents each cell.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsBitmapFile(const std::string &) const --> void
- saveAsMatlab3DGraph(...)
- saveAsMatlab3DGraph(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save a matlab ".m" file which represents as 3D surfaces the mean and a
given confidence level for the concentration of each cell.
This method can only be called in a KF map model.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(const std::string &) const --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filNamePrefix: str) -> None
The implementation in this class just calls all the corresponding method
of the contained metric maps
C++: mrpt::maps::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setCellsConnectivity(...)
- setCellsConnectivity(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_connectivity_descriptor: mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor) -> None
Sets a custom object to define the connectivity between cells. Must call
clear() or setSize() afterwards for the changes to take place.
C++: mrpt::maps::CRandomFieldGridMap2D::setCellsConnectivity(const class std::shared_ptr<struct mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor> &) --> void
- setMeanAndSTD(...)
- setMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Load the mean and STD vectors of the full Kalman filter estimate (works
for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::setMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
Changes the size of the grid, erasing previous contents.
Optional user-supplied object that
will visit all grid cells to define their connectivity with neighbors and
the strength of existing edges. If present, it overrides all options in
insertionOptions
resize
C++: mrpt::maps::CRandomFieldGridMap2D::setSize(const double, const double, const double, const double, const double, const struct mrpt::maps::TRandomFieldCell *) --> void
- updateMapEstimation(...)
- updateMapEstimation(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Run the method-specific procedure required to ensure that the mean &
variances are up-to-date with all inserted observations.
C++: mrpt::maps::CRandomFieldGridMap2D::updateMapEstimation() --> void
Static methods defined here:
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CRandomFieldGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- ConnectivityDescriptor = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.ConnectivityDescriptor'>
- Base class for user-supplied objects capable of describing cells
connectivity, used to build prior factors of the MRF graph.
setCellsConnectivity()
- TGridInterpolationMethod = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod'>
- TInsertionOptionsCommon = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TInsertionOptionsCommon'>
- Parameters common to any derived class.
Derived classes should derive a new struct from this one, plus "public
CLoadableOptions",
and call the internal_* methods where appropiate to deal with the
variables declared here.
Derived classes instantions of their "TInsertionOptions" MUST set the
pointer "m_insertOptions_common" upon construction.
- TMapRepresentation = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation'>
- gimBilinear = <TGridInterpolationMethod.gimBilinear: 1>
- gimNearest = <TGridInterpolationMethod.gimNearest: 0>
- mrAchim = <TMapRepresentation.mrKernelDM: 0>
- mrGMRF_SD = <TMapRepresentation.mrGMRF_SD: 4>
- mrKalmanApproximate = <TMapRepresentation.mrKalmanApproximate: 2>
- mrKalmanFilter = <TMapRepresentation.mrKalmanFilter: 1>
- mrKernelDM = <TMapRepresentation.mrKernelDM: 0>
- mrKernelDMV = <TMapRepresentation.mrKernelDMV: 3>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Returns a deep copy (clone) of the object, indepently of its class.
C++: mrpt::rtti::CObject::clone() const --> class mrpt::rtti::CObject *
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int, cy: int) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByIndex(unsigned int, unsigned int) --> struct mrpt::maps::TRandomFieldCell *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByPos(double, double) --> struct mrpt::maps::TRandomFieldCell *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, value: mrpt::maps::TRandomFieldCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::fill(const struct mrpt::maps::TRandomFieldCell &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2y(int) const --> double
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::saveToTextFile(const std::string &) const --> bool
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::y2idx(double) const --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CRandomFieldGridMap3D(mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, mrpt.pymrpt.mrpt.serialization.CSerializable) |
|
CRandomFieldGridMap3D represents a 3D regular grid where each voxel is
associated one real-valued property which is to be estimated by this class.
This class implements a Gaussian Markov Random Field (GMRF) estimator, with
each voxel being connected to its
6 immediate neighbors (Up, down, left, right, front, back).
- See papers:
- "Time-variant gas distribution mapping with obstacle information",
Monroy, J. G., Blanco, J. L., & Gonzalez-Jimenez, J. Autonomous Robots,
40(1), 1-16, 2016.
Note that this class does not derive from mrpt::maps::CMetricMap since the
estimated values do not have sensor-especific semantics,
i.e. the grid can be used to estimate temperature, gas concentration, etc.
Usage:
- Define grid size with either constructor or via `setSize()`.
- Initialize the map with `initialize()`. This resets the contents of the
map, so previously-added observations will be lost.
- Add observations of 3D voxels with `insertIndividualReading()`
Custom connectivity patterns can be defined with setVoxelsConnectivity().
mrpt::maps::CRandomFieldGridMap3D |
|
- Method resolution order:
- CRandomFieldGridMap3D
- mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CRandomFieldGridMap3D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float, arg2: float, arg3: float, arg4: float) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float, arg2: float, arg3: float, arg4: float, arg5: float) -> None
doc
8. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: float, arg1: float, arg2: float, arg3: float, arg4: float, arg5: float, arg6: float) -> None
doc
9. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, x_min: float, x_max: float, y_min: float, y_max: float, z_min: float, z_max: float, voxel_size: float, call_initialize_now: bool) -> None
10. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> None
11. __init__(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, : mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D
C++: mrpt::maps::CRandomFieldGridMap3D::operator=(const class mrpt::maps::CRandomFieldGridMap3D &) --> class mrpt::maps::CRandomFieldGridMap3D &
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> None
Erases all added observations and start again with an empty gridmap.
C++: mrpt::maps::CRandomFieldGridMap3D::clear() --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CRandomFieldGridMap3D::clone() const --> class mrpt::rtti::CObject *
- insertIndividualReading(...)
- insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, sensorReading: float, sensorVariance: float, point: mrpt::math::TPoint3D_<double>, method: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D.TVoxelInterpolationMethod, update_map: bool) -> bool
Direct update of the map with a reading in a given position of the map.
false if point is out of the grid extension.
C++: mrpt::maps::CRandomFieldGridMap3D::insertIndividualReading(const double, const double, const struct mrpt::math::TPoint3D_<double> &, const enum mrpt::maps::CRandomFieldGridMap3D::TVoxelInterpolationMethod, const bool) --> bool
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, new_z_min: float, new_z_max: float, defaultValueNewvoxels: mrpt.pymrpt.mrpt.maps.TRandomFieldVoxel) -> None
2. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, new_z_min: float, new_z_max: float, defaultValueNewvoxels: mrpt.pymrpt.mrpt.maps.TRandomFieldVoxel, additionalMarginMeters: float) -> None
Changes the size of the grid, maintaining previous contents.
setSize
C++: mrpt::maps::CRandomFieldGridMap3D::resize(double, double, double, double, double, double, const struct mrpt::maps::TRandomFieldVoxel &, double) --> void
- saveAsCSV(...)
- saveAsCSV(*args, **kwargs)
Overloaded function.
1. saveAsCSV(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, filName_mean: str) -> bool
2. saveAsCSV(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, filName_mean: str, filName_stddev: str) -> bool
Save the current estimated mean values to a CSV file (compatible with
Paraview) with fields `x y z mean_value`.
Optionally, std deviations can be also saved to another file with fields
`x y z stddev_value`, if `filName_stddev` is provided.
false on error writing to file
C++: mrpt::maps::CRandomFieldGridMap3D::saveAsCSV(const std::string &, const std::string &) const --> bool
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, x_min: float, x_max: float, y_min: float, y_max: float, z_min: float, z_max: float, resolution_xy: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, x_min: float, x_max: float, y_min: float, y_max: float, z_min: float, z_max: float, resolution_xy: float, resolution_z: float) -> None
3. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, x_min: float, x_max: float, y_min: float, y_max: float, z_min: float, z_max: float, resolution_xy: float, resolution_z: float, fill_value: mrpt.pymrpt.mrpt.maps.TRandomFieldVoxel) -> None
Changes the size of the grid, erasing previous contents.If
`resolution_z`<0, the same resolution will be used for all dimensions
x,y,z as given in `resolution_xy`
resize.
C++: mrpt::maps::CRandomFieldGridMap3D::setSize(const double, const double, const double, const double, const double, const double, const double, const double, const struct mrpt::maps::TRandomFieldVoxel *) --> void
- setVoxelsConnectivity(...)
- setVoxelsConnectivity(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D, new_connectivity_descriptor: mrpt::maps::CRandomFieldGridMap3D::ConnectivityDescriptor) -> None
Sets a custom object to define the connectivity between voxels. Must
call clear() or setSize() afterwards for the changes to take place.
C++: mrpt::maps::CRandomFieldGridMap3D::setVoxelsConnectivity(const class std::shared_ptr<struct mrpt::maps::CRandomFieldGridMap3D::ConnectivityDescriptor> &) --> void
- updateMapEstimation(...)
- updateMapEstimation(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D) -> None
Run the method-specific procedure required to ensure that the mean &
variances are up-to-date with all inserted observations, using parameters
in insertionOptions
C++: mrpt::maps::CRandomFieldGridMap3D::updateMapEstimation() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CRandomFieldGridMap3D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CRandomFieldGridMap3D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
Data and other attributes defined here:
- ConnectivityDescriptor = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D.ConnectivityDescriptor'>
- Base class for user-supplied objects capable of describing voxels
connectivity, used to build prior factors of the MRF graph.
setvoxelsConnectivity()
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D.TInsertionOptions'>
- Parameters common to any derived class.
Derived classes should derive a new struct from this one, plus
mrpt::config::CLoadableOptions,
and call the internal_* methods where appropiate to deal with the
variables declared here.
Derived classes instantions of their "TInsertionOptions" MUST set the
pointer "m_insertOptions_common" upon construction.
- TVoxelInterpolationMethod = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap3D.TVoxelInterpolationMethod'>
- gimBilinear = <TVoxelInterpolationMethod.gimBilinear: 1>
- gimNearest = <TVoxelInterpolationMethod.gimNearest: 0>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t:
- cellAbsIndexFromCXCYCZ(...)
- cellAbsIndexFromCXCYCZ(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cx: int, cy: int, cz: int) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::cellAbsIndexFromCXCYCZ(const int, const int, const int) const --> size_t
- cellByIndex(...)
- cellByIndex(*args, **kwargs)
Overloaded function.
1. cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cx: int, cy: int, cz: int) -> mrpt::maps::TRandomFieldVoxel
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::cellByIndex(unsigned int, unsigned int, unsigned int) --> struct mrpt::maps::TRandomFieldVoxel *
2. cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cidx: int) -> mrpt::maps::TRandomFieldVoxel
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::cellByIndex(size_t) --> struct mrpt::maps::TRandomFieldVoxel *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, x: float, y: float, z: float) -> mrpt::maps::TRandomFieldVoxel
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::cellByPos(double, double, double) --> struct mrpt::maps::TRandomFieldVoxel *
- cellRefByPos(...)
- cellRefByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, x: float, y: float, z: float) -> mrpt::maps::TRandomFieldVoxel
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::cellRefByPos(double, double, double) --> struct mrpt::maps::TRandomFieldVoxel &
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, value: mrpt::maps::TRandomFieldVoxel) -> None
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::fill(const struct mrpt::maps::TRandomFieldVoxel &) --> void
- getResolutionXY(...)
- getResolutionXY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getResolutionXY() const --> double
- getResolutionZ(...)
- getResolutionZ(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getResolutionZ() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getSizeY() const --> size_t
- getSizeZ(...)
- getSizeZ(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getSizeZ() const --> size_t
- getVoxelCount(...)
- getVoxelCount(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getVoxelCount() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getYMin() const --> double
- getZMax(...)
- getZMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getZMax() const --> double
- getZMin(...)
- getZMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::getZMin() const --> double
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::idx2y(int) const --> double
- idx2z(...)
- idx2z(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cz: int) -> float
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::idx2z(int) const --> double
- isOutOfBounds(...)
- isOutOfBounds(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, cx: int, cy: int, cz: int) -> bool
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::isOutOfBounds(const int, const int, const int) const --> bool
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::x2idx(double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::y2idx(double) const --> int
- z2idx(...)
- z2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid3D_mrpt_maps_TRandomFieldVoxel_double_t, z: float) -> int
C++: mrpt::containers::CDynamicGrid3D<mrpt::maps::TRandomFieldVoxel>::z2idx(double) const --> int
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CReflectivityGridMap2D(CMetricMap, mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, CLogOddsGridMap2D_signed_char_t) |
|
A 2D grid map representing the reflectivity of the environment (for example,
measured with an IR proximity sensor).
Important implemented features are:
- Insertion of mrpt::obs::CObservationReflectivity observations.
- Probability estimation of observations. See base class.
- Rendering as 3D object: a 2D textured plane.
- Automatic resizing of the map limits when inserting observations close
to
the border.
Each cell contains the up-to-date average height from measured falling in
that cell. Algorithms that can be used:
- mrSimpleAverage: Each cell only stores the current average value. |
|
- Method resolution order:
- CReflectivityGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t
- CLogOddsGridMap2D_signed_char_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CReflectivityGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: float) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: float, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: float, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: float, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
7. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> None
8. __init__(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> None
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CReflectivityGridMap2D::asString() const --> std::string
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, : mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D
C++: mrpt::maps::CReflectivityGridMap2D::operator=(const class mrpt::maps::CReflectivityGridMap2D &) --> class mrpt::maps::CReflectivityGridMap2D &
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, c: int) -> float
C++: mrpt::maps::CReflectivityGridMap2D::cell2float(const signed char &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CReflectivityGridMap2D::clear() --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CReflectivityGridMap2D::clone() const --> class mrpt::rtti::CObject *
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::CReflectivityGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- getAsImage(...)
- getAsImage(*args, **kwargs)
Overloaded function.
1. getAsImage(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage) -> None
2. getAsImage(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool) -> None
3. getAsImage(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, img: mrpt.pymrpt.mrpt.img.CImage, verticalFlip: bool, forceRGB: bool) -> None
Returns the grid as a 8-bit graylevel image, where each pixel is a cell
(output image is RGB only if forceRGB is true)
C++: mrpt::maps::CReflectivityGridMap2D::getAsImage(class mrpt::img::CImage &, bool, bool) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
C++: mrpt::maps::CReflectivityGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CReflectivityGridMap2D::isEmpty() const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D, filNamePrefix: str) -> None
C++: mrpt::maps::CReflectivityGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CReflectivityGridMap2D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CReflectivityGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D.TInsertionOptions'>
- Parameters related with inserting observations into the map.
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CReflectivityGridMap2D.TMapDefinitionBase'>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, cx: int, cy: int) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::cellByIndex(unsigned int, unsigned int) --> signed char *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::cellByPos(double, double) --> signed char *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, value: int) -> None
C++: mrpt::containers::CDynamicGrid<signed char>::fill(const signed char &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<signed char>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<signed char>::idx2y(int) const --> double
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: int) -> None
2. resize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: int, additionalMarginMeters: float) -> None
C++: mrpt::containers::CDynamicGrid<signed char>::resize(double, double, double, double, const signed char &, double) --> void
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<signed char>::saveToTextFile(const std::string &) const --> bool
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: int) -> None
C++: mrpt::containers::CDynamicGrid<signed char>::setSize(const double, const double, const double, const double, const double, const signed char *) --> void
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_signed_char_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<signed char>::y2idx(double) const --> int
Methods inherited from CLogOddsGridMap2D_signed_char_t:
- updateCell_fast_occupied(...)
- updateCell_fast_occupied(*args, **kwargs)
Overloaded function.
1. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_occupied(self: mrpt.pymrpt.mrpt.maps.CLogOddsGridMap2D_signed_char_t, theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_occupied(signed char *, const signed char, const signed char) --> void
Static methods inherited from CLogOddsGridMap2D_signed_char_t:
- updateCell_fast_free(...) from builtins.PyCapsule
- updateCell_fast_free(*args, **kwargs)
Overloaded function.
1. updateCell_fast_free(x: int, y: int, logodd_obs: int, thres: int, mapArray: int, _size_x: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(const unsigned int, const unsigned int, const signed char, const signed char, signed char *, const unsigned int) --> void
2. updateCell_fast_free(theCell: int, logodd_obs: int, thres: int) -> None
C++: mrpt::maps::CLogOddsGridMap2D<signed char>::updateCell_fast_free(signed char *, const signed char, const signed char) --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSimpleMap(mrpt.pymrpt.mrpt.serialization.CSerializable) |
|
A view-based representation of a metric map.
This comprises a list of `<ProbabilisticPose,SensoryFrame>` pairs, that is,
the **poses** (keyframes) from which a set of **observations** where
gathered:
- Poses, in the global `map` frame of reference, are stored as probabilistic
PDFs over SE(3) as instances of mrpt::poses::CPose3DPDF
- Observations are stored as mrpt::obs::CSensoryFrame.
Note that in order to generate an actual metric map (occupancy grid, point
cloud, octomap, etc.) from a "simple map", you must instantiate the desired
metric map class and invoke its virtual method
mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations().
Objects of this class are serialized into GZ-compressed
files with the extension `.simplemap`.
See [Robotics file formats](robotics_file_formats.html).
mrpt::obs::CSensoryFrame, mrpt::poses::CPose3DPDF, mrpt::maps::CMetricMap |
|
- Method resolution order:
- CSimpleMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CSimpleMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, arg0: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, arg0: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, o: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> mrpt.pymrpt.mrpt.maps.CSimpleMap
Copy, making a deep copy of all data.
C++: mrpt::maps::CSimpleMap::operator=(const class mrpt::maps::CSimpleMap &) --> class mrpt::maps::CSimpleMap &
- changeCoordinatesOrigin(...)
- changeCoordinatesOrigin(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, newOrigin: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Change the coordinate origin of all stored poses, that is, translates
and rotates the map such that the old SE(3) origin (identity
transformation) becomes the new provided one.
C++: mrpt::maps::CSimpleMap::changeCoordinatesOrigin(const class mrpt::poses::CPose3D &) --> void
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> None
Remove all stored pairs.
remove
C++: mrpt::maps::CSimpleMap::clear() --> void
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CSimpleMap::clone() const --> class mrpt::rtti::CObject *
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> bool
Returns size()!=0
C++: mrpt::maps::CSimpleMap::empty() const --> bool
- get(...)
- get(*args, **kwargs)
Overloaded function.
1. get(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int, out_posePDF: mrpt.pymrpt.mrpt.poses.CPose3DPDF, out_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Access to the 0-based index i'th pair.
std::exception On index out of bounds.
C++: mrpt::maps::CSimpleMap::get(size_t, class std::shared_ptr<const class mrpt::poses::CPose3DPDF> &, class std::shared_ptr<const class mrpt::obs::CSensoryFrame> &) const --> void
2. get(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int, out_posePDF: mrpt.pymrpt.mrpt.poses.CPose3DPDF, out_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
C++: mrpt::maps::CSimpleMap::get(size_t, class std::shared_ptr<class mrpt::poses::CPose3DPDF> &, class std::shared_ptr<class mrpt::obs::CSensoryFrame> &) --> void
3. get(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int) -> Tuple[mrpt.pymrpt.mrpt.poses.CPose3DPDF, mrpt.pymrpt.mrpt.obs.CSensoryFrame]
C++: mrpt::maps::CSimpleMap::get(size_t) --> class std::tuple<class std::shared_ptr<class mrpt::poses::CPose3DPDF>, class std::shared_ptr<class mrpt::obs::CSensoryFrame> >
- getAsPair(...)
- getAsPair(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int) -> mrpt::maps::CSimpleMap::Pair
C++: mrpt::maps::CSimpleMap::getAsPair(size_t) --> struct mrpt::maps::CSimpleMap::Pair &
- insert(...)
- insert(*args, **kwargs)
Overloaded function.
1. insert(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, in_posePDF: mrpt.pymrpt.mrpt.poses.CPose3DPDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Adds a new keyframe (SE(3) pose) to the view-based map, making a deep
copy of the pose PDF (observations within the SF are always copied as
`shared_ptr`s).
C++: mrpt::maps::CSimpleMap::insert(const class mrpt::poses::CPose3DPDF &, const class mrpt::obs::CSensoryFrame &) --> void
2. insert(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, in_posePDF: mrpt.pymrpt.mrpt.poses.CPose3DPDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Adds a new keyframe (SE(3) pose) to the view-based map.
Both shared pointers are copied (shallow object copies).
C++: mrpt::maps::CSimpleMap::insert(const class std::shared_ptr<class mrpt::poses::CPose3DPDF> &, const class std::shared_ptr<class mrpt::obs::CSensoryFrame> &) --> void
3. insert(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, poseSF: mrpt::maps::CSimpleMap::Pair) -> None
C++: mrpt::maps::CSimpleMap::insert(const struct mrpt::maps::CSimpleMap::Pair &) --> void
4. insert(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, in_posePDF: mrpt.pymrpt.mrpt.poses.CPosePDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Adds a new keyframe (SE(2) pose) to the view-based map, making a deep
copy of the pose PDF (observations within the SF are always copied as
`shared_ptr`s).
C++: mrpt::maps::CSimpleMap::insert(const class mrpt::poses::CPosePDF &, const class mrpt::obs::CSensoryFrame &) --> void
5. insert(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, in_posePDF: mrpt.pymrpt.mrpt.poses.CPosePDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Adds a new keyframe (SE(2) pose) to the view-based map.
Both shared pointers are copied (shallow object copies).
C++: mrpt::maps::CSimpleMap::insert(const class std::shared_ptr<class mrpt::poses::CPosePDF> &, const class std::shared_ptr<class mrpt::obs::CSensoryFrame> &) --> void
- loadFromFile(...)
- loadFromFile(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, filName: str) -> bool
Load the contents of this object from a .simplemap binary file (possibly
compressed with gzip)
See [Robotics file formats](robotics_file_formats.html).
saveToFile()
false on any error.
C++: mrpt::maps::CSimpleMap::loadFromFile(const std::string &) --> bool
- remove(...)
- remove(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int) -> None
Deletes the 0-based index i'th pair.
std::exception On index out of bounds.
insert, get, set
C++: mrpt::maps::CSimpleMap::remove(size_t) --> void
- saveToFile(...)
- saveToFile(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, filName: str) -> bool
Save this object to a .simplemap binary file (compressed with gzip)
See [Robotics file formats](robotics_file_formats.html).
loadFromFile()
false on any error.
C++: mrpt::maps::CSimpleMap::saveToFile(const std::string &) const --> bool
- set(...)
- set(*args, **kwargs)
Overloaded function.
1. set(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int, in_posePDF: mrpt.pymrpt.mrpt.poses.CPose3DPDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
Changes the 0-based index i'th pair.
If one of either `in_posePDF` or `in_SF` are empty `shared_ptr`s, the
corresponding field in the map is not modified.
std::exception On index out of bounds.
insert, get, remove
C++: mrpt::maps::CSimpleMap::set(size_t, const class std::shared_ptr<class mrpt::poses::CPose3DPDF> &, const class std::shared_ptr<class mrpt::obs::CSensoryFrame> &) --> void
2. set(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int, poseSF: mrpt::maps::CSimpleMap::Pair) -> None
C++: mrpt::maps::CSimpleMap::set(size_t, const struct mrpt::maps::CSimpleMap::Pair &) --> void
3. set(self: mrpt.pymrpt.mrpt.maps.CSimpleMap, index: int, in_posePDF: mrpt.pymrpt.mrpt.poses.CPosePDF, in_SF: mrpt.pymrpt.mrpt.obs.CSensoryFrame) -> None
C++: mrpt::maps::CSimpleMap::set(size_t, const class std::shared_ptr<class mrpt::poses::CPosePDF> &, const class std::shared_ptr<class mrpt::obs::CSensoryFrame> &) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CSimpleMap) -> int
Returns the count of (pose,sensoryFrame) pairs
C++: mrpt::maps::CSimpleMap::size() const --> size_t
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CSimpleMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CSimpleMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- ConstPair = <class 'mrpt.pymrpt.mrpt.maps.CSimpleMap.ConstPair'>
- Pair = <class 'mrpt.pymrpt.mrpt.maps.CSimpleMap.Pair'>
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSimplePointsMap(CPointsMap) |
|
A cloud of points in 2D or 3D, which can be built from a sequence of laser
scans.
This class only stores the coordinates (x,y,z) of each point.
See mrpt::maps::CPointsMap and derived classes for other point cloud
classes.
CMetricMap, CWeightedPointsMap, CPoint,
mrpt::serialization::CSerializable |
|
- Method resolution order:
- CSimplePointsMap
- CPointsMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.opengl.PLY_Importer
- mrpt.pymrpt.mrpt.opengl.PLY_Exporter
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CSimplePointsMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, arg0: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, arg0: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> None
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.maps.CSimplePointsMap
C++: mrpt::maps::CSimplePointsMap::operator=(const class mrpt::maps::CPointsMap &) --> class mrpt::maps::CSimplePointsMap &
2. assign(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, o: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> mrpt.pymrpt.mrpt.maps.CSimplePointsMap
C++: mrpt::maps::CSimplePointsMap::operator=(const class mrpt::maps::CSimplePointsMap &) --> class mrpt::maps::CSimplePointsMap &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CSimplePointsMap::clone() const --> class mrpt::rtti::CObject *
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap) -> mrpt.pymrpt.mrpt.maps.CSimplePointsMap
@}
C++: mrpt::maps::CSimplePointsMap::getAsSimplePointsMap() const --> const class mrpt::maps::CSimplePointsMap *
- insertPointFast(...)
- insertPointFast(*args, **kwargs)
Overloaded function.
1. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, x: float, y: float) -> None
2. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, x: float, y: float, z: float) -> None
The virtual method for *without* calling
mark_as_modified()
C++: mrpt::maps::CSimplePointsMap::insertPointFast(float, float, float) --> void
- reserve(...)
- reserve(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, newLength: int) -> None
from CPointsMap
@{
C++: mrpt::maps::CSimplePointsMap::reserve(size_t) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, newLength: int) -> None
C++: mrpt::maps::CSimplePointsMap::resize(size_t) --> void
- setSize(...)
- setSize(self: mrpt.pymrpt.mrpt.maps.CSimplePointsMap, newLength: int) -> None
C++: mrpt::maps::CSimplePointsMap::setSize(size_t) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CSimplePointsMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CSimplePointsMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CSimplePointsMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CSimplePointsMap.TMapDefinitionBase'>
Methods inherited from CPointsMap:
- __iadd__(...)
- __iadd__(self: mrpt.pymrpt.mrpt.maps.CPointsMap, anotherMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Inserts another map into this one.
insertAnotherMap()
C++: mrpt::maps::CPointsMap::operator+=(const class mrpt::maps::CPointsMap &) --> void
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CPointsMap::asString() const --> std::string
- boundingBox(...)
- boundingBox(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.math.TBoundingBox_float_t
Computes the bounding box of all the points, or (0,0 ,0,0, 0,0) if there
are no points.
Results are cached unless the map is somehow modified to avoid repeated
calculations.
C++: mrpt::maps::CPointsMap::boundingBox() const --> struct mrpt::math::TBoundingBox_<float>
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose2D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
3. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, other: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Copy all the points from "other" map to "this", replacing each point
by
(pose compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::maps::CPointsMap &, const class mrpt::poses::CPose3D &) --> void
- clipOutOfRange(...)
- clipOutOfRange(self: mrpt.pymrpt.mrpt.maps.CPointsMap, point: mrpt::math::TPoint2D_<double>, maxRange: float) -> None
Delete points which are more far than "maxRange" away from the given
"point".
C++: mrpt::maps::CPointsMap::clipOutOfRange(const struct mrpt::math::TPoint2D_<double> &, float) --> void
- clipOutOfRangeInZ(...)
- clipOutOfRangeInZ(self: mrpt.pymrpt.mrpt.maps.CPointsMap, zMin: float, zMax: float) -> None
Delete points out of the given "z" axis range have been removed.
C++: mrpt::maps::CPointsMap::clipOutOfRangeInZ(float, float) --> void
- compute3DDistanceToMesh(...)
- compute3DDistanceToMesh(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap2: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, maxDistForCorrespondence: float, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
Computes the matchings between this and another 3D points map.
This method matches each point in the other map with the centroid of the
3 closest points in 3D
from this map (if the distance is below a defined threshold).
[IN] The other map to compute the
matching with.
[IN] The pose of the other map as seen
from "this".
[IN] Maximum 2D linear distance
between two points to be matched.
[OUT] The detected matchings pairs.
[OUT] The ratio [0,1] of points in
otherMap with at least one correspondence.
determineMatching3D
C++: mrpt::maps::CPointsMap::compute3DDistanceToMesh(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, float, class mrpt::tfest::TMatchingPairListTempl<float> &, float &) --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CPointsMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
STL-like method to check whether the map is empty:
C++: mrpt::maps::CPointsMap::empty() const --> bool
- enableFilterByHeight(...)
- enableFilterByHeight(*args, **kwargs)
Overloaded function.
1. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, enable: bool) -> None
Enable/disable the filter-by-height functionality
setHeightFilterLevels
Default upon construction is disabled.
C++: mrpt::maps::CPointsMap::enableFilterByHeight(bool) --> void
- extractCylinder(...)
- extractCylinder(self: mrpt.pymrpt.mrpt.maps.CPointsMap, center: mrpt::math::TPoint2D_<double>, radius: float, zmin: float, zmax: float, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Extracts the points in the map within a cylinder in 3D defined the
provided radius and zmin/zmax values.
C++: mrpt::maps::CPointsMap::extractCylinder(const struct mrpt::math::TPoint2D_<double> &, const double, const double, const double, class mrpt::maps::CPointsMap *) --> void
- extractPoints(...)
- extractPoints(*args, **kwargs)
Overloaded function.
1. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float) -> None
3. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float) -> None
4. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float, B: float) -> None
Extracts the points in the map within the area defined by two corners.
The points are coloured according the R,G,B input data.
C++: mrpt::maps::CPointsMap::extractPoints(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, class mrpt::maps::CPointsMap *, double, double, double) --> void
- getHeightFilterLevels(...)
- getHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Get the min/max Z levels for points to be actually inserted in the map
enableFilterByHeight, setHeightFilterLevels
C++: mrpt::maps::CPointsMap::getHeightFilterLevels(double &, double &) const --> void
- getLargestDistanceFromOrigin(...)
- getLargestDistanceFromOrigin(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
This method returns the largest distance from the origin to any of the
points, such as a sphere centered at the origin with this radius cover
ALL the points in the map (the results are buffered, such as, if the map
is not modified, the second call will be much faster than the first one).
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOrigin() const --> float
- getLargestDistanceFromOriginNoRecompute(...)
- getLargestDistanceFromOriginNoRecompute(self: mrpt.pymrpt.mrpt.maps.CPointsMap, output_is_valid: bool) -> float
Like but returns in
= false if the distance was not already computed, skipping its
computation then, unlike getLargestDistanceFromOrigin()
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOriginNoRecompute(bool &) const --> float
- getPoint(...)
- getPoint(*args, **kwargs)
Overloaded function.
1. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Access to a given point from map, as a 2D point. First index is 0.
Throws std::exception on index out of bound.
setPoint, getPointFast
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &, float &) const --> void
2. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &) const --> void
3. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &, double &) const --> void
4. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &) const --> void
5. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint2D_<double> &) const --> void
6. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint3D_<double> &) const --> void
- getPointFast(...)
- getPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Just like but without checking out-of-bound index and
without returning the point weight, just XYZ.
C++: mrpt::maps::CPointsMap::getPointFast(size_t, float &, float &, float &) const --> void
- getPointRGB(...)
- getPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Access to a given point from map, and its colors, if the map defines
them (othersise, R=G=B=1.0). First index is 0.
The return value is the weight of the point (the times it has
been fused)
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::getPointRGB(size_t, float &, float &, float &, float &, float &, float &) const --> void
- getPointWeight(...)
- getPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int) -> int
Gets the point weight, which is ignored in all classes (defaults to 1)
but in those which actually store that field (Note: No checks are done
for out-of-bounds index).
setPointWeight
C++: mrpt::maps::CPointsMap::getPointWeight(size_t) const --> unsigned int
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CPointsMap, outObj: mrpt::opengl::CSetOfObjects) -> None
Returns a 3D object representing the map.
The color of the points is controlled by renderOptions
C++: mrpt::maps::CPointsMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- hasColorPoints(...)
- hasColorPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the point map has a color field for each point
C++: mrpt::maps::CPointsMap::hasColorPoints() const --> bool
- insertAnotherMap(...)
- insertAnotherMap(*args, **kwargs)
Overloaded function.
1. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D, filterOutPointsAtZero: bool) -> None
Insert the contents of another map into this one with some geometric
transformation, without fusing close points.
The other map whose points are to be inserted into this
one.
The pose of the other map in the coordinates of THIS map
If true, points at (0,0,0) (in the frame of
reference of `otherMap`) will be assumed to be invalid and will not be
copied.
fuseWith, addFrom
C++: mrpt::maps::CPointsMap::insertAnotherMap(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose3D &, const bool) --> void
- insertPoint(...)
- insertPoint(*args, **kwargs)
Overloaded function.
1. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
Provides a way to insert (append) individual points into the map: the
missing fields of child
classes (color, weight, etc) are left to their default values
C++: mrpt::maps::CPointsMap::insertPoint(float, float, float) --> void
3. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::insertPoint(const struct mrpt::math::TPoint3D_<double> &) --> void
- insertPointRGB(...)
- insertPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::insertPointRGB(float, float, float, float, float, float) --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
@}
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- internal_computeObservationLikelihoodPointCloud3D(...)
- internal_computeObservationLikelihoodPointCloud3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_in_map: mrpt.pymrpt.mrpt.poses.CPose3D, xs: float, ys: float, zs: float, num_pts: int) -> float
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihoodPointCloud3D(const class mrpt::poses::CPose3D &, const float *, const float *, const float *, const unsigned long) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CPointsMap::isEmpty() const --> bool
- isFilterByHeightEnabled(...)
- isFilterByHeightEnabled(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Return whether filter-by-height is enabled
enableFilterByHeight
C++: mrpt::maps::CPointsMap::isFilterByHeightEnabled() const --> bool
- kdtree_distance(...)
- kdtree_distance(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p1: float, idx_p2: int, size: int) -> float
Returns the distance between the vector "p1[0:size-1]" and the data
point with index "idx_p2" stored in the class:
C++: mrpt::maps::CPointsMap::kdtree_distance(const float *, size_t, size_t) const --> float
- kdtree_get_point_count(...)
- kdtree_get_point_count(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Must return the number of data points
C++: mrpt::maps::CPointsMap::kdtree_get_point_count() const --> size_t
- kdtree_get_pt(...)
- kdtree_get_pt(self: mrpt.pymrpt.mrpt.maps.CPointsMap, idx: int, dim: int) -> float
Returns the dim'th component of the idx'th point in the class:
C++: mrpt::maps::CPointsMap::kdtree_get_pt(size_t, int) const --> float
- load2D_from_text_file(...)
- load2D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y" coordinate
pair, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load2D_from_text_file(const std::string &) --> bool
- load2Dor3D_from_text_file(...)
- load2Dor3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str, is_3D: bool) -> bool
2D or 3D generic implementation of and
load3D_from_text_file
C++: mrpt::maps::CPointsMap::load2Dor3D_from_text_file(const std::string &, const bool) --> bool
- load3D_from_text_file(...)
- load3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y Z" coordinate
tuple, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load3D_from_text_file(const std::string &) --> bool
- mark_as_modified(...)
- mark_as_modified(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Users normally don't need to call this. Called by this class or children
classes, set m_largestDistanceFromOriginIsUpdated=false, invalidates the
kd-tree cache, and such.
C++: mrpt::maps::CPointsMap::mark_as_modified() const --> void
- save2D_to_text_file(...)
- save2D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save2D_to_text_file(const std::string &) const --> bool
- save3D_to_text_file(...)
- save3D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y Z" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save3D_to_text_file(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CPointsMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface)
C++: mrpt::maps::CPointsMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setHeightFilterLevels(...)
- setHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Set the min/max Z levels for points to be actually inserted in the map
(only if was called before).
C++: mrpt::maps::CPointsMap::setHeightFilterLevels(const double, const double) --> void
- setPoint(...)
- setPoint(*args, **kwargs)
Overloaded function.
1. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes a given point from map, with Z defaulting to 0 if not provided.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float, float) --> void
2. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint2D_<double> &) --> void
3. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint3D_<double> &) --> void
4. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float) --> void
- setPointFast(...)
- setPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes the coordinates of the given point (0-based index), *without*
checking for out-of-bounds and *without* calling mark_as_modified().
Also, color, intensity, or other data is left unchanged.
setPoint
C++: mrpt::maps::CPointsMap::setPointFast(size_t, float, float, float) --> void
- setPointRGB(...)
- setPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::setPointRGB(size_t, float, float, float, float, float, float) --> void
- setPointWeight(...)
- setPointWeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, w: int) -> None
Sets the point weight, which is ignored in all classes but those which
actually store that field (Note: No checks are done for out-of-bounds
index).
getPointWeight
C++: mrpt::maps::CPointsMap::setPointWeight(size_t, unsigned long) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Returns the number of stored points in the map.
C++: mrpt::maps::CPointsMap::size() const --> size_t
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondence(float, float) const --> float
- squareDistanceToClosestCorrespondenceT(...)
- squareDistanceToClosestCorrespondenceT(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p0: mrpt::math::TPoint2D_<double>) -> float
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondenceT(const struct mrpt::math::TPoint2D_<double> &) const --> float
Data descriptors inherited from CPointsMap:
- insertionOptions
- likelihoodOptions
- renderOptions
Data and other attributes inherited from CPointsMap:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoPointsMap
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TLikelihoodOptions'>
- Options used when evaluating "computeObservationLikelihood" in the
derived classes.
CObservation::computeObservationLikelihood
- TRenderOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TRenderOptions'>
- Rendering options, used in getAs3DObject()
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Importer:
- getLoadPLYErrorString(...)
- getLoadPLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Importer::getLoadPLYErrorString() const --> std::string
- loadFromPlyFile(...)
- loadFromPlyFile(*args, **kwargs)
Overloaded function.
1. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str) -> bool
2. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str]) -> bool
3. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str], file_obj_info: List[str]) -> bool
Loads from a PLY file.
The filename to open. It can be either in binary or
text format.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error in the file format or reading it. To obtain
more details on the error you can call getLoadPLYErrorString()
C++: mrpt::opengl::PLY_Importer::loadFromPlyFile(const std::string &, class std::vector<std::string > *, class std::vector<std::string > *) --> bool
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Exporter:
- getSavePLYErrorString(...)
- getSavePLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Exporter::getSavePLYErrorString() const --> std::string
- saveToPlyFile(...)
- saveToPlyFile(*args, **kwargs)
Overloaded function.
1. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str) -> bool
2. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool) -> bool
3. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str]) -> bool
4. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str], file_obj_info: List[str]) -> bool
Saves to a PLY file.
The filename to be saved.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error writing the file. To obtain more details on
the error you can call getSavePLYErrorString()
C++: mrpt::opengl::PLY_Exporter::saveToPlyFile(const std::string &, bool, const class std::vector<std::string > &, const class std::vector<std::string > &) const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CWeightedPointsMap(CPointsMap) |
|
A cloud of points in 2D or 3D, which can be built from a sequence of laser
scans.
This class stores the coordinates (x,y,z) and a "weight", or counter of
how many times that point has been seen, used only if points fusion is
enabled in the options structure.
CMetricMap, CPoint, mrpt::serialization::CSerializable, CSimplePointsMap |
|
- Method resolution order:
- CWeightedPointsMap
- CPointsMap
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.opengl.PLY_Importer
- mrpt.pymrpt.mrpt.opengl.PLY_Exporter
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CWeightedPointsMap::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, arg0: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> None
4. __init__(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, arg0: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> None
- assign(...)
- assign(*args, **kwargs)
Overloaded function.
1. assign(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, o: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.maps.CWeightedPointsMap
C++: mrpt::maps::CWeightedPointsMap::operator=(const class mrpt::maps::CPointsMap &) --> class mrpt::maps::CWeightedPointsMap &
2. assign(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, o: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> mrpt.pymrpt.mrpt.maps.CWeightedPointsMap
C++: mrpt::maps::CWeightedPointsMap::operator=(const class mrpt::maps::CWeightedPointsMap &) --> class mrpt::maps::CWeightedPointsMap &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CWeightedPointsMap::clone() const --> class mrpt::rtti::CObject *
- getPointWeight(...)
- getPointWeight(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, index: int) -> int
Gets the point weight, which is ignored in all classes (defaults to 1)
but in those which actually store that field (Note: No checks are done
for out-of-bounds index).
setPointWeight
C++: mrpt::maps::CWeightedPointsMap::getPointWeight(size_t) const --> unsigned int
- insertPointFast(...)
- insertPointFast(*args, **kwargs)
Overloaded function.
1. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, x: float, y: float) -> None
2. insertPointFast(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, x: float, y: float, z: float) -> None
The virtual method for *without* calling
mark_as_modified()
C++: mrpt::maps::CWeightedPointsMap::insertPointFast(float, float, float) --> void
- reserve(...)
- reserve(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, newLength: int) -> None
from CPointsMap
@{
C++: mrpt::maps::CWeightedPointsMap::reserve(size_t) --> void
- resize(...)
- resize(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, newLength: int) -> None
C++: mrpt::maps::CWeightedPointsMap::resize(size_t) --> void
- setPointWeight(...)
- setPointWeight(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, index: int, w: int) -> None
Sets the point weight, which is ignored in all classes but those which
actually store that field (Note: No checks are done for out-of-bounds
index).
getPointWeight
C++: mrpt::maps::CWeightedPointsMap::setPointWeight(size_t, unsigned long) --> void
- setSize(...)
- setSize(self: mrpt.pymrpt.mrpt.maps.CWeightedPointsMap, newLength: int) -> None
C++: mrpt::maps::CWeightedPointsMap::setSize(size_t) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CWeightedPointsMap::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CWeightedPointsMap::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data and other attributes defined here:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CWeightedPointsMap.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CWeightedPointsMap.TMapDefinitionBase'>
Methods inherited from CPointsMap:
- __iadd__(...)
- __iadd__(self: mrpt.pymrpt.mrpt.maps.CPointsMap, anotherMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Inserts another map into this one.
insertAnotherMap()
C++: mrpt::maps::CPointsMap::operator+=(const class mrpt::maps::CPointsMap &) --> void
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> str
Returns a short description of the map.
C++: mrpt::maps::CPointsMap::asString() const --> std::string
- boundingBox(...)
- boundingBox(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> mrpt.pymrpt.mrpt.math.TBoundingBox_float_t
Computes the bounding box of all the points, or (0,0 ,0,0, 0,0) if there
are no points.
Results are cached unless the map is somehow modified to avoid repeated
calculations.
C++: mrpt::maps::CPointsMap::boundingBox() const --> struct mrpt::math::TBoundingBox_<float>
- changeCoordinatesReference(...)
- changeCoordinatesReference(*args, **kwargs)
Overloaded function.
1. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose2D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose2D &) --> void
2. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Replace each point
by
(pose
compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::poses::CPose3D &) --> void
3. changeCoordinatesReference(self: mrpt.pymrpt.mrpt.maps.CPointsMap, other: mrpt.pymrpt.mrpt.maps.CPointsMap, b: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Copy all the points from "other" map to "this", replacing each point
by
(pose compounding operator).
C++: mrpt::maps::CPointsMap::changeCoordinatesReference(const class mrpt::maps::CPointsMap &, const class mrpt::poses::CPose3D &) --> void
- clipOutOfRange(...)
- clipOutOfRange(self: mrpt.pymrpt.mrpt.maps.CPointsMap, point: mrpt::math::TPoint2D_<double>, maxRange: float) -> None
Delete points which are more far than "maxRange" away from the given
"point".
C++: mrpt::maps::CPointsMap::clipOutOfRange(const struct mrpt::math::TPoint2D_<double> &, float) --> void
- clipOutOfRangeInZ(...)
- clipOutOfRangeInZ(self: mrpt.pymrpt.mrpt.maps.CPointsMap, zMin: float, zMax: float) -> None
Delete points out of the given "z" axis range have been removed.
C++: mrpt::maps::CPointsMap::clipOutOfRangeInZ(float, float) --> void
- compute3DDistanceToMesh(...)
- compute3DDistanceToMesh(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap2: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, maxDistForCorrespondence: float, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, correspondencesRatio: float) -> None
Computes the matchings between this and another 3D points map.
This method matches each point in the other map with the centroid of the
3 closest points in 3D
from this map (if the distance is below a defined threshold).
[IN] The other map to compute the
matching with.
[IN] The pose of the other map as seen
from "this".
[IN] Maximum 2D linear distance
between two points to be matched.
[OUT] The detected matchings pairs.
[OUT] The ratio [0,1] of points in
otherMap with at least one correspondence.
determineMatching3D
C++: mrpt::maps::CPointsMap::compute3DDistanceToMesh(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, float, class mrpt::tfest::TMatchingPairListTempl<float> &, float &) --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
C++: mrpt::maps::CPointsMap::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
C++: mrpt::maps::CPointsMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- empty(...)
- empty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
STL-like method to check whether the map is empty:
C++: mrpt::maps::CPointsMap::empty() const --> bool
- enableFilterByHeight(...)
- enableFilterByHeight(*args, **kwargs)
Overloaded function.
1. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. enableFilterByHeight(self: mrpt.pymrpt.mrpt.maps.CPointsMap, enable: bool) -> None
Enable/disable the filter-by-height functionality
setHeightFilterLevels
Default upon construction is disabled.
C++: mrpt::maps::CPointsMap::enableFilterByHeight(bool) --> void
- extractCylinder(...)
- extractCylinder(self: mrpt.pymrpt.mrpt.maps.CPointsMap, center: mrpt::math::TPoint2D_<double>, radius: float, zmin: float, zmax: float, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Extracts the points in the map within a cylinder in 3D defined the
provided radius and zmin/zmax values.
C++: mrpt::maps::CPointsMap::extractCylinder(const struct mrpt::math::TPoint2D_<double> &, const double, const double, const double, class mrpt::maps::CPointsMap *) --> void
- extractPoints(...)
- extractPoints(*args, **kwargs)
Overloaded function.
1. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
2. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float) -> None
3. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float) -> None
4. extractPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap, corner1: mrpt::math::TPoint3D_<double>, corner2: mrpt::math::TPoint3D_<double>, outMap: mrpt.pymrpt.mrpt.maps.CPointsMap, R: float, G: float, B: float) -> None
Extracts the points in the map within the area defined by two corners.
The points are coloured according the R,G,B input data.
C++: mrpt::maps::CPointsMap::extractPoints(const struct mrpt::math::TPoint3D_<double> &, const struct mrpt::math::TPoint3D_<double> &, class mrpt::maps::CPointsMap *, double, double, double) --> void
- getHeightFilterLevels(...)
- getHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Get the min/max Z levels for points to be actually inserted in the map
enableFilterByHeight, setHeightFilterLevels
C++: mrpt::maps::CPointsMap::getHeightFilterLevels(double &, double &) const --> void
- getLargestDistanceFromOrigin(...)
- getLargestDistanceFromOrigin(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> float
This method returns the largest distance from the origin to any of the
points, such as a sphere centered at the origin with this radius cover
ALL the points in the map (the results are buffered, such as, if the map
is not modified, the second call will be much faster than the first one).
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOrigin() const --> float
- getLargestDistanceFromOriginNoRecompute(...)
- getLargestDistanceFromOriginNoRecompute(self: mrpt.pymrpt.mrpt.maps.CPointsMap, output_is_valid: bool) -> float
Like but returns in
= false if the distance was not already computed, skipping its
computation then, unlike getLargestDistanceFromOrigin()
C++: mrpt::maps::CPointsMap::getLargestDistanceFromOriginNoRecompute(bool &) const --> float
- getPoint(...)
- getPoint(*args, **kwargs)
Overloaded function.
1. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Access to a given point from map, as a 2D point. First index is 0.
Throws std::exception on index out of bound.
setPoint, getPointFast
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &, float &) const --> void
2. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, float &, float &) const --> void
3. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &, double &) const --> void
4. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, double &, double &) const --> void
5. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint2D_<double> &) const --> void
6. getPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::getPoint(size_t, struct mrpt::math::TPoint3D_<double> &) const --> void
- getPointFast(...)
- getPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Just like but without checking out-of-bound index and
without returning the point weight, just XYZ.
C++: mrpt::maps::CPointsMap::getPointFast(size_t, float &, float &, float &) const --> void
- getPointRGB(...)
- getPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
Access to a given point from map, and its colors, if the map defines
them (othersise, R=G=B=1.0). First index is 0.
The return value is the weight of the point (the times it has
been fused)
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::getPointRGB(size_t, float &, float &, float &, float &, float &, float &) const --> void
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CPointsMap, outObj: mrpt::opengl::CSetOfObjects) -> None
Returns a 3D object representing the map.
The color of the points is controlled by renderOptions
C++: mrpt::maps::CPointsMap::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
- hasColorPoints(...)
- hasColorPoints(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the point map has a color field for each point
C++: mrpt::maps::CPointsMap::hasColorPoints() const --> bool
- insertAnotherMap(...)
- insertAnotherMap(*args, **kwargs)
Overloaded function.
1. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
2. insertAnotherMap(self: mrpt.pymrpt.mrpt.maps.CPointsMap, otherMap: mrpt.pymrpt.mrpt.maps.CPointsMap, otherPose: mrpt.pymrpt.mrpt.poses.CPose3D, filterOutPointsAtZero: bool) -> None
Insert the contents of another map into this one with some geometric
transformation, without fusing close points.
The other map whose points are to be inserted into this
one.
The pose of the other map in the coordinates of THIS map
If true, points at (0,0,0) (in the frame of
reference of `otherMap`) will be assumed to be invalid and will not be
copied.
fuseWith, addFrom
C++: mrpt::maps::CPointsMap::insertAnotherMap(const class mrpt::maps::CPointsMap *, const class mrpt::poses::CPose3D &, const bool) --> void
- insertPoint(...)
- insertPoint(*args, **kwargs)
Overloaded function.
1. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float) -> None
2. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float) -> None
Provides a way to insert (append) individual points into the map: the
missing fields of child
classes (color, weight, etc) are left to their default values
C++: mrpt::maps::CPointsMap::insertPoint(float, float, float) --> void
3. insertPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::insertPoint(const struct mrpt::math::TPoint3D_<double> &) --> void
- insertPointRGB(...)
- insertPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::insertPointRGB(float, float, float, float, float, float) --> void
- internal_computeObservationLikelihood(...)
- internal_computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CPointsMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
@}
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- internal_computeObservationLikelihoodPointCloud3D(...)
- internal_computeObservationLikelihoodPointCloud3D(self: mrpt.pymrpt.mrpt.maps.CPointsMap, pc_in_map: mrpt.pymrpt.mrpt.poses.CPose3D, xs: float, ys: float, zs: float, num_pts: int) -> float
C++: mrpt::maps::CPointsMap::internal_computeObservationLikelihoodPointCloud3D(const class mrpt::poses::CPose3D &, const float *, const float *, const float *, const unsigned long) const --> double
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Returns true if the map is empty/no observation has been inserted.
C++: mrpt::maps::CPointsMap::isEmpty() const --> bool
- isFilterByHeightEnabled(...)
- isFilterByHeightEnabled(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> bool
Return whether filter-by-height is enabled
enableFilterByHeight
C++: mrpt::maps::CPointsMap::isFilterByHeightEnabled() const --> bool
- kdtree_distance(...)
- kdtree_distance(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p1: float, idx_p2: int, size: int) -> float
Returns the distance between the vector "p1[0:size-1]" and the data
point with index "idx_p2" stored in the class:
C++: mrpt::maps::CPointsMap::kdtree_distance(const float *, size_t, size_t) const --> float
- kdtree_get_point_count(...)
- kdtree_get_point_count(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Must return the number of data points
C++: mrpt::maps::CPointsMap::kdtree_get_point_count() const --> size_t
- kdtree_get_pt(...)
- kdtree_get_pt(self: mrpt.pymrpt.mrpt.maps.CPointsMap, idx: int, dim: int) -> float
Returns the dim'th component of the idx'th point in the class:
C++: mrpt::maps::CPointsMap::kdtree_get_pt(size_t, int) const --> float
- load2D_from_text_file(...)
- load2D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y" coordinate
pair, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load2D_from_text_file(const std::string &) --> bool
- load2Dor3D_from_text_file(...)
- load2Dor3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str, is_3D: bool) -> bool
2D or 3D generic implementation of and
load3D_from_text_file
C++: mrpt::maps::CPointsMap::load2Dor3D_from_text_file(const std::string &, const bool) --> bool
- load3D_from_text_file(...)
- load3D_from_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Load from a text file. Each line should contain an "X Y Z" coordinate
tuple, separated by whitespaces.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::load3D_from_text_file(const std::string &) --> bool
- mark_as_modified(...)
- mark_as_modified(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> None
Users normally don't need to call this. Called by this class or children
classes, set m_largestDistanceFromOriginIsUpdated=false, invalidates the
kd-tree cache, and such.
C++: mrpt::maps::CPointsMap::mark_as_modified() const --> void
- save2D_to_text_file(...)
- save2D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save2D_to_text_file(const std::string &) const --> bool
- save3D_to_text_file(...)
- save3D_to_text_file(self: mrpt.pymrpt.mrpt.maps.CPointsMap, file: str) -> bool
Save to a text file. Each line will contain "X Y Z" point coordinates.
Returns false if any error occured, true elsewere.
C++: mrpt::maps::CPointsMap::save3D_to_text_file(const std::string &) const --> bool
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CPointsMap, filNamePrefix: str) -> None
This virtual method saves the map to a file "filNamePrefix"+<
some_file_extension >, as an image or in any other applicable way (Notice
that other methods to save the map may be implemented in classes
implementing this virtual interface)
C++: mrpt::maps::CPointsMap::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setHeightFilterLevels(...)
- setHeightFilterLevels(self: mrpt.pymrpt.mrpt.maps.CPointsMap, _z_min: float, _z_max: float) -> None
Set the min/max Z levels for points to be actually inserted in the map
(only if was called before).
C++: mrpt::maps::CPointsMap::setHeightFilterLevels(const double, const double) --> void
- setPoint(...)
- setPoint(*args, **kwargs)
Overloaded function.
1. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes a given point from map, with Z defaulting to 0 if not provided.
Throws std::exception on index out of bound.
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float, float) --> void
2. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint2D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint2D_<double> &) --> void
3. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, p: mrpt::math::TPoint3D_<double>) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, const struct mrpt::math::TPoint3D_<double> &) --> void
4. setPoint(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float) -> None
C++: mrpt::maps::CPointsMap::setPoint(size_t, float, float) --> void
- setPointFast(...)
- setPointFast(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float) -> None
Changes the coordinates of the given point (0-based index), *without*
checking for out-of-bounds and *without* calling mark_as_modified().
Also, color, intensity, or other data is left unchanged.
setPoint
C++: mrpt::maps::CPointsMap::setPointFast(size_t, float, float, float) --> void
- setPointRGB(...)
- setPointRGB(self: mrpt.pymrpt.mrpt.maps.CPointsMap, index: int, x: float, y: float, z: float, R: float, G: float, B: float) -> None
overload (RGB data is ignored in classes without color information)
C++: mrpt::maps::CPointsMap::setPointRGB(size_t, float, float, float, float, float, float) --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.CPointsMap) -> int
Returns the number of stored points in the map.
C++: mrpt::maps::CPointsMap::size() const --> size_t
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CPointsMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondence(float, float) const --> float
- squareDistanceToClosestCorrespondenceT(...)
- squareDistanceToClosestCorrespondenceT(self: mrpt.pymrpt.mrpt.maps.CPointsMap, p0: mrpt::math::TPoint2D_<double>) -> float
C++: mrpt::maps::CPointsMap::squareDistanceToClosestCorrespondenceT(const struct mrpt::math::TPoint2D_<double> &) const --> float
Data descriptors inherited from CPointsMap:
- insertionOptions
- likelihoodOptions
- renderOptions
Data and other attributes inherited from CPointsMap:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TInsertionOptions'>
- With this struct options are provided to the observation insertion
process.
CObservation::insertIntoPointsMap
- TLikelihoodOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TLikelihoodOptions'>
- Options used when evaluating "computeObservationLikelihood" in the
derived classes.
CObservation::computeObservationLikelihood
- TRenderOptions = <class 'mrpt.pymrpt.mrpt.maps.CPointsMap.TRenderOptions'>
- Rendering options, used in getAs3DObject()
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
Erase all the contents of the map
C++: mrpt::maps::CMetricMap::clear() --> void
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Importer:
- getLoadPLYErrorString(...)
- getLoadPLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Importer::getLoadPLYErrorString() const --> std::string
- loadFromPlyFile(...)
- loadFromPlyFile(*args, **kwargs)
Overloaded function.
1. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str) -> bool
2. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str]) -> bool
3. loadFromPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Importer, filename: str, file_comments: List[str], file_obj_info: List[str]) -> bool
Loads from a PLY file.
The filename to open. It can be either in binary or
text format.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error in the file format or reading it. To obtain
more details on the error you can call getLoadPLYErrorString()
C++: mrpt::opengl::PLY_Importer::loadFromPlyFile(const std::string &, class std::vector<std::string > *, class std::vector<std::string > *) --> bool
Methods inherited from mrpt.pymrpt.mrpt.opengl.PLY_Exporter:
- getSavePLYErrorString(...)
- getSavePLYErrorString(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter) -> str
Return a description of the error if loadFromPlyFile() returned false,
or an empty string if the file was loaded without problems.
C++: mrpt::opengl::PLY_Exporter::getSavePLYErrorString() const --> std::string
- saveToPlyFile(...)
- saveToPlyFile(*args, **kwargs)
Overloaded function.
1. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str) -> bool
2. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool) -> bool
3. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str]) -> bool
4. saveToPlyFile(self: mrpt.pymrpt.mrpt.opengl.PLY_Exporter, filename: str, save_in_binary: bool, file_comments: List[str], file_obj_info: List[str]) -> bool
Saves to a PLY file.
The filename to be saved.
If provided (!=nullptr) the list of comment
strings stored in the file will be returned.
If provided (!=nullptr) the list of "object
info" strings stored in the file will be returned.
false on any error writing the file. To obtain more details on
the error you can call getSavePLYErrorString()
C++: mrpt::opengl::PLY_Exporter::saveToPlyFile(const std::string &, bool, const class std::vector<std::string > &, const class std::vector<std::string > &) const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CWirelessPowerGridMap2D(CRandomFieldGridMap2D) |
|
CWirelessPowerGridMap2D represents a PDF of wifi concentrations over a 2D
area.
There are a number of methods available to build the wifi grid-map,
depending on the value of
"TMapRepresentation maptype" passed in the constructor (see
CRandomFieldGridMap2D for a discussion).
Update the map with insertIndividualReading() or insertObservation()
mrpt::maps::CRandomFieldGridMap2D, mrpt::maps::CMetricMap,
mrpt::containers::CDynamicGrid, The application icp-slam,
mrpt::maps::CMultiMetricMap |
|
- Method resolution order:
- CWirelessPowerGridMap2D
- CRandomFieldGridMap2D
- CMetricMap
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- mrpt.pymrpt.mrpt.system.CObservable
- mrpt.pymrpt.mrpt.Stringifyable
- mrpt.pymrpt.mrpt.opengl.Visualizable
- mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CWirelessPowerGridMap2D::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, arg1: float, arg2: float, arg3: float, arg4: float) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, mapType: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
8. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> None
9. __init__(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, arg0: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, : mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D
C++: mrpt::maps::CWirelessPowerGridMap2D::operator=(const class mrpt::maps::CWirelessPowerGridMap2D &) --> class mrpt::maps::CWirelessPowerGridMap2D &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CWirelessPowerGridMap2D::clone() const --> class mrpt::rtti::CObject *
- getVisualizationInto(...)
- getVisualizationInto(self: mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D, outObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns a 3D object representing the map
C++: mrpt::maps::CWirelessPowerGridMap2D::getVisualizationInto(class mrpt::opengl::CSetOfObjects &) const --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::CWirelessPowerGridMap2D::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::CWirelessPowerGridMap2D::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- insertionOptions
Data and other attributes defined here:
- TInsertionOptions = <class 'mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D.TInsertionOptions'>
- Parameters related with inserting observations into the map:
- TMapDefinition = <class 'mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D.TMapDefinition'>
- TMapDefinitionBase = <class 'mrpt.pymrpt.mrpt.maps.CWirelessPowerGridMap2D.TMapDefinitionBase'>
Methods inherited from CRandomFieldGridMap2D:
- asString(...)
- asString(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> str
Returns a short description of the map.
C++: mrpt::maps::CRandomFieldGridMap2D::asString() const --> std::string
- cell2float(...)
- cell2float(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, c: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> float
C++: mrpt::maps::CRandomFieldGridMap2D::cell2float(const struct mrpt::maps::TRandomFieldCell &) const --> float
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Calls the base CMetricMap::clear
Declared here to avoid ambiguity between the two clear() in both base
classes.
C++: mrpt::maps::CRandomFieldGridMap2D::clear() --> void
- compute3DMatchingRatio(...)
- compute3DMatchingRatio(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, params: mrpt.pymrpt.mrpt.maps.TMatchingRatioParams) -> float
See docs in base class: in this class this always returns 0
C++: mrpt::maps::CRandomFieldGridMap2D::compute3DMatchingRatio(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, const struct mrpt::maps::TMatchingRatioParams &) const --> float
- enableProfiler(...)
- enableProfiler(*args, **kwargs)
Overloaded function.
1. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
2. enableProfiler(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableProfiler(bool) --> void
- enableVerbose(...)
- enableVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, enable_verbose: bool) -> None
C++: mrpt::maps::CRandomFieldGridMap2D::enableVerbose(bool) --> void
- getAs3DObject(...)
- getAs3DObject(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, meanObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects, varObj: mrpt.pymrpt.mrpt.opengl.CSetOfObjects) -> None
Returns two 3D objects representing the mean and variance maps
C++: mrpt::maps::CRandomFieldGridMap2D::getAs3DObject(class mrpt::opengl::CSetOfObjects &, class mrpt::opengl::CSetOfObjects &) const --> void
- getAsBitmapFile(...)
- getAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_img: mrpt.pymrpt.mrpt.img.CImage) -> None
Returns an image just as described in
C++: mrpt::maps::CRandomFieldGridMap2D::getAsBitmapFile(class mrpt::img::CImage &) const --> void
- getAsMatrix(...)
- getAsMatrix(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_mat: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Like saveAsBitmapFile(), but returns the data in matrix form (first row
in the matrix is the upper (y_max) part of the map)
C++: mrpt::maps::CRandomFieldGridMap2D::getAsMatrix(class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMapType(...)
- getMapType(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation
Return the type of the random-field grid map, according to parameters
passed on construction.
C++: mrpt::maps::CRandomFieldGridMap2D::getMapType() --> enum mrpt::maps::CRandomFieldGridMap2D::TMapRepresentation
- getMeanAndCov(...)
- getMeanAndCov(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_cov: mrpt.pymrpt.mrpt.math.CMatrixDynamic_double_t) -> None
Return the mean and covariance vector of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndCov(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CMatrixDynamic<double> &) const --> void
- getMeanAndSTD(...)
- getMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Return the mean and STD vectors of the full Kalman filter estimate
(works for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::getMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) const --> void
- insertIndividualReading(...)
- insertIndividualReading(*args, **kwargs)
Overloaded function.
1. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>) -> None
2. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool) -> None
3. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool) -> None
4. insertIndividualReading(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, sensorReading: float, point: mrpt::math::TPoint2D_<double>, update_map: bool, time_invariant: bool, reading_stddev: float) -> None
Direct update of the map with a reading in a given position of the map,
using
the appropriate method according to mapType passed in the constructor.
This is a direct way to update the map, an alternative to the generic
insertObservation() method which works with mrpt::obs::CObservation
objects.
C++: mrpt::maps::CRandomFieldGridMap2D::insertIndividualReading(const double, const struct mrpt::math::TPoint2D_<double> &, const bool, const bool, const double) --> void
- isEmpty(...)
- isEmpty(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
Returns true if the map is empty/no observation has been inserted (in
this class it always return false,
unless redefined otherwise in base classes)
C++: mrpt::maps::CRandomFieldGridMap2D::isEmpty() const --> bool
- isEnabledVerbose(...)
- isEnabledVerbose(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isEnabledVerbose() const --> bool
- isProfilerEnabled(...)
- isProfilerEnabled(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> bool
C++: mrpt::maps::CRandomFieldGridMap2D::isProfilerEnabled() const --> bool
- predictMeasurement(...)
- predictMeasurement(*args, **kwargs)
Overloaded function.
1. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool) -> None
2. predictMeasurement(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x: float, y: float, out_predict_response: float, out_predict_response_variance: float, do_sensor_normalization: bool, interp_method: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod) -> None
Returns the prediction of the measurement at some (x,y) coordinates, and
its certainty (in the form of the expected variance).
C++: mrpt::maps::CRandomFieldGridMap2D::predictMeasurement(const double, const double, double &, double &, bool, const enum mrpt::maps::CRandomFieldGridMap2D::TGridInterpolationMethod) --> void
- resize(...)
- resize(*args, **kwargs)
Overloaded function.
1. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
2. resize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_x_min: float, new_x_max: float, new_y_min: float, new_y_max: float, defaultValueNewCells: mrpt.pymrpt.mrpt.maps.TRandomFieldCell, additionalMarginMeters: float) -> None
Changes the size of the grid, maintaining previous contents.
setSize
C++: mrpt::maps::CRandomFieldGridMap2D::resize(double, double, double, double, const struct mrpt::maps::TRandomFieldCell &, double) --> void
- saveAsBitmapFile(...)
- saveAsBitmapFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save the current map as a graphical file (BMP,PNG,...).
The file format will be derived from the file extension (see
CImage::saveToFile )
It depends on the map representation model:
mrAchim: Each pixel is the ratio
mrKalmanFilter: Each pixel is the mean value of the Gaussian that
represents each cell.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsBitmapFile(const std::string &) const --> void
- saveAsMatlab3DGraph(...)
- saveAsMatlab3DGraph(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filName: str) -> None
Save a matlab ".m" file which represents as 3D surfaces the mean and a
given confidence level for the concentration of each cell.
This method can only be called in a KF map model.
C++: mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(const std::string &) const --> void
- saveMetricMapRepresentationToFile(...)
- saveMetricMapRepresentationToFile(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, filNamePrefix: str) -> None
The implementation in this class just calls all the corresponding method
of the contained metric maps
C++: mrpt::maps::CRandomFieldGridMap2D::saveMetricMapRepresentationToFile(const std::string &) const --> void
- setCellsConnectivity(...)
- setCellsConnectivity(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, new_connectivity_descriptor: mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor) -> None
Sets a custom object to define the connectivity between cells. Must call
clear() or setSize() afterwards for the changes to take place.
C++: mrpt::maps::CRandomFieldGridMap2D::setCellsConnectivity(const class std::shared_ptr<struct mrpt::maps::CRandomFieldGridMap2D::ConnectivityDescriptor> &) --> void
- setMeanAndSTD(...)
- setMeanAndSTD(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, out_means: mrpt::math::CVectorDynamic<double>, out_STD: mrpt::math::CVectorDynamic<double>) -> None
Load the mean and STD vectors of the full Kalman filter estimate (works
for all KF-based methods).
C++: mrpt::maps::CRandomFieldGridMap2D::setMeanAndSTD(class mrpt::math::CVectorDynamic<double> &, class mrpt::math::CVectorDynamic<double> &) --> void
- setSize(...)
- setSize(*args, **kwargs)
Overloaded function.
1. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float) -> None
2. setSize(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D, x_min: float, x_max: float, y_min: float, y_max: float, resolution: float, fill_value: mrpt.pymrpt.mrpt.maps.TRandomFieldCell) -> None
Changes the size of the grid, erasing previous contents.
Optional user-supplied object that
will visit all grid cells to define their connectivity with neighbors and
the strength of existing edges. If present, it overrides all options in
insertionOptions
resize
C++: mrpt::maps::CRandomFieldGridMap2D::setSize(const double, const double, const double, const double, const double, const struct mrpt::maps::TRandomFieldCell *) --> void
- updateMapEstimation(...)
- updateMapEstimation(self: mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D) -> None
Run the method-specific procedure required to ensure that the mean &
variances are up-to-date with all inserted observations.
C++: mrpt::maps::CRandomFieldGridMap2D::updateMapEstimation() --> void
Data and other attributes inherited from CRandomFieldGridMap2D:
- ConnectivityDescriptor = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.ConnectivityDescriptor'>
- Base class for user-supplied objects capable of describing cells
connectivity, used to build prior factors of the MRF graph.
setCellsConnectivity()
- TGridInterpolationMethod = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TGridInterpolationMethod'>
- TInsertionOptionsCommon = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TInsertionOptionsCommon'>
- Parameters common to any derived class.
Derived classes should derive a new struct from this one, plus "public
CLoadableOptions",
and call the internal_* methods where appropiate to deal with the
variables declared here.
Derived classes instantions of their "TInsertionOptions" MUST set the
pointer "m_insertOptions_common" upon construction.
- TMapRepresentation = <class 'mrpt.pymrpt.mrpt.maps.CRandomFieldGridMap2D.TMapRepresentation'>
- gimBilinear = <TGridInterpolationMethod.gimBilinear: 1>
- gimNearest = <TGridInterpolationMethod.gimNearest: 0>
- mrAchim = <TMapRepresentation.mrKernelDM: 0>
- mrGMRF_SD = <TMapRepresentation.mrGMRF_SD: 4>
- mrKalmanApproximate = <TMapRepresentation.mrKalmanApproximate: 2>
- mrKalmanFilter = <TMapRepresentation.mrKalmanFilter: 1>
- mrKernelDM = <TMapRepresentation.mrKernelDM: 0>
- mrKernelDMV = <TMapRepresentation.mrKernelDMV: 3>
Methods inherited from CMetricMap:
- auxParticleFilterCleanUp(...)
- auxParticleFilterCleanUp(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> None
This method is called at the end of each "prediction-update-map
insertion" cycle within
"mrpt::slam::CMetricMapBuilderRBPF::processActionObservation".
This method should normally do nothing, but in some cases can be used
to free auxiliary cached variables.
C++: mrpt::maps::CMetricMap::auxParticleFilterCleanUp() --> void
- canComputeObservationLikelihood(...)
- canComputeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observation.
computeObservationLikelihood,
genericMapParams.enableObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationLikelihood(const class mrpt::obs::CObservation &) const --> bool
- canComputeObservationsLikelihood(...)
- canComputeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
Returns true if this map is able to compute a sensible likelihood
function for this observation (i.e. an occupancy grid map cannot with an
image).
See:
The observations.
canComputeObservationLikelihood
C++: mrpt::maps::CMetricMap::canComputeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &) const --> bool
- computeObservationLikelihood(...)
- computeObservationLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Computes the log-likelihood of a given observation given an arbitrary
robot 3D pose.
See:
The robot's pose the observation is supposed to be taken
from.
The observation.
This method returns a log-likelihood.
Used in particle filter algorithms, see: CMultiMetricMapPDF::update
C++: mrpt::maps::CMetricMap::computeObservationLikelihood(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D &) const --> double
- computeObservationsLikelihood(...)
- computeObservationsLikelihood(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, takenFrom: mrpt.pymrpt.mrpt.poses.CPose3D) -> float
Returns the sum of the log-likelihoods of each individual observation
within a mrpt::obs::CSensoryFrame.
See:
The robot's pose the observation is supposed to be taken
from.
The set of observations in a CSensoryFrame.
This method returns a log-likelihood.
canComputeObservationsLikelihood
C++: mrpt::maps::CMetricMap::computeObservationsLikelihood(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D &) --> double
- determineMatching2D(...)
- determineMatching2D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose2D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matching between this and another 2D point map, which
includes finding:
- The set of points pairs in each map
- The mean squared distance between corresponding pairs.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
This method is the most time critical one into ICP-like algorithms.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching2D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose2D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- determineMatching3D(...)
- determineMatching3D(self: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMap: mrpt.pymrpt.mrpt.maps.CMetricMap, otherMapPose: mrpt.pymrpt.mrpt.poses.CPose3D, correspondences: mrpt.pymrpt.mrpt.tfest.TMatchingPairListTempl_float_t, params: mrpt.pymrpt.mrpt.maps.TMatchingParams, extraResults: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Computes the matchings between this and another 3D points map - method
used in 3D-ICP.
This method finds the set of point pairs in each map.
The method is the most time critical one into ICP-like algorithms.
The algorithm is:
- For each point in "otherMap":
- Transform the point according to otherMapPose
- Search with a KD-TREE the closest correspondences in "this"
map.
- Add to the set of candidate matchings, if it passes all the
thresholds in params.
[IN] The other map to compute the matching with.
[IN] The pose of the other map as seen from
"this".
[IN] Parameters for the determination of
pairings.
[OUT] The detected matchings pairs.
[OUT] Other results.
compute3DMatchingRatio
C++: mrpt::maps::CMetricMap::determineMatching3D(const class mrpt::maps::CMetricMap *, const class mrpt::poses::CPose3D &, class mrpt::tfest::TMatchingPairListTempl<float> &, const struct mrpt::maps::TMatchingParams &, struct mrpt::maps::TMatchingExtraResults &) const --> void
- getAsSimplePointsMap(...)
- getAsSimplePointsMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap) -> mrpt::maps::CSimplePointsMap
C++: mrpt::maps::CMetricMap::getAsSimplePointsMap() --> class mrpt::maps::CSimplePointsMap *
- insertObs(...)
- insertObs(*args, **kwargs)
Overloaded function.
1. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation) -> bool
2. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, obs: mrpt.pymrpt.mrpt.obs.CObservation, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CObservation &, const class mrpt::poses::CPose3D *) --> bool
3. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame) -> bool
4. insertObs(self: mrpt.pymrpt.mrpt.maps.CMetricMap, sf: mrpt::obs::CSensoryFrame, robotPose: mrpt.pymrpt.mrpt.poses.CPose3D) -> bool
C++: mrpt::maps::CMetricMap::insertObs(const class mrpt::obs::CSensoryFrame &, const class mrpt::poses::CPose3D *) --> bool
- loadFromProbabilisticPosesAndObservations(...)
- loadFromProbabilisticPosesAndObservations(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
Load the map contents from a CSimpleMap object, erasing all previous
content of the map. This is done invoking `insertObservation()` for each
observation at the mean 3D robot pose of each pose-observations pair in
the CSimpleMap object.
insertObservation, CSimpleMap
std::exception Some internal steps in invoked methods can
raise exceptions on invalid parameters, etc...
C++: mrpt::maps::CMetricMap::loadFromProbabilisticPosesAndObservations(const class mrpt::maps::CSimpleMap &) --> void
- loadFromSimpleMap(...)
- loadFromSimpleMap(self: mrpt.pymrpt.mrpt.maps.CMetricMap, Map: mrpt::maps::CSimpleMap) -> None
!
C++: mrpt::maps::CMetricMap::loadFromSimpleMap(const class mrpt::maps::CSimpleMap &) --> void
- squareDistanceToClosestCorrespondence(...)
- squareDistanceToClosestCorrespondence(self: mrpt.pymrpt.mrpt.maps.CMetricMap, x0: float, y0: float) -> float
Returns the square distance from the 2D point (x0,y0) to the closest
correspondence in the map.
C++: mrpt::maps::CMetricMap::squareDistanceToClosestCorrespondence(float, float) const --> float
Data descriptors inherited from CMetricMap:
- genericMapParams
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Methods inherited from mrpt.pymrpt.mrpt.opengl.Visualizable:
- getVisualization(...)
- getVisualization(self: mrpt.pymrpt.mrpt.opengl.Visualizable) -> mrpt::opengl::CSetOfObjects
Creates 3D primitives representing this objects.
This is equivalent to getVisualizationInto() but creating, and returning
by value, a new rpt::opengl::CSetOfObjects::Ptr shared pointer.
getVisualizationInto()
C++: mrpt::opengl::Visualizable::getVisualization() const --> class std::shared_ptr<class mrpt::opengl::CSetOfObjects>
Methods inherited from mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t:
- cellByIndex(...)
- cellByIndex(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int, cy: int) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByIndex(unsigned int, unsigned int) --> struct mrpt::maps::TRandomFieldCell *
- cellByPos(...)
- cellByPos(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> mrpt::maps::TRandomFieldCell
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::cellByPos(double, double) --> struct mrpt::maps::TRandomFieldCell *
- fill(...)
- fill(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, value: mrpt::maps::TRandomFieldCell) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::fill(const struct mrpt::maps::TRandomFieldCell &) --> void
- getResolution(...)
- getResolution(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getResolution() const --> double
- getSizeX(...)
- getSizeX(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeX() const --> size_t
- getSizeY(...)
- getSizeY(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getSizeY() const --> size_t
- getXMax(...)
- getXMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMax() const --> double
- getXMin(...)
- getXMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getXMin() const --> double
- getYMax(...)
- getYMax(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMax() const --> double
- getYMin(...)
- getYMin(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::getYMin() const --> double
- idx2cxcy(...)
- idx2cxcy(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, idx: int, cx: int, cy: int) -> None
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2cxcy(int, int &, int &) const --> void
- idx2x(...)
- idx2x(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cx: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2x(int) const --> double
- idx2y(...)
- idx2y(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, cy: int) -> float
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::idx2y(int) const --> double
- saveToTextFile(...)
- saveToTextFile(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, fileName: str) -> bool
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::saveToTextFile(const std::string &) const --> bool
- x2idx(...)
- x2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::x2idx(double) const --> int
- xy2idx(...)
- xy2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, x: float, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::xy2idx(double, double) const --> int
- y2idx(...)
- y2idx(self: mrpt.pymrpt.mrpt.containers.CDynamicGrid_mrpt_maps_TRandomFieldCell_t, y: float) -> int
C++: mrpt::containers::CDynamicGrid<mrpt::maps::TRandomFieldCell>::y2idx(double) const --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TMapGenericParams(mrpt.pymrpt.mrpt.config.CLoadableOptions, mrpt.pymrpt.mrpt.serialization.CSerializable) |
|
Common params to all maps derived from mrpt::maps::CMetricMap |
|
- Method resolution order:
- TMapGenericParams
- mrpt.pymrpt.mrpt.config.CLoadableOptions
- mrpt.pymrpt.mrpt.serialization.CSerializable
- mrpt.pymrpt.mrpt.rtti.CObject
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::TMapGenericParams::GetRuntimeClass() const --> const struct mrpt::rtti::TRuntimeClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams, arg0: mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams, arg0: mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams, : mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> mrpt.pymrpt.mrpt.maps.TMapGenericParams
C++: mrpt::maps::TMapGenericParams::operator=(const class mrpt::maps::TMapGenericParams &) --> class mrpt::maps::TMapGenericParams &
- clone(...)
- clone(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams) -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::TMapGenericParams::clone() const --> class mrpt::rtti::CObject *
- loadFromConfigFile(...)
- loadFromConfigFile(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams, source: mrpt::config::CConfigFileBase, sectionNamePrefix: str) -> None
C++: mrpt::maps::TMapGenericParams::loadFromConfigFile(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- saveToConfigFile(...)
- saveToConfigFile(self: mrpt.pymrpt.mrpt.maps.TMapGenericParams, target: mrpt::config::CConfigFileBase, section: str) -> None
C++: mrpt::maps::TMapGenericParams::saveToConfigFile(class mrpt::config::CConfigFileBase &, const std::string &) const --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.rtti.CObject
C++: mrpt::maps::TMapGenericParams::CreateObject() --> class std::shared_ptr<class mrpt::rtti::CObject>
- GetRuntimeClassIdStatic(...) from builtins.PyCapsule
- GetRuntimeClassIdStatic() -> mrpt.pymrpt.mrpt.rtti.TRuntimeClassId
C++: mrpt::maps::TMapGenericParams::GetRuntimeClassIdStatic() --> const struct mrpt::rtti::TRuntimeClassId &
Data descriptors defined here:
- enableObservationInsertion
- enableObservationLikelihood
- enableSaveAs3DObject
Methods inherited from mrpt.pymrpt.mrpt.config.CLoadableOptions:
- dumpToConsole(...)
- dumpToConsole(self: mrpt.pymrpt.mrpt.config.CLoadableOptions) -> None
Just like but sending the text to the console
(std::cout)
C++: mrpt::config::CLoadableOptions::dumpToConsole() const --> void
- loadFromConfigFileName(...)
- loadFromConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like loadFromConfigFile, but you can pass directly a file name
and a temporary CConfigFile object will be created automatically to load
the file.
loadFromConfigFile
C++: mrpt::config::CLoadableOptions::loadFromConfigFileName(const std::string &, const std::string &) --> void
- saveToConfigFileName(...)
- saveToConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like saveToConfigFile, but you can pass directly a file name and
a temporary CConfigFile object will be created automatically to save the
file.
saveToConfigFile, loadFromConfigFileName
C++: mrpt::config::CLoadableOptions::saveToConfigFileName(const std::string &, const std::string &) const --> void
Methods inherited from mrpt.pymrpt.mrpt.rtti.CObject:
- duplicateGetSmartPtr(...)
- duplicateGetSmartPtr(self: mrpt.pymrpt.mrpt.rtti.CObject) -> mrpt.pymrpt.mrpt.rtti.CObject
Makes a deep copy of the object and returns a smart pointer to it
C++: mrpt::rtti::CObject::duplicateGetSmartPtr() const --> class std::shared_ptr<class mrpt::rtti::CObject>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TMatchingExtraResults(pybind11_builtins.pybind11_object) |
|
Additional results from the determination of matchings between point clouds,
etc., apart from the pairings themselves
CMetricMap::determineMatching2D,
CMetricMap::determineMatching3D |
|
- Method resolution order:
- TMatchingExtraResults
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.maps.TMatchingExtraResults) -> None
Data descriptors defined here:
- correspondencesRatio
- sumSqrDist
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TMatchingParams(pybind11_builtins.pybind11_object) |
|
Parameters for the determination of matchings between point clouds, etc.
CMetricMap::determineMatching2D, CMetricMap::determineMatching3D |
|
- Method resolution order:
- TMatchingParams
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.maps.TMatchingParams) -> None
Data descriptors defined here:
- angularDistPivotPoint
- decimation_other_map_points
- maxAngularDistForCorrespondence
- maxDistForCorrespondence
- offset_other_map_points
- onlyKeepTheClosest
- onlyUniqueRobust
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TSetOfMetricMapInitializers(mrpt.pymrpt.mrpt.config.CLoadableOptions) |
|
A set of TMetricMapInitializer structures, passed to the constructor
CMultiMetricMap::CMultiMetricMap
See the comments for TSetOfMetricMapInitializers::loadFromConfigFile, and
"CMultiMetricMap::setListOfMaps" for
effectively creating the list of desired maps.
CMultiMetricMap::CMultiMetricMap, CLoadableOptions |
|
- Method resolution order:
- TSetOfMetricMapInitializers
- mrpt.pymrpt.mrpt.config.CLoadableOptions
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
2. __init__(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, arg0: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
3. __init__(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, arg0: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, : mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers
C++: mrpt::maps::TSetOfMetricMapInitializers::operator=(const class mrpt::maps::TSetOfMetricMapInitializers &) --> class mrpt::maps::TSetOfMetricMapInitializers &
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> None
C++: mrpt::maps::TSetOfMetricMapInitializers::clear() --> void
- loadFromConfigFile(...)
- loadFromConfigFile(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, source: mrpt::config::CConfigFileBase, sectionName: str) -> None
Loads the configuration for the set of internal maps from a textual
definition in an INI-like file.
The format of the ini file is defined in CConfigFile. The list
of maps and their options
will be loaded from a handle of sections:
Where:
- ##: Represents the index of the map (e.g. "00","01",...)
- By default, the variables into each "TOptions" structure of the
maps
are defined in textual form by the same name of the corresponding C++
variable (e.g. "float resolution;" -> "resolution=0.10")
Examples of map definitions can be found in the '.ini' files
provided in the demo directories: "share/mrpt/config-files/"
C++: mrpt::maps::TSetOfMetricMapInitializers::loadFromConfigFile(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- saveToConfigFile(...)
- saveToConfigFile(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers, target: mrpt::config::CConfigFileBase, section: str) -> None
C++: mrpt::maps::TSetOfMetricMapInitializers::saveToConfigFile(class mrpt::config::CConfigFileBase &, const std::string &) const --> void
- size(...)
- size(self: mrpt.pymrpt.mrpt.maps.TSetOfMetricMapInitializers) -> int
C++: mrpt::maps::TSetOfMetricMapInitializers::size() const --> size_t
Methods inherited from mrpt.pymrpt.mrpt.config.CLoadableOptions:
- dumpToConsole(...)
- dumpToConsole(self: mrpt.pymrpt.mrpt.config.CLoadableOptions) -> None
Just like but sending the text to the console
(std::cout)
C++: mrpt::config::CLoadableOptions::dumpToConsole() const --> void
- loadFromConfigFileName(...)
- loadFromConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like loadFromConfigFile, but you can pass directly a file name
and a temporary CConfigFile object will be created automatically to load
the file.
loadFromConfigFile
C++: mrpt::config::CLoadableOptions::loadFromConfigFileName(const std::string &, const std::string &) --> void
- saveToConfigFileName(...)
- saveToConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like saveToConfigFile, but you can pass directly a file name and
a temporary CConfigFile object will be created automatically to save the
file.
saveToConfigFile, loadFromConfigFileName
C++: mrpt::config::CLoadableOptions::saveToConfigFileName(const std::string &, const std::string &) const --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
|