cheshirekow
v0.1.0
|
Classes | |
struct | NextPow2 |
struct | NextPow2_iter |
struct | NextPow2_iter< Arg, i, true > |
struct | Reader |
struct | Reader< Format_t, NDim, NDim > |
struct | so3_distance_fn |
struct | so3_distance_fn< Scalar, true > |
Enumerations | |
enum | Constraint { OFF = 0, MIN = 1, MAX = 2 } |
Functions | |
template<typename Format_t , unsigned int NDim> | |
__global__ void | euclidean_distance (QueryPoint< Format_t, NDim > query, Format_t *g_in, unsigned int pitchIn, Format_t *g_out, unsigned int pitchOut, unsigned int n) |
vector norm (2-norm) between two points More... | |
template<bool Pseudo, typename Scalar , unsigned int NDim> | |
__global__ void | euclidean_distance (RectangleQuery< Scalar, NDim > query, Scalar *g_out) |
template<typename Scalar , int NDim> | |
__device__ Scalar | euclidean_distance (const linalg::Matrix< Scalar, NDim, 1 > &q0, const linalg::Matrix< Scalar, NDim, 1 > &q1) |
template<typename Scalar , int NDim> | |
__device__ Scalar | euclidean_pseudo_distance (const linalg::Matrix< Scalar, NDim, 1 > &q0, const linalg::Matrix< Scalar, NDim, 1 > &q1) |
template<typename Format_t , unsigned int NDim> | |
__global__ void | r2s1_distance (Format_t weight, QueryPoint< Format_t, NDim > query, Format_t *g_in, unsigned int pitchIn, Format_t *g_out, unsigned int pitchOut, unsigned int n) |
vector norm (2-norm) between two points More... | |
template<typename Format_t , unsigned int NDim> | |
__device__ void | read (Format_t *g_data, unsigned int pitch, int idx, linalg::Matrix< Format_t, NDim, 1 > &v) |
template<typename Format_t , unsigned int NDim> | |
__device__ void | read (const QueryPoint< Format_t, NDim > &q, linalg::Matrix< Format_t, NDim, 1 > &v) |
template<typename Format_t , unsigned int NDim> | |
__global__ void | se3_distance (Format_t weight, QueryPoint< Format_t, NDim > query, Format_t *g_in, unsigned int pitchIn, Format_t *g_out, unsigned int pitchOut, unsigned int n) |
weighted distance between elements of se3, points are interpreted as 3 values of position and 4 values of quaternion More... | |
template<typename Format_t , unsigned int NDim> | |
__global__ void | se3_pseudo_distance (Format_t weight, QueryPoint< Format_t, NDim > query, Format_t *g_in, unsigned int pitchIn, Format_t *g_out, unsigned int pitchOut, unsigned int n) |
weighted distance between elements of se3, points are interpreted as 3 values of position and 4 values of quaternion, in this distance we use the [0,1] non-lenear quaternion distance 1-q*q More... | |
template<bool Psuedo, typename Scalar , unsigned int NDim> | |
__global__ void | so3_distance (QueryPoint< Scalar, NDim > query, Scalar *g_in, unsigned int pitchIn, Scalar *g_out, unsigned int pitchOut, unsigned int n) |
template<bool Pseudo, typename Scalar , unsigned int NDim> | |
__global__ void | so3_distance (RectangleQuery< Scalar, NDim > query, Scalar *g_out) |
template<typename Scalar > | |
__device__ Scalar | so3_distance (const linalg::Matrix< Scalar, 4, 1 > &q0, const linalg::Matrix< Scalar, 4, 1 > &q1) |
template<typename Scalar > | |
__device__ Scalar | so3_pseudo_distance (const linalg::Matrix< Scalar, 4, 1 > &q0, const linalg::Matrix< Scalar, 4, 1 > &q1) |
Enumerator | |
---|---|
OFF | |
MIN | |
MAX |
Definition at line 144 of file so3.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::euclidean_distance | ( | QueryPoint< Format_t, NDim > | query, |
Format_t * | g_in, | ||
unsigned int | pitchIn, | ||
Format_t * | g_out, | ||
unsigned int | pitchOut, | ||
unsigned int | n | ||
) |
vector norm (2-norm) between two points
< number of blocks
< number of blocks
query | query point data |
g_in | input data array |
pitchIn | row pitch of input data |
g_out | output data array |
pitchOut | row pitch of output data |
n | number of points in point set |
Definition at line 61 of file euclidean.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::euclidean_distance | ( | RectangleQuery< Scalar, NDim > | query, |
Scalar * | g_out | ||
) |
< child spec
< child spec
query | query point data |
Definition at line 123 of file euclidean.cu.hpp.
__device__ Scalar mpblocks::cudaNN::kernels::euclidean_distance | ( | const linalg::Matrix< Scalar, NDim, 1 > & | q0, |
const linalg::Matrix< Scalar, NDim, 1 > & | q1 | ||
) |
Definition at line 52 of file euclidean.cu.hpp.
__device__ Scalar mpblocks::cudaNN::kernels::euclidean_pseudo_distance | ( | const linalg::Matrix< Scalar, NDim, 1 > & | q0, |
const linalg::Matrix< Scalar, NDim, 1 > & | q1 | ||
) |
Definition at line 43 of file euclidean.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::r2s1_distance | ( | Format_t | weight, |
QueryPoint< Format_t, NDim > | query, | ||
Format_t * | g_in, | ||
unsigned int | pitchIn, | ||
Format_t * | g_out, | ||
unsigned int | pitchOut, | ||
unsigned int | n | ||
) |
vector norm (2-norm) between two points
< number of blocks
< number of blocks
query | query point data |
g_in | input data array |
pitchIn | row pitch of input data |
g_out | output data array |
pitchOut | row pitch of output data |
n | number of points in point set |
Definition at line 44 of file r2s1.cu.hpp.
|
inline |
Definition at line 79 of file Reader.cu.hpp.
|
inline |
Definition at line 87 of file Reader.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::se3_distance | ( | Format_t | weight, |
QueryPoint< Format_t, NDim > | query, | ||
Format_t * | g_in, | ||
unsigned int | pitchIn, | ||
Format_t * | g_out, | ||
unsigned int | pitchOut, | ||
unsigned int | n | ||
) |
weighted distance between elements of se3, points are interpreted as 3 values of position and 4 values of quaternion
< number of blocks
< number of blocks
weight | weight of rotation distance |
query | query point data |
g_in | input data array |
pitchIn | row pitch of input data |
g_out | output data array |
pitchOut | row pitch of output data |
n | number of points in point set |
Definition at line 111 of file se3.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::se3_pseudo_distance | ( | Format_t | weight, |
QueryPoint< Format_t, NDim > | query, | ||
Format_t * | g_in, | ||
unsigned int | pitchIn, | ||
Format_t * | g_out, | ||
unsigned int | pitchOut, | ||
unsigned int | n | ||
) |
weighted distance between elements of se3, points are interpreted as 3 values of position and 4 values of quaternion, in this distance we use the [0,1] non-lenear quaternion distance 1-q*q
< number of blocks
< number of blocks
weight | weight of rotation distance |
query | query point data |
g_in | input data array |
pitchIn | row pitch of input data |
g_out | output data array |
pitchOut | row pitch of output data |
n | number of points in point set |
Definition at line 42 of file se3.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::so3_distance | ( | QueryPoint< Scalar, NDim > | query, |
Scalar * | g_in, | ||
unsigned int | pitchIn, | ||
Scalar * | g_out, | ||
unsigned int | pitchOut, | ||
unsigned int | n | ||
) |
< number of blocks
< number of blocks
query | query point data |
g_in | input data array |
pitchIn | row pitch of input data |
g_out | output data array |
pitchOut | row pitch of output data |
n | number of points in point set |
Definition at line 90 of file so3.cu.hpp.
__global__ void mpblocks::cudaNN::kernels::so3_distance | ( | RectangleQuery< Scalar, NDim > | query, |
Scalar * | g_out | ||
) |
< constraint spec
< child spec
< constraint spec
< child spec
query | query point data |
Definition at line 154 of file so3.cu.hpp.
__device__ Scalar mpblocks::cudaNN::kernels::so3_distance | ( | const linalg::Matrix< Scalar, 4, 1 > & | q0, |
const linalg::Matrix< Scalar, 4, 1 > & | q1 | ||
) |
Definition at line 53 of file so3.cu.hpp.
__device__ Scalar mpblocks::cudaNN::kernels::so3_pseudo_distance | ( | const linalg::Matrix< Scalar, 4, 1 > & | q0, |
const linalg::Matrix< Scalar, 4, 1 > & | q1 | ||
) |
Definition at line 42 of file so3.cu.hpp.