tesseract  4.00.00dev
classifier_tester.cpp File Reference
#include <stdio.h>
#include "base/commandlineflags.h"
#include "baseapi.h"
#include "commontraining.h"
#include "mastertrainer.h"
#include "params.h"
#include "strngs.h"
#include "tessclassifier.h"
#include "tesseractclass.h"

Go to the source code of this file.

Enumerations

enum  ClassifierName { CN_PRUNER, CN_FULL, CN_COUNT }
 

Functions

 STRING_PARAM_FLAG (classifier, "", "Classifier to test")
 
 STRING_PARAM_FLAG (lang, "eng", "Language to test")
 
 STRING_PARAM_FLAG (tessdata_dir, "", "Directory of traineddata files")
 
 DECLARE_INT_PARAM_FLAG (debug_level)
 
int main (int argc, char **argv)
 

Variables

const char * names [] = {"pruner", "full", nullptr}
 

Enumeration Type Documentation

◆ ClassifierName

Enumerator
CN_PRUNER 
CN_FULL 
CN_COUNT 

Definition at line 36 of file classifier_tester.cpp.

Function Documentation

◆ DECLARE_INT_PARAM_FLAG()

DECLARE_INT_PARAM_FLAG ( debug_level  )

◆ main()

int main ( int  argc,
char **  argv 
)

This program reads in a text file consisting of feature samples from a training page in the following format:

   FontName UTF8-char-str xmin ymin xmax ymax page-number
    NumberOfFeatureTypes(N)
      FeatureTypeName1 NumberOfFeatures(M)
         Feature1
         ...
         FeatureM
      FeatureTypeName2 NumberOfFeatures(M)
         Feature1
         ...
         FeatureM
      ...
      FeatureTypeNameN NumberOfFeatures(M)
         Feature1
         ...
         FeatureM
   FontName CharName ...

The result of this program is a binary inttemp file used by the OCR engine.

Parameters
argcnumber of command line arguments
argvarray of command line arguments
Returns
none
Note
Exceptions: none
History: Fri Aug 18 08:56:17 1989, DSJ, Created.
History: Mon May 18 1998, Christy Russson, Revistion started.

Definition at line 113 of file classifier_tester.cpp.

113  {
114  ParseArguments(&argc, &argv);
115  STRING file_prefix;
116  tesseract::MasterTrainer* trainer =
117  tesseract::LoadTrainingData(argc, argv, false, nullptr, &file_prefix);
119  // Decode the classifier string.
120  tesseract::ShapeClassifier* shape_classifier = InitializeClassifier(
121  FLAGS_classifier.c_str(), trainer->unicharset(), argc, argv, &api);
122  if (shape_classifier == nullptr) {
123  fprintf(stderr, "Classifier init failed!:%s\n", FLAGS_classifier.c_str());
124  return 1;
125  }
126 
127  // We want to test junk as well if it is available.
128  // trainer->IncludeJunk();
129  // We want to test with replicated samples too.
131 
133  MAX(3, FLAGS_debug_level), false,
134  shape_classifier, nullptr);
135  delete shape_classifier;
136  delete api;
137  delete trainer;
138 
139  return 0;
140 } /* main */
const UNICHARSET & unicharset() const
void ParseArguments(int *argc, char ***argv)
void ReplicateAndRandomizeSamplesIfRequired()
Definition: strngs.h:45
MasterTrainer * LoadTrainingData(int argc, const char *const *argv, bool replication, ShapeTable **shape_table, STRING *file_prefix)
#define MAX(x, y)
Definition: ndminx.h:24
void TestClassifierOnSamples(CountTypes error_mode, int report_level, bool replicate_samples, ShapeClassifier *test_classifier, STRING *report_string)

◆ STRING_PARAM_FLAG() [1/3]

STRING_PARAM_FLAG ( classifier  ,
""  ,
"Classifier to test"   
)

◆ STRING_PARAM_FLAG() [2/3]

STRING_PARAM_FLAG ( lang  ,
"eng"  ,
"Language to test"   
)

◆ STRING_PARAM_FLAG() [3/3]

STRING_PARAM_FLAG ( tessdata_dir  ,
""  ,
"Directory of traineddata files"   
)

Variable Documentation

◆ names

const char* names[] = {"pruner", "full", nullptr}

Definition at line 42 of file classifier_tester.cpp.