@@ -27,19 +27,13 @@ Vector<DIM_X_CT> CtMotionModel::f(Vector<DIM_X_CT> const& vecX,
2727 return vecXPred;
2828}
2929
30- template <>
31- Matrix<DIM_X_CT , DIM_X_CT > CtMotionModel::getProcessNoiseCov<2 >(
32- Vector<2 > const & sigma, float32_t dt) const
30+ Matrix<DIM_X_CT , DIM_X_CT > CtMotionModel::getProcessNoiseCov (
31+ Vector<DIM_X_CT > const & vecX, float32_t dt) const
3332{
3433 Matrix<DIM_X_CT , DIM_X_CT > matQ{Matrix<DIM_X_CT , DIM_X_CT >::Zero ()};
3534
36- float32_t const sigma2{sigma[0 ] * sigma[0 ]};
37-
38- matQ (IDX_V , IDX_V ) = sigma2;
39- matQ (IDX_OMEGA , IDX_OMEGA ) = sigma2;
40-
41- float32_t const sigma_accel2{sigma[0 ] * sigma[0 ]};
42- float32_t const sigma_alpha2{sigma[1 ] * sigma[1 ]};
35+ float32_t const sigma_accel2{m_processNoiseVec[0 ] * m_processNoiseVec[0 ]};
36+ float32_t const sigma_alpha2{m_processNoiseVec[1 ] * m_processNoiseVec[1 ]};
4337
4438 float32_t const dt2{dt * dt};
4539 float32_t const dt3{dt2 * dt};
@@ -49,18 +43,18 @@ Matrix<DIM_X_CT, DIM_X_CT> CtMotionModel::getProcessNoiseCov<2>(
4943
5044 matQ (IDX_PX , IDX_PX ) = sigma_accel2 * dt3_div3;
5145 matQ (IDX_PX , IDX_PY ) = 0 .0F ;
52- matQ (IDX_PX , IDX_V ) = sigma_accel2 * dt2_div2 /* * cosf(vecX[IDX_THETA]) */ ;
46+ matQ (IDX_PX , IDX_V ) = sigma_accel2 * dt2_div2 * cosf (vecX[IDX_THETA ]);
5347 matQ (IDX_PX , IDX_THETA ) = 0 .0F ;
5448 matQ (IDX_PX , IDX_OMEGA ) = 0 .0F ;
5549
5650 matQ (IDX_PY , IDX_PX ) = 0 .0F ;
5751 matQ (IDX_PY , IDX_PY ) = sigma_accel2 * dt3_div3;
58- matQ (IDX_PY , IDX_V ) = sigma_accel2 * dt2_div2 /* * sinf(vecX[IDX_THETA]) */ ;
52+ matQ (IDX_PY , IDX_V ) = sigma_accel2 * dt2_div2 * sinf (vecX[IDX_THETA ]);
5953 matQ (IDX_PY , IDX_THETA ) = 0 .0F ;
6054 matQ (IDX_PY , IDX_OMEGA ) = 0 .0F ;
6155
62- matQ (IDX_V , IDX_PX ) = sigma_accel2 * dt2_div2 /* * cosf(vecX[IDX_THETA]) */ ;
63- matQ (IDX_V , IDX_PY ) = sigma_accel2 * dt2_div2 /* * sinf(vecX[IDX_THETA]) */ ;
56+ matQ (IDX_V , IDX_PX ) = sigma_accel2 * dt2_div2 * cosf (vecX[IDX_THETA ]);
57+ matQ (IDX_V , IDX_PY ) = sigma_accel2 * dt2_div2 * sinf (vecX[IDX_THETA ]);
6458 matQ (IDX_V , IDX_V ) = sigma_accel2 * dt;
6559 matQ (IDX_V , IDX_THETA ) = 0 .0F ;
6660 matQ (IDX_V , IDX_OMEGA ) = 0 .0F ;
0 commit comments