私は現在、作成中の Java アプリケーションで ImageJ jar (ij.jar) を使用しており、すべてを機能させることができました。ただし、次の行を実行すると、次の可能性があります。
ImagePlus image = new ImagePlus(path);
(ここで、パスはユーザーが指定した画像へのパスです)、画像が存在しない可能性があります。ImageJ ライブラリは、のメソッドにimage
アクセスするまでエラーをスローしません。その時点で、ImageJ はコンソールに出力There are no images open.
し、プログラムを終了します。私のアプリケーション全体が終了するため、その行を出力するときにImageJが実際に呼び出しているとSystem.exit()
思います-Deamonスレッドを含みます。
ImageJ を使用して、画像が正常に開かれたかどうかを確認する方法はありますか? または、Java の File クラスを使用してファイルが存在するかどうかを確認する必要がありますか?
編集:
明確にするために、これは同時に多くの画像を開いて処理しようとする可能性のあるマルチスレッドアプリケーションです。ImageJ クラス ( IJ
) には画像を開く関数がありますが、シングルトン クラスであるため、複数の呼び出しが同時に発生するIJ
と奇妙な動作をします。IJ.openImage("string")