2#include <opencv2/core/core.hpp>
3#include <OrbSLAM/Thirdparty/Sophus/sophus/se3.hpp>
17 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
33 static bool Triangulate(Eigen::Vector3f& x_c1, Eigen::Vector3f& x_c2, Eigen::Matrix<float, 3, 4>& Tc1w, Eigen::Matrix<float, 3, 4>& Tc2w, Eigen::Vector3f& x3D);
40 template<
int rows,
int cols>
41 static bool CheckMatrices(
const cv::Mat& cvMat,
const Eigen::Matrix<float, rows, cols>& eigMat) {
42 const float epsilon = 1e-3;
44 if (rows != cvMat.rows || cols != cvMat.cols) {
48 for (
int i = 0; i < rows; i++)
49 for (
int j = 0; j < cols; j++)
50 if ((cvMat.at<
float>(i, j) > (eigMat(i, j) + epsilon)) ||
51 (cvMat.at<
float>(i, j) < (eigMat(i, j) - epsilon)))
65 template<
typename T,
int rows,
int cols>
66 static bool CheckMatrices(
const Eigen::Matrix<T, rows, cols>& eigMat1,
const Eigen::Matrix<T, rows, cols>& eigMat2) {
67 const float epsilon = 1e-3;
68 for (
int i = 0; i < rows; i++)
69 for (
int j = 0; j < cols; j++)
70 if ((eigMat1(i, j) > (eigMat2(i, j) + epsilon)) ||
71 (eigMat1(i, j) < (eigMat2(i, j) - epsilon)))
A keyframe in the SLAM map, derived from Frame.
The primary namespace for the NDEVR SDK.