Imagej 更改ImagePlus图像颜色

Imagej 更改ImagePlus图像颜色,imagej,Imagej,我正在尝试更改imagePlus类型的图像颜色,但我无法这样做。 下面是代码,图像是黑白的 ImagePlus t= IJ.openImage("image.tif"); ImageStack c = new ImageStack(t.getWidth(), t.getHeight()); c.addSlice(t.getStack().getProcessor(1)); ImagePlus ss = new ImagePlus("sss",c); ss.show

我正在尝试更改imagePlus类型的图像颜色,但我无法这样做。 下面是代码,图像是黑白的

ImagePlus t= IJ.openImage("image.tif");
    ImageStack c = new ImageStack(t.getWidth(), t.getHeight());
    c.addSlice(t.getStack().getProcessor(1));
    ImagePlus ss = new ImagePlus("sss",c);
    ss.show();
    ss.getProcessor().convertToRGB().setOverColor(0, 255, 0);
    ss.updateAndDraw();

正如我在对的回答中所写,您可以使用
CompositeImage#setLuts(LUT[]luts)
方法。下面是一个示例性Groovy脚本:

#@ImagePlus imp
导入ij.process.LUT
导入java.awt.Color
导入ij.CompositeImage
if(复合图像的imp实例){
luts=imp.getLuts()
luts[0]=LUT.createLutFromColor(Color.CYAN)
luts[1]=LUT.createLutFromColor(Color.MAGENTA)
imp.setLuts(luts)
imp.updateAndRaw()
}

正如我在对的回答中所写,您可以使用
复合图像#setLuts(LUT[]luts)
方法。下面是一个示例性Groovy脚本:

#@ImagePlus imp
导入ij.process.LUT
导入java.awt.Color
导入ij.CompositeImage
if(复合图像的imp实例){
luts=imp.getLuts()
luts[0]=LUT.createLutFromColor(Color.CYAN)
luts[1]=LUT.createLutFromColor(Color.MAGENTA)
imp.setLuts(luts)
imp.updateAndRaw()
}

谢谢,我会检查此项并回复您。你好@Jan Eglinger,我如何将imageplus图像转换为合成图像?谢谢,我会检查此项并回复您。你好@Jan Eglinger,我如何将imageplus图像转换为合成图像?