33

画像ファイルを読み取り、画像から抽出したテキストを出力するサンプルアプリケーションをJavaで構築しようとしています。有望と思われるTesseractプロジェクトを見つけましたが、C++でのプロジェクトです。それを使用するには、Javaアプリからコマンドラインとして実行する必要がありRuntime.exec(...)ますか?または、より良い解決策、おそらくJARはありますか?さらに、これは単なるサンプルアプリですが、コマンドラインアプリとして実行することは、スケーラビリティの観点から懸念事項になりますか?

4

6 に答える 6

42

現在、tesseract は javacv プロジェクトによって提供されています。これは、Tess4J を使用するよりもはるかに優れたオプションです。必要なのは pom ファイルに単一の依存関係を追加することだけだからです。その後、プラットフォームのネイティブ ライブラリがダウンロードされ、自動的にリンクされます。 javacv tesseract バージョン。

ここにMavenプロジェクトの例を作成しました-https ://github.com/piersy/BasicTesseractExample

また、gradle プロジェクトの例もここにあります - https://github.com/piersy/BasicTesseractExampleGradle

これが私のubuntuマシンで機能するには、libstdc ++ 6のインストールを更新する必要がありました

libstdc++6 をインストールするだけでうまくいくかもしれませんが、以下を実行することでこれを達成しました。

sudo add-apt-repository ppa:ubuntu-toolchain-r/test 
sudo apt-get update
sudo apt-get install libstdc++6

gradle プロジェクトは自動インストールを実行しないことに注意してください。それでも、Tess4J を使用するよりもはるかに簡単です。

javacv プロジェクトはこちら - https://github.com/bytedeco/javacpp-presets/tree/master/tesseract

javacv の人たちへの大きな小道具です。もっと早くこれを見つけていたらよかったのにと思います。

于 2015-04-08T11:32:28.660 に答える
12

Java コードで tesseract プロジェクトを使用しました。あなたがする必要があるのは、

  1. tesseract の tess4j jni ラッパーを取得します。
  2. IDE で tess4j プロジェクトを開き、ソース パッケージとライブラリを独自の
    プロジェクトに追加します。
  3. tesseract クラスのインスタンスを作成するコードを記述し、それを使用し
    て OCR を実行します。

これを見てくださいhttp://tphangout.com/?p=18

Java プロジェクトをビルドしてイメージを読み取り、tesseract OCR API を使用してテキストに変換する方法について説明します。

于 2014-01-26T19:24:45.083 に答える
8

tess4j を試しましたか: http://tess4j.sourceforge.net/

Windows用のtesseractのJNIラッパーです。

于 2013-06-27T20:52:53.730 に答える
-1

私はこれを使用しました Appiumを使用してトーストメッセージをテストする方法?

これとともに

    <dependency>
        <groupId>net.sourceforge.tess4j</groupId>
        <artifactId>tess4j</artifactId>
        <version>3.2.1</version>
    </dependency>
于 2018-03-30T12:10:14.637 に答える