ImageJ批量图像转换

时间:2015-11-11 22:52:05

标签: imagej

我正在尝试使用ImageJ中的批处理脚本批量转换200多个原始.img文件。我的剧本:

//-----------Code starts here--------------------- 
dir1 = getDirectory("path/source"); 
dir2 = getDirectory("path/target"); 
list = getFileList(dir1); 
setBatchMode(true); 

 for (i=0; i<list.length; i++) { 
      showProgress(i+1, list.length); 
      if(endsWith(list[i],".IMG")) 
         run("Raw...", open=["+dir1+list[i]+"] image=[16-bit Unsigned] width=2048 height=2048 offset=359 number=1 gap=0"); 
      else 
         open(dir1+list[i]); 
      saveAs(format, dir2+list[i]); 
      close(); 
   } 

但是,当我尝试运行它时,我收到以下错误:

我不知道为什么,因为我有一个;关闭线......

https://help.github.com/articles/creating-project-pages-manually/

1 个答案:

答案 0 :(得分:5)

错误消息具有误导性,因为您在run()的第二个参数的开头缺少引号(“):

run("Raw...", "open=["+dir1+list[i]+"] image=[16-bit Unsigned] width=2048 height=2048 offset=359 number=1 gap=0");

错误消息中的<>字符表示解析器发现意外情况的位置。

我编辑了原始代码以包含语法突出显示,这有助于发现此类错误。斐济的script editor包括语法突出显示,在使用ImageJ宏时建议使用。

一般而言,在专用论坛发布时,更有可能及时回答ImageJ特定问题:http://forum.imagej.net/