ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
colmap::retrieval::InvertedFile< kEmbeddingDim > Class Template Reference

#include <inverted_file.h>

Public Types

enum  Status { UNUSABLE = 0x00 , HAS_EMBEDDING = 0x01 , ENTRIES_SORTED = 0x02 , USABLE = 0x03 }
 
typedef Eigen::VectorXf DescType
 
typedef FeatureGeometry GeomType
 
typedef InvertedFileEntry< kEmbeddingDim > EntryType
 

Public Member Functions

 InvertedFile ()
 
size_t NumEntries () const
 
const std::vector< EntryType > & GetEntries () const
 
bool HasHammingEmbedding () const
 
bool EntriesSorted () const
 
bool IsUsable () const
 
void AddEntry (const int image_id, typename DescType::Index feature_idx, const DescType &descriptor, const GeomType &geometry)
 
void SortEntries ()
 
void ClearEntries ()
 
void Reset ()
 
void ConvertToBinaryDescriptor (const DescType &descriptor, std::bitset< kEmbeddingDim > *binary_descriptor) const
 
void ComputeIDFWeight (const int num_total_images)
 
float IDFWeight () const
 
void ComputeHammingEmbedding (const Eigen::Matrix< float, Eigen::Dynamic, kEmbeddingDim > &descriptors)
 
void ScoreFeature (const DescType &descriptor, std::vector< ImageScore > *image_scores) const
 
void GetImageIds (std::unordered_set< int > *ids) const
 
void ComputeImageSelfSimilarities (std::unordered_map< int, double > *self_similarities) const
 
void Read (std::ifstream *ifs)
 
void Write (std::ofstream *ofs) const
 

Detailed Description

template<int kEmbeddingDim>
class colmap::retrieval::InvertedFile< kEmbeddingDim >

Definition at line 34 of file inverted_file.h.

Member Typedef Documentation

◆ DescType

template<int kEmbeddingDim>
typedef Eigen::VectorXf colmap::retrieval::InvertedFile< kEmbeddingDim >::DescType

Definition at line 36 of file inverted_file.h.

◆ EntryType

template<int kEmbeddingDim>
typedef InvertedFileEntry<kEmbeddingDim> colmap::retrieval::InvertedFile< kEmbeddingDim >::EntryType

Definition at line 38 of file inverted_file.h.

◆ GeomType

template<int kEmbeddingDim>
typedef FeatureGeometry colmap::retrieval::InvertedFile< kEmbeddingDim >::GeomType

Definition at line 37 of file inverted_file.h.

Member Enumeration Documentation

◆ Status

template<int kEmbeddingDim>
enum colmap::retrieval::InvertedFile::Status
Enumerator
UNUSABLE 
HAS_EMBEDDING 
ENTRIES_SORTED 
USABLE 

Definition at line 40 of file inverted_file.h.

Constructor & Destructor Documentation

◆ InvertedFile()

template<int kEmbeddingDim>
colmap::retrieval::InvertedFile< kEmbeddingDim >::InvertedFile

Definition at line 149 of file inverted_file.h.

Member Function Documentation

◆ AddEntry()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::AddEntry ( const int  image_id,
typename DescType::Index  feature_idx,
const DescType descriptor,
const GeomType geometry 
)

◆ ClearEntries()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ClearEntries

Definition at line 213 of file inverted_file.h.

◆ ComputeHammingEmbedding()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ComputeHammingEmbedding ( const Eigen::Matrix< float, Eigen::Dynamic, kEmbeddingDim > &  descriptors)

Definition at line 255 of file inverted_file.h.

References descriptors, and colmap::Median().

◆ ComputeIDFWeight()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ComputeIDFWeight ( const int  num_total_images)

Definition at line 237 of file inverted_file.h.

◆ ComputeImageSelfSimilarities()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ComputeImageSelfSimilarities ( std::unordered_map< int, double > *  self_similarities) const

Definition at line 349 of file inverted_file.h.

◆ ConvertToBinaryDescriptor()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ConvertToBinaryDescriptor ( const DescType descriptor,
std::bitset< kEmbeddingDim > *  binary_descriptor 
) const

Definition at line 227 of file inverted_file.h.

◆ EntriesSorted()

template<int kEmbeddingDim>
bool colmap::retrieval::InvertedFile< kEmbeddingDim >::EntriesSorted

Definition at line 178 of file inverted_file.h.

◆ GetEntries()

template<int kEmbeddingDim>
const std::vector< typename InvertedFile< kEmbeddingDim >::EntryType > & colmap::retrieval::InvertedFile< kEmbeddingDim >::GetEntries

Definition at line 168 of file inverted_file.h.

◆ GetImageIds()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::GetImageIds ( std::unordered_set< int > *  ids) const

Definition at line 341 of file inverted_file.h.

◆ HasHammingEmbedding()

template<int kEmbeddingDim>
bool colmap::retrieval::InvertedFile< kEmbeddingDim >::HasHammingEmbedding

Definition at line 173 of file inverted_file.h.

◆ IDFWeight()

template<int kEmbeddingDim>
float colmap::retrieval::InvertedFile< kEmbeddingDim >::IDFWeight

Definition at line 250 of file inverted_file.h.

◆ IsUsable()

template<int kEmbeddingDim>
bool colmap::retrieval::InvertedFile< kEmbeddingDim >::IsUsable

Definition at line 183 of file inverted_file.h.

◆ NumEntries()

template<int kEmbeddingDim>
size_t colmap::retrieval::InvertedFile< kEmbeddingDim >::NumEntries

Definition at line 162 of file inverted_file.h.

◆ Read()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::Read ( std::ifstream *  ifs)

Definition at line 358 of file inverted_file.h.

◆ Reset()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::Reset

Definition at line 219 of file inverted_file.h.

◆ ScoreFeature()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::ScoreFeature ( const DescType descriptor,
std::vector< ImageScore > *  image_scores 
) const

◆ SortEntries()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::SortEntries

Definition at line 204 of file inverted_file.h.

◆ Write()

template<int kEmbeddingDim>
void colmap::retrieval::InvertedFile< kEmbeddingDim >::Write ( std::ofstream *  ofs) const

Definition at line 378 of file inverted_file.h.


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