Geometallurgy can be referred to as the establishment of a link between geology and downstream processes with the aim to maximize economical value, reduce production risks, and guide the managerial decision-making process (Dominy et al. 2018; Lishchuk et al. 2020). A geometallurgical program is undertaken by creating a spatial model of the orebody that predicts how each ore block behaves in a mineral processing circuit (Lund et al. 2013; Aasly and Ellefmo 2014). Such predictive models require the establishment of a link between the ore properties (mineralogy and textures) to the process outputs, which can be done by geometallurgical tests (Mwanga et al. 2017; Lishchuk et al. 2019) or predictive process models (Koch et al. 2019).

The importance of mineral textures in relation to the mineral processing behavior of different ore samples has been underlined by several researchers (Lund et al. 2015; Tungpalan et al. 2015; Pérez-Barnuevo et al. 2018a). For example, the information about grain size can be used to predict target liberation size of the minerals of interest (Vizcarra et al. 2010; Evans et al. 2015). Textural patterns of the minerals in an ore have been shown to affect leaching (Ghorbani et al. 2011; Fagan-Endres et al. 2017), flotation process (Tungpalan et al. 2015), comminution (Little et al. 2016), and sintering (Donskoi et al. 2016).

Geologists have commonly used qualitative textural descriptors to describe different drill core samples. This practice imposes some limitations on the use of such textural descriptors in geometallurgy, as it is subject to human bias (Bonnici et al. 2008; Vos 2017). When it comes to geometallurgy, the integration of textural information to predictive process models requires the texture information to be free of any subjectivity, which then necessitates the use of computer vision to obtain quantifiable textural descriptors from the ore sample (Pérez-Barnuevo et al. 2018b).

Lobos et al. (2016) categorized mineral texture as two distinct types: structural and stationary textures. Structural textures refer to grain size, shape, and orientation in the ore samples. Stationary textures then describe the spatial distribution or the pattern of the mineral grains in the ore sample. The quantification of grain size has been presented elsewhere (Evans et al. 2015; Reyes et al. 2017), while shape analysis has mostly been done for particulate samples with relation to comminution process (Little et al. 2016, 2017). On the other hand, the quantification of stationary textures has been mostly conducted with the help of computer vision to recognize the textural pattern of the ores (Donskoi et al. 2007; Nguyen 2013; Pérez-Barnuevo et al. 2013; Pérez-Barnuevo et al. 2018b; Koch et al. 2019). Most of the stationary textural analysis studies utilized 2D computer vision techniques, which is limited by stereological error (Lätti and Adair 2001; Pirard et al. 2007). This created the need for 3D texture quantification methods that are not subject to stereological error.

Over the last decades, the development of X-ray microcomputed tomography (µCT) in the field of geosciences has received wide attention. The advantage of a µCT system lies in its ability to analyze the 3D interior of a sample in a non-destructive manner. Many studies have utilized µCT to extract various ore properties such as grain surface exposure (Miller et al. 2003; Wang et al. 2017; Reyes et al. 2018), structural textures (size and shape) (Lin and Miller 2005; Evans et al. 2015), porosity (Peng et al. 2011), mineralogy and mineral liberation (Reyes et al. 2017; Guntoro et al. 2019b; Ueda 2019), and stationary textures (Jardine et al. 2018; Voigt et al. 2019). Beside for research purposes, the use of µCT has also been explored for industrial cases in mine sites, particularly with the development of 3D drill core scanning machines such as Orexplore GeoCore X10 (Bergqvist et al. 2019).

The potential application of µCT systems in quantitative analysis of stationary textures in drill core samples has been initially studied by Becker et al. (2016) and Jardine et al. (2018). They used one of the popular methods in 2D texture analysis, namely gray-level co-occurrence matrices (GLCM) and extended this method in 3D. They showed that such method is able to capture the changes in mineralogy and stationary textures in three different types of Ni–Cu sulfide drill cores. Voigt et al. (2019) then developed the method further by including the rock strength information in the textural descriptors.

Expanding further the research topics of 3D textural quantification of drill cores, this current study attempts to explore some other 2D texture analysis methods and extend them for stationary texture analysis in 3D. The potential use of association indicator matrix (AIM) developed in 2D by Lund et al. (2015) and Parian et al. (2018) as a 3D textural descriptor for stationary textures in drill core samples is evaluated in this study. Besides AIM, the study also evaluates the popular texture analysis method of local binary pattern (LBP) (Ojala et al. 2002) as a method for quantifying stationary textures in 3D drill core images. Furthermore, this study examines the potential use of such textural descriptors for automated classification of drill core textures using machine learning classification models such as support vector machines (SVM) (Vapnik et al. 1995) and random forest (RF) (Breiman 2001). Such quantification and classification approach attempts to analyze the uniqueness of the textural descriptors in describing different drill core textures, and whether different types of stationary textures can readily be discriminated using such textural descriptors.

Materials and Methods

In this section, some qualitative texture descriptions of the drill core samples are provided. Further, the methodology used for 3D image acquisition and image analysis is also explained.

Drill Core Samples

The drill core samples were obtained from Garpenberg mine in Sweden, located approximately 180 km northwest of Stockholm. The deposit is described as massive sulfide deposits containing Zn, Pb, Ag, Cu, and Au (Bindler et al. 2017). The deposit is currently owned and operated by Boliden AB. Major sulfide and oxide minerals include sphalerite, galena, pyrite, pyrrhotite, chalcopyrite, and magnetite. Some silver bearing minerals such as freibergite and dyscrasite also exist in trace amount (Tiu et al. 2019).

The drill core samples used in this study are shown in Figure 1. The drill core samples consisted of half-cores with around 4 cm diameter and around 20–25 cm length. These drill core samples have been logged and classified with respect to their mineralization types (Tiu et al. 2020): (a) skarn-hosted sulfide mineralization, (b) footwall disseminated mineralization, and (c) shear zone mineralization. The relevant textural classes for these particular drill core samples are described in Table 1.

Figure 1
figure 1

Drill core samples analyzed in this study. Sample A—tremolite-bearing skarn. Sample B—mica schist. Sample C—talc-bearing ore. Sample C in this figure is broken into two parts

Table 1 Mineralogy and textural characteristics of the samples (Tiu et al. 2020)

X-ray Microcomputed Tomography (µCT)

The fundamental principle of µCT measurement is that it records the differences in X-ray attenuation of the material. As the X-ray beam passes through the material, a proportion of the X-ray interacts with the material, thereby decreasing the intensity of (attenuating) the X-ray. The X-ray attenuation is dependent on the material’s density and composition as well as the energy of the X-ray itself. The differences in the attenuation are represented in the varying grayscale levels of the voxels (volume elements) in the reconstructed slice images, with more attenuating materials having brighter grayscales. In the case of drill core imaging, the grayscale levels can give some information about the various mineral phases present in the drill core. Further analysis of these grayscale levels could then reveal some idea about mineralogy and textures of the drill core.

In this study, GE phoenix v|tome|x s at Geological Survey of Finland (GTK) was used as the µCT scanner. The scanning conditions are summarized in Table 2. Samples A and B were scanned together, and sample C was scanned together with another half-core not included in this study. Due to the size and density of the drill cores, coarse resolution of 50 µm was chosen to compensate for the acquisition time, as it was also deemed sufficient for this study. The multi|scan® module in the µCT system allows the automated complete scans of long objects and automatic volume stitching, which was suitable for the drill core samples in this study. Multi|scan could also be used for automatic scanning of longer drill core samples, up to 30 cm in length. Reconstruction was done with the phoenix datos|x software. ORS Dragonfly® software was used for the volume rendering and visualization of the 3D image.

Table 2 Experimental conditions of the µCT scanning

Texture Analysis and Quantification

All of the texture analysis algorithms were developed in MATLAB®. The processor used in this study to perform the computational tasks was Intel® Xeon® CPU E5-2650 v3 @2.3 GHz (40 CPUs) with 262 GB of Random Access Memory (RAM). Table 3 gives some information about the acquired 3D image. It is also worth noting that the drill core only makes some part of the 3D image, with the rest being air. Otsu thresholding (Otsu 1979) was used to segment out the air in the 3D image, leaving only the drill core volume for the analysis. The proportion of the drill core out of the whole 3D image is also given in Table 3.

Table 3 Dimension of the 3D image

Due to the large size of the 3D image, MATLAB Parallel Computing Toolbox™ (Sharma and Martin 2009) with 20 single-thread workers was used. With parallel computing, the computational task is divided to a number of workers that executed the task in parallel. This greatly reduced the computational time; without parallelization, it took around 1 h each to extract LBP and AIM textural features from the 3D image, while the same procedure took around 5–7 min each with parallelization. Furthermore, in order to decrease the demand for RAM during the data processing, the 3D image is processed as a repository of 2D slice images using MATLAB Image Datastore, which stores the data as an array of strings containing the directory of the image files (Andersson 2017).

Association Indicator Matrix (AIM)

The concept of association index was first developed by Lund et al. (2015) to describe the frequency of the target mineral associated with other minerals regardless of the liberation degree and the modal composition in a particulate sample. The association index (AI) is calculated using the formula described in Eq. 1. If the AI of a mineral pair A–B is 1, then the association between the pairs is as common as the modal composition suggests. AI value of lesser than 1 indicates that the association is rarer than expected and vice versa for AI value of greater than 1. AI value of zero indicates no association between the minerals.

$${\text{AI}}_{{{\text{A}} - {\text{B}}}} = \frac{{{\text{Association of mineral A with mineral B }}\left( {\text{excluding liberated grains}} \right)\left[ {{\text{wt\% }}} \right]}}{{{\text{Mineral B grade }}\left( {\text{in a fraction excluding mineral A}} \right)\left[ {{\text{wt\% }}} \right]}}$$

Parian et al. (2018) developed the concept further by using co-occurrence matrices. In a mineral map with n minerals (n voxel values), the co-occurrence matrix will be the size of n × n. The value in C(i,j) indicates how many times the mineral i co-exists with mineral j in a defined offset. The offset is defined as the distance between the voxels and the directional pairs of the voxels. In 3D space, there would be 26 directional pairs, of which 13 are unique. The concepts of association index and co-occurrence matrix are essentially the same as in GLCM (Haralick and Shanmugam 1973). The spatial relationship in a co-occurrence matrix is illustrated in Figure 2, while example application for a mineral map in Figure 3 is given in Table 4.

Figure 2
figure 2

Directional pairs of a voxel in a 3D neighborhood (from Guntoro et al. 2019a). The voxel of (0,0,0) is the reference point, and its relation to other voxels within the offset of one voxel (Chebyshev) distance is analyzed. In this example, there are 13 unique directional pairs, in which mirroring direction is not accounted. For example, the direction of (0,− 1,0) is not accounted in this as it is the mirror of (0,1,0)

Figure 3
figure 3

Example of 3D mineral map. Colors denote the corresponding voxel values of 0 (background/air), 1, 2, and 3

Table 4 Co-occurrence matrix for mineral map in Figure 3, in which all the voxel directional pairs are summed up

The co-occurrence matrix can then be normalized to give an estimation of the abundance of phase interfacial area (association) between the minerals. This can then be done normalizing the non-diagonal cells (by row or by column), as the diagonal cell is indicating the association of the mineral with itself. This is then called the AIM, shown in Table 5 for the mineral map in Figure 3.

Table 5 Association indicator matrix (AIM) for the mineral map in Figure 3

In this example, it can be concluded that out of all phase 1 in the sample, 20.9% is associated with phase 2, while 71.6% associated with phase 3. Parian et al. (2018) have demonstrated that the information about surface exposure of each phase can also be deduced using the association with background (air). In the example above, the exposed surface for phases 1, 2, and 3 are 19.8%, 24.2%, and 56%, respectively. This concept of surface exposure is particularly useful for particulate samples. Since drill core samples are used in this study, the surface exposure is not included in the calculation of AIM.

Local Binary Pattern (LBP)

LBP was initially developed by Ojala et al. (2002) as a method to describe the local geometric pattern of a texture image. LBP is quite popular in texture analysis due to its computational simplicity and robustness to monotonic grayscale-level change. LBP has been extensively studied and has found many applications especially in facial image analysis (Ahonen et al. 2006; Huang et al. 2011). In relation to mineral texture analysis, LBP has been used, for example, to identify different mineral samples under microscopy (Aligholi et al. 2015) and as a textural descriptor for drill core images (Koch et al. 2019).

LBP compares each central pixel value (\(p_{c}\)) with all neighboring pixel values (\(p_{i}\)). Depending on the value of \(p_{i}\), a binary value is then assigned on the neighboring pixel following Eq. 2, in which \(P\) is the number of neighboring pixels within \(R\) pixels distance from the central pixel (\(p_{c} )\). LBP is illustrated in Figure 4

$${\text{LBP}}_{P,R} = \mathop \sum \limits_{i = 0}^{P - 1} s\left( {p_{i} - p_{c} } \right)2^{i} , \;{\text{where}} \;s\left( x \right) = \left\{ {\begin{array}{*{20}l} {0,} \hfill & {x < 0} \hfill \\ {1,} \hfill & {x \ge 0} \hfill \\ \end{array} } \right.$$
Figure 4
figure 4

Local binary pattern with \(R = 1\) and \(P = 8\)

While LBP has been extensively studied and developed, there are quite limited studies devoted to extending LBP into 3D space (Fehr and Burkhardt 2008; Paulhac et al. 2008; Montagne et al. 2013). Fehr and Burkhardt (2008) have noted in their study that extending LBP to 3D is apparently not as trivial as it seems. This is due to the difficulties in performing equidistant sampling of the neighboring voxels in 3D space in order to achieve LBP’s rotational invariance. Furthermore, LBP requires ordering of the neighboring voxels, which is relatively trivial in 2D but quite complex in 3D space. Finally, the computational cost is also a challenge with 3D LBP.

Montagne et al. (2013) simplified the approach of 3D LBP by considering the six nearest neighboring voxels in the 3D space. Using the 3D neighborhood in Figure 2, the 6 nearest voxels (\(P = 6)\) to the central voxel (0,0,0) are then: voxel (0,0,− 1); voxel (0,0,1); voxel (0,− 1,0); voxel (0,1,0); voxel(− 1,0,0); and voxel (1,0,0). Note that these six voxels are within Euclidean distance of one voxel to the central voxel, hence fulfilling the criteria of equidistant sampling. Using this neighborhood definition, there will be a possible of 26 = 64 patterns. In order to achieve rotational invariance, these 64 patterns are grouped to 10 LBP groups containing similar patterns. The grouping is defined in Table 6 and Figure 5, following Eq. 3. The value of \({\text{card}}\left( {p_{c} } \right)\) represents the number of neighboring voxels that have higher value than the central voxel. The 3D LBP developed by Montagne et al. (2013), with \(R = 1\) and \(P = 6\), was used in this study to extract textural features from drill core volumes.

$${\text{card}}\left( {p_{c} } \right) = \mathop \sum \limits_{i = 0}^{P - 1} s\left( {p_{i} - p_{c} } \right), \;{\text{where }}\;s\left( x \right) = \left\{ {\begin{array}{*{20}l} {0,} \hfill & {x < 0} \hfill \\ {1,} \hfill & {x \ge 0} \hfill \\ \end{array} } \right.$$
Table 6 The 10 LBP groups of the rotationally invariant patterns
Figure 5
figure 5

The 10 LBP groups containing in total 64 rotationally invariant patterns, in which the number in the brackets indicates the number of different patterns in the group. The white and black colors in neighboring voxels indicate the binary value of s(x)

Texture Classification

Supervised classification models such as SVMs (Cortes and Vapnik 1995; Vapnik et al. 1995) and RF (Breiman 2001) were used in this study. The aim of supervised classification is to train a classifier so that it can categorize the textural features (AIM and LBP) of the drill cores to their respective textural class. A classifier is simply a function that assigns a class to each feature values, which in this case are the AIM and LBP features. During feature extraction, the drill core volumes are divided into smaller 3D cells with 50 slices each, in which AIM and LBP features are extracted from each cell. This allows the creation of a feature vector containing LBP and AIM values from different parts of the drill cores (the cells). The feature vector is then assigned the preexisting textural classes and used as a training data to train the classifiers. This is illustrated in Figure 6.

Figure 6
figure 6

Textural feature extraction of the drill core volumes and training of classifiers

RF is a classification technique, which builds a set of classification trees by bootstrap aggregating (bagging). Classification tree is a decision tree that asks binary questions in each branch of the tree, in which the sequence of responses of each branch is used to categorize the data. The decision tree is built by examining possible splits in the data in which the resulting branch should have lower impurity. The “best” split is where the decrease in impurity is largest on that particular split. In bootstrap aggregating, multiple trees are built by repeated random sampling of the training data with replacement, allowing the building of decision trees based on different parts of the training data. This is done to reduce overfitting of the training data. RF classifies the data by majority voting of the trees.

A SVM is a classifier that constructs an optimum hyperplane to separate the data, in which the hyperplane has the largest margin to the classes in the data. The term “support vectors” refers to the data points that are closest to the hyperplane, in which these vectors are used to maximize the margin of the hyperplane. While originally SVM was created as a linear classifier (Vapnik and Lerner 1963), nonlinear classifiers can also be created by using kernel functions (Guyon et al. 1992). The kernel function maps the data to a higher-dimensional space where the linear hyperplane can be created to separate the data.

In order to validate the classification models, K-fold cross-validation was used. In K-fold cross-validation, the training data are sub-sampled into K sub-samples, in which only K − 1 of the sub-samples are used to train the classifiers. The remaining one sub-sample is used for validation. This is repeated K amount of times with all sub-samples, in which the validation results across the training sessions are then averaged to get an indication of the overall performance of the classifier. In this study, tenfold cross-validation was done.

In relation to this study and Figure 6, cross-validation physically means that the drill core volume is divided into parts (cells), in which some parts are reserved for validation, while the other for training the classifier. This gives some indication about the similarity of the textural features that are observed across the whole volume of the drill core. Since the whole drill core belongs to a specific textural class, it logically follows that a part of the drill core should have similar textures so that a trained classifier should be able to recognize that drill core part as the same textural class. Such cross-validation is illustrated in Figure 7.

Figure 7
figure 7

Cross-validation of drill core textural classification. Drill core is sub-sampled into cells (parts) and their LBP features are extracted, in which some cells are used for training and the rest are used for validation. This is repeated K amount times, and the overall performance is averaged across the sessions

Experimental Results

The drill core volumes acquired from µCT analysis are given in Figure 8. The textural difference between the drill cores can be observed from the µCT volumes. The medium-to-coarse grained sphalerite and galena minerals in sample A can be observed especially in the lower part of the core. Some textures were not observed in the 2D color images in Figure 1, for example the veinlet mineralization in the upper part of sample A. Some fine disseminated sulfide mineralization associated with the foliation can be observed especially in the upper part of sample B, with some clustered minerals observed in the lower part. Meanwhile in sample C, the shear zone-associated mineralization can be observed on the upper part, while some fine disseminated sulfide grains can be seen in the lower part of the core.

Figure 8
figure 8

Drill core volumes acquired from µCT for samples A, B, and C, respectively

Mineral Association of the Drill Cores

Before calculating the association index of the minerals, the minerals in the drill core volumes were segmented with Otsu thresholding. After the minerals were segmented, their composition in the drill cores could be calculated. The composition is given in Table 7, while some of the segmentation results are shown in Figures 9, 10, and 11

Table 7 Mineral composition of the drill core samples obtained from the segmentation results of the 3D volumes
Figure 9
figure 9

Segmentation results for sample A, showing (from left to right) color image of drill core, XZ slice of 3D µCT image, and segmented XZ slice of 3D µCT image

Figure 10
figure 10

Segmentation results of sample B, showing (from left to right) color image of drill core, XZ slice of 3D µCT image, and segmented XZ slice of 3D µCT image

Figure 11
figure 11

Segmentation results of sample C, showing (from left to right) color image of drill core, XZ slice of 3D µCT image, and segmented XZ slice of 3D µCT image

The mineralogical composition differed between the drill cores. Sample A contains the highest amount of galena, while sample C contains the most sphalerite. The mineralogical composition in Table 7 is simplified into three major mineral groups: the gangue mineral group that contains amphiboles and quartz, the sphalerite group that contains sphalerite, pyrite, and pyrrhotite, and lastly the galena group that contains galena and some silver bearing minerals. Furthermore, galena in Garpenberg deposit has been shown to contain varying amount of silver, ranging from 0.1 to 1 wt% (Tiu et al. 2019).

Mineral association of the drill core samples is presented with the AIM in Table 8. One thing that can be noticed from the AIM is that in all samples, galena occurs mostly together with sphalerite, which is in agreement with findings of Tiu et al. (2019). Furthermore, due to the sphalerite-galena association, more sphalerite will be associated with galena instead of the gangue minerals as the galena content in the sample increases. This can be seen in the AIM for samples B and C where the galena content is relatively low (< 1%) and sphalerite occurs mostly with gangue, but since in sample A, there is significantly higher amount of galena, the sphalerite association with gangue decreases, while sphalerite association with galena increases. This relationship is illustrated in Figure 12.

Table 8 Association indicator matrix (AIM) of each sample
Figure 12
figure 12

Correlation between galena content and association between sphalerite and galena. As galena occurs mostly associated with sphalerite, increase in galena content in a sample would mean that the proportion of sphalerite associated with galena also increases

LBP Features of the Drill Cores

The term LBP features refer to the frequency of the 10 LBP groups (illustrated in Fig. 5) in the sample, revealing which textural patterns are most common in the sample. LBP features of the samples are shown in Figure 13. While interpreting AIM values is relatively straightforward as it directly describes the association between the minerals, the same cannot be said of LBP features. In 2D, some distinction between the features can be made as uniform or non-uniform (Ojala et al. 2002). A pattern is considered uniform if the LBP contains at most two transitions from 0 to 1 or vice versa in a circular motion. For example, in Figure 4, the binary string of the LBP is 10001101 (clockwise from top left), which contains four transitions; hence, it is non-uniform. It has been found that uniform patterns contain more information than non-uniform patterns (Ahonen et al. 2006; Shan and Gritti 2008). However, this logic cannot be used for the current implementation of 3D LBP, due to the difficulties in ordering the neighboring voxels and defining the circular neighborhood in 3D space, as has been discussed earlier by Fehr and Burkhardt (2008).

Figure 13
figure 13

Normalized frequencies of various LBP patterns in the samples

Mäenpää and Pietikäinen (2005) defined some texture primitives that correspond to each LBP feature, which are illustrated in Figure 14. Using these texture primitives as a framework, some ideas about the texture primitives in the 3D LBP can be obtained. For example, 3D LBP number 1 corresponds to the spot texture, while 3D LBP number 10 can be regarded as spot or flat textures. Physically, both textures can represent areas where the minerals are less textured (flat or plain). The proportion of these LBP features is less than 10% in all drill cores, indicating that the drill cores are generally textured.

Figure 14
figure 14

Texture primitives defined for 2D LBP

Furthermore, the clearest difference in the LBP features between the drill cores is observed in LBP number 6. LBP number 6, as shown in Figure 5, indicates diagonal oriented textures. Diagonal oriented textures can also be captured by LBP numbers 4 and 8. This is due to LBP numbers 4, 6, and 8 containing voxels that are located in different planes (Table 6), capturing intensity changes across multiple planes. This is in contrast to LBP numbers 3, 5, and 7, which contain voxels that are on the same plane. The voxels that are categorized as LBP number 6 are visualized in Figures 15, 16, and 17.

Figure 15
figure 15

3D LBP feature number 6 (red voxels) in the XZ (vertical) slice of sample A

Figure 16
figure 16

3D LBP feature number 6 (red voxels) in the XZ (vertical) slice of sample B

Figure 17
figure 17

3D LBP feature number 6 (red voxels) in the XZ (vertical) slice of sample C

As can be seen from Figures 15, 16, and 17, the LBP feature number 6 captures mostly the diagonal phase boundaries between the minerals in the sample. As samples B and C both exhibit some diagonal textures with the foliation and shear zone-associated mineralization, the proportion of LBP feature number 6 is higher in these samples compared to sample A, where the sphalerite occurs mostly as medium and coarse disseminated grains. Nevertheless, LBP feature number 6 is the most abundant feature in all samples compared to other types of LBP features.

Textural Classification of the Drill Cores

The texture classification was performed using the extracted LBP and AIM features. The purpose of such classification is to evaluate the discriminability of each textural features, whether the LBP and AIM features of the drill cores are different enough so that the drill cores can be classified into different textural classes. In total, there are four classification schemes that were evaluated, which correspond to two features (LBP and AIM) and two classifier models (RF and SVM). The performance for each classification scheme is shown in Tables 9, 10, 11, and 12. The performances of the classification schemes are shown using the normalized confusion matrix, which gives information of both the hit rate and miss rate for each drill core sample.

Table 9 Drill core classification performance with AIM—RF. Overall accuracy of the scheme is 84%
Table 10 Drill core classification performance with AIM–SVM. Overall accuracy of the scheme is 59%
Table 11 Drill core classification performance with LBP–RF. Overall accuracy of the scheme is 76%
Table 12 Drill core classification performance with LBP–SVM. Overall accuracy of the scheme is 88%

The results shown in Tables 9, 10, 11, and 12 suggest that both LBP and AIM features can be used as textural descriptors to discriminate between textures in different drill cores, given that a suitable classifier is used. As it can be observed that while AIM features of the drill cores can be discriminated with a RF classifier, the same cannot be said if a SVM was used as a classifier instead. On the other hand, LBP features are better classified with SVM classifier. The results suggested that in this particular case, the combination between LBP features and SVM classifier gives the best classification accuracy.

By examining the hit rate for each drill core sample, some ideas about the similarity of textures between different drill cores can be obtained. For example, by looking at Tables 11 and 12, it can be seen that both classifiers have the best predictive performance (higher hit rate) for sample C, with 92% hit rate using RF and 95% hit rate using SVM. This indicates that the textural features of sample C are easier to distinguish as compared to the textural features of samples A and B. Similar results could also be observed in Table 9 for AIM features with RF classifier.

The observation that textural features of sample C are easier to distinguish corresponds well to the mineral composition of the samples (Table 7). Sample C contains larger amount of sphalerite than the other samples, which could affect the textural pattern of the drill cores. On the other hand, sample A contains the most galena, but since galena occurs in relatively small amount in all drill cores, this variation does not significantly affect the textural pattern of the drill cores. Furthermore, the qualitative textural descriptors used to describe the drill cores as foliated, shear zone associated, or coarse disseminated, are mostly correlated with the pattern of the sphalerite minerals in the drill core. This means that change of sphalerite composition in the sample would be more likely to alter the textural pattern of the drill core.


Geometallurgy relies on building block models that can explain the process behavior of the different ore blocks. This is done by establishing a link between the ore properties to the metallurgical response of the ore. It has been widely accepted that mineral textures are one of the most important ore properties that affect the ore behavior in the beneficiation process. Since the traditional qualitative textural descriptors are highly subjective, more efforts have been done to devise quantifiable textural descriptors that are able to describe different mineral textures. This study presented the evaluation of µCT system coupled with LBP and AIM as a methodology to obtain such textural descriptors.

A good textural descriptor should be discriminable and sensitive to textural and mineralogical changes. This is evaluated in this study by classifying the various drill core samples to their respective textural class with the help of machine learning models. The high classification accuracy (84% and 88% for AIM and LBP, respectively) indicates that both AIM and LBP are good textural descriptors that are discriminable. Such classification accuracy is on par with other case studies of drill core texture classification using 2D images obtained from a digital camera (Pérez-Barnuevo et al. 2018b; Koch et al. 2019). Furthermore, the importance of choosing the suitable classifier model is also highlighted in this study, in which RF classifier is better suited for AIM features, while SVM classifier is better suited for LBP features.

Within the framework of geometallurgy, a good textural descriptor should represent significant differences in processing behavior (Koch et al. 2019). When the textural classification scheme is established, a new sample can be expected to behave similarly as the existing sample depending on which textural class it belongs. This is highlighted in Pérez-Barnuevo et al. (2018b), in which the different textural classes that were often misclassified as the same textural class ultimately have the similar processing behavior in the laboratory tests. The evaluation of the processing behavior of each textural class is not included in this study, but will be included in future studies.

Besides the use of textural descriptors in texture classification, another application of such descriptors is in building texture-based predictive process models. A suitable textural descriptor for such purpose should have some physical meaning linked to the mineralogical and textural properties of the ore itself. This is where AIM would have an advantage over LBP, as AIM directly describes the mineral association in the ore, while LBP only evaluates the intensity changes in the image, capturing texture primitives such as edges, corners, and spots. While such texture primitives are usually powerful for texture classification (shown by the higher classification accuracy in Tables 11 and 12), it lacks physical meaning with regard to the intrinsic ore properties, which in turn limits its application in predictive process models. On the other hand, mineral association has been demonstrated to be directly correlated with breakage mechanism (Parian et al. 2018) and flotation (Jordens et al. 2016; Bahrami et al. 2019), which opens up the potential of building such predictive process models using AIM.

This study further explored the potential use of the X-ray microcomputed tomography (µCT) systems for 3D texture analysis of drill core samples. Previous application of µCT for texture analysis of drill core samples has been limited (Jardine et al. 2018; Voigt et al. 2019). The approach of using AIM is similar in principles with the 3D GLCM by Jardine et al. (2018), with the difference that in AIM, the association of minerals is used instead to build the co-occurrence matrices. Additionally, in AIM, the 13 unique voxel directions are summed, meaning that directional change of the texture (anisotropy) is not accounted for in AIM. Nevertheless, AIM can be readily modified to account for such directional change, as well as to account for different scale of texture changes by increasing the distance. It is also worth noting that AIM is directly extendable for particulate samples, in which it can also take into account the surface exposure of particles by using the association of the minerals with the air/background (Parian et al. 2018).

The directional changes in textures can also be captured by using 3D LBP. The extension of LBP from 2D space and 3D space presented in this study is simplified as it only accounts for the six closest neighbor voxels in 3D. The technique is modifiable; more neighboring voxels could be added and the distance could be changed to evaluate different scales of textures. Such modification would potentially capture more textures, but computational complexity and processing time would increase considerably as more voxels are being processed. In this study, the current 3D LBP technique is capable of extracting distinctive textural features of various drill core textures, which can be classified to their respective textural classes with relatively high accuracy.

One of the challenges with 3D texture analysis is the processing of large core volumes. In this study, parallelization was done to speed up the computational time; it took around 5–7 min each to extract LBP and AIM features from one of the half-core samples shown in Figure 1. This translates roughly to 40–70 min per meter of full-core sample, although the computational time can be further decreased by using more processors (Gustafson 1988). After extracting the textural features from the 3D drill core images, the training and validation of classifiers could be done rapidly within 10 s as the large 3D data have been reduced to feature vectors. Jardine et al. (2018) have noted that the computational cost of the 3D texture analysis must be taken into account when considering the application of such analysis for on-line drill core scanning. On top of the computational complexity of the texture analysis, optimization of µCT scanning parameters should also be evaluated to obtain a balance between good image quality and reasonable acquisition time.

Other aspects of the developmental works could also combine other X-ray based sensors in the µCT scanning, such as X-ray fluorescence (XRF) (Bergqvist et al. 2019) and X-ray diffraction (XRD) (King et al. 2014), allowing the acquisition of mineralogy and elemental composition of the drill core samples. Continuous development of µCT systems coupled with the improvement of processing capability of modern computers could potentially establish µCT as a valuable tool for automated drill core scanning and analysis, allowing better decision making in mine planning in the context of geometallurgy.


A methodology for 3D texture quantification and classification for drill core samples has been presented. The methodology utilized µCT systems to acquire 3D image of the drill core, as well as texture quantification methods such AIM and 3D LBP to extract textural descriptors from the drill core samples. Machine learning classifiers were trained and then validated using these textural descriptors. The validation results indicated that a trained classifier could classify the drill core samples to their respective textural classes with high accuracy of 84% and 88%, respectively, for AIM and 3D LBP. This shows that both AIM and 3D LBP are good textural descriptors that are discriminable and sensitive to textural differences between the drill cores. Proper choice of the classifier is also important to achieve good classification accuracy; in this study, AIM features were better classified with RF, while 3D LBP features were better classified with SVM.

The methodology presented in this study has potential applications especially in geometallurgy, where the information about the variability of ore textures in the orebody is critical to predict the downstream processes. By linking the textural information of the ores with the processing behavior, a new sample that is classified to a preexisting textural class could be predicted to have similar processing behavior as the samples belong to the aforementioned textural class. Such link could be established by the use of either texture-based predictive process models or laboratory testing of the samples belonging to different textural classes. Texture-based predictive process models require textural descriptors that can be linked with the intrinsic ore properties, in which AIM could be a good descriptor for such application as it directly describes the mineral association in the ores. On the other hand, 3D LBP could be a good descriptor for more accurate texture classification.

Future studies should include addressing the challenges of big data processing of µCT 3D data, complemented with optimization of scanning conditions. Classification accuracy could be improved by training the classifiers with more datasets, or by modifying the LBP and AIM features to account for different scales and directions of the texture. Moreover, process behavior data obtained from texture-based predictive models or laboratory tests should also be incorporated in the classification scheme. Ultimately, the classification scheme can be used as a geometallurgical tool where the textural and mineralogical information can be used to predict the processing behavior of the ore.