1

我正在尝试学习如何使用 OpenImaj 的 AdaptiveLocalThresholdContrast 阈值器将图像处理成两个“段”,然后查看处理后的图像。当我运行以下代码时:

AdaptiveLocalThresholdContrast thresholder = new AdaptiveLocalThresholdContrast(10);
MBFImage input = ImageUtilities.readMBF(new File("/path/to/file.jpg"));
FImage flat = input.flatten();
DisplayUtilities.display(flat);
thresholder.processImage(flat);
DisplayUtilities.display(flat);

显示原始(展平)图像,然后我在 thresholder.processImage(flat) 行得到以下空指针异常:

Exception in thread "main" java.lang.NullPointerException
at org.openimaj.image.processing.threshold.AdaptiveLocalThresholdContrast.processImage(AdaptiveLocalThresholdContrast.java:74)

我在第 74 行查看了 AdaptiveLocalThresholdContrast 的源代码,但我不清楚是什么导致了空指针异常。任何帮助将不胜感激。

http://www.openimaj.org/openimaj-image/image-processing/xref/org/openimaj/image/processing/threshold/AdaptiveLocalThresholdContrast.html

4

1 回答 1

1

嗯,这是一个错误(可能是某个时候重构的结果 - 抱歉)。现在应该在源代码中修复(https://github.com/openimaj/openimaj/commit/2f247e4ab0f7da02713e8545d4ac153aa08070b8)并且也可以在最新的“1.4-SNAPSHOT”版本的 jar 中使用。

于 2015-07-09T08:07:31.457 回答