37 #ifndef _PCL_GPU_OCTREE_ 38 #define _PCL_GPU_OCTREE_ 42 #include <pcl/point_types.h> 43 #include <pcl/pcl_macros.h> 44 #include <pcl/gpu/containers/device_array.h> 45 #include <pcl/gpu/octree/device_format.hpp> 67 typedef boost::shared_ptr<Octree>
Ptr;
90 void setCloud(
const PointCloud& cloud_arg);
99 void internalDownload();
107 void radiusSearchHost(
const PointType& center,
float radius, std::vector<int>& out,
int max_nn = INT_MAX);
114 void approxNearestSearchHost(
const PointType& query,
int& out_index,
float& sqr_dist);
122 void radiusSearch(
const Queries& centers,
float radius,
int max_results,
NeighborIndices& result)
const;
130 void radiusSearch(
const Queries& centers,
const Radiuses& radiuses,
int max_results,
NeighborIndices& result)
const;
139 void radiusSearch(
const Queries& centers,
const Indices& indices,
float radius,
int max_results,
NeighborIndices& result)
const;
145 void approxNearestSearch(
const Queries& queries,
NeighborIndices& result)
const;
152 void nearestKSearchBatch(
const Queries& queries,
int k,
NeighborIndices& results)
const;
PCL_EXPORTS void bruteForceRadiusSearchGPU(const Octree::PointCloud &cloud, const Octree::PointType &query, float radius, DeviceArray< int > &result, DeviceArray< int > &buffer)
Performs brute force radius search on GPU.
DeviceArray< float > ResultSqrDists
Point Sqrt distances array type.
boost::shared_ptr< Octree > Ptr
Types.
pcl::PointXYZ PointType
Point typwe supported.
Octree implementation on GPU.
A point structure representing Euclidean xyz coordinates.
DeviceArray< float > Radiuses
Point Radiuses for batch query.
DeviceArray< int > Indices
Point Indices for batch query.
DeviceArray< PointType > Queries
Point Batch query cloud type.
const PointCloud * cloud_
DeviceArray< PointType > PointCloud
Point cloud supported.