学部4年で最近画像解析の勉強を始めたばかりでわからないのですが、macroを書いていて、3つのことをして新しい画像を生成し、フォルダに保存したいと思って書きました。
一個め、二個めはうまく動いていそうなのですが、三個めにtubenessをSigma3の値で実装させようとすると、他のことをしてしまって、手動で加工した時と全く異なる画像が生成されてしまいます。
dir1 = getDirectory (" Select the source directory");
// ここでユーザーは保存先のフォルダを指定する必要がある
dir2 = getDirectory("Select destination directory");
list = getFileList(dir1);
Array.sort(list);
setBatchMode(true);
for(i=0; i<list.length; i++){
filename = dir1 + list[i];
// tiff 形式のファイルを扱っていることを確認する
if (endsWith(filename, "tif")){
open(filename);
run("Subtract Background...", "rolling=50");
run("Enhance Local Contrast (CLAHE)", "blocksize=9 histogram=256 maximum=4 mask=*None*");
run("Tubeness", "sigma=3 use");
//この部分は改変した画像を保存先のフォルダに保存する
saveAs("TIFF", dir2+list[i]);
close();
}
}