c++使用eigen库,矩阵维度错误

/usr/include/eigen3/Eigen/src/Core/util/StaticAssert.h:32: error: static assertion failed: YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES
     #define EIGEN_STATIC_ASSERT(X,MSG) static_assert(X,#MSG);

在用高斯牛顿做迭代优化时,H=J^TJ,

当f(x)是一维时,J通常用vector2d,vector3d,vector6d表示,此时J的唯独是(2,1)(3,1),(6,1)即此时J是雅克比矩阵的转置,此时仍用H=J^TJ,会出现上述错误,应改成H=JJ^T

猜你喜欢

转载自blog.csdn.net/hanshihao1336295654/article/details/84310815