CVB++ 15.0
Finder Class Referencefinal

Match3D DNC finder used to perform a search on a point cloud. More...

#include <cvb/dnc/finder.hpp>

Public Member Functions

void * Handle () const noexcept
 Classic API node handle. More...
 
std::vector< SearchResultFind (const DensePointCloud &pointCloud, const SearchParameters &parameters)
 Search for objects on the given point cloud. More...
 
void Save (const String &fileName)
 Saves the finder to the given file name. More...
 
std::tuple< TeachParameters, double, double > GetTeachParameters ()
 Gets the TeachParameters with which this Finder was trained. More...
 

Static Public Member Functions

static std::unique_ptr< FinderLoad (const String &fileName)
 Loads a finder from the given file name. More...
 
static std::unique_ptr< FinderFromHandle (HandleGuard< Finder > &&guard)
 Creates a finder from a classic API handle. More...
 

Detailed Description

Match3D DNC finder used to perform a search on a point cloud.

Member Function Documentation

◆ Find()

std::vector< SearchResult > Find ( const DensePointCloud pointCloud,
const SearchParameters parameters 
)
inline

Search for objects on the given point cloud.

Detect objects in the given point cloud and return a list of results. Try to adjust the search parameters if there are too few results or the result list contains false positives.

The given pointCloud must either be orientated in sensor frame coordinates, or it must be extrinsically calibrated such that the direction of the Z-axis points to the sensor.

Parameters
[in]pointCloudPointCloud to search on.
[in]parametersSearch parameters to use.
Returns
Found results.
Exceptions
Anyexception derived from std::exception including CvbException.

◆ FromHandle()

static std::unique_ptr< Finder > FromHandle ( HandleGuard< Finder > &&  guard)
inlinestatic

Creates a finder from a classic API handle.

Parameters
[in]guardLife time guard for C-API handle.
Returns
The finder created from the classic API handle.
Exceptions
Anyexception derived from std::exception including CvbException.

The finder takes ownership of the handle, so you must share it before using this function.

◆ GetTeachParameters()

std::tuple< TeachParameters, double, double > GetTeachParameters ( )
inline

Gets the TeachParameters with which this Finder was trained.

This function returns the parameters with which the classifier was trained. The values for resolution and fringe are not teach parameters in the strict sense - they rather concern the sample generation itself -, but they are returned for the sake of completeness.

Returns
A tuple containg the teach parameters, the resolution and the fringe.
Exceptions
Anyexception derived from std::exception including CvbException.

◆ Handle()

void * Handle ( ) const
inlinenoexcept

Classic API node handle.

Returns
Classic API handle.
Exceptions
Doesnot throw any exception.

It is normally not necessary to work with this handle.

◆ Load()

static std::unique_ptr< Finder > Load ( const String fileName)
inlinestatic

Loads a finder from the given file name.

Parameters
[in]fileNameFile to load
Returns
Loaded finder.
Exceptions
Anyexception derived from std::exception including CvbException.
Examples
DNC/CppDncConsole.

◆ Save()

void Save ( const String fileName)
inline

Saves the finder to the given file name.

Parameters
[in]fileNamePath to save the finder to.
Exceptions
Anyexception derived from std::exception including CvbException.