22 #ifndef TESSERACT_WORDREC_LANGUAGE_MODEL_DEFS_H_
23 #define TESSERACT_WORDREC_LANGUAGE_MODEL_DEFS_H_
100 LanguageModelFlagsType tcf,
103 const char *debug_uch)
130 static int Compare(
const void *e1,
const void *e2) {
135 return (ve1->
cost < ve2->
cost) ? -1 : 1;
153 void Print(
const char *msg)
const;
207 void Print(
const char *msg);
222 beam.reserve(matrix_dimension);
223 for (
int i = 0; i < matrix_dimension; ++i)
242 #endif // TESSERACT_WORDREC_LANGUAGE_MODEL_DEFS_H_
int context_unichar_step_len
LMConsistencyInfo consistency_info
int viterbi_state_entries_prunable_length
Number and max cost of prunable paths in viterbi_state_entries.
ViterbiStateEntry * best_vse
Best ViterbiStateEntry and BLOB_CHOICE.
ViterbiStateEntry(ViterbiStateEntry *pe, BLOB_CHOICE *b, float c, float ol, const LMConsistencyInfo &ci, const AssociateStats &as, LanguageModelFlagsType tcf, LanguageModelDawgInfo *d, LanguageModelNgramInfo *n, const char *debug_uch)
BLOB_CHOICE * curr_b
Pointers to BLOB_CHOICE and parent ViterbiStateEntry (not owned by this).
void Print(const char *msg)
LanguageModelNgramInfo * ngram_info
LanguageModelDawgInfo * dawg_info
LanguageModelDawgInfo(DawgPositionVector *a, PermuterType pt)
ViterbiStateEntry * parent_vse
bool get_isdigit(UNICHAR_ID unichar_id) const
LanguageModelFlagsType top_choice_flags
float ngram_and_classifier_cost
-[ ln(P_classifier(path)) + scale_factor * ln(P_ngram_model(path)) ]
bool HasAlnumChoice(const UNICHARSET &unicharset)
AssociateStats associate_stats
int NumInconsistentCase() const
DawgPositionVector * active_dawgs
LanguageModelNgramInfo(const char *c, int l, bool p, float nc, float ncc)
static int Compare(const void *e1, const void *e2)
DANGERR fixpt
Places to try to fix the word suggested by ambiguity checking.
float viterbi_state_entries_prunable_max_cost
int viterbi_state_entries_length
Total number of entries in viterbi_state_entries.
PointerVector< LanguageModelState > beam
ViterbiStateEntry * competing_vse
bool get_isalpha(UNICHAR_ID unichar_id) const
unsigned char LanguageModelFlagsType
Used for expressing various language model flags.
bool updated
Flag to indicate whether anything was changed.
void Clear()
Clears the viterbi search state back to its initial conditions.
void Print(const char *msg) const
Struct to store information maintained by various language model components.
float ngram_cost
-ln(P_ngram_model(path))
ViterbiStateEntry_LIST viterbi_state_entries
Storage for the Viterbi state.
BestChoiceBundle(int matrix_dimension)
UNICHAR_ID unichar_id() const
Bundle together all the things pertaining to the best choice/state.