【问题标题】:Batch process macro in Fiji fails to work斐济的批处理宏无法正常工作
【发布时间】:2019-11-28 18:56:18
【问题描述】:

我有一个超堆栈,它有 2 个时间框架和每个时间框架中的 13 z 投影。从菜单中我选择ProcessBatch,然后选择Macro。在input 中我选择输入文件夹,然后在output 中确定输出文件夹。最后我使用下面的代码对所有的 z 投影求和:

run("Z Project...", "projection=[Max Intensity] all");
close();

这是截图:

在运行processTest 之后,我在输出中得到的文件与输入相同,但没有对 z 投影求和。 Here is a sampletif 文件 (13 MB)。我尝试在不同的计算机上执行此操作,但结果相同。

【问题讨论】:

    标签: image-processing imagej fiji


    【解决方案1】:

    我不熟悉以这种方式使用批处理,所以我不确定我是否可以直接解决您的问题,但是,我可以说我知道如何通过直接录制/编写宏来做到这一点。首先,您是否尝试过使用截屏 GUI 中提供的“保存”按钮?在这种情况下,如果它仍然不起作用,您可能希望在宏编辑器中执行类似的操作:

    openPath = getDirectory("Choose Source Directory");
    
    savePath = getDirectory("Choose Save Location");
    File.makeDirectory(savePath + "UNIQUE ID");
    savePath = savePath + "UNIQUE ID" + File.separator;
    
    files = getFileList(openPath);
    
    setBatchMode(true);
    for (timePoint = 0; timePoint < (files.length); timePoint++)
        {
            run("Z Project...", "projection=[Max Intensity] all");
            saveAs("Tiff", savePath + "UNIQUE ID");
            close();
        }
    setBatchMode(false);
    

    希望对大家有所帮助!

    【讨论】:

    • 这意味着完全可以工作吗?我收到错误:There are no images open in line 12 run("Z Project...", "projection=[Max Intensity] all&lt;)&gt;;
    • 我已经很久没有考虑这个问题了,但是您可以查看此 repo (github.com/evankiely/FIJIMacros) 中的代码以获取更多信息。它的评论很好,我一直在实验室环境中积极使用它,所以它已经过验证,并且应该仍然可以工作,只要从那时起对 FIJI/IJM2 没有进行重大更改。我会说,在再次查看代码时,for 循环很可能只是迭代文件数量的长度而从未打开它们。如果您在我链接的仓库中找不到解决方案,请告诉我,我会更深入地研究
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-26
    • 2019-03-24
    • 2020-04-23
    • 2019-03-04
    相关资源
    最近更新 更多