我正在使用ImageJ来查看由位于一个文件夹中的多个单个图像组成的图像堆栈。我可以将相应的文件夹拖放到ImageJ GUI中,并创建一个可滚动的可视化,这非常方便。它可能更方便,但每次我这样做时,会出现一个对话框,询问我是否要将文件夹中的所有图像作为堆栈打开。是否可以将其默认为“是”?我是否需要更改源代码并自行编译..?如果是这种情况,我可以在哪里开始寻找?
答案 0 :(得分:1)
建议是向Imagej Wayne rasband的作者提出功能请求,例如在Github存储库中:
https://github.com/imagej/imagej1
或者您可以编写一个小宏(使用带有菜单操作的宏录制器!),它也可以安装在ImageJ中。类似的东西:
run("Image Sequence...", "open=C:\\images\\ sort");
这里是宏文档:
答案 1 :(得分:0)
要禁用源代码中的对话框:查找源文件ij>plugin>DragAndDrop.java
。从其openDirectory
方法中,删除与对话框相关的行,并将布尔值分配给convertToRGB
和virtualStack
,这两者通常由现已解散的对话框窗口中的复选框定义。代码现在应该如下所示:
private void openDirectory(File f, String path) {
if (path==null) return;
if (!(path.endsWith(File.separator)||path.endsWith("/")))
path += File.separator;
String[] names = f.list();
names = (new FolderOpener()).trimFileList(names);
if (names==null)
return;
convertToRGB = false;
virtualStack = false;
String options = " sort";
if (convertToRGB) options += " convert_to_rgb";
if (virtualStack) options += " use";
IJ.run("Image Sequence...", "open=[" + path + "]"+options);
DirectoryChooser.setDefaultDirectory(path);
IJ.register(DragAndDrop.class);
}
我用ImageJ 1.51p做到了这一点。源代码可以下载here。完成这些更改后,只需运行build.xml
ant脚本。
请注意,编写宏可能会提供更简洁,更便携的方法来实现这一点 - 请参阅Marcel的答案以便进一步阅读。