2

特定のフォルダー内のすべての画像に対して一連の操作を実行するマクロをフィジーで作成しました。しかし、私はトラブルに遭遇し、1 つの問題を乗り越えることができません。マクロを実行すると、「開いている画像がありません」というエラー メッセージが表示されます。どういう意味ですか?(入力フォルダ内の画像は .tif タイプです)

マクロは次のとおりです。

input =  "C:"+File.separator+"Winter Quarter slides"+File.separator+"CTIA"+File.separator+"Project"+File.separator+"Original Image data"+File.separator+"Input Images"+File.separator;

output =  "C:"+File.separator+"Winter Quarter slides"+File.separator+"CTIA"+File.separator+"Project"+File.separator+"Original Image data"+File.separator+"Output Images"+File.separator;

setBatchMode(true);
list=getFileList(input);
for(i=0; i<list.length; i++)
    action(input,output,list[i]);
setBatchMode(false);

function action(input,output,filename) {
    open(input+filename);
    run("16-bit");
    run("Gaussian Blur...", "sigma=3");
    setAutoThreshold("Otsu");
    //run("Threshold...");
    setAutoThreshold("Otsu");
    setOption("BlackBackground", false);
    run("Convert to Mask");
    run("Close");
    run("Watershed");
    saveAs("Tiff", output+filename);
    close();
}

close();

誰かが私をできるだけ早く助けてくれますか?ありがとう!

4

3 に答える 3

1

複数のウィンドウが開いている場合、マクロ コマンドはどのウィンドウで作業するかを定義する必要があります。

私のマイクロでは、私は使用します; selectWindow("画像名"); コマンドの前。これで問題がうまく解決するはずです。

于 2013-04-23T13:50:22.530 に答える
1

このエラーを引き起こすもう 1 つの原因は、入力ディレクトリ内の非画像ファイルです。フォルダー内のすべてのコンテンツをループして、画像のように扱います。たとえばテキストファイルがある場合、の結果はopen(input+filename)開いた画像にはなりません。

于 2013-04-11T08:44:40.320 に答える
0

私はマクロ言語を使用したことはありませんが、Java で開発しているときにそのエラーを見たことがあります。一部のプラグインでは、画像が表示されている必要があります。

その後画像が表示されない場合はopen(input+filename);、show 関数を実行して画像を表示する必要があります。

あなたがやる

run("Close");
run("Watershed");
saveAs("Tiff", output+filename);

したがって、画像を閉じてから、そのエラーを生成する画像に対して何かをしようとします。

于 2013-04-11T07:37:18.823 に答える