20 using namespace gtsam;
60 double prior_outlier = 0.5;
61 double prior_inlier = 0.5;
65 prior_inlier, prior_outlier);
67 prior_inlier, prior_outlier);
93 double prior_outlier = 0.5;
94 double prior_inlier = 0.5;
97 prior_inlier, prior_outlier);
101 Vector3 actual_err_wh_inlier =
Vector3(actual_err_wh[0], actual_err_wh[1], actual_err_wh[2]);
102 Vector3 actual_err_wh_outlier =
Vector3(actual_err_wh[3], actual_err_wh[4], actual_err_wh[5]);
115 prior_inlier, prior_outlier);
117 actual_err_wh =
g.whitenedError(
values);
119 actual_err_wh_inlier =
Vector3(actual_err_wh[0], actual_err_wh[1], actual_err_wh[2]);
120 actual_err_wh_outlier =
Vector3(actual_err_wh[3], actual_err_wh[4], actual_err_wh[5]);
132 prior_inlier, prior_outlier);
134 actual_err_wh_inlier =
Vector3(actual_err_wh[0], actual_err_wh[1], actual_err_wh[2]);
165 double prior_outlier = 0.0;
166 double prior_inlier = 1.0;
169 prior_inlier, prior_outlier);
171 std::vector<gtsam::Matrix> H_actual(2);
174 Matrix H1_actual = H_actual[0];
175 Matrix H2_actual = H_actual[1];
180 Vector actual_err_wh_inlier =
Vector3(actual_err_wh[0], actual_err_wh[1], actual_err_wh[2]);
182 std::vector<gtsam::Matrix> H_actual_stnd_unwh(2);
183 (void)
h.unwhitenedError(
values, H_actual_stnd_unwh);
184 Matrix H1_actual_stnd_unwh = H_actual_stnd_unwh[0];
185 Matrix H2_actual_stnd_unwh = H_actual_stnd_unwh[1];
186 Matrix H1_actual_stnd = model_inlier->Whiten(H1_actual_stnd_unwh);
187 Matrix H2_actual_stnd = model_inlier->Whiten(H2_actual_stnd_unwh);
191 double stepsize = 1.0e-9;
192 using std::placeholders::_1;
220 gtsam::Pose2 rel_pose_msr(0.0316191379, 0.0247539161, 0.004102182);
229 double prior_outlier = 0.5;
230 double prior_inlier = 0.5;
233 prior_inlier, prior_outlier);
236 cout <<
"==== inside CaseStudy ===="<<endl;
243 Vector3 actual_err_wh_inlier =
Vector3(actual_err_wh[0], actual_err_wh[1], actual_err_wh[2]);
244 Vector3 actual_err_wh_outlier =
Vector3(actual_err_wh[3], actual_err_wh[4], actual_err_wh[5]);
247 cout <<
"p_inlier_outler: "<<p_inlier_outler[0]<<
", "<<p_inlier_outler[1]<<endl;
248 cout<<
"actual_err_unw: "<<actual_err_unw[0]<<
", "<<actual_err_unw[1]<<
", "<<actual_err_unw[2]<<endl;
249 cout<<
"actual_err_wh_inlier: "<<actual_err_wh_inlier[0]<<
", "<<actual_err_wh_inlier[1]<<
", "<<actual_err_wh_inlier[2]<<endl;
250 cout<<
"actual_err_wh_outlier: "<<actual_err_wh_outlier[0]<<
", "<<actual_err_wh_outlier[1]<<
", "<<actual_err_wh_outlier[2]<<endl;
273 double prior_outlier = 0.0;
274 double prior_inlier = 1.0;
277 prior_inlier, prior_outlier);