我在一个ImageJ插件中使用“减法背景”操作,我试图使用BackgroundSubtracter类来执行这个操作,但是结果与我使用宏语句时的结果不同。例如:
IJ.run(img, "Subtract Background...", "rolling=" + rollballsize + " light");改为:
BackgroundSubtracter bs = new BackgroundSubtracter();
bs.rollingBallBackground(img.getProcessor(), (double)rollballsize, false, true, false, true, true);第二个代码我只看到了一个白色图像..。

如果有人能解释我,我会非常感激的。谢谢。
发布于 2015-11-22 19:09:10
当在16位或32位图像上运行背景减法时,通过处理>减去背景.或者通过高级IJ.run()命令,插件自动将强度显示范围重置为图像的最小和最大。
要在使用低级函数调用时获得完全相同的可视化,您必须调用ImageProcessor的resetMinAndMax()方法:
BackgroundSubtracter bs = new BackgroundSubtracter();
bs.rollingBallBackground(img.getProcessor(), (double)rollballsize, false, true, false, true, true);
img.getProcessor().resetMinAndMax();有关详细信息,请参阅BackgroundSubtracter。
https://stackoverflow.com/questions/33827715
复制相似问题