質問: tesseract/tesjeractがインスタンス化時にアプリケーションをクラッシュさせる ImageJプラグインでOCRを実行する必要があるため、Javaでtesseractを使用したいと思います。したがって、私はJavaラッパー "tesjeract"を使用しています。しかし、 `new Tesjeract( "eng")`をインスタンス化すると、ImageJは何の情報も与えずにクラッシュします。 新しいTesjeract( "eng")のインスタンスを作成せずに同じプラグインを2回実行すると、2回目に `UnsatisfiedLinkError:ネイティブライブラリCを受け取るため、ライブラリを読み込むことができているようです:\ Windows \ System32 \ tessdll.dllはすでに別のクラスローダーにロードされています`。 任意のアイデア、私は問題を解決するために何ができますか? 関係がある場合は、Windows 7 64ビットを使用していますが、32ビットJVMを使用するようにImageJを設定しました。これは、tesseractは32ビットdllとしてのみ使用できるためです。静的なブロックにDLLをロードしていて、両方ともC:\ Windows \ System32フォルダに配置されています。 ``` static { System.loadLibrary("tessdll"); System.loadLibrary("tesjeract"); } ``` 編集: 誰かがC ++で同様の問題を経験していることがわかった場合、解決方法はlangangeファイルが欠落していることでした。私はそれも私の場合の問題だと思います。 This is how the directory should look like ( found here ): ``` project.exe tessdll.dll tessdata ----- eng.DangAmbigs |- eng.freq-dawg |- eng.inttemp |- eng.normproto |- eng.pffmtable |- eng.unicharset |- eng.user-words - eng.word-dawg ``` ImageJは `C:¥Program Files(x86)¥Java¥jre7¥bin¥javaw.exe` を使用するように設定されています。だから私は同じディレクトリにtessdataフォルダを含む私のdllを配置し、System32からdllを削除しました。それでも、アプリケーションがクラッシュします。
回答: * .traineddataはtess 3.xの言語データです。 tesseract-2.00.eng.tarのような2.xのものが必要です.gz 。