Open3D (C++ API)
0.17.0
|
#include <tbb/parallel_for.h>
#include <algorithm>
#include <mutex>
#include <nanoflann.hpp>
#include "open3d/core/Atomic.h"
#include "open3d/core/nns/NeighborSearchCommon.h"
#include "open3d/utility/Helper.h"
#include "open3d/utility/ParallelScan.h"
Go to the source code of this file.
Data Structures | |
struct | open3d::core::nns::NanoFlannIndexHolder< METRIC, TReal, TIndex > |
NanoFlann Index Holder. More... | |
struct | open3d::core::nns::NanoFlannIndexHolder< METRIC, TReal, TIndex >::DataAdaptor |
This class is the Adaptor for connecting Open3D Tensor and NanoFlann. More... | |
struct | open3d::core::nns::NanoFlannIndexHolder< METRIC, TReal, TIndex >::SelectNanoflannAdaptor< M, fake > |
Adaptor Selector. More... | |
struct | open3d::core::nns::NanoFlannIndexHolder< METRIC, TReal, TIndex >::SelectNanoflannAdaptor< L2, fake > |
struct | open3d::core::nns::NanoFlannIndexHolder< METRIC, TReal, TIndex >::SelectNanoflannAdaptor< L1, fake > |
Namespaces | |
open3d | |
open3d::core | |
open3d::core::nns | |
open3d::core::nns::impl | |
Macros | |
#define | FN_PARAMETERS num_points, points, dimension, &holder |
#define | CALL_TEMPLATE(METRIC) |
#define | CALL_TEMPLATE2 |
#define | FN_PARAMETERS |
#define | CALL_TEMPLATE(METRIC) |
#define | CALL_TEMPLATE2 |
#define | FN_PARAMETERS |
#define | CALL_TEMPLATE(METRIC) |
#define | CALL_TEMPLATE2 |
#define | FN_PARAMETERS |
#define | CALL_TEMPLATE(METRIC) |
#define | CALL_TEMPLATE2 |
Functions | |
template<class T , class TIndex > | |
std::unique_ptr< NanoFlannIndexHolderBase > | open3d::core::nns::impl::BuildKdTree (size_t num_points, const T *const points, size_t dimension, const Metric metric) |
template<class T , class TIndex , class OUTPUT_ALLOCATOR > | |
void | open3d::core::nns::impl::KnnSearchCPU (NanoFlannIndexHolderBase *holder, int64_t *query_neighbors_row_splits, size_t num_points, const T *const points, size_t num_queries, const T *const queries, const size_t dimension, int knn, const Metric metric, bool ignore_query_point, bool return_distances, OUTPUT_ALLOCATOR &output_allocator) |
template<class T , class TIndex , class OUTPUT_ALLOCATOR > | |
void | open3d::core::nns::impl::RadiusSearchCPU (NanoFlannIndexHolderBase *holder, int64_t *query_neighbors_row_splits, size_t num_points, const T *const points, size_t num_queries, const T *const queries, const size_t dimension, const T *const radii, const Metric metric, bool ignore_query_point, bool return_distances, bool normalize_distances, bool sort, OUTPUT_ALLOCATOR &output_allocator) |
template<class T , class TIndex , class OUTPUT_ALLOCATOR > | |
void | open3d::core::nns::impl::HybridSearchCPU (NanoFlannIndexHolderBase *holder, size_t num_points, const T *const points, size_t num_queries, const T *const queries, const size_t dimension, const T radius, const int max_knn, const Metric metric, bool ignore_query_point, bool return_distances, OUTPUT_ALLOCATOR &output_allocator) |
#define CALL_TEMPLATE | ( | METRIC | ) |
#define CALL_TEMPLATE | ( | METRIC | ) |
#define CALL_TEMPLATE | ( | METRIC | ) |
#define CALL_TEMPLATE | ( | METRIC | ) |
#define CALL_TEMPLATE2 |
#define CALL_TEMPLATE2 |
#define CALL_TEMPLATE2 |
#define CALL_TEMPLATE2 |
#define FN_PARAMETERS num_points, points, dimension, &holder |
#define FN_PARAMETERS |
#define FN_PARAMETERS |
#define FN_PARAMETERS |