//////////////////////////////////////////////////////////////////////
-scalar_t detection_score(int true_label) {
- if((true_label > 0) == (drand48() < 0.9)) {
+scalar_t detection_score(int true_label, scalar_t flip_noise) {
+ if((true_label > 0) == (drand48() < flip_noise)) {
return 1.0 + 0.2 * (drand48() - 0.5);
} else {
return - 1.0 + 0.2 * (drand48() - 0.5);
for(int r = 0; r < 10; r++) {
cout << "* ROUND " << r << endl;
- // We generate synthetic detection scores, all in the center
- // location, with 10% false detection (FP or FN)
+ // We generate synthetic detection scores at location
+ // nb_locations/2, with 10% false detection (FP or FN)
for(int t = 0; t < nb_time_steps; t++) {
for(int l = 0; l < nb_locations; l++) {
- tracker->set_detection_score(t, l, detection_score(-1));
+ tracker->set_detection_score(t, l, detection_score(-1, 0.9));
}
- tracker->set_detection_score(t, nb_locations/2, detection_score(1));
+ tracker->set_detection_score(t, nb_locations/2, detection_score(1, 0.9));
}
tracker->track();