gpt4 book ai didi

java - ImageJ - 即使遇到错误如何继续批处理

转载 作者:行者123 更新时间:2023-12-03 08:59:11 26 4
gpt4 key购买 nike

我在 ImageJ 中编写了一个宏来在 BMP 图像文件列表上运行批量“测量”。我正在使用 headless.jar 以 headless 模式在远程 linux 机器上运行代码。

每当 ImageJ 在读取/加载列表中的图像时遇到错误或异常时,它都会退出该过程。因此,我必须不断监控该过程并手动强制 ImageJ 跳过该文件。

有没有一种方法可以强制 ImageJ 继续该过程,即使它遇到错误/异常?并报告文件名可能在日志或其他文件中?

最佳答案

在 ImageJ 宏语言中无法显式处理异常。但是,您可以通过在进行有问题的宏调用之前检查先决条件等来防止某些类型的异常。

例如,如果您的文件列表包含不存在的文件,您可以使用 File.exists(path) [1] 来确保文件存在,然后再尝试打开它。

当然,并非所有错误情况都可以通过这种方式轻松检查(例如,格式错误的 BMP),所以我同意 medPhys-pl 将宏重写为 Imagej 插件是最完整的解决方案。您可以使用设置为以插件模式而不是宏录制的宏录制器 (Plugins > Macros > Record) 来获得良好的开端。一旦你有相关的命令要执行,你可以使用 FijiScript Editor 轻松地将它们打包成一个插件:

  • File > New > Script
  • Language > Java
  • Templates > Java > Bare PlugIn
  • 将您的命令粘贴到 run 方法中。

  • 有关编写 ImageJ 插件的更多详细信息,请参阅 Fiji wiki 的 Introduction into Developing Plugins

    关于java - ImageJ - 即使遇到错误如何继续批处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12857581/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com