本页总结了ImageJ 1.x和ImageJ2 API基本操作的翻译。基于 Robert Haase、科学计算设施、MPI-CBG 德累斯顿的工作。
|
启动ImageJ
|
new ij.ImageJ();
|
ImageJ ij = new net.imagej.ImageJ();
ij.ui().showUI();
|
|
显示图像
|
小鬼是一个图像加号目的
imp.show();
|
ij.ui().show(imp);
ImageJFunctions.show(imp);
ImageJFunctions.wrap(imp,"Image").show();
|
|
检索活动图像对象
|
ImagePlus imp = IJ.getImage();
|
脚本参数(与数据集, 图像加号, ETC。):
#@ Img image
在Java代码中:
@Parameter
private Img image;
使用图像显示服务:
Dataset image = ij.imageDisplay().getActiveDataset();
|
|
打开图像文件
|
IJ.openImage()返回一个图像加号对象而不显示。
ImagePlus imp = IJ.openImage(urlOrFilePath);
imp.show();
IJ.open()自动显示图像而不返回图像加号.
IJ.open(urlOrFilePath);
ImagePlus imp = IJ.getImage();
|
使用IO服务:
Object image = ij.io().open(urlOrFilePath);
使用数据集IO服务(为了类型安全):
Dataset image = ij.scifio().datasetIO().open(urlOrFilePath);
|
|
保存图像文件
|
IJ.saveasTiff(imp, "/path/to/image.tif")
|
使用IO服务:
ij.io().save(dataset, "/path/to/image.tif");
使用数据集IO服务:
ij.scifio().datasetIO().save(dataset, "/path/to/image.tif");
|
|
转换图像类型
|
从 ImgLib2 转换图像对象 ImageJ图像加号目的:
ImagePlus imp = ImageJFunctions.wrap(img,"Title");
|
从 ImageJ 转换图像加号ImgLib2 的对象图像目的:
Img img = ij.convert().convert(imp, Img.class);
Img<T> realImg = ImageJFunctions.wrapReal(imp);
Img<FloatType> floatImg = ImageJFunctions.convertFloat(imp);
Img<FloatType> realImg2 = ImageJFunctions.wrap(imp);
|
|
显示地区
|
imagePlus.setRoi(roi);
|
Img<BitType> mask; // = ...
Roi roi = ij.convert().convert(mask, Roi.class);
imagePlus.setRoi(roi);
|
|
运行插件
|
IJ.run(imagePlus,"Normalisation","");
|
ij.command().run(ImageNormalizerIJ2Plugin.class, true,
"input", img, "ij", ij);
|
|
定义插件
|
public class ImageNormalizerPlugin implements PluginFilter {
...
}
In 资源/plugins.config:
Plugins>Filtering, "Normalisation", NormalizerPlugin
|
@Plugin(type = Command.class, menuPath = "Plugins>Normalization")
public class ImageNormalizerIJ2Plugin implements Command {
...
}
|
另请参阅
on GitHub