Development of an AI-supported process for the automatic detection of pores in rocks – ITERATOR
Begin of project: January 1, 2020
End of project: December 1, 2022
Status of project: March 10, 2021
The frequency, distribution, shape and size of pores control almost all of the properties of any solid body. Determining the porosity has therefore been an essential component of petrophysics for a long time. The ITERATOR project now relies on image processing algorithms to semi-automatically detect pores in micrographs derived from scanning electron microscopy. In addition to the porosity, this also determines the distribution of pore sizes and pore shapes. This information can then be used to derive important parameters such as heat flow and fluid flow. In addition, ITERATOR can also be used to reveal possible relationships between specific mineral phases and porosities, as well as stress regimes and pore orientation.
Technical implementation
A whole range of neural networks can be programmed on the basis of Tensorflow (a python library). In the first test carried out in the ITERATOR project, a so-called mask-RCNN (Masking Region-Based Convolutional Neural Network) was implemented. Mask-RCNN is a neural network for the masking and segmentation of objects in photographs. Other approaches for the detection of objects or patterns in photographs are also investigated in parallel. A U-net is used for example in this case. This is a completely linked neural network in which the results from a layer of neurons is not only passed on to the directly following layer of neurons, but also to a subsequent layer. The output and training data set is provided by scanning electron micrographs taken of a sample of Opalinus Clay, which was polished by an ion beam before the photographs were taken.
Source: BGR
First results
Very promising results have already been gained from the first tests and developments. The following figures show examples of the output and target data, as well as the prediction results acquired after training the neural network.
Source: BGR
In detail, a dataset with a single picture size of 1024 times 1024 pixels is used to train a neural network, which allows the differentiation between pores and the surrounding rock.
Source: BGR | Source: BGR | Source: BGR |
The subsequent image clearly shows that many pores have been identified, and correspond with the predicted values in terms of their position. An auto-encoder was used for the training, which first shrinks the size of the image as the detection process moves from layer to layer in the neural network (which results in the loss of image information). In the second half of the network, the image is enlarged again, and the results from previous layers are used to compensate for the loss of information (U-net architecture).
Source: BGR
Outlook and further steps
The current implementations have been tested with additional new SEM micrographs, which were not used for the training process. Because more than just the position and the presence of pores is to be generated as part of the results, other neural network architectures are being developed, trained and tested to provide additional information. The current implementations were expanded in the next step to enable the semantic differentiation of several pores. The aim is to identify every pore contained in the image as a single object. The next steps that are planned are to record more parameters with respect to the pores (orientation, size; etc).