如何在Android中使用Tesseract?

时间:2011-10-10 08:20:35

标签: android ocr android-ndk tesseract

我在网上搜了几个小时。我得到了许多答案,说我们需要使用NDK等来为WINDOWS的“Tesseract”。

但是我没有逐步/正确解释安装NDK时应该做什么。如何获取.so文件? 我已经完成安装NDK和Cygwin。为了检查它是否正确完成,我输入make -v并给出了预期的输出。

任何使用过“Tesseract”的人都可以告诉我他们是如何做到的吗? (我已下载“Mezzofanti”,但在那里我没有找到任何“Tesseract”文件。)

4 个答案:

答案 0 :(得分:16)

您需要使用 tess-two 项目在Android上使用Tesseract。
tess-two包含用于编译Tesseract和Leptonica库以在Android平台上使用的工具。它提供了一个Java API,用于访问本机编译的Tesseract和Leptonica API。

在项目中添加tess-two:

添加到 build.gradl e:

dependencies {
    compile 'com.rmtheis:tess-two:5.4.1'
}

使用Tesseract:

import com.googlecode.tesseract.android.TessBaseAPI;

private String extractText(Bitmap bitmap) throws Exception{
    TessBaseAPI tessBaseApi = new TessBaseAPI();
    tessBaseApi.init(DATA_PATH, "eng");
    tessBaseApi.setImage(bitmap);
    String extractedText = tessBaseApi.getUTF8Text();
    tessBaseApi.end();
    return extractedText;
}

您可以查看我的simple one-class example of using Tesseract for Android。它只包含200行Java代码。

答案 1 :(得分:15)

您可以参考此文档,它逐步提供但您需要做的是将tesseract-android-tools项目设置为Eclipse中的库项目,并告诉您的项目引用库项目。所以你需要在Eclipse中有两个项目,

http://rmtheis.wordpress.com/2011/08/06/using-tesseract-tools-for-android-to-create-a-basic-ocr-app/

我希望这有帮助.....

答案 2 :(得分:1)

答案 3 :(得分:0)

此视频向您确切演示了如何完成

How can I use Tesseract in Android?

请确保: 1.创建文件夹 2.在该文件夹中,您必须放置训练有素的数据文件(您可以使用您需要的语言https://github.com/tesseract-ocr/tessdata/tree/3.04.00从此处下载该文件) 3.引用包含训练数据文件的文件夹的路径,并说明语言: tessBaseApi.init(DATA_PATH,“ eng”);

希望有帮助