AliceVision
Photogrammetric Computer Vision Framework
Public Member Functions | List of all members
aliceVision::feature::ImageDescriber Class Referenceabstract

A pure virtual class for image description computation. More...

#include <ImageDescriber.hpp>

Inheritance diagram for aliceVision::feature::ImageDescriber:
aliceVision::feature::ImageDescriber_AKAZE aliceVision::feature::ImageDescriber_AKAZE_OCV aliceVision::feature::ImageDescriber_APRILTAG aliceVision::feature::ImageDescriber_CCTAG aliceVision::feature::ImageDescriber_DSPSIFT_vlfeat aliceVision::feature::ImageDescriber_Roma aliceVision::feature::ImageDescriber_SIFT aliceVision::feature::ImageDescriber_SIFT_openCV aliceVision::feature::ImageDescriber_SIFT_popSIFT aliceVision::feature::ImageDescriber_SIFT_vlfeat aliceVision::feature::ImageDescriber_SIFT_vlfeatFloat

Public Member Functions

virtual bool useCuda () const =0
 Check if the image describer use CUDA. More...
 
virtual bool useFloatImage () const =0
 Check if the image describer use float image. More...
 
virtual EImageDescriberType getDescriberType () const =0
 Get the corresponding EImageDescriberType. More...
 
virtual std::size_t getMemoryConsumption (std::size_t width, std::size_t height) const =0
 Get the total amount of RAM needed for a feature extraction of an image of the given dimension. More...
 
virtual void setUpRight ([[maybe_unused]] bool upRight)
 Set whether the image describer is always upright. More...
 
virtual void setUseCuda ([[maybe_unused]] bool useCuda)
 Set whether the image describer needs to use CUDA implementation. More...
 
virtual void setCudaPipe ([[maybe_unused]] int pipe)
 Set the CUDA pipe. More...
 
virtual void setConfigurationPreset (ConfigurationPreset preset)=0
 Use a preset to control the number of detected regions. More...
 
virtual bool describe ([[maybe_unused]] const image::Image< unsigned char > &image, [[maybe_unused]] std::unique_ptr< Regions > &regions, [[maybe_unused]] const image::Image< unsigned char > *mask=nullptr)
 Detect regions on the 8-bit image and compute their attributes (description) More...
 
virtual bool describe ([[maybe_unused]] const image::Image< float > &image, [[maybe_unused]] std::unique_ptr< Regions > &regions, [[maybe_unused]] const image::Image< unsigned char > *mask=nullptr)
 Detect regions on the float image and compute their attributes (description) More...
 
virtual void allocate (std::unique_ptr< Regions > &regions) const =0
 Allocate Regions type depending of the ImageDescriber. More...
 
void Load (Regions *regions, const std::string &sfileNameFeats, const std::string &sfileNameDescs) const
 
void Save (const Regions *regions, const std::string &sfileNameFeats, const std::string &sfileNameDescs) const
 
void LoadFeatures (Regions *regions, const std::string &sfileNameFeats) const
 

Detailed Description

A pure virtual class for image description computation.

Member Function Documentation

◆ allocate()

virtual void aliceVision::feature::ImageDescriber::allocate ( std::unique_ptr< Regions > &  regions) const
pure virtual

◆ describe() [1/2]

virtual bool aliceVision::feature::ImageDescriber::describe ( [[maybe_unused] ] const image::Image< float > &  image,
[[maybe_unused] ] std::unique_ptr< Regions > &  regions,
[[maybe_unused] ] const image::Image< unsigned char > *  mask = nullptr 
)
inlinevirtual

Detect regions on the float image and compute their attributes (description)

Parameters
[in]imageImage.
[out]regionsThe detected regions and attributes
[in]mask8-bit grayscale image for keypoint filtering (optional) Non-zero values depict the region of interest.

◆ describe() [2/2]

virtual bool aliceVision::feature::ImageDescriber::describe ( [[maybe_unused] ] const image::Image< unsigned char > &  image,
[[maybe_unused] ] std::unique_ptr< Regions > &  regions,
[[maybe_unused] ] const image::Image< unsigned char > *  mask = nullptr 
)
inlinevirtual

Detect regions on the 8-bit image and compute their attributes (description)

Parameters
[in]imageImage.
[out]regionsThe detected regions and attributes
[in]mask8-bit grayscale image for keypoint filtering (optional) Non-zero values depict the region of interest.

◆ getDescriberType()

virtual EImageDescriberType aliceVision::feature::ImageDescriber::getDescriberType ( ) const
pure virtual

◆ getMemoryConsumption()

virtual std::size_t aliceVision::feature::ImageDescriber::getMemoryConsumption ( std::size_t  width,
std::size_t  height 
) const
pure virtual

◆ setConfigurationPreset()

virtual void aliceVision::feature::ImageDescriber::setConfigurationPreset ( ConfigurationPreset  preset)
pure virtual

◆ setCudaPipe()

virtual void aliceVision::feature::ImageDescriber::setCudaPipe ( [[maybe_unused] ] int  pipe)
inlinevirtual

Set the CUDA pipe.

Parameters
[in]pipeThe CUDA pipe id

◆ setUpRight()

virtual void aliceVision::feature::ImageDescriber::setUpRight ( [[maybe_unused] ] bool  upRight)
inlinevirtual

Set whether the image describer is always upright.

Parameters
[in]upRight

◆ setUseCuda()

virtual void aliceVision::feature::ImageDescriber::setUseCuda ( [[maybe_unused] ] bool  useCuda)
inlinevirtual

Set whether the image describer needs to use CUDA implementation.

Parameters
[in]useCuda

◆ useCuda()

virtual bool aliceVision::feature::ImageDescriber::useCuda ( ) const
pure virtual

◆ useFloatImage()

virtual bool aliceVision::feature::ImageDescriber::useFloatImage ( ) const
pure virtual

The documentation for this class was generated from the following files: