ImageJ“没有图片打开”

时间:2015-05-28 13:29:04

标签: macros imagej

我有以下代码,工作正常,但当我尝试关闭ROI管理器和蒙太奇时,我得到错误:

  

没有图片打开

我开始时没有指定窗口,然后尝试指定窗口,尝试run("Close");close();。 ROI管理器和蒙太奇都与当前宏关闭,但消息后弹出。我在这里做错了什么?

macro "draw rois [v]"{
  var list="/Volumes/bkonk7/old_OCT/ROI_list.txt";
  pathroot="/Volumes/bkonk7/old_OCT/";
  var pathlist=File.openAsString(list);
  var pathsplit=split(pathlist, "\n");

  for(i=0;i<pathsplit.length;i++){

    var roilist=split(pathsplit[i], ".");
    run("Image Sequence...", "open="+pathroot+roilist[i]+" sort");
    run("Rotate 90 Degrees Right");
    run("RGB Color");
    roiManager("Open", pathroot+pathsplit[i]);
    roicount=roiManager("count");

    for(j=0;j<roicount;j++){
      roiManager("Select", j);
      run("Draw", "slice");
    }

    saveAs("Tiff", pathroot+roilist[i]+"_edit.tif");
    run("Image Sequence...", "open="+pathroot+roilist[i]+" sort");
    run("Rotate 90 Degrees Right");
    run("RGB Color");
    splitname=split(roilist[i],"/");
    run("Combine...", "stack1="+splitname[2]+"_edit.tif stack2="+splitname[2]);
    saveAs("Tiff", pathroot+roilist[i]+"_edit.tif");
    selectWindow("ROI Manager");
    run("Close");
    selectWindow(splitname[2]+"_edit.tif");
    close();
  }    
}

1 个答案:

答案 0 :(得分:0)

您可以使用:

list = getList("image.titles");
if (list.length != 0) {
    close();
}

close(pattern) macro function