21 Oct 2019

Porosity Clustering Analysis and Distance to Surface

This tutorial demonstrates the steps necessary to quantify porosity distribution and perform a pore distance to surface analysis.

Clustering-2


Two similar workflows are demonstrated for the analysis of porosity volume distribution and porosity distance to the surface border.

  1. Clustering Analysis Workflow
  2. Distance to Surface Analysis Workflow

Sample datasets, complete project files, a step-by-step tutorial and recipes are available for download.

General workflows for Clustering Analysis

There are 3 main sections in this workflow

  • (1A) Generate porosity total volume
  • (1B) Create a distance map
  • (1C) Masking the porosity (1A) with the total volume (1B) followed by Label Analysis and generation of point cloud density

Steps and modules used in the tutorial

Section 1A: Generate porosity total volume

  • Load the dataset – Clear History Log is recommended for generating a Recipe
  • Closing by Reconstruction – Create a background image
  • Arithmetic – Subtract the background from the original dataset to obtain only the porosity intensity
  • Auto Thresholding – binarize the result image from Arithmetic step, obtaining a porosity label image

Section 1B: Create a distance map

  • Auto thresholding – Create a total volume mask label image
  • Erosion – Shrink the volume to exclude border pixels, reducing artifacts
  • Distance Map – Generate a distance field from the total volume label image from the Erosion step

Section 1C: Masking followed by Label Analysis and generation of point cloud density

  • Mask – Masking the porosity (1A) with the total volume (1B)
  • Label Analysis – Generate porosity results from the Masking step and the distance field in spreadsheets
  • Spreadsheet to Point Cloud – Convert the spreadsheet results into a Point Cloud
  • Point Cloud Density – Generate Point Could Density for visualization of porosity clustering

General workflows for Distance to Surface Analysis

Similarly, the Distance to Surface Analysis workflows consist 3 sections

  1. (2A) Generate the porosity volume
  2. (2B) Create a distance map
  3. (2C) Perform a Label Analysis of the porosity (2A) with the Distance Field (2B) and then apply the Label to the Attribute to visualize the result

Steps and modules used in the tutorial

Section 2A: Generate the porosity volume

  • Load the dataset – Clear History Log is recommended for generating a Recipe
  • Closing by Reconstruction - Create a background image
  • Arithmetic – Subtract the background from the original dataset to obtain only the porosity intensity
  • Auto Thresholding – Binarize the result image from the Arithmetic step, obtaining a porosity label image
  • Remove Small Spots – Remove noise and artefacts

Section 2B: Create a distance map

  • Interactive Thresholding – Create the total volume in a binary (label) image
  • Closing – Close all small hole volumes
  • Fill Holes – Fill all small holes in the whole volume
  • Distance Map – Generate a distance field from the total volume label image from the Fill Holes step

Section 2C: Label Analysis and then apply Label to Attribute to visualize the result

  • Label Analysis – Combine the porosity (A) with the Distance Field (B)
  • Label to Attribute – Visualize the porosity label image distance to surface

How to Create & Run the Recipe

  • When the workflows are finished, right click on the last result and choose "Create Recipe", this will re-direct to the RECIPES Workroom
  • Save the Recipe
  • Return to the Project Workroom
  • Load a new dataset
  • Right click anywhere on the background and select "Recipe Player"
  • Load the previous saved Recipe into the Recipe Player
  • Connect the dataset to the Recipe Player Input port
  • Run the Recipe by click "Apply" (obtain only the final result) or click "Export" instead to get all the steps in the workflows

Data courtesy of School of Engineering, Newcastle University