Skip to content

你好,请问feature.hpp中的cost函数定义是重投影误差吗? #5

Open
@bereze

Description

@bereze

`void Feature::cost(const Eigen::Isometry3d& T_c0_ci, const Eigen::Vector3d& x,
const Eigen::Vector2d& z, double& e) const {
// Compute hi1, hi2, and hi3 as Equation (37).
const double& alpha = x(0);
const double& beta = x(1);
const double& rho = x(2);

Eigen::Vector3d h = T_c0_ci.linear() * Eigen::Vector3d(alpha, beta, 1.0) +
rho * T_c0_ci.translation();
double& h1 = h(0);
double& h2 = h(1);
double& h3 = h(2);

// Predict the feature observation in ci frame.
Eigen::Vector2d z_hat(h1 / h3, h2 / h3);

// Compute the residual.
e = (z_hat - z).squaredNorm();
return;
} 你好,请问feature.hpp中的cost函数是计算重投影误差的吗?为什么地图点z的归一化平面坐标是R * (alpha,beta,1.0)+rhot,而不是R(alpha,beta,rho)+t`呢?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions