-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathviso2Types.hpp
56 lines (43 loc) · 1.66 KB
/
viso2Types.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#ifndef viso2_TYPES_HPP
#define viso2_TYPES_HPP
/* If you need to define types specific to your oroGen components, define them
* here. Required headers must be included explicitly
*
* However, it is common that you will only import types from your library, in
* which case you do not need this file
*/
#include <base/Time.hpp>
#include <base/Eigen.hpp>
#include <viso2/matcher.h>
#include <viso2/viso.h>
namespace viso2 {
/** Type for image output **/
enum IMAGE_OUTPUT_TYPE{INTRA_MATCHES, INTER_KEYPOINTS};
/** Currently oroGen does not support class inheritance in ports/property definitions **/
/** This is a plain struct of the viso2 parameters which have inheritance **/
/** Have a look at viso2/viso_stereo.h viso2/viso.h and viso2/matcher.h **/
struct StereoOdometerParameters
{
//double base; // baseline (meters) COMMENTED it will take the baseline from FrameHelper calibration parameters
int32_t ransac_iters; // number of RANSAC iterations
double inlier_threshold; // fundamental matrix inlier threshold
bool reweighting; // lower border weights (more robust to calibration errors)
Matcher::parameters match; // matching parameters
VisualOdometry::bucketing bucket; // bucketing parameters
StereoOdometerParameters ()
{
ransac_iters = 200;
inlier_threshold = 1.5;
reweighting = true;
}
};
struct Viso2Info
{
base::Time time;
double num_matches;
double num_inliers;
double ratio_inliers;
base::Time compute_time;
};
}
#endif