java - ImageJ - 减去背景

标签 java plugins imagej

我正在 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);

使用第二个代码我只有一个白色图像...... Result of both codes

如果有人能给我解释一下,我将非常感激。谢谢。

最佳答案

通过处理>减去背景...或通过高级对16位32位图像运行背景扣除时IJ.run() 命令,插件自动将强度显示范围重置为图像的最小值和最大值。

要在使用低级函数调用时获得完全相同的可视化效果,您必须调用 ImageProcessorresetMinAndMax() 方法:

BackgroundSubtracter bs = new BackgroundSubtracter();
bs.rollingBallBackground(img.getProcessor(), (double)rollballsize, false, true, false, true, true);
img.getProcessor().resetMinAndMax();

详情请参阅source of BackgroundSubtracter .

关于java - ImageJ - 减去背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33827715/

相关文章:

mysql - 编写 MySQL 插件

javascript - JWPlayer JS 插件添加到 flash 版本

xml - 如何用插件打包我的 joomla 2.5 组件?

java - 无法将 ImageJ 集成到 Android 应用程序中

java - 从一个方法返回多次?

java - 如何使用java从同一个tomcat中的不同项目获取tomcat项目路径

java - GATE:JAPE规则Java RHS特征图

java - JTextArea - 获取当前鼠标位置所在的行

java - 使用 ImageJ 库 (Java) 增加图像对比度

python - 图像处理方法