为什么在Ubuntu上将javacpp Image转换为文本会出现“错误的jpeg库版本”错误?

时间:2018-10-26 11:58:44

标签: java ubuntu-16.04 tesseract javacpp

我已经在项目中为Tesseract javacpp导入了Maven存储库。 我正在尝试使用javacpp简单地将图像转换为文本

代码示例

  import org.bytedeco.javacpp.*;
  import static org.bytedeco.javacpp.lept.*;
  import static org.bytedeco.javacpp.tesseract.*;

 public class BasicExample {
public static void main(String[] args) {
    BytePointer outText;

    TessBaseAPI api = new TessBaseAPI();
    // Initialize tesseract-ocr with English, without specifying tessdata path
    if (api.Init(args[0], "eng") != 0) {
        System.err.println("Could not initialize tesseract.");
        System.exit(1);
    }
 System.out.println(“Successfully init tess “);
        // Open input image with leptonica library
        PIX image = pixRead(args.length > 0 ? args[1] : "/usr/src/.   tesseract/testing/phototest.tif");
        api.SetImage(image);
        // Get OCR result
        outText = api.GetUTF8Text();
        System.out.println("OCR output:\n" + outText.getString());

        // Destroy used object and release memory
        api.End();
        outText.deallocate();
        pixDestroy(image);
    }
}

此程序可在macos上正常运行,我通过在args [1]处提供路径和在args [0]处经训练的数据路径将图像成功转换为文本 同一程序在Linux ubuntu上失败,并显示以下错误:

成功初始化

错误的jpeg库版本库为80,呼叫者期望62

其他地方提供的解决方案都无法解决问题。

请注意,Tesseract已成功启动,并且错误在于调用PixRead()的行!

该程序没有错误,因为它可以在macOS上完美运行

问题

如何更正此错误?

0 个答案:

没有答案