Point Cloud Library (PCL)
1.10.1
|
40 #include <pcl/cuda/sample_consensus/sac_model.h>
42 #include <thrust/random.h>
49 struct CountPlanarInlier
58 template <
typename Tuple> __inline__ __host__ __device__
bool
63 struct CheckPlanarInlier
72 template <
typename Tuple> __inline__ __host__ __device__
int
79 template <
template <
typename>
class Storage>
225 template <
template <
typename>
class Storage>
245 __inline__ __host__ __device__ float4
251 struct parallel_random_generator
254 __inline__ __host__ __device__
260 __inline__ __host__ __device__
263 thrust::default_random_engine rng(
m_seed);
This file defines compatibility wrappers for low level I/O functions.
shared_ptr< Indices > IndicesPtr
PointCloudAOS represents an AOS (Array of Structs) PointCloud implementation for CUDA processing.
int selectWithinDistance(const Coefficients &model_coefficients, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)
Select all the points which respect the given model coefficients as inliers.
__inline__ __host__ __device__ int operator()(const Tuple &t)
CreatePlaneHypothesis(const PointXYZRGB *_input, const int *_indices, int _nr_indices, float bad)
void getSamples(int &iterations, Indices &samples)
Get 3 random non-collinear points as data samples and return them as point indices.
typename SampleConsensusModel< Storage >::PointCloud PointCloud
typename SampleConsensusModel< Storage >::Hypotheses Hypotheses
__inline__ __host__ __device__ bool operator()(const Tuple &t)
typename SampleConsensusModel< Storage >::IndicesPtr IndicesPtr
virtual bool generateModelHypotheses(Hypotheses &h, Samples &s, int max_iterations)
shared_ptr< const SampleConsensusModel > ConstPtr
typename Storage< float4 >::type Hypotheses
typename PointCloud::ConstPtr PointCloudConstPtr
shared_ptr< SampleConsensusModel > Ptr
typename PointCloud::Ptr PointCloudPtr
Check if a certain tuple is a point inlier.
Default point xyz-rgb structure.
int countWithinDistance(const Coefficients &model_coefficients, float threshold)
const static int MAX_ITERATIONS_COLLINEAR
shared_ptr< const typename Storage< int >::type > IndicesConstPtr
typename PointCloud::ConstPtr PointCloudConstPtr
const PointXYZRGB * input
bool computeModelCoefficients(const Indices &samples, Coefficients &model_coefficients)
Check whether the given index samples can form a valid plane model, compute the model coefficients fr...
__inline__ __host__ __device__ parallel_random_generator(unsigned int seed)
typename SampleConsensusModel< Storage >::Coefficients Coefficients
CountPlanarInlier(float4 coeff, float thresh)
__inline__ __host__ __device__ unsigned int operator()(const unsigned int n) const
typename SampleConsensusModel< Storage >::Indices Indices
bool generateModelHypotheses(Hypotheses &h, int max_iterations)
typename Storage< float >::type Coefficients
SampleConsensusModelPlane(const PointCloudConstPtr &cloud)
Constructor for base SampleConsensusModelPlane.
typename Storage< int >::type Samples
SampleConsensusModelPlane defines a model for 3D plane segmentation.
typename Storage< int >::type Indices
SampleConsensusModel represents the base model class.
shared_ptr< PointCloud< PointT > > Ptr
typename SampleConsensusModel< Storage >::IndicesConstPtr IndicesConstPtr
shared_ptr< typename Storage< int >::type > IndicesPtr
shared_ptr< const PointCloud< PointT > > ConstPtr
CheckPlanarInlier(float4 coeff, float thresh)
__inline__ __host__ __device__ float4 operator()(int t)
boost::shared_ptr< T > shared_ptr
Alias for boost::shared_ptr.