早上好
我目前正在为JAVA中的ImageJ做一个插件,需要调用函数" 最大强度Z投影",我知道它已经在ImageJ如果你去" Image / Stacks / Z Project ......"。 此处的文档:http://imagej.net/Z-functions#Maximum_Intensity_Z-projection
我知道如何从其他插件调用插件,但在这种情况下做同样的事情我总是得到我的" 错误"信息。
public class Maximum_Intensity implements PlugIn{
ImagePlus img = WindowManager.getCurrentImage();
@Override
public void run(String arg0) {
// TODO Auto-generated method stub
Object ZProjector = null;
ZProjector = IJ.runPlugIn(img, "ZProjector", arg0);
if(ZProjector==null){
String arg = "Error";
IJ.showMessage(arg);
}
}
}
我该怎么办?非常感谢你。
答案 0 :(得分:3)
您可以轻松地使用宏录制器来帮助记录ImageJ中的所有命令,请参阅:
https://imagej.nih.gov/ij/docs/guide/146-31.html#sub:Record ...
为录像机启用Java,然后使用“创建”操作从录制的界面操作创建ImageJ插件。
在以下示例中(使用Recorder创建)我应用了Max。堆栈上的强度函数。
import ij.*;
import ij.process.*;
import ij.gui.*;
import java.awt.*;
import ij.plugin.*;
public class My_Plugin implements PlugIn {
public void run(String arg) {
ImagePlus imp = IJ.openImage("http://imagej.nih.gov/ij/images/mri-stack.zip");
IJ.run(imp, "Z Project...", "projection=[Max Intensity]");
imp.show();
}
}
可以在此处找到ZProjector类描述(用于实例化):
https://imagej.nih.gov/ij/developer/api/ij/plugin/ZProjector.html