我们在Android应用程序中放置tesseract ocr引擎的语言文件?

时间:2012-02-15 17:32:49

标签: android ocr tesseract

我在android中编写了一个使用OCR的应用程序。我正在使用tesseract ocr,我想问一下我应该把语言文件放在我的项目中,这样当我在手机中安装我的应用程序(三星Galaxy S)时,文件就可以让应用程序将它们用于ocr过程。我认为它应该在以下的地方:/ mnt / sdcard / tesseract / tessdata,但是如果不将它们放在我的设备中并让安装执行此操作就可以做到这一点。

2 个答案:

答案 0 :(得分:0)

您必须将包含项目的文件包含在assets文件夹中。

请参阅AssetManager,了解如何从您的活动中访问您的文件。另外我建议您不要将它们复制到SD卡。不幸的是,由于您的文件必须包含在您的项目中,因此将出现在您的apk文件中,您将最终获得更大的应用程序大小。但也不幸的是我不相信有一种方法可以在运行时从你的apk中删除文件,所以即使你将它们复制到SD你的应用程序仍然会是相同的大小。出于这个原因,我认为没有理由将它们复制到SD卡,只需在需要获取它们时从AssetManager访问它们。这样做也意味着如果移除/卸载SD卡,您的应用程序将不会中断。

答案 1 :(得分:0)

简单地将它们放在“资产”中,然后在#34; tessdata"夹。那是在你的项目中。 您可以使用Xamarin和Tesseract for Xamarin nuget包,它们非常易于使用,请记住,如果最新版本不起作用,您可能必须安装较旧版本的块。 (据我记得,2.10是工作的)