我在 imageJ 中编写了一个宏,它会输出一个数据帧,然后在 R 中对其进行分析。我希望能够在 R 中完成整个过程,而不必先在 imageJ 中手动运行该宏。目前,宏会提示用户输入和输出目录,然后执行操作。我想 R 中一定有一个函数可以让我指定宏以及输入和输出目录(然后我可以在宏中重新编码这些变量,以某种方式通过 R 脚本获取这些参数?)
我认为我可以使用 system() 命令,并从网络上的其他地方找到了这个诱人的线索:
system("./JavaApplicationStub directory file[i] -batch zmacro")
但我不确定如何实现这一点(我的宏已经利用批处理,因此该部分是不必要的)。
感谢 nograpes 和 Kota (以及更多的谷歌搜索),问题得到了解决。
Kota 中通过 R 调用 imageJ 宏如下:
system("/Applications/ImageJ/ImageJ.app/Contents/MacOS/JavaApplicationStub -batch
/Users/xxxx/Desktop/testmacro.txt")
我正在使用的特定宏需要输入和输出目录。为了在 R 中进行编码,我在系统调用中添加了一个参数:
system("/Applications/ImageJ/ImageJ.app/Contents/MacOS/JavaApplicationStub -batch
/Users/acgerstein/Desktop/testmacrobatch.txt
/Users/acgerstein/Desktop/130829Pos_24h/*/Users/acgerstein/Desktop/temp/")
据我所知 imageJ 只支持传入一个参数。所以我用“ * ”分隔输入目录和输出目录。
imageJ 中的代码如下所示:
folders = getArgument;
delimiter = "*";
parts=split(folders, delimiter);
dir1 = parts[0];
dir2 = parts[1];
最令人意外的事情是,通常通过 imageJ 中的宏打印的日志文件现在显示在 R 控制台中。
恶作剧管理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)