46 #ifndef BSFM_MATCHING_DISTANCE_METRIC_H
47 #define BSFM_MATCHING_DISTANCE_METRIC_H
50 #include <glog/logging.h>
53 #include "../util/disallow_copy_and_assign.h"
54 #include "../util/types.h"
double GetHammingDistance(const Descriptor &descriptor1, const Descriptor &descriptor2) const
static DistanceMetric & Instance()
void SetMaximumDistance(double maximum_distance)
double operator()(const Descriptor &descriptor1, const Descriptor &descriptor2)
double GetScaledL2Distance(const Descriptor &descriptor1, const Descriptor &descriptor2) const
void SetMetric(const Metric &metric=Metric::SCALED_L2)
bool MaybeNormalizeDescriptors(std::vector< Descriptor > &descriptors) const
#define DISALLOW_COPY_AND_ASSIGN(TypeName)
void NormalizeDescriptors(std::vector< Descriptor > &descriptors) const
::Eigen::Matrix< double, Eigen::Dynamic, 1 > Descriptor