automatic commit
[folded-ctf.git] / README.txt
index c322ce7..cbfa44a 100644 (file)
@@ -1,8 +1,9 @@
 
 I. INTRODUCTION
+---------------
 
-  This is the open-source C++ implementation of the folded hierarchy
-  of classifiers for cat detection described in
+  This is the documentation for the open-source C++ implementation of
+  the folded hierarchy of classifiers for cat detection described in
 
      F. Fleuret and D. Geman, "Stationary Features and Cat Detection",
      Journal of Machine Learning Research (JMLR), 2008, to appear.
@@ -13,6 +14,7 @@ I. INTRODUCTION
   reports.
 
 II. INSTALLATION
+----------------
 
   If you have installed the RateMyKitten images provided on
 
@@ -23,13 +25,13 @@ II. INSTALLATION
 
   It will
 
-   * Compile the source code entirely
+  * Compile the source code entirely
 
-   * Generate the "pool file" containing the uncompressed images
-     converted to gray levels, labeled with the ground truth.
+  * Generate the "pool file" containing the uncompressed images
+    converted to gray levels, labeled with the ground truth.
 
-   * Run 20 rounds of training / test (ten rounds for each of HB and
-     H+B detectors with different random seeds)
+  * Run 20 rounds of training / test (ten rounds for each of HB and
+    H+B detectors with different random seeds)
 
   You can run the full thing with the following commands if you have
   wget installed
@@ -54,20 +56,32 @@ II. INSTALLATION
   This program was developed on Debian GNU/Linux computers with the
   following main tool versions
 
-   * GNU bash, version 3.2.39
-   * g++ 4.3.2
-   * gnuplot 4.2 patchlevel 4
+  * GNU bash, version 3.2.39
+  * g++ 4.3.2
+  * gnuplot 4.2 patchlevel 4
 
-   Due to approximations in the optimized arithmetic operations with
-   g++, results may vary with different versions of the compiler
-   and/or different levels of optimization.
+  Due to approximations in the optimized arithmetic operations with
+  g++, results may vary with different versions of the compiler and/or
+  different levels of optimization.
 
-III. PARAMETERS
+III. EXECUTING THE PROGRAM
+--------------------------
+
+  The main command has to be invoked with a list of parameter values,
+  followed by commands to execute.
 
   To set the value of a parameter, just add an argument of the form
   --parameter-name=value before the commands that should take it into
   account.
 
+  For instance, to open a scene pool ./something.pool, train a
+  detector and save it, you would do
+
+    ./folding --pool-name=./something.pool open-pool train-detector write-detector
+
+IV. PARAMETERS
+--------------
+
   For every parameter below, the default value is given between
   parenthesis.
 
@@ -83,11 +97,11 @@ III. PARAMETERS
 
     Should the pictures be generated for printing in black and white.
 
-  * pool-name (no default)
+  * pool-name (none)
 
     The scene pool file name.
 
-  * test-pool-name (no default)
+  * test-pool-name (none)
 
     Should we use a separate test pool file. If none is given, then
     the test scenes are taken at random from the main pool file
@@ -121,7 +135,7 @@ III. PARAMETERS
   * proportion-negative-cells-for-training (0.025)
 
     Overall proportion of negative cells to use during learning (we
-    sample among for boosting).
+    sample among them for boosting).
 
   * nb-negative-samples-per-positive (10)
 
@@ -217,48 +231,49 @@ III. PARAMETERS
 
     Should we display a progress bar during long computations.
 
-IV. COMMANDS
+V. COMMANDS
+-----------
 
-   * open-pool
+  * open-pool
 
-     Open the pool of scenes.
+    Open the pool of scenes.
 
-   * train-detector
+  * train-detector
 
-     Create a new detector from the training scenes.
+    Create a new detector from the training scenes.
 
-   * compute-thresholds
+  * compute-thresholds
 
-     Compute the thresholds of the detector classifiers from the
-     validation set to obtain the required wanted-true-positive-rate.
+    Compute the thresholds of the detector classifiers from the
+    validation set to obtain the required wanted-true-positive-rate.
 
-   * test-detector
+  * test-detector
 
-     Run the detector on the test scenes.
+    Run the detector on the test scenes.
 
-   * sequence-test-detector
+  * sequence-test-detector
 
-     Visit nb-wanted-true-positive-rates rates between 0 and
-     wanted-true-positive-rate, for each compute the detector
-     thresholds on the validation set and estimate the error rate on
-     the test set.
+    Visit nb-wanted-true-positive-rates rates between 0 and
+    wanted-true-positive-rate, for each compute the detector
+    thresholds on the validation set and estimate the error rate on
+    the test set.
 
-   * write-detector
+  * write-detector
 
-     Write the current detector to the file detector-name
+    Write the current detector to the file detector-name
 
-   * read-detector
+  * read-detector
 
-     Read a detector from the file detector-name
+    Read a detector from the file detector-name
 
-   * write-pool-images
+  * write-pool-images
 
-     For every of the first nb-images of the pool, save one PNG image
-     with the ground truth, one with the corresponding referential at
-     the reference scale, and one with the feature material-feature-nb
-     from the detector. This last image is not saved if either no
-     detector has been read/trained or if no feature number has been
-     specified.
+    For every of the first nb-images of the pool, save one PNG image
+    with the ground truth, one with the corresponding referential at
+    the reference scale, and one with the feature material-feature-nb
+    from the detector. This last image is not saved if either no
+    detector has been read/trained or if no feature number has been
+    specified.
 
 --
 Francois Fleuret