MVE - Multi-View Environment mve-devel
Loading...
Searching...
No Matches
matching_base.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2015, Simon Fuhrmann
3 * TU Darmstadt - Graphics, Capture and Massively Parallel Computing
4 * All rights reserved.
5 *
6 * This software may be modified and distributed under the terms
7 * of the BSD 3-Clause license. See the LICENSE.txt file for details.
8 */
9
10#ifndef SFM_MATCHING_BASE_HEADER
11#define SFM_MATCHING_BASE_HEADER
12
13#include <limits>
14
15#include "sfm/bundler_common.h"
16#include "sfm/defines.h"
17#include "sfm/matching.h"
18#include "sfm/matching_base.h"
19
21
23{
24public:
25 struct Options
26 {
27 Matching::Options sift_matching_opts{ 128, 0.8f,
28 std::numeric_limits<float>::max() };
29 Matching::Options surf_matching_opts{ 64, 0.7f,
30 std::numeric_limits<float>::max() };
31 };
32
33 virtual ~MatchingBase (void) = default;
34
40 virtual void init (bundler::ViewportList* viewports) = 0;
41
43 virtual void pairwise_match (int view_1_id, int view_2_id,
44 Matching::Result* result) const = 0;
45
51 virtual int pairwise_match_lowres (int view_1_id, int view_2_id,
52 std::size_t num_features) const = 0;
53
55};
56
58
59#endif /* SFM_MATCHING_BASE_HEADER */
60
virtual int pairwise_match_lowres(int view_1_id, int view_2_id, std::size_t num_features) const =0
Matches the N lowest resolution features and returns the number of matches.
virtual void init(bundler::ViewportList *viewports)=0
Initialize the matcher.
virtual ~MatchingBase(void)=default
virtual void pairwise_match(int view_1_id, int view_2_id, Matching::Result *result) const =0
Matches all feature types yielding a single matching result.
std::vector< Viewport > ViewportList
The list of all viewports considered for bundling.
#define SFM_NAMESPACE_END
Definition defines.h:14
#define SFM_NAMESPACE_BEGIN
Definition defines.h:13
Feature matching options.
Definition matching.h:30
Feature matching result reported as two lists, each with indices in the other set.
Definition matching.h:57