Tess4J:如何获得角色的置信度?

时间:2013-03-05 11:17:40

标签: java tesseract

使用以下代码我想得到一个字符的置信度值,但由于某种原因,为一个单词的每个字符返回相同的值。但是,使用类似的代码行(GetUTF8Text),可以正确返回字符本身。我的代码有什么问题,或者这可能是Tess4J中的错误?

TessResultIterator ri = TessAPI1.TessBaseAPIGetIterator(api);
TessPageIterator pi = TessAPI1.TessResultIteratorGetPageIterator(ri);
do{
   ...
   do{
      ...
      String ch = TessAPI1.TessResultIteratorGetUTF8Text(ri, TessPageIteratorLevel.RIL_SYMBOL);
      float conf = TessAPI1.TessResultIteratorConfidence(ri, TessPageIteratorLevel.RIL_SYMBOL);
      ...
   }while(hasNextSymbol); 
}while(hasNext); 

我已经尝试过从v1.0切换到v1.1,但代码仍无效。除此之外,我使用TessAPI1Test.java中显示的代码获得NullPointerException:

 Pointer ptr = TessAPI1.TessResultIteratorGetUTF8Text(ri, TessPageIteratorLevel.RIL_SYMBOL);
 String ch = ptr.getString(0); //<-- exception

1 个答案:

答案 0 :(得分:1)

您需要致电:

TessAPI1.TessBaseAPISetVariable(handle, "save_blob_choices", "T");