ArticlePDF Available

GEOMAPLEARN 1.2: detecting structures from geological maps with machine learning – the case of geological folds

Copernicus Publications on behalf of European Geosciences Union
Geoscientific Model Development
Authors:

Abstract and Figures

The increasing availability of large geological datasets and modern methods of data analysis facilitate a data science approach to geology in which inferences are drawn from geological data using automated methods based on statistics and machine learning. Such methods offer the potential for faster and less subjective interpretations of geological data than are possible from a human interpreter, but translating the understanding of a trained geologist to an algorithm is not straightforward. In this paper, we present automated workflows for detecting geological folds from map data using both unsupervised and supervised machine learning. For the unsupervised case, we use regular expression matching to identify map patterns suggestive of folds along lines crossing the map. We then use the HDBSCAN clustering algorithm to cluster these possible fold identifications into a smaller number of distinct folds. This clustering algorithm is chosen because it does not require the number of clusters to be known a priori. For the supervised learning case, we use synthetic models of folds to train a convolutional neural network to identify folds using map and topographic data. We test both methods on synthetic and real datasets, where they both prove capable of identifying folds. We also find that distinguishing folds from similar map patterns produced by topography is a major issue that must be accounted for with both methods. The unsupervised method has advantages, including the explainability of its results, and provides clearly better results in one of the two real-world test datasets, while the supervised learning method is more fully automated and likely more easily extensible to other structures. Both methods demonstrate the ability of machine learning to interpret folds on geological maps and have potential for further development targeting a wider range of structures and datasets.
This content is subject to copyright.
Geosci. Model Dev., 18, 939–960, 2025
https://doi.org/10.5194/gmd-18-939-2025
© Author(s) 2025. This work is distributed under
the Creative Commons Attribution 4.0 License.
Model description paper
GEOMAPLEARN 1.2: detecting structures from geological maps
with machine learning the case of geological folds
David Oakley1,2, Christelle Loiselet1, Thierry Coowar1,2, Vincent Labbe1, and Jean-Paul Callot2
1Bureau de recherches géologiques et minières (BRGM), 3 Av. Claude-Guillemin, BP 36009,
Orléans CEDEX 2, 45060, France
2LCFR, E2S UPPA, CNRS-TotalEnergies-UPPA, University of Pau and the Adour Region (UPPA),
Av. de l’université, BP 576, Pau, 64012, France
Correspondence: David Oakley (david.oakley@glasgow.ac.uk)
Received: 29 February 2024 Discussion started: 27 May 2024
Revised: 15 November 2024 Accepted: 5 December 2024 Published: 19 February 2025
Abstract. The increasing availability of large geological
datasets and modern methods of data analysis facilitate a
data science approach to geology in which inferences are
drawn from geological data using automated methods based
on statistics and machine learning. Such methods offer the
potential for faster and less subjective interpretations of ge-
ological data than are possible from a human interpreter, but
translating the understanding of a trained geologist to an al-
gorithm is not straightforward. In this paper, we present au-
tomated workflows for detecting geological folds from map
data using both unsupervised and supervised machine learn-
ing. For the unsupervised case, we use regular expression
matching to identify map patterns suggestive of folds along
lines crossing the map. We then use the HDBSCAN clus-
tering algorithm to cluster these possible fold identifications
into a smaller number of distinct folds. This clustering al-
gorithm is chosen because it does not require the number
of clusters to be known a priori. For the supervised learn-
ing case, we use synthetic models of folds to train a convo-
lutional neural network to identify folds using map and to-
pographic data. We test both methods on synthetic and real
datasets, where they both prove capable of identifying folds.
We also find that distinguishing folds from similar map pat-
terns produced by topography is a major issue that must be
accounted for with both methods. The unsupervised method
has advantages, including the explainability of its results, and
provides clearly better results in one of the two real-world
test datasets, while the supervised learning method is more
fully automated and likely more easily extensible to other
structures. Both methods demonstrate the ability of machine
learning to interpret folds on geological maps and have po-
tential for further development targeting a wider range of
structures and datasets.
1 Introduction
The correct identification and interpretation of geological
structures, such as folds and faults, is necessary in many ap-
plications, including exploration for hydrocarbons, minerals,
and groundwater; geological storage of wastes and energy
resources; and seismic hazard analysis (Fossen, 2010; Mar-
joribanks, 2010; Brandes and Tanner, 2014; Bond, 2015; Li
et al., 2019). On geological maps, structures can be identi-
fied manually based on an interpreter’s knowledge of geo-
logical principles. Interpretation of geological datasets, in-
cluding maps, is inherently subjective and uncertain (Bond,
2015), and it can be a time-consuming process. If the inter-
pretation process can be automated, it could be made faster,
more reproducible, and better able to handle large data vol-
umes. With maps from many geological surveys now readily
available in digital form, there is an opportunity to derive new
insights from these old datasets using computerized analyses
(e.g., Allmendinger, 2020). More broadly, there is a need to
develop applications of machine learning for use throughout
the geosciences (Bergen et al., 2019) so that automated struc-
tural interpretation can play a role within larger automated or
semi-automated workflows. In particular, it is complemen-
tary to automated geological mapping methods (e.g., Crack-
nell and Reading, 2014) as it provides the next step of auto-
Published by Copernicus Publications on behalf of the European Geosciences Union.
940 D. Oakley et al.: GEOMAPLEARN 1.2
matically interpreting the mapped structures. Further, three-
dimensional geological modeling benefits from constraints
based on knowledge of geological structure (Wellmann et
al., 2014; Laurent et al., 2016; Grose et al., 2019), suggest-
ing that automated structure identification could contribute
to a larger automated geological model-building workflow.
Three-dimensional geological modeling has also motivated
previous efforts for extracting and interpolating data from
maps (Caumon et al., 2013; Jessell et al., 2021); this is
closely related to our proposed work on interpreting struc-
tures from such data and could again lead to a combined
workflow in which data are extracted, interpreted, and then
interpolated.
Previous work on the automatic detection of geological
structures on maps is limited. A greater body of work exists
on the related problem of automatic classification of lithol-
ogy from remote sensing and airborne geophysical data, as
in de Carvalho Carneiro et al. (2012), Cracknell and Read-
ing (2013, 2014), Kuhn et al. (2018), Gillfeather-Clark and
Smith (2018), and Bressan et al. (2020), and some work on
fault and lineament detection from such datasets (e.g., Vasuki
et al., 2014; Middleton et al., 2015; Aghaee et al., 2021). An-
other problem that has received greater attention is automatic
interpretation of seismic reflection data, including the iden-
tification of faults (e.g., Wu et al., 2019, 2020; Cunha et al.,
2020; An et al., 2021, 2023; Gao et al., 2022; Wang et al.,
2023) and salt structures (e.g., Shi et al., 2019; Muller et al.,
2022). Identification of folds and other structures in magnetic
data has also recently been investigated by Guo et al. (2021).
Further, some recent work has applied machine learning to
geological modeling, including the use of unsupervised clas-
sification methods (Wang et al., 2017) and neural networks
(Hillier et al., 2021, 2023; Bi et al., 2022; Yang et al., 2022).
In the interpretation of geological maps specifically, an early
use of computers to extract new insights was the work of
Ichoku et al. (1994), who developed a method for automated
construction of geological cross sections from maps. More
recently, Huang et al. (2023) developed a method for auto-
mated cross section construction that includes identification
of folds within the cross section. Of particular relevance to
our work, Li et al. (2019) developed a method for identifying
geological folds from vector geological maps using attributed
relational graphs and formal grammar. While capable, this
method assumes that the folds have an elliptical shape in map
view and requires perfectly symmetrical folds with visible
fold cores requirements which natural folds will not always
satisfy and that we seek to remove in this work. We there-
fore propose two alternative workflows for detecting struc-
tures on a geological map, which we implement in the GE-
OMAPLEARN codes: one based on unsupervised clustering
and the other using a convolutional neural network. Similarly
to Li et al. (2019), we focus on detecting geological folds as
a proof of concept, with the intention that our methods may
be generalized to other geological structures in the future.
Folds are widely occurring geological structures of signifi-
cant scientific and practical importance (Nabavi and Fossen,
2021) that, along with connection to the prior work of Li et
al. (2019), makes them a good choice for our initial focus.
2 Methods
2.1 Data
The data needed for GEOMAPLEARN are a shapefile of ge-
ological unit polygons and a digital elevation model (DEM).
The shapefile should include an attribute giving the rela-
tive age of each geological unit, with 1 being used for the
youngest unit. This relative age information is necessary for
identifying the age relationships that are indicative of ei-
ther anticlinal or synclinal folding. A relative age of 0 indi-
cates that the program should ignore a unit, which we use
to exclude Quaternary deposits from the analysis. We test
GEOMAPLEARN on both synthetic and real-world data.
For the real-world data, we use 1 :50 000 scale geological
maps from the BD Charm-50 dataset (BRGM, 2024) and
DEMs from the BD ALTI®25M dataset (IGN, 2024). All
data processing and analyses are performed using the Python
programming language, with the GeoPandas (Jordahl et al.,
2022) and Shapely (Gillies et al., 2023) libraries used to han-
dle geospatial and geometric data.
2.2 Clustering-based unsupervised learning method
Our unsupervised learning method involves sampling a vec-
tor geological map using rays across the map, detecting pat-
terns of interest, and clustering the detected features. Fig-
ure 1a summarizes the steps involved. We illustrate the pro-
cess on a synthetic geological map (Fig. 2), with the results
of the different steps shown in Fig. 3.
The first step of our method is to extract one-dimensional,
linear samples of the map to analyze for patterns indicative of
folding. This approach is based on the initial work of Loiselet
et al. (2016), who propose sampling a three-dimensional ge-
ological model along straight lines drawn in the model space.
The sampling method provides an interface to the model us-
ing only two predicates related to (1) the geological domain
that any point lies in and (2) the geological contact (hori-
zon or fault) that an arbitrary ray might intersect. Hence, an-
swering only these two questions allows for retrieving all the
topological information automatically from the model and
generating a model representation on demand (log, profiles,
3D gridding, etc.). Here we apply the same idea for sam-
pling a two-dimensional geological map. To sample the map
evenly without regard to the orientation of structures, we cre-
ate a grid of sample lines within a circle surrounding the map
(Fig. 1b). The circle is divided into equally spaced nodes, and
lines are drawn connecting all possible pairs of nodes. We use
80 nodes for the examples shown in this paper, but only 8 are
shown in Fig. 1b for better visual display. We then find the
intersection of each line with the map polygons, creating a
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 941
Figure 1. (a) Flowchart of the unsupervised clustering-based fold detection algorithm. (b) Example showing how a grid of rays is created
across a geologic map from which data are to be extracted.
Figure 2. Synthetic geological model used to illustrate the unsupervised learning method. (a) The geological map in the absence of topog-
raphy (at approximately the mean elevation of (b)), with the axes of the two anticlines marked by dotted lines. (b) The topography of the
model (with elevations in meters above the base of the model). (c) The geologic map formed by the intersection of the topography with the
geologic model, with the topographic contours from (b) overlaid. (d) A cross section illustrating the two anticlines and the syncline in the
model. The color scale is the same in (a),(c), and (d).
series of smaller line segments within each line, with each
segment corresponding to a geological unit (Fig. 3a). Thus,
we identify all units that a line crosses and the order in which
they are crossed. A drawback of our choice to sample evenly
by orientation is that the density of lines will not be equal in
all parts of the circle. To mitigate this issue, a large number
of nodes and lines should be used so as to ensure that a suffi-
cient number of intersections can occur in any part of the map
for clusters to be formed. A large number is also needed to
ensure sufficient coverage of possible orientations. The exact
number needed will likely vary with the parameters chosen
for the clustering algorithm, as described below, but we have
found our choice of 80 nodes to be sufficient.
Where a line crosses the edge of a polygon, we also esti-
mate the strike and dip of the contact. This is done by taking
the locations and elevations of vertices of the polygon within
a given distance of the crossing point and solving for the
best-fit plane using the eigenvector method described by Fer-
nández (2005) and Allmendinger (2020), which is a multi-
point extension of the three-point problem. This method will
not work well where points are highly colinear (Fernández,
2005), which may occur especially frequently in areas with-
out large topographic variations. Increasing the distance over
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
942 D. Oakley et al.: GEOMAPLEARN 1.2
Figure 3. Illustration of clustering-based unsupervised fold identification using the synthetic geological map from Fig. 2. The relative unit
ages are now represented in grayscale in order to show the fold identification process more clearly. (a) One of the rays used to sample the
map divided into segments corresponding to the geologic units of the map. (b) All ray segments along which possible folds were identified.
(c) The midpoints of the possible fold segments. (d) The midpoints after rejection based on bedding orientation to exclude fold-mimicking
topography. (e) The midpoints as clustered by HDBSCAN. (f) The points to be used for finding the fold axes, which exclude points from (e)
for which rays cross at a high angle to the strike of the bedding. (g) The fold axes fit to the points in (f).(h) The line segments corresponding
to the midpoints in (e).(i) The fold areas identified by finding the convex hulls of the line segments in (h).
which points are sampled can help to avoid this condition and
to minimize the effects of noise in the data, but increasing it
too much risks averaging points that are no longer coplanar.
The best distance is, therefore, likely to depend on the scales
of the map, the folds, and the topography in the area. Here
we use a distance of 250 m, which we found to work rea-
sonably well for all the maps considered in this study. Some
poor-quality measurements may still occur, but our subse-
quent analysis methods involve the rejection of outliers and
the fitting of a fold axis to scattered data, meaning that a few
inaccurate orientations are unlikely to have a major effect on
the final result.
Following Li et al. (2019), we take the key identifying fea-
ture of a fold on a geological map to be the repetition of ge-
ological units on either side of the fold core, creating a sym-
metrical pattern around the fold axis. If strata get progres-
sively younger to either side of the core, the fold is an anti-
cline, and if they get progressively older, it is a syncline. Un-
like Li et al. (2019), we do not require a specific core unit to
be identified; we only require that the appropriate age pattern
be identified on both limbs of the proposed fold. To search for
symmetrical patterns of repeated units, we convert the pattern
of geological units along each line into a string of text char-
acters. Each geological unit is given a unique identifier, and
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 943
the identifiers of all units crossed by a line are concatenated
together in order. For example, the string “ABCBA” would
indicate that three unique geological units, A, B, and C were
crossed by a line, with A and B being encountered twice with
C in the middle. Such a pattern could indicate the presence
of a fold, since A and B are repeated symmetrically about the
C core. Since Quaternary sediments may cut across bedrock
structure, we exclude identifiers for Quaternary units in the
text string, and we combine any occurrences of the same unit
that are separated only by a Quaternary unit.
To detect fold-like symmetric patterns automatically, we
make use of regular expressions (Erwig and Gopinath, 2012)
to detect patterns indicative of folding in the text strings cre-
ated from the data extracted along each ray. We use the fol-
lowing two regular expressions:
(\w)(\w)(\w)?\2\1,(1)
and
(\w)(\w)\1.(2)
In these expressions, \wis used to match a character belong-
ing to the “word” character class (which includes all letters).
The parentheses around (\w) define it as a group that can
be referenced later by a number. The \1 and \2 terms refer-
ence these groups, meaning that the characters matched by
the first and second (\w) groups must be repeated. The aster-
isk (*) means that there can be additional results between the
two matched groups. Finally, the question mark (?) means
that the shortest match that meets the criteria will be used.
Therefore, expression (1) looks for places where two units
are repeated symmetrically, with any number of intervening
units allowed, and expression (2) looks for places where a
single unit is repeated immediately on either side of a core
unit. In both cases, a single geological contact (as defined by
the two units that are in contact) is encountered twice by a
ray, but the order in which the two units are intersected is re-
versed between the two occurrences, as is expected to occur
when the ray crosses a fold.
The string of characters is analyzed from left to right. If a
symmetry is detected, its location and identity are saved. The
starting point for the analysis is then moved to after the first
occurrence of the matched unit(s), and the regular expres-
sion matching is performed again until no more symmetries
are detected. This process is repeated for each ray in the grid
of rays used to sample the map. The result is a group of ray
segments, each of which crosses a possible fold (Fig. 3b). If
there are multiple contacts on either side of the same fold,
there will be multiple overlapping segments, with the outer-
most one crossing the full width of the fold.
For each ray segment, we estimate the location of the fold
axis as the midpoint between the matched contacts (Fig. 3c).
We further classify the detection as a possible syncline or
anticline based on the age relationships of the matched units.
If age increases towards the center, the fold is classified as an
anticline. If age decreases towards the center, it is classified
as a syncline.
As can be seen in Fig. 3c, the possible folds detected at
this point can include fold-mimicking topographic patterns.
When horizontal or homoclinal stratigraphy is intersected by
topography, ridges will show younger units surrounded by
older units, as in synclines; valleys will show older units sur-
rounded by younger units, as in anticlines; and these pat-
terns will be matched by the regular expressions (1) and/or
(2). Examples of this phenomenon occur toward the sides of
the synthetic geological map in Figs. 2 and 3. To distinguish
these cases from actual folds, we consider the orientation of
bedding. Similarly to Li et al. (2019), we reject matches for
which the dip of either limb is <5°. We also require that
the limbs of anticlines should dip away from the fold core,
while those of synclines should dip towards the fold core,
and we reject matches that fail to meet these criteria. These
requirements remove most topography-related patterns that
were initially misidentified as folds (Fig. 3d).
Given the dense grid that we use, any fold on the map is
likely to be crossed by many lines, each of which will pro-
duce an estimate of a point on the fold axis. These points
can thus be expected to cluster around the true fold axis,
while multiple folds will produce multiple separated clusters.
Many different machine learning clustering algorithms exist,
including several that are implemented in the widely used
scikit-learn Python library (Pedregosa et al., 2011). Most of
these algorithms require the number of clusters to be speci-
fied, and we do not know the correct number of clusters (the
number of folds) ahead of time. An algorithm that avoids
this requirement is DBSCAN (Ester et al., 1996). The DB-
SCAN algorithm requires two user-specified parameters: eps
and min_samples. Points within a distance eps from each
other are considered to be neighbors. A point with at least
min_samples neighbors is considered to be a core point of
a cluster. All core points that are neighbors of each other
and all the neighbors of those core points are grouped to-
gether in a cluster. In this way, multiple clusters may form
if multiple groups of core points exist that are not connected
to each other. Points not within eps distance of a core point
of any cluster are considered to be outliers. A weakness of
the DBSCAN algorithm is that the eps parameter can be
difficult to choose without some prior knowledge of the ex-
pected clustering. To reduce this need for user intervention,
we use a variant of DBSCAN called HDBSCAN, which
attempts to determine the distance parameter automatically
(Campello et al., 2013, 2015; McInnes et al., 2017). The only
required user-chosen parameter is the minimum cluster size
(min_cluster_size). By default, min_samples is set equal to
min_cluster_size, which we do not change, although in prin-
ciple they can be different. To avoid getting a lot of very small
clusters, we also find it necessary to set the optional clus-
ter_selection_epsilon, which specifies a minimum distance
below which clusters will be merged together (Malzer and
Baum, 2020). Setting a minimum distance between clusters
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
944 D. Oakley et al.: GEOMAPLEARN 1.2
is less constraining than setting a specific value for eps, but
it does introduce some additional user choice. Thus, HDB-
SCAN is somewhat more flexible than DBSCAN but still
requires user-specified parameters that limit its ability to be
used in a completely automated manner.
Using HDBSCAN, we cluster the estimated fold axis
points (Fig. 3e). We perform the analysis separately for
points classified as belonging to anticlines and synclines be-
cause points from a different fold type should not belong to
the same fold. Since we are clustering the midpoints of ray
segments connecting matched contacts on either side of a
fold, there is a risk that some midpoints may cluster close
together even when the endpoints of the segments are far
apart and do not actually belong to the same fold. To reduce
the risk of this occurring, we perform outlier removal on the
segment end points using the LocalOutlierFactor algorithm
from scikit-learn (Breunig et al., 2000). If either endpoint of
a segment is deemed to be an outlier by this analysis, then
the segment and its midpoint are removed from the cluster.
To identify the fold axis, we fit a line to the points in each
cluster. As midpoints of segments crossing the fold, they are
expected to cluster around the fold axis, albeit with some
scatter. To remove rays that cross only the edge of a fold,
we use only clustered points for which the angle between
the ray and the strike of the matched contacts is greater than
60° (Fig. 3f). This restriction removes midpoints from rays
that just slightly cross the edge of a fold. Using only these
points, we fit a one-dimensional self-organizing map (SOM)
(Kohonen, 1982) to each cluster (Fig. 3g). We use a method
described by Gorzałczany and Rudzinski (2018) to grow the
length of the SOM to fit the number of points to be clustered.
Finally, in addition to the fold axis, we identify the area af-
fected by folding in each map. Since each clustered point is
the midpoint of a line segment connecting two matched con-
tacts, our clusters of points are also clusters of line segments
(Fig. 3h). We find the convex hull of the endpoints of these
line segments in order to estimate the area affected by folding
(Fig. 3i).
2.3 Supervised learning
The clustering-based method described above makes use
of unsupervised machine learning. An alternative is to use
supervised machine learning, in which a neural network
is trained to identify folds based on examples. Unlike the
method described above, this method does not require the
explicit definition of a set of rules to identify a fold or the
specification of clustering parameters, but it does require a
set of labeled training models for the neural network to learn
from.
We implement supervised learning on raster versions of
the geologic maps, which allows us to take advantage of ex-
isting work on image recognition using raster images. We use
the U-Net convolutional neural network architecture (Ron-
neberger et al., 2015), implemented with TensorFlow (Abadi
et al., 2015) and Keras (Chollet and Keras Team, 2015).
This architecture, originally developed for medical image
segmentation, segments an image by classifying each pixel
as belonging to one of a specified number of classes, corre-
sponding to types of objects to be identified in the image.
In the geosciences, it has been used previously in automated
seismic interpretation applications (e.g., Muller et al., 2022;
Wu et al., 2019; Wang et al., 2023). U-Net converts the orig-
inal raster into a large number of feature channels, which are
further operated on to ultimately produce the output. It fol-
lows an encoder–decoder architecture, in which the number
of feature channels is doubled and the number of pixels in
each dimension is halved at each level of the encoder, and
the process is reversed in the decoder. We follow the original
implementation of Ronneberger et al. (2015) in using 5 lev-
els with 64 feature channels at the first level, and in using the
ReLU (rectified linear unit) activation function, although we
use a smaller input image size of 256 ×256 pixels to reduce
training time and memory usage.
The input to our neural network consists of two raster im-
ages: a geologic map, classified by the relative age of the
units, and a digital elevation model. Both images are scaled to
the range [0,1]. The elevation is randomly generated without
any relationship to folding and is therefore not used to help
identify folding. Rather, it is included so that the neural net-
work can learn to interpret the map patterns produced by the
intersection of stratigraphy and structure with topography.
We train the neural network on synthetic maps derived
from randomly generated geological models (Appendix A).
These models are created by starting with an initially hori-
zontal or sub-horizontal stratigraphy, applying uplift to sim-
ulate folding, and finding the intersection of a topographic
surface with the three-dimensional model. Synthetic fold ge-
ometries are created with a simple mathematical function for
a sinusoidal fold and with randomly chosen values to define
amplitude, wavelength, asymmetry, and orientation. The de-
formation consists purely of vertical uplift, which simplifies
the process of creating and labeling the synthetic geological
maps. We also add some simple synthetic faults, again with
purely vertical motion, with maximum displacement propor-
tional to fault length (Cowie and Scholz, 1992) and a dis-
placement field that has an elliptical shape (Walsh and Wat-
terson, 1987; Georgsen et al., 2012; Wu et al., 2020) along
the strike and decreases away from the fault (Cardozo et al.,
2008). The fault model, which is a simplification of that used
by Wu et al. (2020) is not meant to generate truly realistic
faults (since fault identification is not our focus) but to teach
the neural network to handle maps that include abrupt off-
sets due to faulting. Additional Gaussian noise is also added
to the uplift to make the trained model resilient to data that
do not perfectly follow our simple folding model. Synthetic
topography is generated randomly using Perlin noise (Perlin,
1985). Perlin noise is a method often used for procedural ter-
rain generation in computer graphics (Rose and Bakaoukas,
2016), which produces sufficiently realistic-looking topog-
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 945
raphy for our purposes and has the advantage that different
topographies can be easily generated by randomly chang-
ing a single seed number. Because real-world maps typically
contain fluvial and other Quaternary deposits that cut across
bedrock geology, random Quaternary deposits are created
with a second Perlin noise field. Values of that field below
a cut-off value are assigned to the Quaternary and given a
relative age code of 0. The model is trained only to identify
anticlines and not synclines. This is done for two reasons:
first, the model only explicitly creates anticlines, with syn-
clines merely being the space between them, and second, the
limb of an anticline is also the limb of the adjacent syncline,
but the U-Net architecture assumes that each pixel fits into
only one class.
For training, we create a dataset of 100 000 random syn-
thetic models. The use of such a large ensemble helps to
avoid over-fitting that can occur when the neural network is
repeatedly trained on the same models, and the use of syn-
thetic models allows a large training dataset to be generated
rapidly. A total of 15% of the synthetic models have no folds
in them but have topography that can create fold-mimicking
map patterns. They thus help the neural network to learn to
distinguish these patterns from actual folds. The outputs of
the neural network are three raster images of equal size to the
input images with values between 0 and 1. These images give
the probability that each pixel belongs to one of three classes:
not part of an anticline (background class), within the area of
an anticline, and along the axis of an anticline. The inclusion
of a background class is necessary because U-Net must clas-
sify every pixel as belonging to some class. The training pro-
cess relies on randomness in the synthetic models, the order
in which the training models are used, and the initial values
of the neural network weights which introduces some, cur-
rently unquantified, uncertainty in the training process, but
experiments with training multiple times showed reasonably
similar results.
The neural network is trained for 250 epochs of 800 mod-
els each, using the synthetic dataset. Another 200 synthetic
models are used as a validation dataset. Each epoch consists
of 100 training batches and 25 validation batches, and each
batch consists of eight synthetic maps. Training is done using
the Adam optimizer (Kingma and Ba, 2014) with a learning
rate of 1 ×104. The sparse categorical cross-entropy loss
function in Keras is used to determine the misfit between
models and neural network predictions. The decrease in this
loss function over the 250 epochs is shown in Fig. 4a. We
tested the sensitivity of this result to several hyperparame-
ters related to the training and the U-Net architecture. Both
lower and higher training rates lead to significantly poorer
fits (Fig. 4b), while batch size has little effect (Fig. 4c). The
result is not very sensitive to the number of levels and fea-
ture channels in the U-Net (Fig. 4d–e), but decreasing them
slightly increases the loss and increasing them provides no
improvement. Replacing the ReLU activation function with
the closely related ELU (exponential linear unit) (Clevert et
al., 2015) does slightly decrease the training loss (Fig. 4f),
but since the effect is minor, we have continued to use ReLU
in accordance with the original U-Net implementation of
Ronneberger et al. (2015).
The process of classification with U-Net cannot be as read-
ily illustrated as the clustering process in Fig. 3, since the in-
ternal workings of the neural network are opaque. Nonethe-
less, in Fig. 5 we use the same two-anticline example to il-
lustrate the input raster images (Fig. 5a–b) and output classi-
fications in terms of probability (Fig. 5c–e), which compare
well with the truth (Fig. 5f–h).
3 Results
3.1 Synthetic maps
To validate the proposed methods, we first test them on a se-
ries of synthetic geological maps (Fig. 6a–h) in addition to
the synthetic map in Fig. 2. We consider five structural mod-
els that illustrate the main aspects of the fold structure that we
wish to capture: (1) a flat model with no folding; (2) a sin-
gle symmetric, double-plunging anticline; (3) an asymmetric
anticline; (4) an anticline with a sigmoidal shape; and (5) a
map with five interacting anticlines. We generate synthetic
topography in two ways (Fig. 6i–j). In the first case, we use
Perlin noise, as in the synthetic models for training the neu-
ral network, to produce moderately realistic-looking terrain.
In the second, we use a deliberately unrealistic “egg-box”
shape formed by the sum of two perpendicular sine func-
tions, which is chosen for its complexity and the fact that its
interaction with a horizontal stratigraphy will produce many
fold-mimicking map patterns. We apply the Perlin noise to-
pography to all models and the egg-box topography to the
flat, symmetrical-fold, and multiple-fold models.
Figures 7 and 8 show the results of the unsupervised
learning method on these examples. For HDBSCAN, we
use parameter values of min_cluster_size =15 and clus-
ter_selection_epsilon =500. For the flat model, we success-
fully determine that there are no folds in the map despite
the presence of topography that creates fold-like patterns
(Figs. 7a and 8a). This holds true even in the egg-box to-
pography case, which presents many such patterns (Figs. 7b
and 8b). Note that this is highly dependent on the use of bed-
ding orientation information in identifying the folds; if only
the age relationships of geological units are used, then folds
are incorrectly identified in this case, similar to what is seen
in Fig. 3c. For the single symmetrical anticline, a single fold
is successfully identified with an approximately linear axis,
although the axis does not extend quite to the plunging end
of the fold (Fig. 7c). The fold area accurately covers most of
the fold, although a small part of it is cut off at the north-
western end (Fig. 8c). With egg-box topography the fold is
still successfully identified, although the interaction of the
fold with this unusual topography creates a wavy shape to
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
946 D. Oakley et al.: GEOMAPLEARN 1.2
Figure 4. Sparse categorical cross-entropy loss from training the convolutional neural network. (a) Training and validation losses with our
preferred hyperparameters. (b–f) Training losses with various alternative values for hyperparameters: the learning rate, the batch size, the
number of levels of the U-Net, the number of features at the first level of the U-Net, and the activation function. In (b)(f), the second value
(the orange line) is the value used in the preferred model in (a).
the fold that is not truly accurate (Figs. 7d and 8d). For the
asymmetric anticline, the approximately correct fold area is
still identified (Fig. 8e), but the axis is still in the center of
the fold rather than in its asymmetric position to one side
(Fig. 7e) due to the limitations of using the midpoints of the
lines as an estimate for the fold axis. For the sigmoidal anti-
cline, the curved shape of the fold axis is successfully identi-
fied (Figs. 7f and 8f). In the multiple-folds example, fold axes
were identified on all of the anticlines and the synclines be-
tween them (Fig. 7g–h), although two syncline axes in Fig. 7
are joined through the saddle area between the ends of two
other anticlines. The fold area polygons are also mostly rea-
sonable (if a bit angular; see Fig. 8g–h), although the polygon
for the southwestern anticline in Fig. 8g extends across the
northwestern one as well. In summary, the method success-
fully identifies the existence of all folds in the models and
approximately (but imperfectly) represents their geometry.
U-Net classification of these same models is shown in
Figs. 9 and 10. Figure 9a–h shows the probability that each
pixel of the map is intersected by the fold axis. While the
maximum probabilities are relatively low (<0.5), the axes
still show up as distinctly higher-probability areas compared
to their surroundings. Figure 10a–h shows the probability
that each pixel is part of the fold, which is calculated as
the sum of the fold axis and off-axis fold area probabilities.
These are identified with high certainty (probabilities near
1) and approximately match the true fold shapes as shown
by the contours in Fig. 10. The flat models show no folds
(Figs. 9a–b, 10a–b), suggesting that the trained neural net-
work has learned to distinguish topography-related map pat-
terns from real folds. The single symmetric fold model shows
that it can correctly identify the fold axis (Fig. 9c–d) and
area (Fig. 10c–d) without being fooled by topography, even
in the egg-box topography case, although in that case it is
slightly curved. For the asymmetric fold (Figs. 9e, 10e), the
detected axis closely follows the true offset axis, and for the
sigmoidal fold (Figs. 9f, 10f) it has the expected sigmoidal
curved shape, showing that the neural network can identify
these cases. For the multiple-fold case, all anticlines and their
axes are detected with the regular topography (Figs. 9g, 10g)
and egg-box topography (Figs. 9h, 10h).
3.2 Real-world maps
We test our methods on two real-world cases taken from
BRGM 1 :50 000 maps of France (Fig. 11). The first of these
is the NNW-plunging Dreuilhe or Lavelanet anticline in the
Ariège department of France, as shown in the 1076 Lave-
lanet map (Souquet et al., 1984). The anticline is a major
structure of the sub-Pyrenean zone immediately north of the
North Pyrenean Frontal Thrust (Grool et al., 2018). To avoid
the more intensely faulted region in the hanging wall of the
thrust, we interpret only the northern part of the Souquet et
al. (1984) map. Our second real-world case is the 0222 Es-
ternay map area of Weecksteen (1968), which covers an area
of the Brie Plateau in the Marne department. The region is
part of the sedimentary Paris Basin, and erosion has formed
ridges and river valleys that produce map patterns in which
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 947
Figure 5. The fold identification process with the convolutional neural network, illustrated using the example from Figs. 2 and 3. (a, b) The
input consists of two raster images, both scaled between 0 and 1, with the first giving the geological map in terms of the relative age of the
units and the second giving the elevation. (c–e) The output consists of the probabilities that each pixel belongs to each of three classes: Class
1 for the background, Class 2 for off-axis parts of the fold, and Class 3 for the fold axis. The three class probabilities sum to 1 at each pixel.
(f–h) The truth is plotted with each pixel given a probability of 1 for the correct class and 0 for the other classes.
units are progressively older or younger away from these to-
pographic extremes. This map is, therefore, chosen to test
the abilities of our methods to distinguish these topography-
related features from actual folds. The vector map data we
use is from the open-source BD Charm-50 dataset (BRGM,
2024) but closely follows the earlier Souquet et al. (1984)
and Weecksteen (1968) maps.
For the unsupervised clustering method, we use HDB-
SCAN parameters of min_cluster_size =30 and clus-
ter_selection_epsilon =1000 m. The Lavelanet anticline
axis is detected (Fig. 12), and a second anticline to the east
is also identified. Since there is continuous uplift between
them, the two parts could also be considered part of the same
structure, but the break coincides with a clear structural low
and is not unreasonable. In addition, the syncline adjacent to
the Lavelanet anticline and the plunging end of another an-
ticline on the west side of the map are also identified. The
fold areas, while reasonable in their positioning, have overly
angular shapes compared to the shape of the actual folds on
the map. For Esternay, our program successfully ignores the
topography-related fold-like patterns and determines that the
map contains no folds.
The results of clustering with HDBSCAN are dependent
on the min_cluster_size and cluster_selection_epsilon pa-
rameters. In Fig. 13, we experiment with changing these val-
ues. In Fig. 13a and c, cluster_selection_epsilon is reduced
to 500 m. The same folds are detected as in Fig. 12 but with
some changes; in particular, only a small part of the syncline
is detected. In Fig. 13b and d, min_cluster_size is reduced
from 30 to 15. In this case, the Lavelanet anticline and the
anticline to the east are merged. Further, the area of the main
syncline overlaps too much with the Lavelanet anticline, and
a second small syncline is detected to the southeast.
The real-world maps are larger than the U-Net training
maps, but we are able to interpret them with U-Net using
a sliding window, similarly to Ronneberger et al. (2015), and
results are shown in Fig. 14. The vector geological map, clas-
sified by relative age of the units as in Fig. 11b and c, is
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
948 D. Oakley et al.: GEOMAPLEARN 1.2
Figure 6. (a–h) Geologic maps of synthetic models colored by the relative age of the units: (a) flat model, (b) flat model with egg-box
topography, (c) single symmetric anticline model, (d) single symmetric anticline model with egg-box topography, (e) asymmetric anticline,
(f)sigmoidal anticline, (g) multiple folds, and (h) multiple folds with egg-box topography. (i–j) Topography used in the models, where (i) is
the topography based on Perlin noise and (j) is the egg-box topography.
Figure 7. Axes of folds identified by the unsupervised clustering method for the synthetic models in Fig. 6. Axes are found by fitting a linear
SOM to the midpoints of line segments connecting matched contacts on either side of the fold. Anticline axes are shown in blue, and syncline
axes are shown in red.
converted to a raster with 50m resolution using ArcGIS. The
raster contains a single channel giving the relative age, which
is rescaled to the interval [0,1] (Fig. 14a–b). The DEM is
resampled at the same resolution and pixel locations as the
raster geological map and also rescaled to [0,1] (Fig. 14c–
d), and the two rasters are used as the input to the trained
neural network. In the Lavelanet map, the neural network is
able to detect the main Lavelanet anticline and its axis, as
well as the additional anticline to the east and the plunging
end of an anticline on the west side of the map (Fig. 14e and
g). These results show that what was learned from synthetic
models can be extrapolated to real-world structures as well.
In the Esternay map, the neural network gives low to moder-
ate fold probabilities over most of the map, but it incorrectly
identifies a region on the west side of the map as containing
folds (Fig. 14f and h), which appear to approximately fol-
low river valleys. Thus, despite the ability of the neural net-
work to separate true folds from topography-related patterns
in synthetic cases (Figs. 9a–b, 10a–b) and in some parts of
the Esternay map, this aspect of map interpretation can still
pose a challenge in some real-world cases.
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 949
Figure 8. Fold areas identified by the unsupervised clustering method for the synthetic models in Fig. 6. Areas are the convex hulls of the
line segments in each cluster. Anticlines are shown in blue, and synclines are shown in red.
Figure 9. Fold (anticline) axis detection by the convolutional neural network supervised learning method for the synthetic maps in Fig. 6.
Colors indicate the probability of each pixel being on the fold axis. Black lines show the true fold axes. Note that the color scale is different
here than for the fold areas in Fig. 10 due to the maximum probabilities of the fold axes being lower.
4 Discussion
4.1 Unsupervised and supervised learning
In this paper, we have tested two machine learning ap-
proaches to the automatic identification of folds on geolog-
ical maps: one based on unsupervised learning and one on
supervised learning. Both have proven capable of identifying
folds and fold axes on synthetic and real maps, although each
has some advantages and disadvantages.
The unsupervised learning approach makes use of explicit
rules for identifying folds, while the supervised learning
method makes use of training examples from which rules are
learned. In the absence of sufficient labeled training exam-
ples, this difference favors the unsupervised approach, but
we have largely been able to overcome this limitation by us-
ing synthetic data for training. Another advantage to the use
of explicit rules in the unsupervised approach is that they can
be readily understood by a human user, while the decision-
making process of a trained neural network is opaque and
can be evaluated only on the correctness of its results and not
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
950 D. Oakley et al.: GEOMAPLEARN 1.2
Figure 10. Fold area detection by the convolutional neural network supervised learning method for the synthetic maps in Fig. 6. Colors
indicate the probability of each pixel being within the area of the fold (including the axis). Black lines show the outlines of the true fold
areas.
Figure 11. Real-world geologic maps from two sites in France (locations marked in (a)): (b) the Lavelanet anticline and (c) the Esternay
region. Map polygons have been colored according to the relative ages of the units, which is the information used in our proposed methods.
Panels (d) and (e) show the digital elevation models for Lavelanet and Esternay, respectively.
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 951
Figure 12. Results of the clustering-based unsupervised learning method for the Lavelanet anticline and Esternay maps, showing the axes and
areas of folds identified by the method. Anticlines are shown in blue, and synclines are shown in red. No folds were identified for Esternay.
Figure 13. Fold axes (a–b) and areas (c–d) of the clustering-based method for the Lavelanet anticline using different HDBSCAN clustering
parameters than those in Fig. 12. (a, c) The cluster_selection_epsilon parameter is reduced from 1000 to 500 m. (b, d) The min_cluster_size
parameter is reduced from 30 to 15. Compare the results here to the left column of Fig. 12.
its methods. Whether rules are explicitly defined or learned,
they may not account for all possible variations in real-world
geology, and such limitations can be identified and under-
stood more easily in a set of explicit rules than in a neural
network. On the other hand, a neural network can represent
a much more complex set of rules than can reasonably be
defined manually. Finally, since the rules for identifying an
anticline and a syncline are essentially opposite of each other,
we can easily define both rules in the same manner in the un-
supervised learning approach, while the supervised learning
approach cannot readily make an analogy between them and
is, at present, only able to detect anticlines.
A primary goal of our work is to reduce or eliminate the
need for human involvement in the structure-detection work-
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
952 D. Oakley et al.: GEOMAPLEARN 1.2
Figure 14. Inputs to (a–d) and results of (e–h) the convolutional neural network supervised learning method for the Lavelanet anticline and
Esternay maps, showing the axes and areas of folds identified by the method. The fold area probability (g–h) is the sum of the off-axis fold
area probability (class 2) and the fold axis probability (class 3).
flow. This goal is better achieved by the supervised learn-
ing method. The unsupervised learning workflow shows sen-
sitivity of the results to the user-specified settings of the
DBSCAN and HDBSCAN clustering algorithms (Fig. 13),
which limits use of the method in a fully automated man-
ner and requires manual tuning to any particular map under
study. With the supervised learning method, in contrast, the
neural network only had to be trained once and could then be
applied to multiple different cases, as demonstrated with syn-
thetic and real-world maps. However, both methods would
likely require some human review of the results to ensure
that they are reasonable.
There are also differences between the two methods in
terms of the form of their input data and output results. The
unsupervised learning method works with vector data the
usual form of GIS geological maps. The supervised learning
approach requires raster data, which may be less precise. For
the real maps we use as examples, we converted the vector
map to a raster with a 50 m cell size. If geological contacts
are located with better than 50 m precision, then this conver-
sion will entail some loss of data precision. However, this
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 953
precision should be sufficient for the primary task of iden-
tifying map-scale folds, which are much larger than 50 m.
Finally, the unsupervised learning approach explicitly sepa-
rates the individual folds identified, while the supervised ap-
proach that we have used produces only a single mask of
where folds are or are not present. This form of output is
known as “semantic segmentation, while additional sepa-
ration of the individual folds would be “instance segmenta-
tion” (Géron, 2023). A more advanced machine learning ar-
chitecture might be able to solve the instance segmentation
problem in this case, but our work solves at least the major
problem of identifying which portions of the map are folded
and is similar to U-Net-based seismic interpretation meth-
ods, which also focus on semantic segmentation (e.g., Wu et
al., 2019, 2020; Wang et al., 2023). Overall, the use of raster
datasets does add some limitations to the supervised learning
approach (as opposed to the unsupervised approach) but still
provides meaningful and useful results.
4.2 Use of synthetic training models
The use of synthetic data is crucial to the success of our su-
pervised learning method. Without it, we would have had
to assemble a large dataset of labeled real-world geological
maps of folds for training. With synthetic models, we can
rapidly produce many more datasets than are likely to be
available from real-world data. Further, we can be sure that
the fold extents and fold axis locations defined for the train-
ing datasets are exactly correct, while for real-world train-
ing data these interpretations would be subject to the uncer-
tainties inherent to manual identification and conceptual bi-
ases introduced by the background of a particular interpreter
(Bond et al., 2007). We also know exactly what geological
processes are or are not simulated in a synthetic dataset and
therefore what kinds of geological settings a neural network
trained on that dataset may be suited to interpreting. Simi-
lar considerations to these have led to the use of synthetic
geological models in training a neural network for identifica-
tion of faults in seismic data by Wu et al. (2020) and Wang et
al. (2023), of structures in magnetic data by Guo et al. (2021),
and in developing a large dataset of 3D models for machine
learning applications by Jessell et al. (2022).
The primary drawback of our use of synthetic models is
that they cover only a limited range of geological models.
Structures in our models are limited to a simple model of
folding and an even simpler model of faulting. Stratigraphy
is always conformable, and topography and the distribution
of Quaternary sediments follow a simple noise model. In ad-
dition, all model parameters lie within a limited range (Ta-
ble A1). The simple models may be insufficient for the neu-
ral network to be able to identify some real-world structures,
and the training models may introduce their own biases, even
as the bias of a human interpreter is removed. The misiden-
tification of folds in the Esternay map, for instance, may in-
dicate that the model is overly biased towards seeing folds.
Nonetheless, we have shown with the Lavelanet map that
our neural network trained on synthetic fold models can suc-
cessfully identify real-world folds. The neural network also
shows the ability to generalize beyond the exact forms of its
training dataset. For instance, the folds in the training dataset
all had perfectly linear fold axes, but when confronted with
a test example that has a sigmoidal fold axis (Figs. 9f and
10f), the neural network was able to correctly identify this
axis shape.
4.3 Effects of topography
With the focus of our structure detection work on folds, a
major challenge has been distinguishing actual folds from
fold-like patterns of geological units produced by the in-
tersection of topography with a homoclinal stratigraphy. In
both the unsupervised and supervised learning approaches,
our solution has been to include topographic information
along with the geological map data. Topographic data are
widely available, so this requirement is unlikely to be a ma-
jor limitation of either method. As with the geological unit
data, this data is used to define specific rules (by way of
bedding orientations calculated from multi-point problems)
in the unsupervised case and to train the neural network to
learn its own rules in the supervised case. In the unsuper-
vised learning case, Fig. 3c shows that topography-related
fold-mimicking patterns will be initially identified as possi-
ble folds by regular expression matching and thus the use
of the topographic information and bedding orientation con-
straints is crucial (Fig. 3d) and is ultimately successful in
separating these patterns from actual folds in several differ-
ent example cases (Figs. 3, 7, 8, and 12). How the neural net-
work uses topographic information internally is not clear, but
Figs. 9a–b and 10a–b illustrate that it can learn to distinguish
topography-related patterns from real folds when trained on
synthetic models including such patterns. However, as seen
in the Esternay case study (Fig. 14), the ability of the neural
network to generalize these principles to real-world maps is
imperfect, perhaps due to differences between the synthetic
and real topography. Improved interpretation of topography
is, therefore, an area for future development that could sig-
nificantly improve the supervised learning method.
The rules that the unsupervised learning method uses to re-
move initial fold identifications on the basis of bedding orien-
tation may prevent the identification of some true folds. The
requirement for dips greater than could exclude some ex-
tremely gentle folds, while the use of bedding dip directions
in identifying synclines and anticlines will fail to identify
folds with overturned limbs and some multiply folded struc-
tures (synformal anticlines and antiformal synclines). While
we cannot determine if the neural network’s internal rules
prevent it from identifying these structures, we have only
trained it on upright folds, so its application to other cases
should be made with caution. Other types of folds are thus
another area for future work.
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
954 D. Oakley et al.: GEOMAPLEARN 1.2
So far, we have treated topography only as a hindrance
to structure identification, and in our synthetic models, there
is no correlation between topography and structure. In the
real world, however, topography could be related to structure
either through the different resistance to erosion of folded
units or through the effects of uplift on landscape evolution in
active tectonic settings. While consideration of these factors
would add considerable complexity to the synthetic models,
they could be considered a possible source of information
in the future. Further, the Perlin noise we have used to gen-
erate synthetic topography is only a rough approximation to
real geomorphology. Even without a relationship to structure,
more realistic synthetic topography in the training models
might improve the ability of the supervised learning method
to handle real-world topography, such as that in the Esternay
map.
4.4 Extension to additional kinds of structures
In this work, we have focused on identification of folds and
have used maps in which folds are the principal structures
to be observed as examples. Many geological settings are,
however, considerably more structurally complex than our
examples, and our methods for the automatic identification
of folds may serve as a starting point for the identification
of geological structures more broadly. Both methods could
in principle be extended to additional structures. Unsuper-
vised learning requires the explicit definition of a set of rules,
which is likely to grow highly complex as the variety of struc-
tures to be considered increases, although it may be possible
with the use of a geological ontology such as that of Brodaric
and Richard (2020). For example, our rules for finding re-
peated units on either side of a fold do not currently account
for faults, which may produce similar repetitions without a
fold (although the use of bedding orientation will help to rule
these out) or may break up the patterns indicative of fold-
ing. To include fault identification in the method, it would
therefore be necessary to define rules not only for identify-
ing faults but also for interactions between faults and folds.
With the supervised learning method, in contrast, it would
only be necessary to create training models involving both
faults and folds, which is quite doable with relatively sim-
ple geological modeling methods (e.g., Jessell et al., 2022);
to add an additional output class to the neural network for
identifying them; and to retrain the neural network with the
new training data. With the addition of further complica-
tions (e.g., unconformities, growth strata, intrusions, and salt
domes), defining explicit rules for all cases and their interac-
tions would grow even more difficult. A supervised, neural-
network-based method is, therefore, probably the simplest
option for generalization of the methods described here to
a wider range of geological structures, although both meth-
ods could in principle be generalized. A convolutional neural
network could also be trained to take additional image chan-
nels as input, which could allow for the joint interpretation
of map-view geophysical data (as in Guo et al., 2021) with
geological maps and digital elevation models. Another inter-
esting direction for future work could be to use a map view
of a scalar field produced by implicit geological modeling
software, such as map2loop (Jessell et al., 2021), as an input
to the convolutional neural network.
5 Conclusions
We have shown how both unsupervised and supervised ma-
chine learning methods can be used to detect folds on geolog-
ical maps, thus automating a process that traditionally relies
on a human interpreter with conceptual understanding of ge-
ological principles. Both methods prove reasonably capable,
although challenges remain. The unsupervised, clustering-
based method requires intelligent choices of clustering pa-
rameters by the user and in some cases produces overly angu-
lar or overly large estimates of the area of a fold, even when
the axis is better located. The supervised learning method is
more fully automated but can still have trouble in some cases,
in particular in misidentifying some topography-related pat-
terns as folds, as is the case on the Esternay map, and its
results are not easily explainable.
A particular issue that we have investigated is the ability of
machine learning to deal with topography in map interpreta-
tion. Topography significantly complicates the problem, and
in both methods we have developed it has been necessary
to include topographic information along with the geologic
map itself and to ensure that the machine learning method
makes use of it either through explicitly defined rules (in the
unsupervised case) or through examples (in the supervised
case).
Synthetic models were key to our use of supervised ma-
chine learning in this application, since without them it
would have been difficult to compile the large and diverse
training dataset needed for these methods. Our results have
shown a reasonable ability of the trained neural network to
extrapolate from synthetic models to real-world data. How-
ever, in regard to the relationship between map patterns and
topography, the trained model remains better at interpreting
synthetic models than real-world cases.
While we have focused our work on folds, we aim to de-
velop methods that can eventually be applied to the identifi-
cation of a wide range of geological structures. For the un-
supervised learning method, this could begin with the same
method of map sampling by rays that we have used here but
incorporate rules for identifying a wider variety of structures.
For the supervised learning method, the primary future need
is to build synthetic models that incorporate a greater variety
of labeled structures.
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 955
Appendix A: Description of the process for generating
synthetic models
Here we describe the process used for creating random geo-
logical models and resulting maps to train the convolutional
neural network. The randomly chosen parameters and the
probability distributions from which they are drawn are listed
in Table A1. The same process, without the random elements,
is also used to make the synthetic models in Figs. 2 and 6.
Models are built in a Cartesian (x, y , z) coordinate system,
where xis east, yis north, and zis up. The origin of each
model is set at the southwestern corner in xand yand at the
base of the stratigraphic column in z. We train the convolu-
tional neural network on raster images of 256×256 pixels. In
model coordinates, each pixel is given a size of 50m, which
is the same resolution as the digital elevation models we use
with the example real-world maps. This results in a model
grid of dimension 12 800m in the xand ydirections. The
pixel centers are placed at coordinates starting at 0 and end-
ing at 12 750m in each direction. The size of the model in the
vertical direction is variable and depends on the number and
thicknesses of units in the randomly generated stratigraphic
column and on the regional dip.
Each model initially consists of a succession of subhori-
zontal layers. The number of layers and the thickness of each
unit are both randomly chosen. A regional dip and dip di-
rection are also chosen. The dip and dip direction are the
same for all units. Thus, the unit tops are a series of parallel
planes, and one can easily calculate which two planes any
given (x, y, z) point is between and therefore which unit it is
in.
The basic fold shape is sinusoidal in both the along-axis
and axis-perpendicular directions. This is then further mod-
ified by parameters to specify asymmetry and sigmoidal
shape. The sigmoidal shape parameters are, however, only
used in making the sigmoidal fold example synthetic model
and are not used for generating the random models. The fold
style is similar folding with a vertical axial plane, so the de-
formation consists purely of uplift without horizontal motion
and is a function of xand ybut not z.
To calculate the fold-related uplift, we work in a rotated
coordinate system:
x0=(xxc)cos(v) (yyc)sin(v)
y0=(xxc)sin(v) +(yyc)cos(v), (A1)
where (x, y) is a position at which to calculate uplift, (xc, yc)
is the location of the center of the fold, and vis the fold
vergence direction as measured counterclockwise from the
xaxis. For simplicity, we use this angle rather than the az-
imuth as measured clockwise from north.
The size of the fold is defined by two wavelengths: λx,
which gives the wavelength in the direction perpendicular to
the fold axis, and λy, which gives the wavelength in the di-
rection parallel to the fold axis. If the fold is asymmetric, we
then calculate two additional wavelengths that are used for
the two sides of the fold in order to make it asymmetric:
λ1=2λx
1+1
a
,(A2)
λ2=2λx
1+a,(A3)
where the value of acontrols the asymmetry. If the fold is
not asymmetric, we set λ1=λ2=λx. We also calculate an
offset fold axis x0
ccoordinate:
x0
c=λ2λx
2.(A4)
If the fold has a sigmoidal shape, we calculate an x0
cthat is a
function of y0using the following equation:
x0
c=λ2λx
2+Aσ
1+ekσy0
sσ
Aσ
2.(A5)
In this equation, Aσis an amplitude term, kσis a steepness
parameter, and sσis a scale parameter for distance in the y0
direction. The first term of this equation is the asymmetry off-
set from above; the second term is a logistic function, which
produces the sigmoid shape; and the third term centers the
offset due to the logistic function so that it is 0 at y0=0.
With the wavelengths and fold axis defined, we calculate
uplift (Ufold) at each point (x0, y 0) as follows:
Ufold =
A1
21+cos2π(x0x0
c)
λi
1
21+cos2π(y0y0
c)
λy,r1
0, r > 1
,(A6)
where Ais the fold amplitude and ris defined as follows:
r=sx0x0
c
λi2
+y0y0
c
λy2
,(A7)
and
λi=λ1x0> x0
c
λ2x0x0
c.(A8)
If the model contains multiple folds, then the total uplift is
the sum of all their individual uplifts.
The model for synthetic faults is a simple vertical dip-slip
fault with an elliptical displacement field in the along-strike
direction, a constant displacement field in the vertical direc-
tion, and a volumetric displacement field that decreases away
from the fault (Cardozo et al., 2008). It is a simplification of
the method used by Wu et al. (2020). We begin by rotating
points from the map coordinates (x, y) to the rotated coordi-
nates (x0,y0) as in Eq. (A1), where vis now the fault strike
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
956 D. Oakley et al.: GEOMAPLEARN 1.2
Table A1. Random model parameters. U{a, b}indicates a discrete uniform distribution between aand b, inclusive of both aand b.U[a,b)
indicates a continuous uniform distribution between aand b, inclusive of abut not b.N(µ, σ ) indicates a normal distribution with mean, µ,
and standard deviation, σ. Finally, p(i) indicates the probability of the discrete value i.
Parameter Variable Distribution
Number of geological units U{5,25}
Thickness of each unit (m) U[50, 800)
Regional dip direction (°) U[0, 360)
Regional dip (°) N(0, 1)
Topography amplitude (m) U[100, 2000)
Uplift noise amplitude (m) A U[0, 100)
Uplift noise fraction (m) B U[0, 0.75)
Number of folds Nfolds p(0)=0.15, p(1)=0.425, p(2)=0.2975, p(3)=0.1275
Fold wavelength (m) λxU[1000, 6000)
Along-axis fold wavelength (m) λyU[5000, 20 000)
Fold amplitude A U [200, 250)
Fold vergence direction (°) v U[0, 360)
Fold center xcoordinate (m) xcU[50, 12 700)
Fold center ycoordinate (m) ycU[50, 12 700)
Fold asymmetry a N (0,0.3)
Number of faults Nfaults p(0)=0.5, p(1)=0.35, p(2)=0.105, p (3)=0.045
Fault length (m) L U[1500, 20 000)
Fault scaling exponent γ U[2, 0]
Fault strike (°) U[0, 360]
Rfraction of L U[0.2, 0.5]
Displacement asymmetry α U[0, 1]
Perlin noise octaves U[2, 8]
Perlin noise lacunarity U[1, 3]
Perlin noise persistence U[0, 1]
Perlin noise cell size (pixels) U[64, 512]
Percentile for Quaternary (%) U[0,25]
direction. We then calculate the distance in the strike direc-
tion from the fault center:
r=
x0
L
,(A9)
where Lis the fault length.
We then calculate displacement along the fault (d) as fol-
lows:
d=(2dmax (1r)q(1+r)2
4r2, r 1
0, r < 1,(A10)
where dmax is the maximum displacement. Equation (A10)
is a one-dimensional version of Eq. (6) of Wu et al. (2020).
When randomly choosing dmax, we calculate it from Las
follows:
dmax =10γL, (A11)
meaning that the randomly chosen value is γ, rather than
dmax directly, and it is chosen to be consistent with real-world
fault scaling (Cowie and Scholz, 1992).
With this, we calculate displacement away from the fault
(D), following Cardozo et al. (2008) as follows:
D=
d1|y0|
R2
,|y0|
R0
0,|y0|
R>0
,(A12)
where Ris the radius to which faulting extends. Ris ran-
domly chosen as a fraction of L.
Finally, we partition Dbetween the two sides of the fault
and calculate the total uplift as follows:
Ufault =αD, y 0>0
(α1)D y00,(A13)
where αcontrols the fraction of displacement in the hanging
wall vs. the footwall (or simply one side vs. the other for
these vertical faults).
To avoid over-fitting and to make the model more robust
to detecting folds that may not perfectly match our synthetic
fold shape, we add noise to the uplift. This noise takes the
following form:
Unoise =A n1+B U0n2,(A14)
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 957
where Aand Bare amplitude parameters that are randomly
chosen for each model, n1and n2are random numbers drawn
from a standard normal distribution at each pixel, and U0is
the uplift before adding the noise.
Topography is randomly created using Perlin noise with a
different random seed for each randomly generated map. In
addition to the random seed, the noise is controlled by four
parameters: the cell size, the number of octaves, the lacu-
narity, and the persistence. The cell size (in pixels) defines
the size of the grid cells used to generate Perlin noise and
controls the frequency of the noise, the number of octaves
is the number of successive levels of noise that are gener-
ated, the lacunarity controls how the frequency of the noise
changes with each octave, and the persistence controls how
the amplitude changes with each octave. Assuming that lacu-
narity is >1 and persistence is <1, successive octaves will
have higher frequency but lower amplitude, thus increasing
the level of small-scale detail in the topography with an in-
creasing number of octaves.
Since the Perlin noise function generates values between
1 and 1, it is then multiplied by a randomly chosen topo-
graphic amplitude. It is also centered so that the mean topog-
raphy is at 75 % of the pre-deformation vertical thickness of
the stratigraphic column.
For each model, a random number of folds (Nfolds) and
a random number of faults (Nfaults) are chosen along with
random values for all their parameters. The total uplift at each
(x, y) coordinate is the sum of the contributions of all folds
(Eq. A6), faults (Eq. A13), and noise (Eq. A14).
U(x, y)=
Nfolds
X
i=1
Ufold,i (x, y) +
Nfaults
X
j=1
Ufault,j (x, y )
+Unoise (x, y)(A15)
Since uplift is the only deformation in the models, we can
calculate the pre-deformational elevation of any point on the
map by subtracting the uplift from the elevation of the topog-
raphy at that point. With the pre-deformational elevation, we
determine which unit it is in based on the original stratigra-
phy.
Quaternary units, assigned a relative age of 0, are added
to the synthetic maps in the training dataset for the convolu-
tional neural network in order to train it to deal with these
units, which often cut across geological structure on real-
world maps. We randomly simulate these by creating a sec-
ond random Perlin noise field and assigning a Quaternary
unit to all pixels with a value above a certain percentile of
the values in this Perlin noise field. The percentile is ran-
domly varied so that some maps have more Quaternary de-
posits than others.
Code availability. The current version of the GE-
OMAPLEARN code is available for download on Git-
Lab at https://doi.org/10.18144/8aee-7b77 (Oakley, 2024a).
The specific version of the code used to produce the re-
sults described in this paper is archived on Zenodo at
https://doi.org/10.5281/zenodo.14154955 (Oakley, 2024b).
The code is distributed under a CeCILL-B free software license.
Data availability. The code and data necessary to repro-
duce all the results in this paper are provided as part of
the GEOMAPLEARN distribution in the Zenodo repository
(https://doi.org/10.5281/zenodo.14154955, Oakley, 2024).
Author contributions. DO: methodology, software, writing origi-
nal draft. CL: conceptualization, methodology, funding acquisition,
supervision, writing review and editing. TC: methodology, soft-
ware. VL: methodology, software, writing review and editing.
JPC: conceptualization, funding acquisition, supervision, writing
review and editing
Competing interests. The contact author has declared that none of
the authors has any competing interests.
Disclaimer. Publisher’s note: Copernicus Publications remains
neutral with regard to jurisdictional claims made in the text, pub-
lished maps, institutional affiliations, or any other geographical rep-
resentation in this paper. While Copernicus Publications makes ev-
ery effort to include appropriate place names, the final responsibility
lies with the authors.
Acknowledgements. We thank Guillaume Caumon and the two
anonymous reviewers for their helpful reviews, which have signifi-
cantly improved this paper.
Financial support. This research is funded by an inter-Carnot
grant (contract no. CONT-2021-0089) from the Carnot ISIFoR and
BRGM and was supported by E2S UPPA, the Total Structural geol-
ogy chair at UPPA (Jean-Paul Callot), and BRGM funding.
Review statement. This paper was edited by Mauro Cacace and re-
viewed by Guillaume Caumon and two anonymous referees.
References
Abadi, M., Agarwal, A., Barham, P., Brevdo, E., Chen, Z., Citro,
C., Corrado, G. S., Davis, A., Dean, J., Devin, M., Ghe-
mawat, S., Goodfellow, I., Harp, A., Irving, G., Isard, M.,
Jia, Y., Jozefowicz, R., Kaiser, L., Kudlur, M., Levenberg,
J., Mané, D., Monga, R., Moore, S., Murray, D., Olah, C.,
Schuster, M., Shlens, J., Steiner, B., Sutskever, I., Talwar, K.,
Tucker, P., Vanhoucke, V., Vasudevan, V., Viégas, F., Vinyals,
O., Warden, P., Wattenberg, M., Wicke, M., Yu, Y., Zheng,
X., and Google Research, TensorFlow: Large-scale machine
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
958 D. Oakley et al.: GEOMAPLEARN 1.2
learning on heterogeneous distributed systems, arXiv [preprint],
https://doi.org/10.48550/arXiv.1603.04467, 2015.
Aghaee, A., Shamsipour, P., Hood, S., and Haugaard, R.: A con-
volutional neural network for semi-automated lineament detec-
tion and vectorisation of remote sensing data using probabilis-
tic clustering: A method and a challenge, Comput. Geosci., 151,
104724, https://doi.org/10.1016/j.cageo.2021.104724, 2021.
Allmendinger, R. W.: GMDE: Extracting quantitative infor-
mation from geologic maps, Geosphere, 16, 1495–1507,
https://doi.org/10.1130/GES02253.1, 2020.
An, Y., Guo, J., Ye, Q., Childs, C., Walsh, J., and Dong, R.:
Deep convolutional neural network for automatic fault recogni-
tion from 3D seismic datasets, Comput. Geosci., 153, 104776,
https://doi.org/10.1016/j.cageo.2021.104776, 2021.
An, Y., Du, H., Ma, S., Niu, Y., Liu, D., Wang, J., Du, Y., Childs,
C., Walsh, J., and Dong, R.: Current state and future direc-
tions for deep learning based automatic seismic fault inter-
pretation: A systematic review, Earth-Sci. Rev., 243, 104509,
https://doi.org/10.1016/j.earscirev.2023.104509, 2023.
Bergen, K. J., Johnson, P. A., de Hoop, M. V, and
Beroza, G. C.: Machine learning for data-driven discov-
ery in solid Earth geoscience, Science, 363, eaau0323,
https://doi.org/10.1126/science.aau0323, 2019.
Bi, Z., Wu, X., Li, Z., Chang, D., and Yong, X.: Deep ISM-
Net: three-dimensional implicit structural modeling with con-
volutional neural network, Geosci. Model Dev., 15, 6841–6861,
https://doi.org/10.5194/gmd-15-6841-2022, 2022.
Bond, C. E.: Uncertainty in structural interpretation:
Lessons to be learnt, J. Struct. Geol., 74, 185–200,
https://doi.org/10.1016/j.jsg.2015.03.003, 2015.
Bond, C. E., Gibbs, A. D., Shipton, Z. K., and Jones,
S.: What do you think this is? “Conceptual uncer-
tainty” in geoscience interpretation, GSA Today, 17,
https://doi.org/10.1130/GSAT01711A.1, 2007.
Brandes, C. and Tanner, D. C.: Fault-related folding: A review of
kinematic models and their application, Earth-Sci. Rev., 138,
352–370, https://doi.org/10.1016/j.earscirev.2014.06.008, 2014.
Bressan, T. S., de Souza, M. K., Girelli, T. J., and Chemale Junior,
F.: Evaluation of machine learning methods for lithology classi-
fication using geophysical data, Comput. Geosci., 139, 104475,
https://doi.org/10.1016/j.cageo.2020.104475, 2020.
Breunig, M. M., Kriegel, H.-P., Ng, R. T., and Sander, J.: LOF:
identifying density-based local outliers, in: Proceedings of the
2000 ACM SIGMOD international conference on Management
of data, Association for Computing Machinery, New York, NY,
USA, 93–104, https://doi.org/10.1145/342009.335388, 2000.
BRGM: Bureau de Recherches Géologiques
et Minières, BD Charm-50, infoTerre,
http://infoterre.brgm.fr/formulaire/telechargement-cartes-
geologiques-departementales-150-000-bd-charm-50, last access:
3 July 2024.
Brodaric, B. and Richard, S. M.: The GeoScience Ontology, Ameri-
can Geophysical Union, Fall Meeting 2020, Abstract #IN030-07,
2020.
Caumon, G., Gray, G., Antoine, C., and Titeux, M.-O.:
Three-dimensional implicit stratigraphic model building
from remote sensing data on tetrahedral meshes: Theory
and application to a regional model of La Popa Basin,
NE Mexico, IEEE T. Geosci. Remote, 51, 1613–1621,
https://doi.org/10.1109/TGRS.2012.2207727, 2013.
Campello, R. J. G. B., Moulavi, D., and Sander, J.: Density-
Based Clustering Based on Hierarchical Density Estimates, in:
Pacific-Asia Conference on Knowledge Discovery and Data
Mining, Springer, 160–172, https://doi.org/10.1007/978-3-642-
37456-2_14, 2013.
Campello, R. J. G. B., Moulavi, D., Zimek, A., and Sander, J.:
Hierarchical density estimates for data clustering, visualiza-
tion, and outlier detection, ACM T. Knowl. Discov. D., 10, 5,
https://doi.org/10.1145/2733381, 2015.
Cardozo, N., Røe, P., Soleng, H. H., Fredman, N., Tveranger, J., and
Schueller, S.: A methodology for efficiently populating faulted
corner point grids with strain, Petrol. Geosci., 14, 205–216,
https://doi.org/10.1144/1354-079308-738, 2008.
Carneiro, C. D. C., Fraser, S. J., Crósta, A. P., Silva, A.
M., and Barros, C. E. D. M.: Semiautomated geologi-
cal mapping using self-organizing maps and airborne geo-
physics in the Brazilian Amazon, Geophysics, 77, K17–K24,
https://doi.org/10.1190/GEO2011-0302.1, 2012.
Chollet, F. and Keras Team: Keras, https://github.com/keras-team/
keras (last access: 21 December 2023), 2015.
Cowie, P. and Scholz, C.: Displacement-length scaling relation-
ship for faults: data synthesis and discussion, J. Struct. Geol.,
14, 1149–1156, https://doi.org/10.1016/0191-8141(92)90066-6,
1992.
Clevert, D.-A., Unterthiner, T., and Hochreiter, S.: Fast
and accurate deep network learning by exponential lin-
ear unit (ELUs), Proceedings of the International Con-
ference on Learning Representations, arXiv [preprint],
https://doi.org/10.48550/arXiv.1511.07289, 2015.
Cracknell, M. J. and Reading, A. M.: The upside of uncer-
tainty: Identification of lithology contact zones from air-
borne geophysics and satellite data using random forests and
support vector machines, Geophysics, 78, WB113–WB126,
https://doi.org/10.1190/GEO2012-0411.1, 2013.
Cracknell, M. J. and Reading, A. M.: Geological mapping using
remote sensing data: A comparison of five machine learning al-
gorithms, their response to variations in the spatial distribution of
training data and the use of explicit spatial information, Comput.
Geosci. 63, 22–33, https://doi.org/10.1016/j.cageo.2013.10.008,
2014.
Cunha, A., Pochet, A., Lopes, H., and Gattass, M.: Seis-
mic fault detection in real data using transfer learning
from a convolutional neural network pre-trained with
synthetic seismic data, Comput. Geosci., 135, 104344,
https://doi.org/10.1016/j.cageo.2019.104344, 2020.
Erwig, M. and Gopinath, R.: Explanations for Regular Expressions,
in: Fundamental Approaches to Software Engineering, 7212,
edited by: de Lara, J. and Zisman, A., Springer, Berlin, Hei-
delberg, Germany, 394–408, https://doi.org/10.1007/978-3-642-
28872-2_27, 2012.
Ester, M., Kriegel, H. P., Sander, J., and Xu, X.: A Density-Based
Algorithm for Discovering Clusters in Large Spatial Databases
with Noise, in: Proceedings of the 2nd International Conference
on Knowledge Discovery and Data Mining, Portland, OR, AAAI
Press, 226–231, ISBN 9781577350040, 1996.
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
D. Oakley et al.: GEOMAPLEARN 1.2 959
Fernández, O.: Obtaining a best fitting plane through
3D georeferenced data, J. Struct. Geol., 27, 855–858,
https://doi.org/10.1016/j.jsg.2004.12.004, 2005.
Fossen, H.: Structural Geology, 1st Edn., Cambridge University
Press, ISBN 978-0-521-51664-8, 2010.
Gao, K., Huang, L., Zheng, Y., Lin, R., Hu, H., and Cladohous,
T.: Automatic fault detection on seismic images using a mul-
tiscale attention convolutional neural network, Geophysics, 87,
N13–N29, https://doi.org/10.1190/GEO2020-0945.1, 2022.
Georgsen, F., Røe, P., Syversveen, A. R., and Lia, O.: Fault dis-
placement modelling using 3D vector fields, Comput. Geosci.,
16, 247–259, https://doi.org/10.1007/s10596-011-9257-z, 2012.
Géron, A.: Hands-on machine learning with Scikit-Learn,
Keras & TensorFlow, 3rd Edn, O’Reilly Media, Inc, ISBN
9781098125974, 2023.
Gillfeather-Clark, T. and Smith, L.: Machine Learning for Land
Classification A SOM Case Study of Broken Hill, in: The 13th
SEGJ International Symposium, Tokyo, Japan, 12–14 November
2018, 534–537, https://doi.org/10.1190/SEGJ2018-138.1, 2018.
Gillies, S., van der Wel, C., Van den Bossche, J., Taves, M. W.,
Arnott, J., Ward, B. C., and others: Shapely (2.0.2), Zenodo
[code], https://doi.org/10.5281/zenodo.8436711, 2023.
Gorzałczany, M. B. and Rudzinski, F.: Generalized self-organizing
maps for automatic determination of the number of clusters and
their multiprototypes in cluster analysis, IEEE T. Neural Networ.,
29, 2833–2845, https://doi.org/10.1109/TNNLS.2017.2704779,
2018.
Grool, A. R., Ford, M., Vergés, J., Huismans, R. S., Christophoul,
F., and Dielforder, A.: Insights into the crustal-scale dynamics
of a doubly vergent orogen from a quantitative analysis of its
forelands: A case study of the Eastern Pyrenees, Tectonics, 37,
450–476, https://doi.org/10.1002/2017TC004731, 2018.
Grose, L., Ailleres, L., Laurent, G., Armit, R., and Jessell, M.: Inver-
sion of geological knowledge for fold geometry, J. Struct. Geol.,
119, 1–14, https://doi.org/10.1016/j.jsg.2018.11.010, 2019.
Guo, J., Li, Y., Jessell, M. W., Giraud, J., Li, C., Wu, L., Li, F., and
Liu, S.: 3D geological structure inversion from Noddy-generated
magnetic data using deep learning methods, Comput. Geosci.,
149, 104701, https://doi.org/10.1016/j.cageo.2021.104701,
2021.
Hillier, M., Wellmann, F., Brodaric, B., de Kemp, E., and Schet-
selaar, E.: Three-dimensional structural geological modeling
using graph neural networks, Math. Geosci., 53, 1725–1749,
https://doi.org/10.1007/s11004-021-09945-x, 2021.
Hillier, M., Wellmann, F., de Kemp, E. A., Brodaric, B., Schetse-
laar, E., and Bédard, K.: GeoINR 1.0: an implicit neural network
approach to three-dimensional geological modelling, Geosci.
Model Dev., 16, 6987–7012, https://doi.org/10.5194/gmd-16-
6987-2023, 2023.
Huang, J.-C., Li, A.-B., Wang, X., Shao, C.-Z., and Shen,
Y.-G.: Automated identification and mapping of geologi-
cal folds in cross sections, Open Geosci., 15, 20220479,
https://doi.org/10.1515/geo-2022-0479, 2023.
Ichoku, C., Chorowicz, J., and Parrot, J.-F.: Computerized con-
struction of geological cross sections from digital maps,
Comput. Geosci., 20, 1321–1327, https://doi.org/10.1016/0098-
3004(94)90057-4, 1994.
IGN: Institut National de l’Information Géographique et Forestière,
BD ALTI®25M, IGN [data set], https://geoservices.ign.fr/bdalti,
last access: 4 July 2024.
Jessell, M., Ogarko, V., de Rose, Y., Lindsay, M., Joshi, R.,
Piechocka, A., Grose, L., de la Varga, M., Ailleres, L., and Pirot,
G.: Automated geological map deconstruction for 3D model
construction using map2loop 1.0 and map2model 1.0, Geosci.
Model Dev., 14, 5063–5092, https://doi.org/10.5194/gmd-14-
5063-2021, 2021.
Jessell, M., Guo, J., Li, Y., Lindsay, M., Scalzo, R., Giraud, J., Pirot,
G., Cripps, E., and Ogarko, V.: Into the Noddyverse: a mas-
sive data store of 3D geological models for machine learning
and inversion applications, Earth Syst. Sci. Data, 14, 381–392,
https://doi.org/10.5194/essd-14-381-2022, 2022.
Jordahl, K., Van den Bossche, J., Fleischmann, M., McBride, J.,
Wasserman, J., Richards, M., Garcia Badaracco, A., Snow, A. D.,
Gerard, J., Tratner, J., Perry, M., Ward, B., Farmer, C., Hjelle,
G. A., Taves, M., ter Hoeven, E., Cochran, M., rraymondgh,
Gillies, S., Caria, G., Culbertson, L., Bartos, M., Eubank, N.,
Bell, R., sangarshanan, Flavin, J., Rey, S., maxalbert, Bilogur,
A., and Ren, C.: geopandas/geopandas: v0.12.2 (v0.12.2), Zen-
odo [code], https://doi.org/10.5281/zenodo.7422493, 2022.
Kingma, D. P. and Ba, J. L.: Adam: A method
for stochastic optimization, arXiv [preprint],
https://doi.org/10.48550/arXiv.1412.6980, 2014.
Kohonen, T.: Self-organized formation of topologically correct fea-
ture maps, Biol. Cybern., 43, 59–69, 1982.
Kuhn, S., Cracknell, M. J., and Reading, A. M.: Lithologic
mapping using random forests applied to geophysical and
remote-sensing data: A demonstration study from the East-
ern Goldfields of Australia, Geophysics, 83, B183–B193,
https://doi.org/10.1190/GEO2017-0590.1, 2018.
Laurent, G., Ailleres, L., Grose, L., Caumon, G., Jessell,
M., and Armit, R.: Implicit modeling of folds and over-
printing deformation, Earth Planet Sc. Lett., 456, 26–38,
https://doi.org/10.1016/j.epsl.2016.09.040, 2016.
Li, A.-B., Chen, Y., Lü, G.-N., and Zhu, A.-X.: Auto-
matic detection of geological folds using attributed relational
graphs and formal grammar, Comput. Geosci., 127, 75–84,
https://doi.org/10.1016/j.cageo.2019.03.006, 2019.
Loiselet, C., Bellier, C., Lopez, S., and Courrioux, G.: Storing and
delivering numerical geological models on demand for everyday
Earth Sciences applications, Presented at the 35th International
Geological Congress, Cape Town, South Africa, Paper Number:
5261, 2016.
Malzer, C. and Baum, M.: A hybrid approach to hierarchi-
cal density-based cluster selection, in: 2020 IEEE Inter-
national Conference on Multisensor Fusion and Integration
for Intelligent Systems (MFI), Karlsruhe, Germany, 223–228,
https://doi.org/10.1109/MFI49285.2020.9235263, 2020.
Marjoribanks, R.: Geological methods in mineral exploration and
mining: Second Edition, Springer Heidelberg, Dordrecht, Lon-
don, New York, 238 pp., https://doi.org/10.1007/978-3-540-
74375-0, 2010.
McInnes, L., Healy, J., and Astels, S.: Hdbscan: Hierarchi-
cal density based clustering, J. Open Source Softw., 2, 205,
https://doi.org/10.21105/joss.00205, 2017.
Middleton, M., Schnur, T., Sorjonen-Ward, P., and Hyvönen, E.:
Geological lineament interpretation using the object-based im-
https://doi.org/10.5194/gmd-18-939-2025 Geosci. Model Dev., 18, 939–960, 2025
960 D. Oakley et al.: GEOMAPLEARN 1.2
age analysis approach: Results of semi-automated analyses ver-
sus visual interpretation, Geol. S. Finl., 57, 135–154, 2015.
Muller, A. P. O., Costa, J. C., Bom, C. R., Faria, E. L., Klatt, M.,
Teixeira, G., de Albuquerque, M. P., and de Albuquerque, M.
P.: Complete identification of complex salt geometries from in-
accurate migrated subsurface offset gathers using deep learning,
Geophysics, 87, R453–R463, https://doi.org/10.1190/GEO2021-
0586.1, 2022.
Nabavi, S. T. and Fossen, H.: Fold geometry and
folding a review, Earth-Sci. Rev., 222, 103812,
https://doi.org/10.1016/j.earscirev.2021.103812, 2021.
Oakley, D.: GEOMAPLEARN, GitLab [code],
https://doi.org/10.18144/8aee-7b77, 2024a.
Oakley, D.: GEOMAPLEARN (1.2), Zenodo [code],
https://doi.org/10.5281/zenodo.14154955, 2024b.
Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B.,
Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V.,
Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot,
M., and Duchesnay, É.: Scikit-learn: Machine learning in Python,
J. Mach. Learn. Res., 12, 2825–2830, 2011.
Perlin, K.: An image synthesizer, ACM SIGGRAPH Computer
Graphics, 19, 287–296, https://doi.org/10.1145/325165.325247,
1985.
Ronneberger, O., Fischer, P., and Brox, T.: U-Net: Convolu-
tional networks for biomedical image segmentation, in: Med-
ical Image Computing and Computer-Assisted Intervention–
MICCAI 2015: 18th International Conference, Munich, Ger-
many, 5–9 October 2015, Proceedings, Part III, 18, 234–241,
https://doi.org/10.1007/978-3-319-24574-4_28, 2015.
Rose, T. J. and Bakaoukas, A. G.: Algorithms and approaches for
procedural terrain generation A Brief Review of Current Tech-
niques, in: 2016 8th International Conference on Games and
Virtual Worlds for Serious Applications (VS-GAMES), IEEE,
https://doi.org/10.1109/VS-GAMES.2016.7590336, 2016.
Shi, Y., Wu, X., and Fomel, S.: SaltSeg: Automatic 3D salt seg-
mentation using a deep convolutional neural network, Inter-
pretation, 7, SE113–SE122, https://doi.org/10.1190/INT-2018-
0235.1, 2019.
Souquet, P., Peybernès, B., Bilotte, M., Bousquet, J.-P., Ciszak, R.,
Marty, F., Tambarreau, Y., Villatte, J., and Cosson, J.: France Bu-
reau de recherches géologiques et minières, Carte géologique de
la France à 1/50 000, 1076, Lavelanet, ISBN 978-2-7159-3853-3,
1984.
Vasuki, Y., Holden, E.-J., Kovesi, P., and Micklethwaite, S.: Semi-
automatic mapping of geological structures using UAV-based
photogrammetric data: An image analysis approach, Comput.
Geosci., 69, 22–32, https://doi.org/10.1016/j.cageo.2014.04.012,
2014.
Walsh, J. J. and Watterson, J.: Distributions of cumulative dis-
placement and seismic slip on a single normal fault surface,
J. Struct. Geol., 9, 1039–1046, https://doi.org/10.1016/0191-
8141(87)90012-5, 1987.
Wang, H., Wellmann, J. F., Li, Z., Wang, X., and Liang, R. Y.: A
segmentation approach for stochastic geological modeling us-
ing hidden Markov random fields, Math. Geosci., 49, 145–177,
https://doi.org/10.1007/s11004-016-9663-9, 2017.
Wang, S., Cai, Z., Si, X., and Cui, Y.: A three-dimensional
geological structure modeling framework and its applica-
tion in machine learning, Math. Geosci., 55, 163–200,
https://doi.org/10.1007/s11004-022-10027-9, 2023.
Wellmann, J. F., Lindsay, M., Poh, J., and Jessell, M.: Validat-
ing 3-D structural models with geological knowledge for im-
proved uncertainty evaluations, Enrgy. Proced., 59, 374–381,
https://doi.org/10.1016/j.egypro.2014.10.391, 2014.
Wu, X., Liang, L., Shi, Y., and Fomel, S.: FaultSeg3D: Using syn-
thetic data sets to train an end-to-end convolutional neural net-
work for 3D seismic fault segmentation, Geophysics, 84, IM35–
IM45, https://doi.org/10.1190/geo2018-0646.1, 2019.
Wu, X., Geng, Z., Shi, Y., Pham, N., Fomel, S., and Caumon, C.:
Building realistic structure models to train convolutional neural
networks for seismic structural interpretation, Geophysics, 85,
WA27–WA39, https://doi.org/10.1190/GEO2019-0375.1, 2020.
Yang, Z., Chen, Q., Cui, Z., Liu, G., Dong, S., and Tian, Y.: Au-
tomatic reconstruction method of 3D geological models based
on deep convolutional generative adversarial networks, Com-
put. Geosci., 26, 1135–1150, https://doi.org/10.1007/s10596-
022-10152-8, 2022.
Geosci. Model Dev., 18, 939–960, 2025 https://doi.org/10.5194/gmd-18-939-2025
ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
Implicit neural representation (INR) networks are emerging as a powerful framework for learning three-dimensional shape representations of complex objects. These networks can be used effectively to model three-dimensional geological structures from scattered point data, sampling geological interfaces, units, and structural orientations. The flexibility and scalability of these networks provide a potential framework for integrating many forms of geological data and knowledge that classical implicit methods cannot easily incorporate. We present an implicit three-dimensional geological modelling approach using an efficient INR network architecture, called GeoINR, consisting of multilayer perceptrons (MLPs). The approach expands on the modelling capabilities of existing methods using these networks by (1) including unconformities into the modelling; (2) introducing constraints on stratigraphic relations and global smoothness, as well as associated loss functions; and (3) improving training dynamics through the geometrical initialization of learnable network variables. These three enhancements enable the modelling of more complex geology, improved data fitting characteristics, and reduction of modelling artifacts in these settings, as compared to an existing INR approach to structural geological modelling. Two diverse case studies also are presented, including a sedimentary basin modelled using well data and a deformed metamorphic setting modelled using outcrop data. Modelling results demonstrate the method's capacity to fit noisy datasets, use outcrop data, represent unconformities, and efficiently model large geographic areas with relatively large datasets, confirming the benefits of the GeoINR approach.
Article
Full-text available
Cross sections carry information on the spatial distribution of rock strata and the development of geological structures, and it is an important data source for three-dimensional (3D) geological modeling. However, the interpretation and mapping of geological structures in sections by means of manual interpretation are inefficient and costly, and the performance varies greatly with the experts’ ability and experience. The objective of this article is to develop an automatic recognition and mapping method for folds in cross sections. This method mainly includes identifying folds based on stratigraphic sequence characteristics (symmetrical and repetitive), classifying fold types based on geometric attributes of folds (interval scheduling, strike, and section morphology), optimizing strata based on the superposition principle and area conservation principle, and constructing the polygon features of folds. Based on experiments in the Parallel Fold Belt of Eastern Sichuan and the central Appalachian fold-thrust belt in the Appalachian Mountains, the method presented in this article can effectively be used for automatic recognition and high-quality mapping of folds in the cross sections. The method provides a good source of geological cross-sectional data for the 3D modeling of geologic bodies.
Article
Full-text available
Implicit structural modeling using sparse and unevenly distributed data is essential for various scientific and societal purposes, ranging from natural source exploration to geological hazard forecasts. Most advanced implicit approaches formulate structural modeling as least squares minimization or spatial interpolation, using various mathematical methods to solve for a scalar field that optimally fits all the inputs under an assumption of smooth regularization. However, these approaches may not reasonably represent complex geometries and relationships of structures and may fail to fit a global structural trend when the known data are too sparse or unevenly distributed. Additionally, solving a large system of mathematical equations with iterative optimization solvers could be computationally expensive in 3-D. To deal with these issues, we propose an efficient deep learning method using a convolution neural network to create a full structural model from the sparse interpretations of stratigraphic interfaces and faults. The network is beneficial for the flexible incorporation of geological empirical knowledge when trained by numerous synthetic models with realistic structures that are automatically generated from a data simulation workflow. It also presents an impressive characteristic of integrating various types of geological constraints by optimally minimizing a hybrid loss function in training, thus opening new opportunities for further improving the structural modeling performance. Moreover, the deep neural network, after training, is highly efficient for the generation of structural models in many geological applications. The capacity of our approach for modeling complexly deformed structures is demonstrated by using both synthetic and field datasets in which the produced models can be geologically reasonable and structurally consistent with the inputs.
Article
Full-text available
Delimiting salt inclusions from migrated images is a time-consuming activity that relies on highly human-curated analysis and is subject to interpretation errors or limitations of the methods available. We propose to use migrated images produced from an inaccurate velocity model (with a reasonable approximation of sediment velocity, but without salt inclusions) to predict the correct salt inclusions shape using a Convolutional Neural Network (CNN). Our approach relies on subsurface Common Image Gathers to focus the sediments' reflections around the zero offset and to spread the energy of salt reflections over large offsets. Using synthetic data, we trained a U-Net to use common-offset subsurface images as input channels for the CNN and the correct salt-masks as network output. The network learned to predict the salt inclusions masks with high accuracy; moreover, it also performed well when applied to synthetic benchmark data sets that were not previously introduced. Our training process tuned the U-Net to successfully learn the shape of complex salt bodies from partially focused subsurface offset images.
Article
Full-text available
How to reconstruct a credible three-dimensional (3D) geological model from very limited survey data, e.g. boreholes, outcrop, and two-dimensional (2D) images, is challenging in the field of 3D geological modeling. Against the limitations of the huge computational consumption and complex parameterization of geostatistics-based stochastic simulation methods, we propose an automatic reconstruction method of 3D geological models based on deep convolutional generative adversarial network (DCGAN). In this work, 2D geological sections are used as conditioning data to generate 3D geological models automatically. Various realizations can be reproduced under a same DCGAN model established through deep network training. A U-Net structure is used to enhance the fitting effect of the DCGAN model. In addition, joint loss functions are exploited to increase the similarity between 3D realizations and reference models. Three synthetic datasets were used to verify the capability of the method presented in this paper. Experimental results show that the proposed 3D automatic reconstruction method based on DCGAN can capture the features, trends and spatial patterns of geological structures well. The output models obey the used conditioning data. The complex heterogeneous structures are reconstructed more accurately and quickly by using the proposed method.
Article
Full-text available
Unlike some other well-known challenges such as facial recognition, where machine learning and inversion algorithms are widely developed, the geosciences suffer from a lack of large, labelled data sets that can be used to validate or train robust machine learning and inversion schemes. Publicly available 3D geological models are far too restricted in both number and the range of geological scenarios to serve these purposes. With reference to inverting geophysical data this problem is further exacerbated as in most cases real geophysical observations result from unknown 3D geology, and synthetic test data sets are often not particularly geological or geologically diverse. To overcome these limitations, we have used the Noddy modelling platform to generate 1 million models, which represent the first publicly accessible massive training set for 3D geology and resulting gravity and magnetic data sets (10.5281/zenodo.4589883, Jessell, 2021). This model suite can be used to train machine learning systems and to provide comprehensive test suites for geophysical inversion. We describe the methodology for producing the model suite and discuss the opportunities such a model suite affords, as well as its limitations, and how we can grow and access this resource.
Article
Full-text available
Our understanding of folds and folding builds on detailed geometrical analysis. Proper description of folds and their relation to other structures such as fractures, cleavage and lineations form, together with physical and numerical modelling, the foundation for linking folds to stress, strain, kinematics, mechanics, and underlying tectonic processes. A large number of classification schemes and approaches have accumulated over the past century or so, and this overview critically consider a substantial portion of these schemes together with models for fold formation. We find folds and folding to be sensitive to many different factors, including material properties, layer thickness, mechanical anisotropy, boundary conditions, initial layer orientation, structural interaction between propagating folds or adjacent layers, inherited fracture and fault structures, deformation mechanisms, temperature, and confining pressure. However, there is no strong relationship between fold geometry and depth of formation, since microscale deformation mechanism are of limited importance in this regard. For this reason, the geometric relations explored in clay/sandbox experiments are directly applicable to folds formed under metamorphic conditions by crystal-plastic mechanisms. The most fundamental distinction of folds is probably that of passive versus active folding. Passive folding, where viscosity contrasts are small or neglectable, is well understood and simple to model. Active folding, where fold nucleation and amplification is controlled by contrasts in viscosity or strength, is more complicated, and future work should focus on experimental and numerical modelling of well-defined examples of active fold geometries observed in rocks. In addition, the concept of bending, which can include both passive and active elements, is useful to maintain. Active and passive folding reflect rheology and strain, but do not directly relate to tectonic regime. Information about tectonic regime must come from other sources of information, but when known, fold analysis can be applied to characterize and quantify the deformation in that regime. Future work should focus on integrating field-based observations, sub-surface data sets, and 3D numerical modelling of folds in different model configurations (number of layers, layer thicknesses, type of perturbation and its amplitude in the layer interface, type of contact between interacting layers such as free-slip and or no-slip interfaces), different geological and tectonic settings (i.e., the type of applied boundary conditions and also in the form of displacement-based and strain-rate-based boundaries) and, different mechanical properties or stratigraphy.
Article
Three-dimensional geological structure analysis is fundamental to geoscientific research. With the application of artificial intelligence in geological structure analysis, deep learning methods raise the demand for diversity in labeled structural learning sets. To improve the generalizability and flexibility of the training sets, a three-dimensional structural modeling framework is established in this paper. Firstly, the three-dimensional fold pattern is approached by the Fourier series and Gaussian equation. Secondly, to supplement the deficiency of the stochastic simulation algorithm in simulating listric faults, an ellipsoidal surface method with random perturbation is established. Thirdly, the near-field displacement of oblique-slip faults is modeled under the assumption of rotational consistency. Finally, the fault drag is defined by the magnitude and direction of near-field displacement and the drag radius. By randomly combining parameters in some predefined ranges, the proposed modeling framework can automatically construct numerous structural models with rich geological information. To validate the applicability of the proposed modeling framework, the generated models are used as learning sets to train a U-shaped fully convolutional neural network. Experiments using synthetic and field seismic data for fault interpretation show that the trained network based on the proposed modeling framework can provide better fault interpretation results compared to conventional algorithms. These results show that the proposed geological models have better generalizability and can effectively improve the applicability of machine learning.
Article
High-fidelity fault detection on seismic images is one of the most important and challenging topics in the field of automatic seismic interpretation. Conventional hand-picking-based and semi-human-intervened fault detection approaches are being replaced by fully automatic methods thanks to the development of machine learning. We develop a novel multiscale attention convolutional neural network (MACNN for short) to improve machine-learning-based automatic end-to-end fault detection on seismic images. The most important characteristics of our MACNN fault detection method is that it employs a multiscale spatial-channel attention mechanism to merge and refine encoder feature maps of different spatial resolutions. The new architecture enables our MACNN to more effectively learn and exploit contextual information embedded in the encoder feature maps. We demonstrate through several synthetic data and field data examples that our MACNN tends to produce higher-resolution, higher-fidelity fault maps from complex seismic images compared with the conventional fault-detection convolutional neural network, thus leading to improved geological fidelity and interpretability of detected faults.