以下大多数代码来自imagej模板,只有最后6行是定制的。目的是仅选择视频中的某些帧,并将较小视频导出为.avi。我想批量制作。但是,最后一块代码(保存视频)似乎不起作用...任何想法?
input = getDirectory("Input directory");
output = getDirectory("Output directory");
Dialog.create("File type");
Dialog.addString("File suffix: ", ".avi", 5);
Dialog.show();
suffix = Dialog.getString();
processFolder(input);
function processFolder(input) {
list = getFileList(input);
for (i = 0; i < list.length; i++) {
if(File.isDirectory(input + list[i]))
processFolder("" + input + list[i]);
if(endsWith(list[i], suffix))
processFile(input, output, list[i]);
}
}
function processFile(input, output, file) {
open(input + file);
run("Make Substack...", " slices=1-293-5");
run("AVI... ", "compression=None frame=1.96 save=&output+&file");
close();
close();
}
run("AVI... ", "compression=None frame=1.96 save=&output+&file");
您应该在此处使用适当的字符串串联:
run("AVI... ", "compression=None frame=1.96 save=" + output + file);