首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"language_model_penalty_non_dict_word“对tesseract 3.01没有影响

"language_model_penalty_non_dict_word“对tesseract 3.01没有影响
EN

Stack Overflow用户
提问于 2015-04-23 14:32:46
回答 1查看 1.5K关注 0票数 5

我正在通过Tesseract 3.01的配置文件设置language_model_penalty_non_dict_word,但是它的值没有任何效果。我尝试过多个图像,以及多个值,但是每个图像的输出总是相同的。另一个用户注意到了同一个in a comment in another question

编辑:在查看源代码之后,变量language_model_penalty_non_dict_word仅在函数float LanguageModel::ComputeAdjustedPathCost中使用。

但是,这个函数永远不会被调用!它仅由两个函数- LanguageModel::UpdateBestChoice()LanguageModel::AddViterbiStateEntry()引用。我在这些函数中放置了断点,但它们也没有被调用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-24 09:14:31

经过一些调试,我终于找到了原因--函数Wordrec::SegSearch()没有被调用(它在LanguageModel::ComputeAdjustedPathCost()的调用图中)。

从这个代码中:

代码语言:javascript
复制
  if (enable_new_segsearch) {
    SegSearch(&chunks_record, word->best_choice,
              best_char_choices, word->raw_choice, state);
  } else {
    best_first_search(&chunks_record, best_char_choices, word,
                      state, fixpt, best_state);
  }

因此,您需要在配置文件中设置enable_new_segsearch

代码语言:javascript
复制
enable_new_segsearch    1

language_model_penalty_non_freq_dict_word 0.2
language_model_penalty_non_dict_word 0.3
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29826591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档