Tesseract  3.02
tesseract-ocr/classify/intmatcher.h File Reference
#include "params.h"
#include "intproto.h"
#include "cutoffs.h"

Go to the source code of this file.

Classes

struct  INT_RESULT_STRUCT
struct  CP_RESULT_STRUCT
struct  ScratchEvidence
class  IntegerMatcher

Defines

#define SE_TABLE_BITS   9
#define SE_TABLE_SIZE   512

Typedefs

typedef INT_RESULT_STRUCTINT_RESULT
typedef CP_RESULT_STRUCT CLASS_PRUNER_RESULTS [MAX_NUM_CLASSES]

Functions

void IMDebugConfiguration (INT_FEATURE FeatureNum, uinT16 ActualProtoNum, uinT8 Evidence, BIT_VECTOR ConfigMask, uinT32 ConfigWord)
void IMDebugConfigurationSum (INT_FEATURE FeatureNum, uinT8 *FeatureEvidence, inT32 ConfigCount)
void HeapSort (int n, register int ra[], register int rb[])

Variables

bool disable_character_fragments = 0
int classify_integer_matcher_multiplier = 14
int classify_adapt_proto_thresh = 230
int classify_adapt_feature_thresh = 230

Define Documentation

#define SE_TABLE_BITS   9

---------------------------------------------------------------------------- Public Function Prototypes ----------------------------------------------------------------------------

Definition at line 73 of file intmatcher.h.

#define SE_TABLE_SIZE   512

Definition at line 74 of file intmatcher.h.


Typedef Documentation

typedef CP_RESULT_STRUCT CLASS_PRUNER_RESULTS[MAX_NUM_CLASSES]

Definition at line 57 of file intmatcher.h.

Definition at line 48 of file intmatcher.h.


Function Documentation

void HeapSort ( int  n,
register int  ra[],
register int  rb[] 
)

Definition at line 1304 of file intmatcher.cpp.

                                                       {
/*
 **      Parameters:
 **              n      Number of elements to sort
 **              ra     Key array [1..n]
 **              rb     Index array [1..n]
 **      Globals:
 **      Operation:
 **              Sort Key array in ascending order using heap sort
 **              algorithm.  Also sort Index array that is tied to
 **              the key array.
 **      Return:
 **      Exceptions: none
 **      History: Tue Feb 19 10:24:24 MST 1991, RWM, Created.
 */
  register int i, rra, rrb;
  int l, j, ir;

  l = (n >> 1) + 1;
  ir = n;
  for (;;) {
    if (l > 1) {
      rra = ra[--l];
      rrb = rb[l];
    }
    else {
      rra = ra[ir];
      rrb = rb[ir];
      ra[ir] = ra[1];
      rb[ir] = rb[1];
      if (--ir == 1) {
        ra[1] = rra;
        rb[1] = rrb;
        return;
      }
    }
    i = l;
    j = l << 1;
    while (j <= ir) {
      if (j < ir && ra[j] < ra[j + 1])
        ++j;
      if (rra < ra[j]) {
        ra[i] = ra[j];
        rb[i] = rb[j];
        j += (i = j);
      }
      else
        j = ir + 1;
    }
    ra[i] = rra;
    rb[i] = rrb;
  }
}
void IMDebugConfiguration ( INT_FEATURE  FeatureNum,
uinT16  ActualProtoNum,
uinT8  Evidence,
BIT_VECTOR  ConfigMask,
uinT32  ConfigWord 
)

---------------------------------------------------------------------------- Private Function Prototypes ----------------------------------------------------------------------------

void IMDebugConfigurationSum ( INT_FEATURE  FeatureNum,
uinT8 FeatureEvidence,
inT32  ConfigCount 
)

Variable Documentation

"Threshold for good features during adaptive 0-255: "

"Threshold for good protos during adaptive 0-255: "

"Integer Matcher Multiplier 0-255: "

"Do not include character fragments in the" " results of the classifier"