【问题标题】:ImageJ calculating area of solidImageJ 计算实体的面积
【发布时间】:2017-11-14 15:36:52
【问题描述】:

我有一系列冰的图像,我想分析这些图像以确定固体与液体的面积。示例图像here。这类似于孔隙率测量,但由于颜色太相似而无法简单地进行阈值测量,因此我很挣扎。

目前我不得不使用对比度/查找边缘/去斑/制作二进制以使晶体更容易识别。

然后我将它们通过形态分割: example 然后是计算区域的阈值。

有没有更简单的方法来计算冰的面积与空间/液体的面积,而不必追踪每个晶体?

【问题讨论】:

    标签: imagej


    【解决方案1】:

    您的图像具有不均匀的背景照明,因此进行背景减法是有意义的。 Find Edges 是一个很好的预处理步骤,可以增强边缘,使形态分割(这里是一个合理的工具)更容易。

    这是一个示例宏,它可以自动执行其中的许多步骤:

    // Perform a background subtraction.
    orig = getImageID();
    run("Duplicate...", " ");
    dupl = getImageID();
    run("Gaussian Blur...", "sigma=50");
    imageCalculator("Subtract create 32-bit", orig, dupl);
    
    // Enhance the edges.
    run("Find Edges");
    
    // Run Morphological Segmentation.
    run("Morphological Segmentation");
    wait(1000); // HACK
    call("inra.ijpb.plugins.MorphologicalSegmentation.segment", "tolerance=20", "calculateDams=true", "connectivity=6");
    call("inra.ijpb.plugins.MorphologicalSegmentation.setDisplayFormat", "Catchment basins");
    call("inra.ijpb.plugins.MorphologicalSegmentation.createResultImage");
    

    生成的图像的每个区域都有不同的实体值:

    您可以从那里创建一个直方图(分析 > 直方图)来获取每个强度值的计数,即每个对象的面积。由于某种奇怪的原因,直到我首先复制了结果图像(shift+d),它才对我有用。

    您可以单击“复制”按钮将整个直方图放入剪贴板,然后将其粘贴到电子表格程序或文本文件中,以便在其他工具中进行分析。

    肯定有其他(可能更好)的方法来分析来自形态分割的集水盆地“标记”图像;考虑在ImageJ Forum 上询问更多想法和建议。

    您可以尝试的另一个更简单的选项是Trainable Weka Segmentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      • 2013-06-12
      • 1970-01-01
      • 2010-12-22
      相关资源
      最近更新 更多