MRPT  2.0.0
List of all members | Classes | Public Types | Public Member Functions | Public Attributes | Private Attributes
mrpt::maps::CPointCloudFilterByDistance Class Reference

Detailed Description

Implementation of pointcloud filtering based on requisities for minimum neigbouring points in both, the current timestamp and a previous one.

See also
CPointsMap

Definition at line 26 of file CPointCloudFilterByDistance.h.

#include <mrpt/maps/CPointCloudFilterByDistance.h>

Inheritance diagram for mrpt::maps::CPointCloudFilterByDistance:

Classes

struct  FrameInfo
 
struct  TOptions
 

Public Types

using Ptr = std::shared_ptr< CPointCloudFilterBase >
 

Public Member Functions

void filter (mrpt::maps::CPointsMap *inout_pointcloud, const mrpt::system::TTimeStamp pc_timestamp, const mrpt::poses::CPose3D &pc_reference_pose, TExtraFilterParams *params=nullptr) override
 Apply the filtering algorithm to the pointcloud. More...
 

Public Attributes

TOptions options
 

Private Attributes

std::map< mrpt::system::TTimeStamp, FrameInfom_last_frames
 

Member Typedef Documentation

◆ Ptr

Definition at line 36 of file CPointCloudFilterBase.h.

Member Function Documentation

◆ filter()

void CPointCloudFilterByDistance::filter ( mrpt::maps::CPointsMap inout_pointcloud,
const mrpt::system::TTimeStamp  pc_timestamp,
const mrpt::poses::CPose3D pc_reference_pose,
TExtraFilterParams params = nullptr 
)
overridevirtual

Apply the filtering algorithm to the pointcloud.

Parameters
[in,out]inout_pointcloudThe input pointcloud, which will be modified upon return after filtering.
[in]pc_timestampThe timestamp of the input pointcloud
[in]pc_reference_poseIf nullptr, the PC is assumed to be given in global coordinates. Otherwise, it will be transformed from local coordinates to global using this transformation.
[in,out]paramsadditional in/out parameters

Implements mrpt::maps::CPointCloudFilterBase.

Definition at line 18 of file CPointCloudFilterByDistance.cpp.

References mrpt::maps::CPointCloudFilterByDistance::TOptions::angle_tolerance, mrpt::maps::CPointsMap::applyDeletionMask(), ASSERT_, mrpt::maps::CSimplePointsMap::Create(), mrpt::maps::CPointsMap::getPointFast(), INVALID_TIMESTAMP, mrpt::math::KDTreeCapable< Derived, num_t, metric_t >::kdTreeNClosestPoint3D(), m_last_frames, mrpt::maps::CPointCloudFilterByDistance::TOptions::max_deletion_ratio, mrpt::maps::CPointCloudFilterByDistance::TOptions::min_dist, MRPT_END, MRPT_START, mrpt::math::TPoint3D_< T >::norm(), options, params, mrpt::maps::CPointCloudFilterByDistance::FrameInfo::pc, mrpt::maps::CPointCloudFilterByDistance::FrameInfo::pose, mrpt::maps::CPointCloudFilterByDistance::TOptions::previous_keyframes, mrpt::maps::CPointsMap::size(), mrpt::square(), mrpt::system::timeDifference(), mrpt::maps::CPointCloudFilterByDistance::TOptions::too_old_seconds, mrpt::math::TPoint3D_data< T >::x, mrpt::math::TPoint3D_data< T >::y, and mrpt::math::TPoint3D_data< T >::z.

Referenced by run_pc_filter_test().

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

Member Data Documentation

◆ m_last_frames

std::map<mrpt::system::TTimeStamp, FrameInfo> mrpt::maps::CPointCloudFilterByDistance::m_last_frames
private

Definition at line 78 of file CPointCloudFilterByDistance.h.

Referenced by filter().

◆ options

TOptions mrpt::maps::CPointCloudFilterByDistance::options



Page generated by Doxygen 1.8.14 for MRPT 2.0.0 Git: b38439d21 Tue Mar 31 19:58:06 2020 +0200 at miƩ abr 1 00:50:30 CEST 2020