我正在尝试构建一个简单的java应用程序,它可以计数粒子,然后显示它们的数量。我正在使用imagej (ij.jar)库,直到显示带有结果的小框为止,一切都是完美的。COuld任何人都可以向我解释我如何展示它。第二件事是,如何将这个值提取到int中。
我的当前代码:按钮操作,它将导致:
ImagePlus imp = IJ.openImage("C:\\Users\\bibaleze69\\Desktop\\imageprocessing\\chromosomes2.jpg");
imp1.show();
IJ.run(imp, "Color Threshold...", "");
IJ.run(imp, "Analyze Particles...", "show=[Overlay Outlines] display summarize");发布于 2014-10-15 14:48:33
如何将该值提取为int。
我相信您想要使用结果表 API。ResultsTable.getResultsTable将在您的Analyze Particles命令之后获得活动的结果,然后可以使用getValue方法询问它。
COuld任何人都可以向我解释我该如何展示
我认为您的Analyze Particles没有运行,因为运行Color Threshold...并没有实际应用阈值来创建掩码或8位图像,它只是打开了阈值接口。实际上,我在申请Color Threshold时遇到了很多困难。不过,我觉得你有几个选择:
Color Threshold并打开Macro Recorder,则可以按Color Threshold对话框中的“宏”按钮将大量IJ1宏代码转储到记录器中。这段代码将实际将选定的阈值应用于您的图像,并创建一个图像,然后输入到Analyze Particles。但是您必须在Java端复制这个过程,我不知道它会有多大的灵活性。run("8-bit"); setAutoThreshold("Default"); //run("Threshold..."); setOption("BlackBackground", false); run("Convert to Mask");
如果您只需在8位版本的映像上操作就可以获得所需的阈值,那么这是将数据发送到Analyze Particles的一个简单得多的选项。如果这些选项不完全适用于您,我还建议写入ImageJ邮件列表 ( Threshold Colour作者阅读的)以及其他许多内容。
https://stackoverflow.com/questions/26363408
复制相似问题