included suggestions from Frank
parent
dc13912ce2
commit
b126d98609
|
|
@ -101,7 +101,7 @@ void ImuFactor::PreintegratedMeasurements::integrateMeasurement(
|
|||
}
|
||||
if(G_test){
|
||||
// Extended version, without approximation: Gt * Qt * G =(approx)= measurementCovariance_contTime * deltaT
|
||||
// This in only for testing
|
||||
// This in only for testing & documentation
|
||||
G_test->resize(9,9);
|
||||
// intNoise accNoise omegaNoise
|
||||
(*G_test) << I_3x3 * deltaT, Z_3x3, Z_3x3, // pos
|
||||
|
|
|
|||
|
|
@ -76,12 +76,8 @@ public:
|
|||
/// Update preintegrated measurements
|
||||
void updateIntegratedRotationAndDeltaT(const Rot3& incrR, const double deltaT,
|
||||
boost::optional<Matrix3&> H = boost::none){
|
||||
deltaRij_ = deltaRij_ * incrR;
|
||||
deltaRij_ = deltaRij_.compose(incrR, H, boost::none);
|
||||
deltaTij_ += deltaT;
|
||||
if(H){
|
||||
H->resize(3,3);
|
||||
*H = incrR.transpose();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -126,16 +126,19 @@ public:
|
|||
deltaPij_ += deltaVij_ * deltaT + 0.5 * temp * deltaT;
|
||||
}
|
||||
deltaVij_ += temp;
|
||||
Matrix3 F_angles_angles;
|
||||
const Matrix3 R_i = deltaRij();
|
||||
updateIntegratedRotationAndDeltaT(incrR,deltaT, F_angles_angles);
|
||||
Matrix3 F_vel_angles = - R_i * skewSymmetric(correctedAcc) * deltaT;
|
||||
|
||||
if(F){
|
||||
Matrix3 F_angles_angles;
|
||||
const Matrix3 R_i = deltaRij();
|
||||
updateIntegratedRotationAndDeltaT(incrR,deltaT, F_angles_angles);
|
||||
Matrix3 F_vel_angles = - R_i * skewSymmetric(correctedAcc) * deltaT;
|
||||
F->resize(9,9);
|
||||
// pos vel angle
|
||||
*F << I_3x3, I_3x3 * deltaT, Z_3x3, // pos
|
||||
Z_3x3, I_3x3, F_vel_angles, // vel
|
||||
Z_3x3, Z_3x3, F_angles_angles;// angle
|
||||
}else{
|
||||
updateIntegratedRotationAndDeltaT(incrR,deltaT);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue