Cosmetics.
[mtp.git] / mtp_example.cc
index d603b3a..91e4d6b 100644 (file)
  *
  */
 
-// Multi-Tracked Path
-
 #include <iostream>
 #include <fstream>
 
 using namespace std;
 
-#include "tracker.h"
+#include "mtp_tracker.h"
 
 //////////////////////////////////////////////////////////////////////
 
-scalar_t detection_score(scalar_t a, scalar_t b, scalar_t score_noise, scalar_t flip_noise) {
-  if(drand48() > flip_noise) {
-    return a + score_noise * (2.0 * drand48() - 1.0);
+scalar_t noisy_score(scalar_t true_score, scalar_t erroneous_score,
+                     scalar_t score_noise, scalar_t flip_noise) {
+  if(drand48() < flip_noise) {
+    return erroneous_score + score_noise * (2.0 * drand48() - 1.0);
   } else {
-    return b + score_noise * (2.0 * drand48() - 1.0);
+    return true_score + score_noise * (2.0 * drand48() - 1.0);
   }
 }
 
@@ -46,7 +45,7 @@ int main(int argc, char **argv) {
   int nb_time_steps = 8;
   int motion_amplitude = 1;
 
-  Tracker *tracker = new Tracker();
+  MTPTracker *tracker = new MTPTracker();
 
   tracker->allocate(nb_time_steps, nb_locations);
 
@@ -81,18 +80,18 @@ int main(int argc, char **argv) {
 
   for(int t = 0; t < nb_time_steps; t++) {
     for(int l = 0; l < nb_locations; l++) {
-      tracker->detection_scores[t][l] = detection_score(-1.0, 1.0, score_noise, flip_noise);
+      tracker->detection_scores[t][l] = noisy_score(-1.0, 1.0, score_noise, flip_noise);
     }
   }
 
-  // Then we two targets with the typical local minimum:
+  // Then we add two targets with a typical tracking local minimum
   //
   // * Target A moves from location 0 to the middle, stays there for a
-  //   while, and comes back, and is strongly detected on the first
+  //   while, and comes back. It is strongly detected on the first
   //   half
   //
   // * Target B moves from location nb_locations-1 to the middle, stay
-  //   there for a while, and comes back, and is strongly detected on
+  //   there for a while, and comes back. It is strongly detected on
   //   the second half
 
   int la, lb; // Target locations
@@ -101,13 +100,13 @@ int main(int argc, char **argv) {
     if(t < nb_time_steps/2) {
       la = t;
       lb = nb_locations - 1 - t;
-      sa = detection_score(10.0, -1.0, score_noise, flip_noise);
-      sb = detection_score( 1.0, -1.0, score_noise, flip_noise);
+      sa = noisy_score(10.0, -1.0, score_noise, flip_noise);
+      sb = noisy_score( 1.0, -1.0, score_noise, flip_noise);
     } else {
       la = nb_time_steps - 1 - t;
       lb = t - nb_time_steps + nb_locations;
-      sa = detection_score( 1.0, -1.0, score_noise, flip_noise);
-      sb = detection_score(10.0, -1.0, score_noise, flip_noise);
+      sa = noisy_score( 1.0, -1.0, score_noise, flip_noise);
+      sb = noisy_score(10.0, -1.0, score_noise, flip_noise);
     }
 
     if(la > nb_locations/2 - 1) la = nb_locations/2 - 1;
@@ -117,7 +116,8 @@ int main(int argc, char **argv) {
     tracker->detection_scores[t][lb] = sb;
   }
 
-  { // Write down the tracker setting
+  { // Write down the tracker setting, so that we can use it as an
+    // example for the mtp command line
     ofstream out_tracker("tracker.dat");
     tracker->write(&out_tracker);
   }