从终端运行斐济/ imagej宏

Mat*_*sou 2 imagej

我在fiji/imagej中创建了一个宏,我希望通过shell脚本中的终端激活它.现在看来,宏不需要任何输入,我只想让fiji在从终端激活时运行宏,并将其输出保存在输出文件夹中.宏的脚本如下所示:

input =  "/Users/matsboh/Documents/PhD/Experiment/Image analyses/Raw/";
output =  "/Users/matsboh/Documents/PhD/Experiment/Image analyses/Results/";

setBatchMode(true); 
list = getFileList(input);
for (i = 1; i == list.length; i++){

var im = i;

name = "raw_" + im + ".jpg"; 
dir_name = input + name;

open(dir_name);


run("Subtract Background...", "rolling=50 light");
run("8-bit");

run("Make Binary");

name = "results_" + im + ".csv"; 
dir_name = output + name;

run("Analyze Particles...", "size=100-20000 show=Nothing display clear");
saveAs("Measurements", dir_name); 
close();

}
Run Code Online (Sandbox Code Playgroud)

如果这是可能的,我将如何先行?

干杯,

垫

ctr*_*den 5

在OS X上:

/Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --headless -macro myAwesomeMacro.ijm
Run Code Online (Sandbox Code Playgroud)

在Windows上:

%USERPROFILE%\Fiji.app\ImageJ-win64.exe --headless -macro myAwesomeMacro.ijm
Run Code Online (Sandbox Code Playgroud)

在Linux上:

~/Fiji.app/ImageJ-linux64 --headless -macro myAwesomeMacro.ijm
Run Code Online (Sandbox Code Playgroud)

就个人而言,我喜欢别名我的ImageJ安装的发射器到全路径imagej或fiji这样我就可以然后只需键入:

imagej --headless -macro myAwesomeMacro.ijm
Run Code Online (Sandbox Code Playgroud)

当然,你如何做到这种别名也取决于你的操作系统.

有关从控制台运行宏和脚本的更多详细信息,请参阅ImageJ wiki 的Headless页面.