Point Cloud Library (PCL)
1.14.1-dev
|
Namespaces | |
kinfuLS | |
Classes | |
struct | Eigen33 |
struct | Histogram |
struct | PPFSignature |
struct | PPFRGBSignature |
struct | PrincipalCurvatures |
struct | VFHEstimationImpl |
struct | Block |
struct | Warp |
struct | Emulation |
struct | Intr |
Camera intrinsics structure. More... | |
struct | Mat33 |
3x3 Matrix for device code More... | |
struct | LightSource |
Light source collection. More... | |
struct | float8 |
struct | float12 |
struct | OctreeIteratorDevice |
struct | OctreeIteratorDeviceNS |
struct | OctreeGlobal |
struct | OctreeGlobalWithBox |
class | OctreeImpl |
struct | Morton |
struct | CalcMorton |
struct | CompareByLevelCode |
struct | OctreePriorityIteratorDevice |
struct | prob_histogram |
struct | ConnectedComponents |
struct | Dilatation |
struct | CUDATree |
Struct that holds a single RDF tree in GPU. More... | |
class | MultiTreeLiveProc |
Processor using multiple trees. More... | |
class | ProbabilityProc |
Implementation Class to process probability histograms on GPU. More... | |
struct | LessThanByFacet |
struct | InitalSimplex |
struct | FacetStream |
struct | PointStream |
struct | NonCachedLoad |
struct | bit_not |
struct | plusWeighted |
Enumerations | |
enum | ScanKind { exclusive , inclusive , exclusive , inclusive } |
enum | ScanKind { exclusive , inclusive , exclusive , inclusive } |
Functions | |
__device__ __forceinline__ void | computeRoots2 (const float &b, const float &c, float3 &roots) |
__device__ __forceinline__ void | computeRoots3 (float c0, float c1, float c2, float3 &roots) |
__device__ __host__ __forceinline__ bool | computePairFeatures (const float3 &p1, const float3 &n1, const float3 &p2, const float3 &n2, float &f1, float &f2, float &f3, float &f4) |
__device__ __host__ __forceinline__ bool | computeRGBPairFeatures (const float3 &p1, const float3 &n1, const int &colors1, const float3 &p2, const float3 &n2, const int &colors2, float &f1, float &f2, float &f3, float &f4, float &f5, float &f6, float &f7) |
__device__ __host__ __forceinline__ void | computeRGBPairFeatures_RGBOnly (const int &colors1, const int &colors2, float &f5, float &f6, float &f7) |
__device__ __host__ __forceinline__ bool | computePPFPairFeature (const float3 &p1, const float3 &n1, const float3 &p2, const float3 &n2, float &f1, float &f2, float &f3, float &f4) |
__device__ __host__ __forceinline__ void | computeAlfaM (const float3 &model_reference_point, const float3 &model_reference_normal, const float3 &model_point, float &alpha_m) |
__device__ __host__ __forceinline__ void | AngleAxisf (float angle, const float3 &r, float3 &row1, float3 &row2, float3 &row3) |
__device__ __host__ __forceinline__ void | Rodrigues (const float3 &rvec, float3 &row1, float3 &row2, float3 &row3) |
void | computeNormals (const PointCloud &cloud, const NeighborIndices &nn_indices, Normals &normals) |
void | flipNormalTowardsViewpoint (const PointCloud &cloud, const float3 &vp, Normals &normals) |
void | flipNormalTowardsViewpoint (const PointCloud &cloud, const Indices &indices, const float3 &vp, Normals &normals) |
void | repackToAosForPfh (const PointCloud &cloud, const Normals &normals, const NeighborIndices &neighbours, DeviceArray2D< float > &data_rpk, int &max_elems_rpk) |
void | computePfh125 (const DeviceArray2D< float > &data_rpk, int max_elems_rpk, const NeighborIndices &neighbours, DeviceArray2D< PFHSignature125 > &features) |
void | repackToAosForPfhRgb (const PointCloud &cloud, const Normals &normals, const NeighborIndices &neighbours, DeviceArray2D< float > &data_rpk, int &max_elems_rpk) |
void | computePfhRgb250 (const DeviceArray2D< float > &data_rpk, int max_elems_rpk, const NeighborIndices &neighbours, DeviceArray2D< PFHRGBSignature250 > &features) |
void | computeSPFH (const PointCloud &surface, const Normals &normals, const Indices &indices, const NeighborIndices &neighbours, DeviceArray2D< FPFHSignature33 > &spfh33) |
void | computeFPFH (const PointCloud &cloud, const NeighborIndices &neighbours, const DeviceArray2D< FPFHSignature33 > &spfh, DeviceArray2D< FPFHSignature33 > &features) |
void | computeFPFH (const PointCloud &cloud, const Indices &indices, const PointCloud &surface, const NeighborIndices &neighbours, DeviceArray< int > &lookup, const DeviceArray2D< FPFHSignature33 > &spfh, DeviceArray2D< FPFHSignature33 > &features) |
int | computeUniqueIndices (std::size_t surface_size, const NeighborIndices &neighbours, DeviceArray< int > &unique_indices, DeviceArray< int > &lookup) |
void | computePPF (const PointCloud &input, const Normals &normals, const Indices &indices, DeviceArray< PPFSignature > &output) |
void | computePPFRGB (const PointXYZRGBCloud &input, const Normals &normals, const Indices &indices, DeviceArray< PPFRGBSignature > &output) |
void | computePPFRGBRegion (const PointXYZRGBCloud &cloud, const Normals &normals, const Indices &indices, const NeighborIndices &nn_indices, DeviceArray< PPFRGBSignature > &output) |
void | computePointPrincipalCurvatures (const Normals &normals, const Indices &indices, const NeighborIndices &neighbours, DeviceArray< PrincipalCurvatures > &output, DeviceArray2D< float > &proj_normals_buf) |
template<typename PointT > | |
void | compute3DCentroid (const DeviceArray< PointT > &cloud, float3 ¢roid) |
template<typename PointT > | |
void | compute3DCentroid (const DeviceArray< PointT > &cloud, const Indices &indices, float3 ¢roid) |
template<typename PointT > | |
float3 | getMaxDistance (const DeviceArray< PointT > &cloud, const float3 &pivot) |
template<typename PointT > | |
float3 | getMaxDistance (const DeviceArray< PointT > &cloud, const Indices &indices, const float3 &pivot) |
void | computeSpinImagesOrigigNormal (bool radial, bool angular, float support_angle_cos, const Indices &indices, const PointCloud &input_cloud, const Normals &input_normals, const PointCloud &surface, const Normals &normals, const NeighborIndices &neighbours, int min_neighb, int image_width, float bin_size, PtrStep< float > output) |
void | computeSpinImagesCustomAxes (bool radial, bool angular, float support_angle_cos, const Indices &indices, const PointCloud &input_cloud, const Normals &input_normals, const PointCloud &surface, const Normals &normals, const NeighborIndices &neighbours, int min_neighb, int image_width, float bin_size, const float3 &rotation_axis, PtrStep< float > output) |
void | computeSpinImagesCustomAxesCloud (bool radial, bool angular, float support_angle_cos, const Indices &indices, const PointCloud &input_cloud, const Normals &input_normals, const PointCloud &surface, const Normals &normals, const NeighborIndices &neighbours, int min_neighb, int image_width, float bin_size, const Normals &rotation_axes_cloud, PtrStep< float > output) |
void | computeMask (const NeighborIndices &neighbours, int min_neighb, DeviceArray< unsigned char > &mask) |
__forceinline__ __device__ __host__ float3 | operator/ (const float3 &vec, float val) |
__device__ __host__ __forceinline__ float3 & | operator/= (float3 &v, const float &value) |
__device__ __host__ __forceinline__ float | norm (const float3 &v1, const float3 &v2) |
template<typename T > | |
__device__ __forceinline__ float3 | tr (const T &v) |
__host__ __device__ float3 | normalize (const float3 &v) |
__device__ __forceinline__ void | pack_tsdf (float tsdf, int weight, short2 &value) |
__device__ __forceinline__ void | unpack_tsdf (short2 value, float &tsdf, int &weight) |
__device__ __forceinline__ float | unpack_tsdf (short2 value) |
__device__ __forceinline__ float3 | operator* (const Mat33 &m, const float3 &vec) |
template<ScanKind Kind, class T > | |
__device__ __forceinline__ T | scan_warp (volatile T *ptr, const unsigned int idx=threadIdx.x) |
template<class T > | |
__device__ __host__ __forceinline__ void | swap (T &a, T &b) |
__device__ __forceinline__ float | dot (const float3 &v1, const float3 &v2) |
__device__ __forceinline__ float3 & | operator+= (float3 &vec, const float &v) |
__device__ __forceinline__ float3 | operator+ (const float3 &v1, const float3 &v2) |
__device__ __forceinline__ float3 & | operator*= (float3 &vec, const float &v) |
__device__ __forceinline__ float3 | operator- (const float3 &v1, const float3 &v2) |
__device__ __forceinline__ float3 | operator* (const float3 &v1, const float &v) |
__device__ __forceinline__ float | norm (const float3 &v) |
__device__ __forceinline__ float3 | normalized (const float3 &v) |
__device__ __host__ __forceinline__ float3 | cross (const float3 &v1, const float3 &v2) |
void | bilateralFilter (const DepthMap &src, DepthMap &dst) |
Performs bilateral filtering of disparity map. More... | |
void | pyrDown (const DepthMap &src, DepthMap &dst) |
Computes depth pyramid. More... | |
void | createVMap (const Intr &intr, const DepthMap &depth, MapArr &vmap) |
Computes vertex map. More... | |
void | createNMap (const MapArr &vmap, MapArr &nmap) |
Computes normal map using cross product. More... | |
void | computeNormalsEigen (const MapArr &vmap, MapArr &nmap) |
Computes normal map using Eigen/PCA approach. More... | |
void | tranformMaps (const MapArr &vmap_src, const MapArr &nmap_src, const Mat33 &Rmat, const float3 &tvec, MapArr &vmap_dst, MapArr &nmap_dst) |
Performs affine transform of vertex and normal maps. More... | |
void | truncateDepth (DepthMap &depth, float max_distance) |
Performs depth truncation. More... | |
void | findCoresp (const MapArr &vmap_g_curr, const MapArr &nmap_g_curr, const Mat33 &Rprev_inv, const float3 &tprev, const Intr &intr, const MapArr &vmap_g_prev, const MapArr &nmap_g_prev, float distThres, float angleThres, PtrStepSz< short2 > coresp) |
(now it's extra code) Computes corespondances map More... | |
void | estimateTransform (const MapArr &v_dst, const MapArr &n_dst, const MapArr &v_src, const PtrStepSz< short2 > &coresp, DeviceArray2D< float > &gbuf, DeviceArray< float > &mbuf, float *matrixA_host, float *vectorB_host) |
(now it's extra code) Computation Ax=b for ICP iteration More... | |
void | estimateCombined (const Mat33 &Rcurr, const float3 &tcurr, const MapArr &vmap_curr, const MapArr &nmap_curr, const Mat33 &Rprev_inv, const float3 &tprev, const Intr &intr, const MapArr &vmap_g_prev, const MapArr &nmap_g_prev, float distThres, float angleThres, DeviceArray2D< float > &gbuf, DeviceArray< float > &mbuf, float *matrixA_host, float *vectorB_host) |
Computation Ax=b for ICP iteration. More... | |
void | estimateCombined (const Mat33 &Rcurr, const float3 &tcurr, const MapArr &vmap_curr, const MapArr &nmap_curr, const Mat33 &Rprev_inv, const float3 &tprev, const Intr &intr, const MapArr &vmap_g_prev, const MapArr &nmap_g_prev, float distThres, float angleThres, DeviceArray2D< double > &gbuf, DeviceArray< double > &mbuf, double *matrixA_host, double *vectorB_host) |
PCL_EXPORTS void | initVolume (PtrStep< short2 > array) |
Perform tsdf volume initialization. More... | |
void | integrateTsdfVolume (const PtrStepSz< ushort > &depth_raw, const Intr &intr, const float3 &volume_size, const Mat33 &Rcurr_inv, const float3 &tcurr, float tranc_dist, PtrStep< short2 > volume) |
Performs Tsfg volume uptation (extra obsolete now) More... | |
PCL_EXPORTS void | integrateTsdfVolume (const PtrStepSz< ushort > &depth_raw, const Intr &intr, const float3 &volume_size, const Mat33 &Rcurr_inv, const float3 &tcurr, float tranc_dist, PtrStep< short2 > volume, DeviceArray2D< float > &depthRawScaled) |
Function that integrates volume if volume element contains: 2 bytes for round(tsdf*SHORT_MAX) and 2 bytes for integer weight. More... | |
void | initColorVolume (PtrStep< uchar4 > color_volume) |
Initialized color volume. More... | |
void | updateColorVolume (const Intr &intr, float tranc_dist, const Mat33 &R_inv, const float3 &t, const MapArr &vmap, const PtrStepSz< uchar3 > &colors, const float3 &volume_size, PtrStep< uchar4 > color_volume, int max_weight=1) |
Performs integration in color volume. More... | |
void | raycast (const Intr &intr, const Mat33 &Rcurr, const float3 &tcurr, float tranc_dist, const float3 &volume_size, const PtrStep< short2 > &volume, MapArr &vmap, MapArr &nmap) |
Generation vertex and normal maps from volume for current camera pose. More... | |
void | generateImage (const MapArr &vmap, const MapArr &nmap, const LightSource &light, PtrStepSz< uchar3 > dst) |
Renders 3D image of the scene. More... | |
void | generateDepth (const Mat33 &R_inv, const float3 &t, const MapArr &vmap, DepthMap &dst) |
Renders depth image from give pose. More... | |
void | paint3DView (const PtrStep< uchar3 > &colors, PtrStepSz< uchar3 > dst, float colors_weight=0.5f) |
Paints 3D view with color map. More... | |
void | resizeVMap (const MapArr &input, MapArr &output) |
Performs resize of vertex map to next pyramid level by averaging each four points. More... | |
void | resizeNMap (const MapArr &input, MapArr &output) |
Performs resize of vertex map to next pyramid level by averaging each four normals. More... | |
PCL_EXPORTS std::size_t | extractCloud (const PtrStep< short2 > &volume, const float3 &volume_size, PtrSz< PointType > output) |
Perform point cloud extraction from tsdf volume. More... | |
template<typename NormalType > | |
void | extractNormals (const PtrStep< short2 > &volume, const float3 &volume_size, const PtrSz< PointType > &input, NormalType *output) |
Performs normals computation for given points using tsdf volume. More... | |
void | exctractColors (const PtrStep< uchar4 > &color_volume, const float3 &volume_size, const PtrSz< PointType > &points, uchar4 *colors) |
Performs colors extraction from color volume. More... | |
template<typename T > | |
void | convert (const MapArr &vmap, DeviceArray2D< T > &output) |
Conversion from SOA to AOS. More... | |
void | mergePointNormal (const DeviceArray< float4 > &cloud, const DeviceArray< float8 > &normals, const DeviceArray< float12 > &output) |
Merges pcl::PointXYZ and pcl::Normal to PointNormal. More... | |
bool | valid_host (float value) |
Check for qnan (unused now) More... | |
void | sync () |
synchronizes CUDA execution More... | |
template<class D , class Matx > | |
D & | device_cast (Matx &matx) |
void | bindTextures (const int *edgeBuf, const int *triBuf, const int *numVertsBuf) |
Binds marching cubes tables to texture references. More... | |
void | unbindTextures () |
Unbinds. More... | |
int | getOccupiedVoxels (const PtrStep< short2 > &volume, DeviceArray2D< int > &occupied_voxels) |
Scans tsdf volume and retrieves occupied voxels. More... | |
int | computeOffsetsAndTotalVertexes (DeviceArray2D< int > &occupied_voxels) |
Computes total number of vertexes for all voxels and offsets of vertexes in final triangle array. More... | |
void | generateTriangles (const PtrStep< short2 > &volume, const DeviceArray2D< int > &occupied_voxels, const float3 &volume_size, DeviceArray< PointType > &output) |
Generates final triangle array. More... | |
void | bruteForceRadiusSearch (const OctreeImpl::PointCloud &cloud, const OctreeImpl::PointType &query, float radius, DeviceArray< int > &result, DeviceArray< int > &buffer) |
__device__ __host__ __forceinline__ unsigned | getBitsNum (const unsigned integer) |
__host__ __device__ __forceinline__ std::pair< uint3, std::uint8_t > | nearestVoxel (const float3 query, const unsigned &level, const std::uint8_t &mask, const float3 &minp, const float3 &maxp, const uint3 &index) |
template<typename T > | |
__device__ __host__ int | findNode (const float3 minp, const float3 maxp, const float3 query, const T nodes) |
template<typename T > | |
__device__ __forceinline__ void | swap (T &a, T &b) |
template<typename V , typename K > | |
__device__ __forceinline__ void | bitonicSortWarp (volatile K *keys, volatile V *vals, unsigned int dir=1) |
__device__ __host__ static __forceinline__ bool | checkIfNodeInsideSphere (const float3 &minp, const float3 &maxp, const float3 &c, float r) |
__device__ __host__ static __forceinline__ bool | checkIfNodeOutsideSphere (const float3 &minp, const float3 &maxp, const float3 &c, float r) |
__device__ __host__ static __forceinline__ void | calcBoundingBox (int level, int code, float3 &res_minp, float3 &res_maxp) |
template<typename T > | |
__device__ void | CopyKernel (const T *in, T *out, int length) |
template<typename T > | |
__device__ void | GenerateKernel (T *out, int beg, int end) |
template<typename T > | |
__device__ void | GenerateTasksKernel (T *out, int beg, int end, int level) |
template<ScanKind Kind, class T > | |
__device__ __forceinline__ T | scan_block (volatile T *ptr, const unsigned int idx=threadIdx.x) |
template<class T > | |
__device__ __forceinline__ T | warp_reduce (volatile T *ptr, const unsigned int tid=threadIdx.x) |
template<typename Point > | |
__device__ __forceinline__ float | sqnorm (const Point &p1, const Point &p2) |
__device__ __forceinline__ float3 | computePoint (unsigned short depth, int x, int y, const Intr &intr) |
__device__ __forceinline__ bool | isFinite (const float3 &p) |
void | smoothLabelImage (const Labels &src, const Depth &depth, Labels &dst, int num_parts, int patch_size, int depthThres) |
void | colorLMap (const Labels &labels, const DeviceArray< uchar4 > &cmap, Image &rgb) |
void | mixedColorMap (const Labels &labels, const DeviceArray< uchar4 > &map, const Image &rgba, Image &output) |
void | computeCloud (const Depth &depth, const Intr &intr, Cloud &cloud) |
void | setZero (Mask &mask) |
void | prepareForeGroundDepth (const Depth &depth1, Mask &inverse_mask, Depth &depth2) |
float | computeHue (int rgba) |
void | computeHueWithNans (const Image &image, const Depth &depth, HueImage &hue) |
__device__ __host__ __forceinline__ float4 | compute_plane (const float3 &v, const float3 &v1, const float3 &v2, const float3 &p) |
Computers plane from 3 points (v, v1, v2), ensures that point P lies positive subspace. More... | |
__device__ __host__ __forceinline__ float3 | tr (const PointType &p) |
__device__ __host__ __forceinline__ float | compue_inv_normal_norm (const float4 &p) |
__device__ __host__ __forceinline__ float4 & | operator*= (float4 &p, float v) |
std::size_t | remove_duplicates (DeviceArray< int > &indeces) |
void | pack_hull (const DeviceArray< PointType > &points, const DeviceArray< int > &indeces, DeviceArray< PointType > &output) |
__device__ __forceinline__ float | getSampleNormal (const float mean, const float cov, curandState *rng_state) |
void | initParticles (PtrSz< curandState > rng_states, DeviceArray< float > &initial_noise_mean, DeviceArray< float > &initial_noise_covariance, const StateType &representative_state, DeviceArray< StateType > &particles) |
void | computeTracking (const DeviceArray2D< PointType > &ref, const DeviceArray2D< PixelRGB > &ref_color, const DeviceArray2D< PointType > &input, const DeviceArray2D< PixelRGB > &input_color, PtrSz< curandState > rng_states, const DeviceArray< float > &step_noise_covariance, DeviceArray< StateType > &particles, StateType &representative_state, StateType &motion, float motion_ratio) |
template<typename Iterator , typename T , typename BinaryPredicate > | |
__host__ __device__ Iterator | lower_bound (Iterator first, Iterator last, const T &val, BinaryPredicate comp) |
template<class Func > | |
void | printFuncAttrib (Func &func) |
template<unsigned int CTA_SIZE, typename T , typename BinaryFunction > | |
__device__ __forceinline__ void | reduce_block (volatile T *data, BinaryFunction op, unsigned int tid=threadIdx.x) |
__device__ __host__ __forceinline__ float | dot (const float4 &v1, const float4 &v2) |
template<typename T > | |
__device__ __host__ __forceinline__ float | norm (const T &val) |
template<typename T > | |
__host__ __device__ __forceinline__ float | inverse_norm (const T &v) |
template<typename T > | |
__host__ __device__ __forceinline__ T | normalized (const T &v) |
template<typename T > | |
__host__ __device__ __forceinline__ T | normalized_safe (const T &v) |
void | copyFields (int in_size, int out_size, int info[4], int size, const void *input, void *output) |
Variables | |
constexpr int | DIVISOR = std::numeric_limits<short>::max() |
constexpr int | VOLUME_X = 512 |
constexpr int | VOLUME_Y = 512 |
constexpr int | VOLUME_Z = 512 |
constexpr float | VOLUME_SIZE = 3.0f |
typedef pcl::gpu::DeviceArray< PointType > pcl::device::Cloud |
Definition at line 52 of file internal.h.
using pcl::device::Depth = typedef DeviceArray2D<unsigned short> |
Definition at line 55 of file internal.h.
using pcl::device::DepthMap = typedef DeviceArray2D<ushort> |
Definition at line 52 of file internal.h.
using pcl::device::FacetsDists = typedef DeviceArray<std::uint64_t> |
Definition at line 52 of file internal.h.
using pcl::device::FPFHSignature33 = typedef Histogram<33> |
Definition at line 75 of file internal.hpp.
using pcl::device::HueImage = typedef DeviceArray2D<float> |
Definition at line 57 of file internal.h.
using pcl::device::Image = typedef DeviceArray2D<uchar4> |
Definition at line 53 of file internal.h.
using pcl::device::Indices = typedef DeviceArray<int> |
Definition at line 64 of file internal.hpp.
using pcl::device::LabelProbability = typedef DeviceArray2D<prob_histogram> |
Definition at line 264 of file label_common.h.
using pcl::device::Labels = typedef DeviceArray2D<unsigned char> |
Definition at line 56 of file internal.h.
using pcl::device::MapArr = typedef DeviceArray2D<float> |
Definition at line 51 of file internal.h.
using pcl::device::Mask = typedef DeviceArray2D<unsigned char> |
Definition at line 58 of file internal.h.
using pcl::device::MultiLabels = typedef DeviceArray2D<char4> |
Definition at line 60 of file internal.h.
using pcl::device::Normals = typedef DeviceArray<NormalType> |
Definition at line 63 of file internal.hpp.
typedef float4 pcl::device::NormalType |
Definition at line 59 of file internal.hpp.
using pcl::device::Perm = typedef DeviceArray<int> |
Definition at line 53 of file internal.h.
using pcl::device::PFHRGBSignature250 = typedef Histogram<250> |
Definition at line 74 of file internal.hpp.
using pcl::device::PFHSignature125 = typedef Histogram<125> |
Definition at line 73 of file internal.hpp.
using pcl::device::PixelRGB = typedef uchar4 |
Definition at line 18 of file internal.h.
using pcl::device::PointCloud = typedef DeviceArray<PointType> |
Definition at line 62 of file internal.hpp.
typedef float4 pcl::device::PointType |
Definition at line 58 of file internal.hpp.
using pcl::device::PointXYZRGB = typedef float4 |
Definition at line 60 of file internal.hpp.
using pcl::device::PointXYZRGBCloud = typedef DeviceArray<PointType> |
Definition at line 66 of file internal.hpp.
using pcl::device::StateType = typedef float8 |
Definition at line 15 of file internal.h.
using pcl::device::ushort = typedef unsigned short |
Definition at line 50 of file internal.h.
using pcl::device::VFHSignature308 = typedef Histogram<308> |
Definition at line 76 of file internal.hpp.
Enumerator | |
---|---|
exclusive | |
inclusive | |
exclusive | |
inclusive |
Definition at line 83 of file device.hpp.
Enumerator | |
---|---|
exclusive | |
inclusive | |
exclusive | |
inclusive |
Definition at line 45 of file scan_block.hpp.
__device__ __host__ __forceinline__ void pcl::device::AngleAxisf | ( | float | angle, |
const float3 & | r, | ||
float3 & | row1, | ||
float3 & | row2, | ||
float3 & | row3 | ||
) |
Definition at line 47 of file rodrigues.hpp.
Referenced by computeAlfaM(), and Rodrigues().
Performs bilateral filtering of disparity map.
[in] | src | source map |
[out] | dst | output map |
void pcl::device::bindTextures | ( | const int * | edgeBuf, |
const int * | triBuf, | ||
const int * | numVertsBuf | ||
) |
Binds marching cubes tables to texture references.
__device__ __forceinline__ void pcl::device::bitonicSortWarp | ( | volatile K * | keys, |
volatile V * | vals, | ||
unsigned int | dir = 1 |
||
) |
Definition at line 48 of file bitonic_sort.hpp.
References swap().
void pcl::device::bruteForceRadiusSearch | ( | const OctreeImpl::PointCloud & | cloud, |
const OctreeImpl::PointType & | query, | ||
float | radius, | ||
DeviceArray< int > & | result, | ||
DeviceArray< int > & | buffer | ||
) |
|
static |
Definition at line 101 of file boxutils.hpp.
References pcl::device::Morton::decomposeCode().
|
static |
Definition at line 47 of file boxutils.hpp.
|
static |
Definition at line 89 of file boxutils.hpp.
void pcl::device::colorLMap | ( | const Labels & | labels, |
const DeviceArray< uchar4 > & | cmap, | ||
Image & | rgb | ||
) |
__device__ __host__ __forceinline__ float pcl::device::compue_inv_normal_norm | ( | const float4 & | p | ) |
void pcl::device::compute3DCentroid | ( | const DeviceArray< PointT > & | cloud, |
const Indices & | indices, | ||
float3 & | centroid | ||
) |
void pcl::device::compute3DCentroid | ( | const DeviceArray< PointT > & | cloud, |
float3 & | centroid | ||
) |
__device__ __host__ __forceinline__ float4 pcl::device::compute_plane | ( | const float3 & | v, |
const float3 & | v1, | ||
const float3 & | v2, | ||
const float3 & | p | ||
) |
Computers plane from 3 points (v, v1, v2), ensures that point P lies positive subspace.
[in] | v | 3D point volume tsdf volume container |
[in] | v1 | 3D point volume tsdf volume container |
[in] | v2 | 3D point volume tsdf volume container |
[in] | p | point for sign check of plane coefs (should lie in positive subspace) |
__device__ __host__ __forceinline__ void pcl::device::computeAlfaM | ( | const float3 & | model_reference_point, |
const float3 & | model_reference_normal, | ||
const float3 & | model_point, | ||
float & | alpha_m | ||
) |
Definition at line 179 of file pair_features.hpp.
References AngleAxisf(), and normalized().
void pcl::device::computeFPFH | ( | const PointCloud & | cloud, |
const Indices & | indices, | ||
const PointCloud & | surface, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray< int > & | lookup, | ||
const DeviceArray2D< FPFHSignature33 > & | spfh, | ||
DeviceArray2D< FPFHSignature33 > & | features | ||
) |
void pcl::device::computeFPFH | ( | const PointCloud & | cloud, |
const NeighborIndices & | neighbours, | ||
const DeviceArray2D< FPFHSignature33 > & | spfh, | ||
DeviceArray2D< FPFHSignature33 > & | features | ||
) |
float pcl::device::computeHue | ( | int | rgba | ) |
void pcl::device::computeMask | ( | const NeighborIndices & | neighbours, |
int | min_neighb, | ||
DeviceArray< unsigned char > & | mask | ||
) |
void pcl::device::computeNormals | ( | const PointCloud & | cloud, |
const NeighborIndices & | nn_indices, | ||
Normals & | normals | ||
) |
Computes normal map using Eigen/PCA approach.
[in] | vmap | vertex map |
[out] | nmap | normal map |
int pcl::device::computeOffsetsAndTotalVertexes | ( | DeviceArray2D< int > & | occupied_voxels | ) |
Computes total number of vertexes for all voxels and offsets of vertexes in final triangle array.
[out] | occupied_voxels | buffer with occupied voxels. The function fulfills 3nd only with offsets |
__device__ __host__ __forceinline__ bool pcl::device::computePairFeatures | ( | const float3 & | p1, |
const float3 & | n1, | ||
const float3 & | p2, | ||
const float3 & | n2, | ||
float & | f1, | ||
float & | f2, | ||
float & | f3, | ||
float & | f4 | ||
) |
Definition at line 48 of file pair_features.hpp.
void pcl::device::computePfh125 | ( | const DeviceArray2D< float > & | data_rpk, |
int | max_elems_rpk, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray2D< PFHSignature125 > & | features | ||
) |
void pcl::device::computePfhRgb250 | ( | const DeviceArray2D< float > & | data_rpk, |
int | max_elems_rpk, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray2D< PFHRGBSignature250 > & | features | ||
) |
__device__ __forceinline__ float3 pcl::device::computePoint | ( | unsigned short | depth, |
int | x, | ||
int | y, | ||
const Intr & | intr | ||
) |
Definition at line 58 of file device.h.
References pcl::device::Intr::cx, pcl::device::Intr::cy, pcl::device::Intr::fx, and pcl::device::Intr::fy.
void pcl::device::computePointPrincipalCurvatures | ( | const Normals & | normals, |
const Indices & | indices, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray< PrincipalCurvatures > & | output, | ||
DeviceArray2D< float > & | proj_normals_buf | ||
) |
void pcl::device::computePPF | ( | const PointCloud & | input, |
const Normals & | normals, | ||
const Indices & | indices, | ||
DeviceArray< PPFSignature > & | output | ||
) |
__device__ __host__ __forceinline__ bool pcl::device::computePPFPairFeature | ( | const float3 & | p1, |
const float3 & | n1, | ||
const float3 & | p2, | ||
const float3 & | n2, | ||
float & | f1, | ||
float & | f2, | ||
float & | f3, | ||
float & | f4 | ||
) |
Definition at line 160 of file pair_features.hpp.
void pcl::device::computePPFRGB | ( | const PointXYZRGBCloud & | input, |
const Normals & | normals, | ||
const Indices & | indices, | ||
DeviceArray< PPFRGBSignature > & | output | ||
) |
void pcl::device::computePPFRGBRegion | ( | const PointXYZRGBCloud & | cloud, |
const Normals & | normals, | ||
const Indices & | indices, | ||
const NeighborIndices & | nn_indices, | ||
DeviceArray< PPFRGBSignature > & | output | ||
) |
__device__ __host__ __forceinline__ bool pcl::device::computeRGBPairFeatures | ( | const float3 & | p1, |
const float3 & | n1, | ||
const int & | colors1, | ||
const float3 & | p2, | ||
const float3 & | n2, | ||
const int & | colors2, | ||
float & | f1, | ||
float & | f2, | ||
float & | f3, | ||
float & | f4, | ||
float & | f5, | ||
float & | f6, | ||
float & | f7 | ||
) |
Definition at line 95 of file pair_features.hpp.
__device__ __host__ __forceinline__ void pcl::device::computeRGBPairFeatures_RGBOnly | ( | const int & | colors1, |
const int & | colors2, | ||
float & | f5, | ||
float & | f6, | ||
float & | f7 | ||
) |
Definition at line 148 of file pair_features.hpp.
__device__ __forceinline__ void pcl::device::computeRoots2 | ( | const float & | b, |
const float & | c, | ||
float3 & | roots | ||
) |
Definition at line 102 of file eigen.hpp.
Referenced by computeRoots3().
__device__ __forceinline__ void pcl::device::computeRoots3 | ( | float | c0, |
float | c1, | ||
float | c2, | ||
float3 & | roots | ||
) |
Definition at line 115 of file eigen.hpp.
References computeRoots2(), and swap().
Referenced by pcl::device::Eigen33::compute().
void pcl::device::computeSPFH | ( | const PointCloud & | surface, |
const Normals & | normals, | ||
const Indices & | indices, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray2D< FPFHSignature33 > & | spfh33 | ||
) |
void pcl::device::computeSpinImagesCustomAxes | ( | bool | radial, |
bool | angular, | ||
float | support_angle_cos, | ||
const Indices & | indices, | ||
const PointCloud & | input_cloud, | ||
const Normals & | input_normals, | ||
const PointCloud & | surface, | ||
const Normals & | normals, | ||
const NeighborIndices & | neighbours, | ||
int | min_neighb, | ||
int | image_width, | ||
float | bin_size, | ||
const float3 & | rotation_axis, | ||
PtrStep< float > | output | ||
) |
void pcl::device::computeSpinImagesCustomAxesCloud | ( | bool | radial, |
bool | angular, | ||
float | support_angle_cos, | ||
const Indices & | indices, | ||
const PointCloud & | input_cloud, | ||
const Normals & | input_normals, | ||
const PointCloud & | surface, | ||
const Normals & | normals, | ||
const NeighborIndices & | neighbours, | ||
int | min_neighb, | ||
int | image_width, | ||
float | bin_size, | ||
const Normals & | rotation_axes_cloud, | ||
PtrStep< float > | output | ||
) |
void pcl::device::computeSpinImagesOrigigNormal | ( | bool | radial, |
bool | angular, | ||
float | support_angle_cos, | ||
const Indices & | indices, | ||
const PointCloud & | input_cloud, | ||
const Normals & | input_normals, | ||
const PointCloud & | surface, | ||
const Normals & | normals, | ||
const NeighborIndices & | neighbours, | ||
int | min_neighb, | ||
int | image_width, | ||
float | bin_size, | ||
PtrStep< float > | output | ||
) |
void pcl::device::computeTracking | ( | const DeviceArray2D< PointType > & | ref, |
const DeviceArray2D< PixelRGB > & | ref_color, | ||
const DeviceArray2D< PointType > & | input, | ||
const DeviceArray2D< PixelRGB > & | input_color, | ||
PtrSz< curandState > | rng_states, | ||
const DeviceArray< float > & | step_noise_covariance, | ||
DeviceArray< StateType > & | particles, | ||
StateType & | representative_state, | ||
StateType & | motion, | ||
float | motion_ratio | ||
) |
int pcl::device::computeUniqueIndices | ( | std::size_t | surface_size, |
const NeighborIndices & | neighbours, | ||
DeviceArray< int > & | unique_indices, | ||
DeviceArray< int > & | lookup | ||
) |
void pcl::device::convert | ( | const MapArr & | vmap, |
DeviceArray2D< T > & | output | ||
) |
Conversion from SOA to AOS.
[in] | vmap | SOA map |
[out] | output | Array of 3D points. Can be float4 or float8. |
void pcl::device::copyFields | ( | int | in_size, |
int | out_size, | ||
int | info[4], | ||
int | size, | ||
const void * | input, | ||
void * | output | ||
) |
__device__ void pcl::device::CopyKernel | ( | const T * | in, |
T * | out, | ||
int | length | ||
) |
Definition at line 48 of file copygen.hpp.
Computes normal map using cross product.
[in] | vmap | vertex map |
[out] | nmap | normal map |
Computes vertex map.
[in] | intr | depth camera intrinsics |
[in] | depth | depth |
[out] | vmap | vertex map |
__device__ __host__ __forceinline__ float3 pcl::device::cross | ( | const float3 & | v1, |
const float3 & | v2 | ||
) |
Definition at line 107 of file utils.hpp.
Referenced by pcl::device::Eigen33::compute(), compute_plane(), computePairFeatures(), and computeRGBPairFeatures().
D& pcl::device::device_cast | ( | Matx & | matx | ) |
Definition at line 401 of file internal.h.
__device__ __host__ __forceinline__ float pcl::device::dot | ( | const float3 & | v1, |
const float3 & | v2 | ||
) |
Definition at line 59 of file utils.hpp.
Referenced by pcl::device::Eigen33::compute(), compute_plane(), computePairFeatures(), computePPFPairFeature(), computeRGBPairFeatures(), inverse_norm(), norm(), normalized(), normalized_safe(), and operator*().
__device__ __host__ __forceinline__ float pcl::device::dot | ( | const float4 & | v1, |
const float4 & | v2 | ||
) |
Definition at line 82 of file vector_math.hpp.
void pcl::device::estimateCombined | ( | const Mat33 & | Rcurr, |
const float3 & | tcurr, | ||
const MapArr & | vmap_curr, | ||
const MapArr & | nmap_curr, | ||
const Mat33 & | Rprev_inv, | ||
const float3 & | tprev, | ||
const Intr & | intr, | ||
const MapArr & | vmap_g_prev, | ||
const MapArr & | nmap_g_prev, | ||
float | distThres, | ||
float | angleThres, | ||
DeviceArray2D< double > & | gbuf, | ||
DeviceArray< double > & | mbuf, | ||
double * | matrixA_host, | ||
double * | vectorB_host | ||
) |
void pcl::device::estimateCombined | ( | const Mat33 & | Rcurr, |
const float3 & | tcurr, | ||
const MapArr & | vmap_curr, | ||
const MapArr & | nmap_curr, | ||
const Mat33 & | Rprev_inv, | ||
const float3 & | tprev, | ||
const Intr & | intr, | ||
const MapArr & | vmap_g_prev, | ||
const MapArr & | nmap_g_prev, | ||
float | distThres, | ||
float | angleThres, | ||
DeviceArray2D< float > & | gbuf, | ||
DeviceArray< float > & | mbuf, | ||
float * | matrixA_host, | ||
float * | vectorB_host | ||
) |
Computation Ax=b for ICP iteration.
[in] | Rcurr | Rotation of current camera pose guess |
[in] | tcurr | translation of current camera pose guess |
[in] | vmap_curr | current vertex map in camera coo space |
[in] | nmap_curr | current vertex map in camera coo space |
[in] | Rprev_inv | inverse camera rotation at previous pose |
[in] | tprev | camera translation at previous pose |
[in] | intr | camera intrinsics |
[in] | vmap_g_prev | previous vertex map in global coo space |
[in] | nmap_g_prev | previous vertex map in global coo space |
[in] | distThres | distance filtering threshold |
[in] | angleThres | angle filtering threshold. Represents sine of angle between normals |
[out] | gbuf | temp buffer for GPU reduction |
[out] | mbuf | output GPU buffer for matrix computed |
[out] | matrixA_host | A |
[out] | vectorB_host | b |
void pcl::device::estimateTransform | ( | const MapArr & | v_dst, |
const MapArr & | n_dst, | ||
const MapArr & | v_src, | ||
const PtrStepSz< short2 > & | coresp, | ||
DeviceArray2D< float > & | gbuf, | ||
DeviceArray< float > & | mbuf, | ||
float * | matrixA_host, | ||
float * | vectorB_host | ||
) |
(now it's extra code) Computation Ax=b for ICP iteration
[in] | v_dst | destination vertex map (previous frame cloud) |
[in] | n_dst | destination normal map (previous frame normals) |
[in] | v_src | source normal map (current frame cloud) |
[in] | coresp | Corespondances |
[out] | gbuf | temp buffer for GPU reduction |
[out] | mbuf | output GPU buffer for matrix computed |
[out] | matrixA_host | A |
[out] | vectorB_host | b |
void pcl::device::exctractColors | ( | const PtrStep< uchar4 > & | color_volume, |
const float3 & | volume_size, | ||
const PtrSz< PointType > & | points, | ||
uchar4 * | colors | ||
) |
Performs colors extraction from color volume.
[in] | color_volume | color volume |
[in] | volume_size | volume size |
[in] | points | points for which color are computed |
[out] | colors | output array with colors. |
PCL_EXPORTS std::size_t pcl::device::extractCloud | ( | const PtrStep< short2 > & | volume, |
const float3 & | volume_size, | ||
PtrSz< PointType > | output | ||
) |
Perform point cloud extraction from tsdf volume.
[in] | volume | tsdf volume |
[in] | volume_size | size of the volume |
[out] | output | buffer large enough to store point cloud |
void pcl::device::extractNormals | ( | const PtrStep< short2 > & | volume, |
const float3 & | volume_size, | ||
const PtrSz< PointType > & | input, | ||
NormalType * | output | ||
) |
Performs normals computation for given points using tsdf volume.
[in] | volume | tsdf volume |
[in] | volume_size | volume size |
[in] | input | points where normals are computed |
[out] | output | normals. Could be float4 or float8. If for a point normal can't be computed, such normal is marked as nan. |
void pcl::device::findCoresp | ( | const MapArr & | vmap_g_curr, |
const MapArr & | nmap_g_curr, | ||
const Mat33 & | Rprev_inv, | ||
const float3 & | tprev, | ||
const Intr & | intr, | ||
const MapArr & | vmap_g_prev, | ||
const MapArr & | nmap_g_prev, | ||
float | distThres, | ||
float | angleThres, | ||
PtrStepSz< short2 > | coresp | ||
) |
(now it's extra code) Computes corespondances map
[in] | vmap_g_curr | current vertex map in global coo space |
[in] | nmap_g_curr | current normals map in global coo space |
[in] | Rprev_inv | inverse camera rotation at previous pose |
[in] | tprev | camera translation at previous pose |
[in] | intr | camera intrinsics |
[in] | vmap_g_prev | previous vertex map in global coo space |
[in] | nmap_g_prev | previous vertex map in global coo space |
[in] | distThres | distance filtering threshold |
[in] | angleThres | angle filtering threshold. Represents sine of angle between normals |
[out] | coresp |
__device__ __host__ int pcl::device::findNode | ( | const float3 | minp, |
const float3 | maxp, | ||
const float3 | query, | ||
const T | nodes | ||
) |
Definition at line 82 of file approx_nearest_utils.hpp.
References pcl::device::Morton::decomposeCode(), pcl::device::Morton::extractLevelCode(), getBitsNum(), pcl::device::Morton::levels, and nearestVoxel().
void pcl::device::flipNormalTowardsViewpoint | ( | const PointCloud & | cloud, |
const float3 & | vp, | ||
Normals & | normals | ||
) |
void pcl::device::flipNormalTowardsViewpoint | ( | const PointCloud & | cloud, |
const Indices & | indices, | ||
const float3 & | vp, | ||
Normals & | normals | ||
) |
void pcl::device::generateDepth | ( | const Mat33 & | R_inv, |
const float3 & | t, | ||
const MapArr & | vmap, | ||
DepthMap & | dst | ||
) |
Renders depth image from give pose.
[in] | R_inv | inverse camera rotation |
[in] | t | camera translation |
[in] | vmap | vertex map |
[out] | dst | buffer where depth is generated |
void pcl::device::generateImage | ( | const MapArr & | vmap, |
const MapArr & | nmap, | ||
const LightSource & | light, | ||
PtrStepSz< uchar3 > | dst | ||
) |
Renders 3D image of the scene.
[in] | vmap | vertex map |
[in] | nmap | normals map |
[in] | light | poase of light source |
[out] | dst | buffer where image is generated |
__device__ void pcl::device::GenerateKernel | ( | T * | out, |
int | beg, | ||
int | end | ||
) |
Definition at line 58 of file copygen.hpp.
__device__ void pcl::device::GenerateTasksKernel | ( | T * | out, |
int | beg, | ||
int | end, | ||
int | level | ||
) |
Definition at line 71 of file copygen.hpp.
void pcl::device::generateTriangles | ( | const PtrStep< short2 > & | volume, |
const DeviceArray2D< int > & | occupied_voxels, | ||
const float3 & | volume_size, | ||
DeviceArray< PointType > & | output | ||
) |
Generates final triangle array.
[in] | volume | tsdf volume |
[in] | occupied_voxels | occupied voxel ids (first row), number of vertexes(second row), offsets(third row). |
[in] | volume_size | volume size in meters |
[out] | output | triangle array |
__device__ __host__ __forceinline__ unsigned pcl::device::getBitsNum | ( | const unsigned | integer | ) |
Definition at line 24 of file approx_nearest_utils.hpp.
Referenced by findNode().
float3 pcl::device::getMaxDistance | ( | const DeviceArray< PointT > & | cloud, |
const float3 & | pivot | ||
) |
float3 pcl::device::getMaxDistance | ( | const DeviceArray< PointT > & | cloud, |
const Indices & | indices, | ||
const float3 & | pivot | ||
) |
int pcl::device::getOccupiedVoxels | ( | const PtrStep< short2 > & | volume, |
DeviceArray2D< int > & | occupied_voxels | ||
) |
Scans tsdf volume and retrieves occupied voxels.
[in] | volume | tsdf volume |
[out] | occupied_voxels | buffer for occupied voxels. The function fulfills first row with voxel ids and second row with number of vertices. |
__device__ __forceinline__ float pcl::device::getSampleNormal | ( | const float | mean, |
const float | cov, | ||
curandState * | rng_state | ||
) |
Definition at line 11 of file device.hpp.
void pcl::device::initColorVolume | ( | PtrStep< uchar4 > | color_volume | ) |
Initialized color volume.
[out] | color_volume | color volume for initialization |
void pcl::device::initParticles | ( | PtrSz< curandState > | rng_states, |
DeviceArray< float > & | initial_noise_mean, | ||
DeviceArray< float > & | initial_noise_covariance, | ||
const StateType & | representative_state, | ||
DeviceArray< StateType > & | particles | ||
) |
PCL_EXPORTS void pcl::device::initVolume | ( | PtrStep< short2 > | array | ) |
Perform tsdf volume initialization.
[out] | array | volume to be initialized |
void pcl::device::integrateTsdfVolume | ( | const PtrStepSz< ushort > & | depth_raw, |
const Intr & | intr, | ||
const float3 & | volume_size, | ||
const Mat33 & | Rcurr_inv, | ||
const float3 & | tcurr, | ||
float | tranc_dist, | ||
PtrStep< short2 > | volume | ||
) |
Performs Tsfg volume uptation (extra obsolete now)
[in] | depth_raw | Kinect depth image |
[in] | intr | camera intrinsics |
[in] | volume_size | size of volume in mm |
[in] | Rcurr_inv | inverse rotation for current camera pose |
[in] | tcurr | translation for current camera pose |
[in] | tranc_dist | tsdf truncation distance |
[in] | volume | tsdf volume to be updated |
PCL_EXPORTS void pcl::device::integrateTsdfVolume | ( | const PtrStepSz< ushort > & | depth_raw, |
const Intr & | intr, | ||
const float3 & | volume_size, | ||
const Mat33 & | Rcurr_inv, | ||
const float3 & | tcurr, | ||
float | tranc_dist, | ||
PtrStep< short2 > | volume, | ||
DeviceArray2D< float > & | depthRawScaled | ||
) |
Function that integrates volume if volume element contains: 2 bytes for round(tsdf*SHORT_MAX) and 2 bytes for integer weight.
[in] | depth_raw | Kinect depth image |
[in] | intr | camera intrinsics |
[in] | volume_size | size of volume in mm |
[in] | Rcurr_inv | inverse rotation for current camera pose |
[in] | tcurr | translation for current camera pose |
[in] | tranc_dist | tsdf truncation distance |
[in] | volume | tsdf volume to be updated |
[out] | depthRawScaled | Buffer for scaled depth along ray |
__host__ __device__ __forceinline__ float pcl::device::inverse_norm | ( | const T & | v | ) |
Definition at line 113 of file vector_math.hpp.
References dot().
Referenced by normalize(), and normalized().
__device__ __forceinline__ bool pcl::device::isFinite | ( | const float3 & | p | ) |
__host__ __device__ Iterator pcl::device::lower_bound | ( | Iterator | first, |
Iterator | last, | ||
const T & | val, | ||
BinaryPredicate | comp | ||
) |
Definition at line 51 of file algorithm.hpp.
void pcl::device::mergePointNormal | ( | const DeviceArray< float4 > & | cloud, |
const DeviceArray< float8 > & | normals, | ||
const DeviceArray< float12 > & | output | ||
) |
Merges pcl::PointXYZ and pcl::Normal to PointNormal.
[in] | cloud | points cloud |
[in] | normals | normals cloud |
[out] | output | array of PointNomals. |
void pcl::device::mixedColorMap | ( | const Labels & | labels, |
const DeviceArray< uchar4 > & | map, | ||
const Image & | rgba, | ||
Image & | output | ||
) |
__host__ __device__ __forceinline__ std::pair<uint3, std::uint8_t> pcl::device::nearestVoxel | ( | const float3 | query, |
const unsigned & | level, | ||
const std::uint8_t & | mask, | ||
const float3 & | minp, | ||
const float3 & | maxp, | ||
const uint3 & | index | ||
) |
Definition at line 34 of file approx_nearest_utils.hpp.
Referenced by findNode().
__device__ __forceinline__ float pcl::device::norm | ( | const float3 & | v | ) |
__device__ __host__ __forceinline__ float pcl::device::norm | ( | const float3 & | v1, |
const float3 & | v2 | ||
) |
Definition at line 60 of file vector_operations.hpp.
Referenced by computePairFeatures(), computePPFPairFeature(), computeRGBPairFeatures(), and Rodrigues().
__device__ __host__ __forceinline__ float pcl::device::norm | ( | const T & | val | ) |
Definition at line 108 of file vector_math.hpp.
References dot().
|
inline |
Definition at line 73 of file vector_operations.hpp.
References inverse_norm().
__device__ __forceinline__ float3 pcl::device::normalized | ( | const float3 & | v | ) |
Definition at line 101 of file utils.hpp.
References dot().
Referenced by pcl::device::Eigen33::compute(), and computeAlfaM().
__host__ __device__ __forceinline__ T pcl::device::normalized | ( | const T & | v | ) |
Definition at line 118 of file vector_math.hpp.
References inverse_norm().
__host__ __device__ __forceinline__ T pcl::device::normalized_safe | ( | const T & | v | ) |
Definition at line 123 of file vector_math.hpp.
References dot().
__device__ __forceinline__ float3 pcl::device::operator* | ( | const float3 & | v1, |
const float & | v | ||
) |
__device__ __forceinline__ float3 pcl::device::operator* | ( | const Mat33 & | m, |
const float3 & | vec | ||
) |
Definition at line 74 of file device.hpp.
References pcl::device::Mat33::data, and dot().
__device__ __forceinline__ float3& pcl::device::operator*= | ( | float3 & | vec, |
const float & | v | ||
) |
__device__ __host__ __forceinline__ float4& pcl::device::operator*= | ( | float4 & | p, |
float | v | ||
) |
__device__ __forceinline__ float3 pcl::device::operator+ | ( | const float3 & | v1, |
const float3 & | v2 | ||
) |
__device__ __forceinline__ float3& pcl::device::operator+= | ( | float3 & | vec, |
const float & | v | ||
) |
__device__ __forceinline__ float3 pcl::device::operator- | ( | const float3 & | v1, |
const float3 & | v2 | ||
) |
__forceinline__ __device__ __host__ float3 pcl::device::operator/ | ( | const float3 & | vec, |
float | val | ||
) |
Definition at line 47 of file vector_operations.hpp.
__device__ __host__ __forceinline__ float3& pcl::device::operator/= | ( | float3 & | v, |
const float & | value | ||
) |
Definition at line 52 of file vector_operations.hpp.
void pcl::device::pack_hull | ( | const DeviceArray< PointType > & | points, |
const DeviceArray< int > & | indeces, | ||
DeviceArray< PointType > & | output | ||
) |
__device__ __forceinline__ void pcl::device::pack_tsdf | ( | float | tsdf, |
int | weight, | ||
short2 & | value | ||
) |
Definition at line 52 of file device.hpp.
References DIVISOR.
void pcl::device::paint3DView | ( | const PtrStep< uchar3 > & | colors, |
PtrStepSz< uchar3 > | dst, | ||
float | colors_weight = 0.5f |
||
) |
Paints 3D view with color map.
[in] | colors | rgb color frame from OpenNI |
[out] | dst | output 3D view |
[in] | colors_weight | weight for colors |
void pcl::device::prepareForeGroundDepth | ( | const Depth & | depth1, |
Mask & | inverse_mask, | ||
Depth & | depth2 | ||
) |
void pcl::device::printFuncAttrib | ( | Func & | func | ) |
Definition at line 47 of file funcattrib.hpp.
Computes depth pyramid.
[in] | src | source |
[out] | dst | destination |
void pcl::device::raycast | ( | const Intr & | intr, |
const Mat33 & | Rcurr, | ||
const float3 & | tcurr, | ||
float | tranc_dist, | ||
const float3 & | volume_size, | ||
const PtrStep< short2 > & | volume, | ||
MapArr & | vmap, | ||
MapArr & | nmap | ||
) |
Generation vertex and normal maps from volume for current camera pose.
[in] | intr | camera intrinsices |
[in] | Rcurr | current rotation |
[in] | tcurr | current translation |
[in] | tranc_dist | volume truncation distance |
[in] | volume_size | volume size in mm |
[in] | volume | tsdf volume |
[out] | vmap | output vertex map |
[out] | nmap | output normals map |
__device__ __forceinline__ void pcl::device::reduce_block | ( | volatile T * | data, |
BinaryFunction | op, | ||
unsigned int | tid = threadIdx.x |
||
) |
Definition at line 45 of file reduce.hpp.
std::size_t pcl::device::remove_duplicates | ( | DeviceArray< int > & | indeces | ) |
void pcl::device::repackToAosForPfh | ( | const PointCloud & | cloud, |
const Normals & | normals, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray2D< float > & | data_rpk, | ||
int & | max_elems_rpk | ||
) |
void pcl::device::repackToAosForPfhRgb | ( | const PointCloud & | cloud, |
const Normals & | normals, | ||
const NeighborIndices & | neighbours, | ||
DeviceArray2D< float > & | data_rpk, | ||
int & | max_elems_rpk | ||
) |
Performs resize of vertex map to next pyramid level by averaging each four normals.
[in] | input | normal map |
[out] | output | vertex map |
Performs resize of vertex map to next pyramid level by averaging each four points.
[in] | input | vertext map |
[out] | output | resized vertex map |
__device__ __host__ __forceinline__ void pcl::device::Rodrigues | ( | const float3 & | rvec, |
float3 & | row1, | ||
float3 & | row2, | ||
float3 & | row3 | ||
) |
Definition at line 65 of file rodrigues.hpp.
References AngleAxisf(), and norm().
__device__ __forceinline__ T pcl::device::scan_block | ( | volatile T * | ptr, |
const unsigned int | idx = threadIdx.x |
||
) |
Definition at line 65 of file scan_block.hpp.
__device__ __forceinline__ T pcl::device::scan_warp | ( | volatile T * | ptr, |
const unsigned int | idx = threadIdx.x |
||
) |
Definition at line 87 of file device.hpp.
References inclusive.
void pcl::device::setZero | ( | Mask & | mask | ) |
void pcl::device::smoothLabelImage | ( | const Labels & | src, |
const Depth & | depth, | ||
Labels & | dst, | ||
int | num_parts, | ||
int | patch_size, | ||
int | depthThres | ||
) |
__device__ __forceinline__ float pcl::device::sqnorm | ( | const Point & | p1, |
const Point & | p2 | ||
) |
__device__ __host__ __forceinline__ void pcl::device::swap | ( | T & | a, |
T & | b | ||
) |
Definition at line 53 of file utils.hpp.
Referenced by bitonicSortWarp(), and computeRoots3().
__device__ __forceinline__ void pcl::device::swap | ( | T & | a, |
T & | b | ||
) |
Definition at line 45 of file bitonic_sort.hpp.
|
inline |
synchronizes CUDA execution
Definition at line 397 of file internal.h.
__device__ __host__ __forceinline__ float3 pcl::device::tr | ( | const PointType & | p | ) |
__device__ __forceinline__ float3 pcl::device::tr | ( | const T & | v | ) |
Definition at line 68 of file vector_operations.hpp.
void pcl::device::tranformMaps | ( | const MapArr & | vmap_src, |
const MapArr & | nmap_src, | ||
const Mat33 & | Rmat, | ||
const float3 & | tvec, | ||
MapArr & | vmap_dst, | ||
MapArr & | nmap_dst | ||
) |
Performs affine transform of vertex and normal maps.
[in] | vmap_src | source vertex map |
[in] | nmap_src | source vertex map |
[in] | Rmat | Rotation mat |
[in] | tvec | translation |
[out] | vmap_dst | destination vertex map |
[out] | nmap_dst | destination vertex map |
void pcl::device::truncateDepth | ( | DepthMap & | depth, |
float | max_distance | ||
) |
Performs depth truncation.
[out] | depth | depth map to truncation |
[in] | max_distance | truncation threshold, values that are higher than the threshold are reset to zero (means not measurement) |
void pcl::device::unbindTextures | ( | ) |
Unbinds.
__device__ __forceinline__ float pcl::device::unpack_tsdf | ( | short2 | value | ) |
Definition at line 67 of file device.hpp.
References DIVISOR.
__device__ __forceinline__ void pcl::device::unpack_tsdf | ( | short2 | value, |
float & | tsdf, | ||
int & | weight | ||
) |
Definition at line 60 of file device.hpp.
References DIVISOR.
void pcl::device::updateColorVolume | ( | const Intr & | intr, |
float | tranc_dist, | ||
const Mat33 & | R_inv, | ||
const float3 & | t, | ||
const MapArr & | vmap, | ||
const PtrStepSz< uchar3 > & | colors, | ||
const float3 & | volume_size, | ||
PtrStep< uchar4 > | color_volume, | ||
int | max_weight = 1 |
||
) |
Performs integration in color volume.
[in] | intr | Depth camera intrionsics structure |
[in] | tranc_dist | tsdf truncation distance |
[in] | R_inv | Inverse camera rotation |
[in] | t | camera translation |
[in] | vmap | Raycasted vertex map |
[in] | colors | RGB colors for current frame |
[in] | volume_size | volume size in meters |
[in] | color_volume | color volume to be integrated |
[in] | max_weight | max weight for running color average. Zero means not average, one means average with prev value, etc. |
|
inline |
__device__ __forceinline__ T pcl::device::warp_reduce | ( | volatile T * | ptr, |
const unsigned int | tid = threadIdx.x |
||
) |
Definition at line 46 of file warp_reduce.hpp.
|
constexpr |
Definition at line 56 of file internal.h.
Referenced by pack_tsdf(), and unpack_tsdf().
|
constexpr |
Definition at line 64 of file internal.h.
|
constexpr |
Definition at line 59 of file internal.h.
|
constexpr |
Definition at line 60 of file internal.h.
|
constexpr |
Definition at line 61 of file internal.h.