一、问题一
在使用github当中,使用原版的ch4后,在使用vscode打开使用(前提是sophus库和fmt库正确安装),发现在这行代码出vscode显示出错误。
Sophus::SO3<double> SO3_v( 0, 0, M_PI/2 ); // 亦可从旋转向量构造
出现问题的原因,可能是不能通过这样的方式进行旋转向量到SO3李代数的构造方式,可以将其更改为下面的代码,则不会产生报错。
Eigen::Vector3d rotation_vector(M_PI / 2, 0, 0);
Sophus::SO3<double> SO3_v = Sophus::SO3<double>::exp(rotation_vector);
思路是先使用Eigen库构建一个旋转向量,再将这个旋转向量构建李代数。
二、问题二
在程序最后的扰动模型可能会出现报错。源代码如下
update_se3(0,0) = 1e-4d;
因为是微小扰动量,所以可以将其更改为如下的代码
update_se3(0,0) = 1e-4;
程序在这个地方的报错消失。