kraken でいくつかの画像を ocr しようとしています。そのためのコンソールコマンドを用意しました。遅かったので、それをgnu parallelと組み合わせました。
find temp/ -name '*.tif' -or -name '*.jpg' | parallel -j4 kraken -i {} {}.html binarize segment ocr -h
ターミナルでこれを行っているときは、正常に動作します。これを java(eclipse) で開始すると、30 画像後に実行が停止します。終了しません。それは機能していないプロセスを残しました。
String command = "find temp/ -name '*.tif' -or -name '*.jpg' | parallel -j4 kraken -i {} {}.html binarize segment ocr -h";
Process p = Runtime.getRuntime().exec(new String[]{"/bin/bash","-c",command});
p.waitFor() == 0;
いくつかの構成(より多くのメモリ(Eclipseと実行)、より少ないスレッド)を試しましたが、何も役に立ちませんでした。
機能していないプロセスを回避するためのアイデアや、実行を再開する方法を誰かが考えていますか?