0

Using the following code I'd like to get a Character's confidence value, but for some reason the same value is returned for every character of a word. However, using a similar line of code (GetUTF8Text) the character itself is returned correctly. Is there anything wrong with my code, or is this maybe a bug in 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); 

I already tried switching from v1.0 to v1.1, but the code still doesn't work. Beside that, I get a NullPointerException using the code as shown in TessAPI1Test.java:

 Pointer ptr = TessAPI1.TessResultIteratorGetUTF8Text(ri, TessPageIteratorLevel.RIL_SYMBOL);
 String ch = ptr.getString(0); //<-- exception
Pedro
  • 4,100
  • 10
  • 58
  • 96
  • Dear Pedro. Would you please edit this question? I'm wondering how to get a Each Character's confidence value. But I don't understand part of your source code. please tell me your success. – reinhard.lee Sep 11 '13 at 08:35

1 Answers1

1

You'll need to call:

TessAPI1.TessBaseAPISetVariable(handle, "save_blob_choices", "T");
nguyenq
  • 8,212
  • 1
  • 16
  • 16