ceres::Problem problem; problem.Evaluate(ceres::Problem::EvaluateOptions(), nullptr, nullptr, nullptr, &jacobian);Evaluate参数
时间: 2024-04-05 16:32:29 浏览: 100
ceres-python:ceres-solver的Python绑定
ceres::Problem::Evaluate函数的参数含义如下:
1. options:一个EvaluateOptions类型的对象,用于设置计算参数。如果不需要设置,可以传入默认构造的EvaluateOptions对象。
2. residuals:指向一个double类型的数组,用于输出问题中每个残差的值。如果不需要输出残差值,可以传入空指针。
3. gradients:指向一个double类型的数组,用于输出问题中每个残差对每个参数的偏导数(即雅克比矩阵)。如果不需要输出雅克比矩阵,可以传入空指针。
4. jacobians:指向一个std::vector类型的对象,用于输出问题中每个残差对每个参数的偏导数(即雅克比矩阵)。与gradients参数类似,如果不需要输出雅克比矩阵,可以传入空指针。
需要注意的是,gradients和jacobians这两个参数只能同时为nullptr或者同时为非nullptr。如果同时输出残差值和雅克比矩阵,则需要同时传入非nullptr的residuals和jacobians参数。
阅读全文