ImFusion SDK 4.3
KeypointsElement Class Reference

#include <ImFusion/ML/DataElements/KeypointsElement.h>

DataElement based on KeypointSet. More...

+ Inheritance diagram for KeypointsElement:

Detailed Description

Public Member Functions

 KeypointsElement (std::shared_ptr< KeypointSet > points)
 
 KeypointsElement (const KeypointSet &points)
 
 KeypointsElement (KeypointSet &&points)
 
 KeypointsElement (const PointCloud &pointCloud)
 
ElementType type () const override
 Returns the type of the underlying data.
 
int dimension () const override
 Returns the dimensionality of the underlying data.
 
size_t batchSize () const override
 Returns the batch size of the element.
 
void setContent (std::shared_ptr< Data > points) override
 Sets the underlying data.
 
std::shared_ptr< KeypointSetkeypoints () const
 
void setKeypoints (std::shared_ptr< KeypointSet > points)
 Sets the underlying KeypointSet.
 
std::vector< std::shared_ptr< DataElement > > split () override
 Split an element into several ones along the batch dimension.
 
std::unique_ptr< DataElementclone (CloneOptions opt=CloneOptions::Everything) const override
 Create a (shallow or deep) copy of the element.
 
- Public Member Functions inherited from DataElement
template<typename Derived>
Derived * typed ()
 
template<typename Derived>
const Derived * typed () const
 
virtual std::shared_ptr< Datacontent () const
 Returns the underlying data object.
 
const DataComponentListcomponents () const
 Convenience function to expose the DataComponents of the underlying Data object.
 
DataComponentListcomponents ()
 
bool isTarget () const
 Returns true if this element is marked as a label.
 
void tagAsTarget ()
 Mark this element as being a label.
 
void untagAsTarget ()
 Remove label status from this element.
 

Static Public Member Functions

static std::unique_ptr< DataElementstack (const std::vector< std::shared_ptr< KeypointsElement > > &elements)
 
- Static Public Member Functions inherited from DataElement
static std::unique_ptr< DataElementstack (const std::vector< std::shared_ptr< DataElement > > &elements)
 Stack several elements along the batch dimension.
 

Additional Inherited Members

- Public Types inherited from DataElement
enum class  CloneOptions { Everything = 0 , Container , NoImageData }
 Option to control which parts of the data element are to be copied when cloning the DataElement. More...
 
- Protected Member Functions inherited from NotCopyable
 NotCopyable (NotCopyable &&) noexcept=default
 
NotCopyableoperator= (NotCopyable &&) noexcept=default
 
 NotCopyable (const NotCopyable &)=delete
 
NotCopyableoperator= (const NotCopyable &)=delete
 
- Protected Attributes inherited from DataElement
std::shared_ptr< Datam_data
 

Constructor & Destructor Documentation

◆ KeypointsElement()

KeypointsElement ( const PointCloud & pointCloud)
explicit
Deprecated
"Please construct with KeypointsElement(KeypointSet::pointCloudsToKeypoints({pointCloud}))."

Member Function Documentation

◆ type()

ElementType type ( ) const
inlineoverridevirtual

Returns the type of the underlying data.

Implements DataElement.

◆ dimension()

int dimension ( ) const
overridevirtual

Returns the dimensionality of the underlying data.

Implements DataElement.

◆ batchSize()

size_t batchSize ( ) const
overridevirtual

Returns the batch size of the element.

Implements DataElement.

◆ setContent()

void setContent ( std::shared_ptr< Data > points)
overridevirtual

Sets the underlying data.

Exceptions
DataElementExceptionif points is nullptr or not of type KeypointSet

Implements DataElement.

◆ setKeypoints()

void setKeypoints ( std::shared_ptr< KeypointSet > points)

Sets the underlying KeypointSet.

Exceptions
DataElementExceptionif points is nullptr

◆ split()

std::vector< std::shared_ptr< DataElement > > split ( )
overridevirtual

Split an element into several ones along the batch dimension.

After a call to this function, the element is empty.

Implements DataElement.

◆ clone()

std::unique_ptr< DataElement > clone ( CloneOptions opt = CloneOptions::Everything) const
overridevirtual

Create a (shallow or deep) copy of the element.

Implements DataElement.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close