我想用斐济创建一个宏,然后我将使用matlab运行。
我想使用Plugins>Stacks>Average Images平均3张图片。
我首先使用插件>宏>记录... 来了解要使用的内容。结果如下:
run("Average Images", "add=D:\\Corinne\\diabetes_paper_meas\\2013_01_29\\Measurement.007_cb\\Measurement._cb_frame0_pvar-8bit_combined.tif add=D:\\Corinne\\diabetes_paper_meas\\2013_01_29\\Measurement.007_cb\\Measurement._cb_frame1_pvar-8bit_combined.tif add=D:\\Corinne\\diabetes_paper_meas\\2013_01_29\\Measurement.007_cb\\Measurement._cb_frame2_pvar-8bit_combined.tif");
saveAs("Tiff", "D:\\Corinne\\diabetes_paper_meas\\2013_01_29\\Measurement.007_cb\\test.tif");
然而,即使我运行此宏我也收到错误:没有选择图像文件。但是,在斐济,您不需要打开任何图像来运行插件,但是您可以通过窗口界面添加文件... 所以当然,因为只运行宏不起作用我在使用下面的宏时会得到相同的错误:
file = getArgument;
if (file=="") exit ("No argument!");
setBatchMode(true);
file_vasc = file;
file_vasc_frame_0 = file;
file_vasc_frame_1 = replace(file, "\\_frame0_pvar-8bit_combined.tif", "_frame1_pvar-8bit_combined.tif");
file_vasc_frame_2 = replace(file, "\\_frame0_pvar-8bit_combined.tif", "_frame2_pvar-8bit_combined.tif");
run("Average Images", "add=file_vasc_frame_0 add=file_vasc_frame_1 add=file_vasc_frame_2");
file_vasc_out = replace(file, "frame0_pvar-8bit_combined.tif", "_vasc_averaged.tif");
saveAs("Tiff", file_vasc_out);
有人知道我该怎么办?
由于
答案 0 :(得分:1)
Average Images 插件以非标准方式使用对话框,因此无法编写脚本:在斐济运行插件时,宏录制器处于活动状态(插件>宏>记录。 .. 然后插件>堆栈>平均图像),只要您将第二个文件添加到列表中,您就会看到斐济抱怨:
重复关键字:
命令:“平均图像”
关键字:“添加”
值:/ path / to / your / file
在对话框中的相应标签上添加下划线,使第一个单词成为唯一。
这显然是插件中的一个错误(它会多次使用相同的OpenDialog
,从而在宏录制器中记录重复的关键字)。您可以通过帮助>报告错误进行报告,但我担心此插件目前尚未得到主动维护。
在任何情况下,使用图像>堆栈>图像堆栈和图像>堆栈> Z项目,有一种简单的替代方法来平衡ImageJ中的图像而不需要此插件。 .. 命令:
setBatchMode(true);
open("/path/to/first-image.tif");
open("/path/to/second-image.tif");
run("Images to Stack", "name=stack title=[]");
run("Z Project...");
saveAs("Tiff", "/path/to/new-file-name.tif");