#include <distance_metric.h>
Definition at line 58 of file distance_metric.h.
| bsfm::DistanceMetric::DistanceMetric |
( |
| ) |
|
|
private |
Definition at line 91 of file distance_metric.cpp.
void SetMetric(const Metric &metric=Metric::SCALED_L2)
| double bsfm::DistanceMetric::GetHammingDistance |
( |
const Descriptor & |
descriptor1, |
|
|
const Descriptor & |
descriptor2 |
|
) |
| const |
|
private |
Definition at line 103 of file distance_metric.cpp.
105 CHECK_EQ(descriptor1.size(), descriptor2.size());
107 for (
size_t ii = 0; ii < descriptor1.size(); ++ii) {
108 unsigned char d1 =
static_cast<unsigned char>(descriptor1(ii));
109 unsigned char d2 =
static_cast<unsigned char>(descriptor2(ii));
112 return static_cast<double>(sum);
| double bsfm::DistanceMetric::GetScaledL2Distance |
( |
const Descriptor & |
descriptor1, |
|
|
const Descriptor & |
descriptor2 |
|
) |
| const |
|
private |
Definition at line 97 of file distance_metric.cpp.
99 CHECK_EQ(descriptor1.size(), descriptor2.size());
100 return 1.0 - descriptor1.dot(descriptor2);
| double bsfm::DistanceMetric::Max |
( |
| ) |
const |
| bool bsfm::DistanceMetric::MaybeNormalizeDescriptors |
( |
std::vector< Descriptor > & |
descriptors | ) |
const |
Definition at line 74 of file distance_metric.cpp.
76 bool normalized =
false;
void NormalizeDescriptors(std::vector< Descriptor > &descriptors) const
| void bsfm::DistanceMetric::NormalizeDescriptors |
( |
std::vector< Descriptor > & |
descriptors | ) |
const |
|
private |
Definition at line 115 of file distance_metric.cpp.
117 for (
auto& descriptor : descriptors) {
118 descriptor.normalize();
| double bsfm::DistanceMetric::operator() |
( |
const Descriptor & |
descriptor1, |
|
|
const Descriptor & |
descriptor2 |
|
) |
| |
Definition at line 59 of file distance_metric.cpp.
61 double distance = 0.0;
double GetHammingDistance(const Descriptor &descriptor1, const Descriptor &descriptor2) const
double GetScaledL2Distance(const Descriptor &descriptor1, const Descriptor &descriptor2) const
| void bsfm::DistanceMetric::SetMaximumDistance |
( |
double |
maximum_distance | ) |
|
| void bsfm::DistanceMetric::SetMetric |
( |
const Metric & |
metric = Metric::SCALED_L2 | ) |
|
| double bsfm::DistanceMetric::maximum_distance_ |
|
private |
| Metric bsfm::DistanceMetric::metric_ |
|
private |
The documentation for this class was generated from the following files: