Ceres Solver 官方教程学习笔记(十二)——非线性最小二乘法建模 Modeling Non-linear Least Squares (下)。
发布时间
阅读量:
阅读量
本部分内容中,最为关键的环节集中于最终的Problem部分。
带条件的代价函数ConditionedCostFunction
此类设计允许用户在应用已封装的损失函数时,对残差值施加特定的约束条件。例如,当前存在一个损失函数可生成N个数值,但用户期望的总体损失并非这些数值的简单平方和。例如,可以通过为某一项残差赋予特定系数,从而调整其在整个损失计算中的比重。具体的实现代码如下:
// my_cost_function 生成N个残差值。
CostFunction* my_cost_function = ...
CHECK_EQ(N, my_cost_function->num_residuals());
vector<CostFunction*> conditioners;
// Make N 1x1 cost functions (1 parameter, 1 residual)
// 将其构造成N个1x1的代价函数。
CostFunction* f_1 = ...
conditioners.push_back(f_1);
CostFunction* f_N = ...
conditioners.push_back(f_N);
Conditioned
全部评论 (0)
还没有任何评论哟~
