Android OCR应用程序:Tesseract字典

时间:2014-07-21 14:27:22

标签: android ocr tesseract

我正在开发一个Android应用程序,它可以拍摄照片并将其翻译成文本。我在Windows上使用tesseract 3.

我设法让大部分翻译工作正常(在进行重新缩放,二值化,增强之后),但是某些字符仍然没有被翻译成应有的(ri - > m,le - > Ie等。 )。

为了纠正这个问题,我正在考虑强迫tesseract查看我的语言词典(在我的案例中是法语)并使用最可能的词来进行翻译。当我打开法语词典时,我也很惊讶地看到每个英语单词。

有没有办法强制tesseract找到适当语言中最可能的单词?

另外,我没有在网上找到很多安卓代码示例,我不确定我是否正在进行最有效的图像预处理。这就是我目前正在做的事情,你知道我怎么能更好地改进这个吗?

photo = WriteFile.writeBitmap(Scale.scale(ReadFile.readBitmap(bitmap), 3, 3));
photo = WriteFile.writeBitmap(AdaptiveMap.backgroundNormMorph(ReadFile.readBitmap(photo)));

photo = WriteFile.writeBitmap(Binarize.otsuAdaptiveThreshold(ReadFile.readBitmap(photo))); 
photo = WriteFile.writeBitmap(Enhance.unsharpMasking(ReadFile.readBitmap(photo), 3, (float) 0.5));

感谢您的帮助

编辑:例如,这是我的结果 Photo of document Result photo

和文字结果:

  

Les actions sociales

     

Les actions sociales regroupentlesactivités   suivantes:Heureuxévenements+ Aide disap +Aidescolarité+ aide   étudiante+ Aide de secours,Malgréunnombredebénéficiaires plus   2012年,重要的联合国大学生活动,加上élevequ'en2012年   预算2013年allouécouvrebigment les besoins d'ou l'excédent   constatéLaC.F.T.C. ne peut que regretter la suppression en 2013 de   I'activité«abonnement enfant»car son fi nancement auraitpuétre   couvert par l'excédentconstaté

谢谢:)

1 个答案:

答案 0 :(得分:0)

Tesseract有user.dawg文件,您可以在其中添加要添加到词典中的单词。

但我要做的是通过额外的检查来运行输出。编写一个程序,按空格分割文本,删除标点,然后检查字典中的每个单词 - 如果单词是完全匹配,那么这是真正的单词,如果没有,则使用Levenshtein距离将其与其他单词进行比较。

我假设您的字典将是一个数据库,因此您可以做其他聪明的事情,您可以编写一个搜索确切单词的查询(显然),但是当找不到该单词时,请在SQL中使用LIKE operator以您选择的方式找到相似的单词(例如所有以相同字母开头的单词),这样您只能在以相同字母开头的单词上运行您的Levenstein距离(或者以您的方式看起来像您单词的单词)选择了),从而节省了不必要的比较。