最近,有人someone asked on the mailing list如何使用ImageJ2 API加载和显示数据集。这是执行此操作的代码:
import imagej.ImageJ;
import imagej.data.Dataset;
import imagej.display.DisplayService;
import imagej.io.IOService;
import java.io.File;
public class DisplayDataset {
public static void main(final String[] args) throws Exception {
final ImageJ context = ImageJ.createContext();
final File file = new File("/path/to/data-file.tif");
// load the dataset
final IOService ioService = context.getService(IOService.class);
final Dataset dataset = ioService.loadDataset(file.getAbsolutePath());
// display the dataset
final DisplayService displayService =
context.getService(DisplayService.class);
displayService.createDisplay(file.getName(), dataset);
}
}
为此,您需要添加对 ij-core、ij-data 和 ij-io 的编译时依赖项,以及对您选择的用户界面的运行时依赖项(例如,ij-ui-swing)。如果不添加 UI JAR 依赖项,则不会显示任何内容,因为 ImageJ2 不知道如何执行此操作!详情请参阅published this code as an ImageJ tutorial。
请注意,在撰写本文时,Swing SDI 用户界面(可能还有其他 UI)存在一个错误,导致显示屏最初显示为白色。按减号 (-),然后按加号 (+),这将缩小再放大,以强制图像窗口然后重新分配和重新分配。