我经常使用ImageJ来查看由一个文件夹中的许多单个图像组成的图像堆栈。我可以将相应的文件夹拖放到ImageJ GUI中,它会创建一个可滚动的可视化,这非常方便。但它可能会更方便,因为每次我这样做时,出现一个对话框,询问我是否要将文件夹中的所有图像作为堆栈打开。是否可以将其默认为“是”?是否需要更改源代码并自行编译..?如果是这样,我该从哪里开始找呢?
v8wbuo2f1#
建议向Imagej韦恩rasband的作者提出功能请求,例如在Github存储库:https://github.com/imagej/imagej1或者你可以写一个小宏(使用宏记录器和菜单动作!),它也可以安装在ImageJ中。类似于:
run("Image Sequence...", "open=C:\\images\\ sort");
下面是宏文档:https://imagej.nih.gov/ij/developer/macro/macros.htmlhttps://imagej.nih.gov/ij/docs/guide/146-14.html
of1yzvn42#
要禁用源代码中的对话框,请执行以下操作:找到源文件ij>plugin>DragAndDrop.java。从它的openDirectory方法中,删除与对话框相关的行,并为convertToRGB和virtualStack分配布尔值,这两个值通常都是由现已失效的对话框窗口中的复选框定义的。代码现在应该如下所示:
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的回答以获得进一步的阅读。
build.xml
2条答案
按热度按时间v8wbuo2f1#
建议向Imagej韦恩rasband的作者提出功能请求,例如在Github存储库:
https://github.com/imagej/imagej1
或者你可以写一个小宏(使用宏记录器和菜单动作!),它也可以安装在ImageJ中。类似于:
下面是宏文档:
https://imagej.nih.gov/ij/developer/macro/macros.html
https://imagej.nih.gov/ij/docs/guide/146-14.html
of1yzvn42#
要禁用源代码中的对话框,请执行以下操作:找到源文件
ij>plugin>DragAndDrop.java
。从它的openDirectory
方法中,删除与对话框相关的行,并为convertToRGB
和virtualStack
分配布尔值,这两个值通常都是由现已失效的对话框窗口中的复选框定义的。代码现在应该如下所示:我是用ImageJ 1.51p做的。源代码可以下载here。做了这些修改后,只需运行
build.xml
ant脚本。请注意,编写宏可能会提供一种更简洁、更可移植的方法来实现这一点--请参阅Marcel的回答以获得进一步的阅读。