22 #ifndef TESSERACT_WORDREC_LANGUAGE_MODEL_DEFS_H_
23 #define TESSERACT_WORDREC_LANGUAGE_MODEL_DEFS_H_
103 const char *debug_uch)
130 static int Compare(
const void *e1,
const void *e2) {
135 return (ve1->
cost < ve2->
cost) ? -1 : 1;
146 if (
curr_b == NULL)
return false;
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
unsigned char LanguageModelFlagsType
Used for expressing various language model flags.
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.
LanguageModelDawgInfo * dawg_info
LanguageModelFlagsType top_choice_flags
AssociateStats associate_stats
void Print(const char *msg)
BLOB_CHOICE * curr_b
Pointers to BLOB_CHOICE and parent ViterbiStateEntry (not owned by this).
LanguageModelDawgInfo(DawgPositionVector *a, PermuterType pt)
ViterbiStateEntry * competing_vse
static int Compare(const void *e1, const void *e2)
float ngram_and_classifier_cost
-[ ln(P_classifier(path)) + scale_factor * ln(P_ngram_model(path)) ]
bool get_isalpha(UNICHAR_ID unichar_id) const
int NumInconsistentCase() const
DawgPositionVector * active_dawgs
void Print(const char *msg) const
LanguageModelNgramInfo(const char *c, int l, bool p, float nc, float ncc)
LanguageModelNgramInfo * ngram_info
ViterbiStateEntry * parent_vse
bool get_isdigit(UNICHAR_ID unichar_id) const
bool HasAlnumChoice(const UNICHARSET &unicharset)
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
bool updated
Flag to indicate whether anything was changed.
void Clear()
Clears the viterbi search state back to its initial conditions.
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.
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)
BestChoiceBundle(int matrix_dimension)
UNICHAR_ID unichar_id() const
Bundle together all the things pertaining to the best choice/state.
LMConsistencyInfo consistency_info