Applied Sciences: Automated Classification Analysis of Geological Structures Based On Images Data and Deep Learning Model

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

applied

sciences
Article
Automated Classification Analysis of Geological
Structures Based on Images Data and Deep
Learning Model
Ye Zhang 1 , Gang Wang 2 , Mingchao Li 1, * and Shuai Han 1
1 State Key Laboratory of Hydraulic Engineering Simulation and Safety, Tianjin University,
Tianjin 300354, China; jgzhangye@tju.edu.cn (Y.Z.); hs2015205039@tju.edu.cn (S.H.)
2 Chengdu Engineering Corporation Limited, PowerChina, Chengdu 610072, China; wgcd126a@126.com
* Correspondence: lmc@tju.edu.cn

Received: 1 November 2018; Accepted: 29 November 2018; Published: 4 December 2018 

Featured Application: This work aims to build a robust model with a comparison of machine
learning, convolutional neural network and transfer learning. The model can be combined with
an unmanned aerial vehicle (UAV) to act as a tool in geological surveys in the future.

Abstract: It is meaningful to study the geological structures exposed on the Earth’s surface, which
is paramount to engineering design and construction. In this research, we used 2206 images with
12 labels to identify geological structures based on the Inception-v3 model. Grayscale and color
images were adopted in the model. A convolutional neural network (CNN) model was also built in
this research. Meanwhile, K nearest neighbors (KNN), artificial neural network (ANN) and extreme
gradient boosting (XGBoost) were applied in geological structures classification based on features
extracted by the Open Source Computer Vision Library (OpenCV). Finally, the performances of
the five methods were compared and the results indicated that KNN, ANN, and XGBoost had a
poor performance, with the accuracy of less than 40.0%. CNN was overfitting. The model trained
using transfer learning had a significant effect on a small dataset of geological structure images; and
the top-1 and top-3 accuracy of the model reached 83.3% and 90.0%, respectively. This shows that
texture is the key feature in this research. Transfer learning based on a deep learning model can
extract features of small geological structure data effectively, and it is robust in geological structure
image classification.

Keywords: OpenCV; machine learning; transfer learning; Inception-v3; geological structure images;
convolutional neural networks

1. Introduction
The primary objective of a geological survey is to identify geological structures in the field
and, this is also important for project schedule management and safety guarantees. In construction,
engineers search for the exposure of geological structures to the Earth’s surface in field surveys, then
explore geological structures that partly extend below the Earth’s surface with boreholes, adits, etc.
Some geological structures should be given special attention because of their poor properties. Anticline
and ptygmatic folds weather easily; xenoliths, boudins, and dikes usually have low strength at the
contact surface because they contain rocks with different properties; ripple marks, mudcracks, and
concretion always indicate there is an ancient river course; faults and scratches mean broken structures
in engineering; basalt columns have a low strength because of the columnar joints; a gneissose
structure also has a low shear strength at the direction of schistosity. The geological structures have
a significant influence on project site selection, general layout and schedule management, which is

Appl. Sci. 2018, 8, 2493; doi:10.3390/app8122493 www.mdpi.com/journal/applsci


Appl. Sci. 2018, 8, 2493 2 of 16

also crucial to construction quality. The identification of geological structures can help engineers
make a better choice in construction. On the other hand, geological structures, such as faults [1] and
folds [2], are connected to hazards. Vasu and Lee [3] applied an extreme learning machine to build
the landslide susceptibility model with 13 selected features (including geological structure features).
The performance of prediction was better, with the accuracy of 89.45%. Dickson and Perry [4] explored
three machine learning methods, namely maximum entropy models, classification and regression trees
and boosted regression trees, to make identification of coastal cliff landslide control based on geological
structure parameters. The final result showed a high performance with 85% accuracy. The researches
proved geological structures were connected to geologic hazard prediction and prevention. However,
the machine learning methods are applied in structured data. For unstructured data, such as image,
audio, text, we need to extract the features of the unstructured data and input them to train machine
learning models. In the process of data type transformation, other algorithms are going to be selected.
3D visualization techniques and data interpolation are also used in geological structure detection.
Zhong et al. [5] made a 3D model of the complex geological structure based on borehole data.
Discrete fractures in rocks were also computed and estimated by 3D model construction [6,7]. Spatial
relationships of geological data were easy to understand in a 3D model. As a result, a 3D model
was built to explore geological conditions under the Earth’s surface. With limited geological data
because of cost controls, such as several boreholes, we were able to build the whole plane with spatial
interpolation methods. It is a significant and easy way to show the distribution of the discrete points.
However, it is mostly used for underground data analysis. The geological situation on the Earth’s
surface is often explored by geological engineers in the geological survey. It requires many computation
resources because of the rendering in the 3D visualization model. It is a time-consuming method with
low accuracy in some cases.
Image powered methods have become increasingly popular recently. These provide a novel
method in geological structure identification. Vasuki et al. [8] captured rock surface images with
unmanned aerial vehicles (UAVs) and detected rock features from the photos. According to the
features detected on UAVs images, 3D models were built to show folds, fractures, cover rocks and
other geological structures [9,10]. Furthermore, the automatic classification of geological images
was also studied. The geological image, as a kind of unstructured data, contains much information
including the object features. Młynarczuk et al. [11] applied four methods to make a classification of
microscopic rock images automatically. The result of the nearest neighbor (NN) analysis showed high
recognition level with 99.8%. Li et al. [12] also proposed a transfer learning method for sandstone
identification automatically based on microscopic images. Shu et al. [13] used an unsupervised machine
learning method to classify rock texture images. The experimental results indicated the outstanding
performance of self-taught learning. Geological structures identification has many similarities with
rock classification, which indicates what features we should extract from geological structures images.
The color and texture are both critical in rock images to both micro and regular images. In some cases,
the rock mineral was able to be classified just by color. While the geological structures data has unique
characters. The texture is addressed more by the geomorphometric analysis [14].
Deep learning is prominent in image processing. It was proposed by Hinton [15] and was further
developed recently [16]. Because of the positive performance, it was used to analyze unstructured data
in many areas, such as image classification [17] and semantic analysis [18]. In medicine, deep learning
is also popular [19,20]. However, Kim et al. [21] thought the input was massive in deep learning.
Deep learning was also applied in remote-sensing image scene classification [22] and terrain features
recognition [23]. It was able to extract features from unstructured data and make a classification with
high accuracy. The convolutional neural network (CNN) is an essential method in deep learning.
Scholars were able to build different CNN models by adding different kernels, pooling layers, and
fully connected layers. Palafox et al. [24] used different CNN architectures in detecting landforms
on Mars which proved convenient to extract features from images. Nogueira et al. [25] also used
convolutional neural networks to extract features of images then built a support vector machine (SVM)
Appl. Sci. 2018, 8, 2493 3 of 16

also used convolutional neural networks to extract features of images then built a support vector
Appl. Sci. 2018, 8, 2493 3 of 16
machine (SVM) linear model based on the features. Xu et al. [26] also used transfer learning to predict
geo-tagged field photos based on convolutional neural networks. All the results showed good
performance
linear model of the on
based convolutional
the features.neural
Xu etnetwork in extracting
al. [26] also used transferimages features.
learning While geo-tagged
to predict we should
consider
field photos thatbased
the CNN model depends
on convolutional neuralon anetworks.
large dataset to avoid
All the resultsoverfitting.
showed good performance of the
In this research,
convolutional we established
neural network a transfer
in extracting learning
images model
features. based
While we on Inception-v3
should consider forthatgeological
the CNN
structures
model depends with on12 alabels. The testtoresult
large dataset avoidshowed a high accuracy of the model. Then we made a
overfitting.
comparison between the
In this research, we identification
established a model
transferand the other
learning fourbased
model models,onnamely K nearest
Inception-v3 neighbors
for geological
(KNN), artificial neural network (ANN), extreme gradient boosting (XGBoost)
structures with 12 labels. The test result showed a high accuracy of the model. Then we made and CNN. The resulta
showed
comparison the between
transfer learning model had
the identification a high
model andaccuracy
the otheron a small
four models,dataset.
namely The K machine learning
nearest neighbors
method’s
(KNN), artificial neural network (ANN), extreme gradient boosting (XGBoost) and CNN. Thea result
accuracy was poor because it is hard to extract accurate features of images from pixel
vector
showed orthehistogram.
transfer CNNlearningwasmodel
overfitting
had astrongly. Transfer
high accuracy on learning based onThe
a small dataset. deep learning
machine model
learning
was an effective
method’s accuracymethod
was poor forbecause
geological structure
it is hard images
to extract classification.
accurate features of Moreover,
images fromWu et al.
a pixel [27]
vector
applied
or histogram. CNN was overfitting strongly. Transfer learning based on deep learning model wasthis
the UAV and recognition model to detect rail surface defects. The retrained model in an
research
effective can also be
method forcombined
geologicalwith a UAV,
structure whichclassification.
images can be an assistant tool inWu
Moreover, theetgeological surveythe
al. [27] applied in
further
UAV and study.
recognition model to detect rail surface defects. The retrained model in this research can also
be combined with a UAV, which can be an assistant tool in the geological survey in further study.
2. Data Collection
2. Data Collection
2.1. Data Information
2.1. Data Information
In this research, we collected 2206 geological structures images with 12 labels, including
In this
anticline, research,
ripple we collected
marks, xenolith, 2206 geological
scratch, structures
ptygmatic folds, images with 12 labels,
fault, concretion, includinggneissose,
mudcracks, anticline,
ripple marks,
boudin, basaltxenolith,
columns, scratch, ptygmatic
and dike. folds, fault,
The dataset wasconcretion, mudcracks,
collected from gneissose,
the geological boudin,
survey basalt
and the
columns, and dike. The dataset was collected from the geological survey and the internet
internet [28]. In data collection, we tried to make each category cover images with different scales [28]. In data
collection,
and sizes aswe triedastopossible.
many make each Thecategory
resolutioncover images
of the imagewith different
is not limited.scales
All theand sizesare
images as many
going as
to
possible.
be Theat
processed resolution
the same of the
size imagetraining.
before is not limited. All theofimages
The numbers imagesare
in going to beare
each label processed
listed in at the
Table
same
1. size1before
Figure showstraining.
samples The numbers
of the data. of images in each label are listed in Table 1. Figure 1 shows
samples of the data.
Table 1. Information of geological structures images dataset.
Table 1. Information of geological structures images dataset.
Geological Structure No. Geological Structure No. Geological Structure No.
Geological Structure
Anticline No.
179 Geological
PtygmaticStructure
folds No.
162 Geologicalstructure
Gneissose Structure No.
206
Ripple marks
Anticline 221
179 Faultfolds
Ptygmatic 127
162 Boudin
Gneissose structure 190
206
Ripple marks
Xenolith 221
208 Fault
Concretion 127
181 BasaltBoudin
columns 190
196
Xenolith 208 Concretion 181 Basalt columns 196
Scratch 164 Mudcracks 181 Dike 191
Scratch 164 Mudcracks 181 Dike 191

(a) (b) (c)

(d) (e) (f)

Figure 1. Cont.
Appl.Sci.
Appl. Sci.2018,
2018,8,8,2493
2493 4 4ofof16
16
Appl. Sci. 2018, 8, 2493 4 of 16

(g) (h) (i)


(g) (h) (i)

(j) (k) (l)


(j) (k) (l)
Figure 1. Samples of geological structure images: (a) Anticline; (b) Ripple marks; (c) Xenolith; (d)
Figure 1.(e)Samples
Scratch; Ptygmatic
Samples ofofgeological
folds; structure
(f) Fault;
geological (g) images:
structure images:(a)(a)
Concretion; Anticline;
(h) (b) (b)
Mudcracks;
Anticline; Ripple marks; (c) structure;
(i) Gneissose
Ripple marks; Xenolith; (d)
(j)
(c) Xenolith;
Scratch;
Boudin;
(d) (e)Basalt
(k)
Scratch; Ptygmatic
(e) columns;
Ptygmatic folds;
(l) (f)
Dike.
folds; Fault;
(f) (g) (g)
Fault; Concretion;
Concretion;(h) (h)
Mudcracks;
Mudcracks;(i) Gneissose structure;
(i) Gneissose (j)
structure;
Boudin;
(j) (k)(k)
Boudin; Basalt columns;
Basalt columns;(l) (l)
Dike.Dike.
2.2. Data Preprocessing
2.2. Data Preprocessing
2.2. Data Preprocessing
It is necessary to make data preprocessing in images classification. Some feature pre-processing
methods It is
It is [29,30]
necessary
necessary were to adopted
to make data
make data preprocessing
to preprocessing in
in images
improve the performance classification.
images classification.
of the model.Some Some feature two
feature
We applied pre-processing
pre-processing
direct and
methods [29,30]preprocessing
methods [29,30]
straightforward were
were adopted to
to improve
adopted methods improve the
the performance
to extractperformance
features inof of the model.
the
images model.
as theWeWe applied
applied
input of KNN, twoANN,
two direct
directand and
and
straightforward
straightforward
XGBoost. The firstpreprocessing
preprocessing methods
method is tomethodsconvert to to extract
extract
pixels features
features
in each imagein images
in images
into a row as the
as the input of KNN,
inputdirectly;
vector of KNN,the ANN,
ANN,secondand
and
XGBoost.
XGBoost.
method The
The
is to firstthe
first
build method
method is to
is
histogram to ofconvert
convert pixels
pixels pixels
based in in each
on each image
their image intocharacteristics,
into
statistical a
a row
row vector
vector directly;
as shownthe
directly; in second
the second
Figure
method
method
2. In Figureis to build
is to2b,d, the
buildx-axis histogram
the histogram
means the of pixels
of pixels based
range based on their
on their
of pixels, whichstatistical
statistical characteristics,
characteristics,
is [0, 225]; y-axis means as shown
as shown in inFigure
the numbers Figureof2.
In Figure
2. In Figure
pixels 2b,d,
at each2b,d, x-axis
level.x-axismeans
means
The color the range
the range
images of pixels, which
of pixels,
have three is
which
channels, [0, 225]; y-axis
is [0, 225];
namely means
y-axis and
red, green, the
means numbers
blue; the
the of
numbers pixels
grayscale of
at each
images level.
pixels atjusteach The color
level.
have one The images have three
color images haveIn
channel-grayscale. channels,
three namely
channels,
Figure 2b, the red,
namely green, and
red, green,
red, green, blue; the
and blue;
and blue grayscale
lines the images
grayscale
refer to the
just
images
numbershavejust
ofone
thechannel-grayscale.
have one at
pixels R, G, andInBFigure
channel-grayscale. levels. In2b, the
InFigure
Figurered,
2b,green,
2d, the
The and
red, blue
redgreen, lines
and refer
line refers blue
to theto the refer
lines numbers
numbers of
to the
of the
the
pixels pixels
numbers at theofatgrayscale
R, G,
the andlevel.
pixels B levels.
at R, In In Figure
G, Figure
and B 2a,c,
levels.2d,
theInThe redy-axis
x-Figure
and line
2d, Therefers toline
red
measure the numbers
therefers
size oftothe ofphoto.
the the pixels of
numbers at the
the
grayscale
pixelsThe level.
at the In
grayscale
features Figure 2a,c,
level.from
extracted the
In Figurex- and
color,2a,c,y-axis
andthe measure
x- and y-axis
grayscale the
images size of
measure the
were both photo.
the size
set of
as the
thephoto.
input in KNN,
ANN,The Theandfeatures
features
XGBoost,extracted
whichfrom
extracted wascolor,
from color,
able and
to andgrayscale
show grayscale images
images
the influence were bothboth
ofwere
image set asset
color. theasinput
In inand
the input
CNN KNN, in ANN,
KNN,
transfer
and
ANN, XGBoost,
learning and
based which
XGBoost, was able was
which
on Inception-v3, to the
showabletheto influence
show the
convolutional ofinfluence
image
neural color.
network In
of image
was CNN and transfer
color.
applied CNNlearning
In extract
to and based
transfer
the features
on Inception-v3,
learning
of the convolutional neural network was applied to extract
based on Inception-v3, the convolutional neural network was applied to extract the features
the images. the features of the images.
of the images.
0 80,000 R
250
0 80,000 GR
70,000
250
500 70,000
BG
60,000
Pixel

Pixel

500
750 B
60,000
50,000
Pixel

Pixel
number

number

750
1000
50,000
40,000
number

number

1000
1250
40,000
30,000
1250
1500
30,000
20,000
1500
1750 20,000
10,000
1750
2000 10,000
0
2000 0 500 1000 1500 2000 2500 3000 0 50 100 150 200 250
0
0 500 Pixel number
1000 1500 2000 2500 3000 0 50 RGB
100 levels
150 200 250

Pixel number
(a) (b)RGB levels
(a) (b)
Figure 2. Cont.
Appl. Sci. 2018, 8, 2493 5 of 16
Appl.
Appl.Sci.
Sci.2018,
2018,8,8,2493
2493 55ofof16
16

00 70,000
70,000 Gray
Gray
250
250
60,000
60,000
500
500
50,000
50,000
750
750
Pixel
Pixel number

Pixel
Pixel number
40,000
40,000
1000
1000
number

number
1250
1250 30,000
30,000

1500
1500 20,000
20,000

1750
1750 10,000
10,000
2000
2000 00
00 500
500 1000
1000 1500
1500 2000
2000 2500
2500 3000
3000 00 5050 100
100 150
150 200
200 250
250

Pixel
Pixelnumber
number RGB
RGBlevels
levels
(c)
(c) (d)
(d)
Figure
Figure2.2.The
Figure Thehistogram
The histogram
histogramfeatures
featuresextracted
extracted
features extractedfrom
from color
fromcolor and
colorandgrayscale
grayscale
and geological
grayscalegeologicalstructure
structure
geological image:
image:
structure (a)
(a)
image:
Color
(a)
Colorimage;
Color
image; (b)
(b)Color
image; (b)
Colorimage
Color histogram;
image
image (c)
(c)Grayscale
histogram;
histogram; (c) image;
Grayscale
Grayscale (d)
(d)Grayscale
image;
image; (d) image
Grayscale
Grayscale histogram.
image
image histogram.
histogram.

The
The
The rawraw data
raw data
data isis not
is not enough
not enough for
enough forfor aa training
training model
model using
using CNN
CNN and andtransfer
transferlearning.
learning. AsAs
As aaa
consequence,
consequence, some data augmentation
consequence, some dataaugmentation methods,
augmentationmethods, such
methods,such as
suchas channel
aschannel shift,
channelshift, shear,
shift,shear,flip
shear,flip from
flipfromleft
fromleftto right
leftto and
toright
right
flip
and from
andflip
flipfromtop top
from to
topbottom,
to
tobottom, were
bottom, adopted
were
were adopted
adoptedto raw
to data,
toraw
raw as shown
data,
data, as
asshown in Figure
shown in
inFigure3. A
Figure channel
3.3.AAchannel
channelshift means
shift
shiftmeans
means to
change
to change the general
the general color of
color the
of whole
the whole image;
image; shear means
shear meansto keep
to the
keep horizontal
the horizontal
to change the general color of the whole image; shear means to keep the horizontal axis (or vertical axis (or
axis vertical
(or axis)
vertical
stable
axis) and translate
axis)stable
stable and the other
and translate
translate theaxis
the at aaxis
other
other ratio.
axis atatThe translation
aa ratio.
ratio. The distance is
The translation
translation proportional
distance
distance to the distance
isisproportional
proportional to to
to the
the
the horizontal
distance
distance totothe axis.
thehorizontal
horizontalaxis.
axis.

(a)
(a) (b)
(b)

(c)
(c) (d)
(d)
Figure
Figure3.3.Data
Figure Dataaugmentation:
Data augmentation:(a)
augmentation:(a)Channel
(a)Channelshift;
Channelshift;(b)
shift; Shear;
(b)(b)
Shear;(c)
(c)Flip
Shear; Flip
(c) from
from
Flip left totoright;
leftleft
from right;(d)
(d)Flip
to right; from
FlipFlip
(d) from top
top
from
to
tobottom.
topbottom.
to bottom.

3.3.Key
KeyTechniques
Techniquesand
andMethods
Methods

3.1.
3.1.Machine
MachineLearning
Learning
KNN
KNNisisaalazy
lazyalgorithm
algorithmwith
withno
noparameters,
parameters,and
andANN
ANNisisaakind
kindof ofsupervised
supervisedlearning
learningmethod.
method.
The
Thetwo
twomethods
methodsareareused
usedwidely
widelyin
inprediction.
prediction.XGBoost
XGBoost[31]
[31]isisan
animproved
improvedgradient
gradientboosting
boosting
decision
decisiontree
tree(GBDT)
(GBDT)method.
method.In
InGBDT,
GBDT,the
theweak
weaklearners
learnersare
arecombined
combinedto tobe
beaastrong
stronglearner,
learner,as
asin
in
the
thefollowing
followingequation:
equation:
Appl. Sci. 2018, 8, 2493 6 of 16

3. Key Techniques and Methods

3.1. Machine Learning


KNN is a lazy algorithm with no parameters, and ANN is a kind of supervised learning method.
The two methods are used widely in prediction. XGBoost [31] is an improved gradient boosting
decision tree (GBDT) method. In GBDT, the weak learners are combined to be a strong learner, as in
the following equation:
t
( t −1)

(t)
fi = f k ( xi ) = f i + f t ( x i ), (1)
k =1

where f t ( xi ) is the weak learner, namely a single decision tree; f t ( xi ) is the sum of the weak learners.
In each iteration, the new decision tree was added to the model. XGBoost improves the loss function,
and also regularizes objective function, as shown in the following equation:

 L = n l (y , y ) + t Ω( f )

∑ i i ∑ i
k =1 k =1 , (2)
Ω( f ) = γT + 21 λkω k2

where l is the loss function, which is used to measure the difference between prediction ŷi and target
yi . Ω is used to control the complexity of the model. ω is the score of the leaves, λ is the parameter for
regularization, which is used to evaluate the node split.

3.2. Convolutional Neural Network (CNN)


CNN is a kind of feedforward neural network. The neurons in CNN can respond to the specific
region in an image to extract features, which makes it outstanding in processing large unstructured data.
A convolutional neural network includes convolutional layer, pooling layer, and fully connected layer.
There are three critical concepts in CNN, namely receptive field, parameter sharing, and pooling
layers. Altenberger and Lenz [32] explained them in detail. The receptive field is a square region. It is
a local subset of the neurons that the kernel connected to. The size of this square is the receptive field.
Neurons of the same kernel should get the same pattern of the image regardless of their positions.
As a result, the parameters should be shared by all the neurons of the same kernel. This concept is
called parameter sharing. Pooling layers are also connected to a square region of the previous layer.
However, polling layers are different from the convolutional layers. They are not determined by the
weights or bias in the learning process, and the result just depends on the input. The max pooling is
the common type in CNN. The maximum value that the neurons return is taken as the feature of the
image. The average pooling can be interpreted in a similar way. Pooling reduces the complexity and
dimensions of the feature map and improves the result to lead to less overfitting. At the same time,
the features can keep translation invariance after pooling, which means if there are some translations,
such as rotation, scale, distortion, in images, the pooling features are also effective.
As shown in Figure 4, the sizes of the image and convolutional layers are 5 × 5 and 3 × 3,
respectively. There are nine parameters in the convolutional layer, namely the weight matrix. The nine
parameters mean nine neurons. According to the sizes of image and kernel, the output is going to be
a 3 × 3 matrix, which is called the feature map. In the first step, the neurons were connected to the
receptive field on the image; then it slides to the next region by one stride in the second step, as shown
in Figure 4b. The computation was processed in each neuro as follows.
!
n
f ( x ) = act ∑ θ(n−i)(n− j) xij + b , (3)
i,j

where f ( x ) was the output, act is the activation function, θ is the weight matrix, xij is the input, b is the
bias. The softmax activation function is selected in this research.
Appl. Sci. 2018, 8, 2493 7 of 16
Appl. Sci. 2018, 8, 2493 7 of 16

1 1 1 0 0

0 1 1 1 0 1 0 1 4

0 0 1 1 1 1 1 0

0 0 1 1 0 0 0 1

0 1 1 0 0

(a)
1 1 1 0 0

0 1 1 1 0 1 0 1 4

0 0 1 1 1 1 1 0

0 0 1 1 0 0 0 1

0 1 1 0 0

(b)
Figure
Figure 4. The4.process
The process of convolutionalneural
of convolutional neural network
network computation:
computation:(a) Computation in the first
(a) Computation step;
in the first step;
(b) Computation in the second step.
(b) Computation in the second step.
3.3. Transfer Learning
3.3. Transfer Learning
Even if there is an established model in a similar area, the model is going to be established from
Even if there
scratch using is an established
a machine learning model
method.inIt acosts
similar
mucharea, the model
manpower and timeis going
to solvetoproblems
be established
from scratch using a machine learning method. It costs much manpower and
individually in a similar domain. Considering the similarity between different tasks, we are able to time to solve problems
individually
build the in model
a similar baseddomain. Considering
on the knowledge the similarity
obtained between
using transfer learningdifferent
method. The tasks, we are able to
knowledge
obtained
build the modelcan be used
based onagain in a related domain
the knowledge with using
obtained small change.
transfer If the gained knowledge
learning method. The can work
knowledge
in most cases or the data is hard to collect in the new task, we can make the most of the gained
obtained can be used again in a related domain with small change. If the gained knowledge can
knowledge with transfer learning to build the new model. It benefits much in reducing dependency
work in most cases or the data is hard to collect in the new task, we can make the most of the gained
on big data and establishing a new model using a transfer learning method.
knowledge Furthermore,
with transfer learning
it is necessary totobuild
have the new model. It computer
a high-performance benefits muchand time in to
reducing
train big dependency
data.
on big data
However,and establishing
it can reduce time a newcostmodel using a transfer
and dependency learning
on big data method.
using transfer learning based on the
pre-trained model
Furthermore, it is [26,33,34].
necessaryWe tocan
haveapply a pre-trained model, which
a high-performance computercontains
and parameters trainedbig data.
time to train
However,by another big dataset,
it can reduce time in training
cost and a new model in a similar
dependency on bigdomain.
data usingThe kernels in the
transfer convolutional
learning based on the
neural network can extract features of images automatically and effectively.
pre-trained model [26,33,34]. We can apply a pre-trained model, which contains parameters trained by
In this research, we adopted Inception-v3 [35] as the pre-trained model. The dataset which is
anotherused
big to dataset, in training a new model in a similar domain. The kernels in the convolutional
train Inception-v3 contains 1.2 million images with more than 1000 labels. In the result of
neural network
recognition, cantheextract features in
top-5 accuracy of Inception-v3
images automatically and is
is 96.5%, which effectively.
better than humans, with an
In accuracy
this research,of 94.9%. weTheadopted Inception-v3
convolutional layers and[35] as the
pooling pre-trained
layers model.
in Inception-v3 can The
extractdataset
featureswhich is
used tofrom
train images as 2048 dimensional
Inception-v3 containsvectors. We removed
1.2 million images thewith
softmax
more layer in Inception-v3
than 1000 labels. and In
retained
the result of
the new layer in our own domain. All the convolutional layers and pooling
recognition, the top-5 accuracy in Inception-v3 is 96.5%, which is better than humans, with an accuracy layers in Inception-v3
were used in extracting features from images, a process shown in Figure 5.
of 94.9%. The convolutional layers and pooling layers in Inception-v3 can extract features from images
as 2048 dimensional vectors. We removed the softmax layer in Inception-v3 and retained the new
layer in our own domain. All the convolutional layers and pooling layers in Inception-v3 were used in
extracting features from images, a process shown in Figure 5.
Appl. Sci. 2018, 8, 2493 8 of 16

ImageNet Filters and Softmax ImageNet


Dataset Pooling Layers Classifier Labels

Transfer
Learning

Geological Feature Map New Geological


Features
Structures (2048 Softmax Structures
Extract
Images dimensions) Classifier Labels

Figure
Figure 5.5.The
Theprocess
process of
of retraining
retrainingInception-v3.
Inception-v3.

4. Model Establishment

4.1. Parameters Set


In the process of Inception-v3 retraining, iteration was set as 20,000; learning rate was set 0.01.
Appl. Sci. 2018, 8, 2493 8 of 16

4. Model Establishment

4.1. Parameters Set


In the process of Inception-v3 retraining, iteration was set as 20,000; learning rate was set 0.01.
In each iteration, 100 images were selected randomly to train the model, namely the training batch size
equals 100. Batch size is limited by computer performance; 10% of the data was set as the test dataset.
After 10 iterations, the model was evaluated. All the images were going to be used in the training
process. Training accuracy, validation accuracy, and cross-entropy were used to evaluate the model
in the training process. Training accuracy is gained by testing the trained dataset with the model;
validation accuracy is gained by testing the validation dataset with the model; cross-entropy shows the
model performance in identification. The smaller cross-entropy indicates a better performing model.
In each training step, the prediction value and target value were measured to update the weight matrix.
The geological structures images were cut as the same size before training. As a consequence, there
were no strict limitations on the size and resolution of the images. The color images and grayscale
images were both used in training, which was able to show the influence of color on the model.
In the training of CNN, we set two, three, and four convolutional layers and two fully connected
layers to establish the model. The convolutional layers were set as 5 × 5 and 3 × 3, respectively. There
were 64 neurons in each convolutional layer. While there were 128 neurons in fully connected layers.
The learning rate was set as 10−4 . Batch size was set as 32. The data was split into training data and
validation data; 80% of the data was set as training data; 10% data was set as validation data and
test data.
In the model establishment of KNN, ANN, and XGBoost, we used OpenCV [36] to process the
raw data into two datasets, namely color images and grayscale images, with the size of 128 × 128.
The two datasets were used to build images features with origin pixels and pixels histogram. Then we
took the pixel vectors and histogram features as the input of KNN, ANN, and XGBoost. The python
package Scikit-learn [37] was used in the research to build the three models, and all the parameters of
the models were set as in Table 2.

Table 2. Parameters in K nearest neighbors (KNN), artificial neural network (ANN), and extreme
gradient boosting (XGBoost).

Method Parameters Value


KNN n_neighbors 1
p 2
XGBoost colsample_bytree 0.8
learning_rate 0.1
eval_metric mlogloss
max_depth 5
min_child_weight 1
nthread 4
seed 407
subsample 0.6
objective multi:softprob
ANN hidden_layer_sizes 50
max_iter 1000
alpha 10−4
solver sgd
tol 10−4
random_state 1
learning_rate_init 0.1
Appl. Sci. 2018, 8, 2493 9 of 16

4.2. Model
Appl. Train
Sci. 2018, and
8, 2493 Test 9 of 16

Figure 6 showed the training process of the transfer learning. The model was evaluated by train
Figure 6 showed the training process of the transfer learning. The model was evaluated by train
accuracy, validation accuracy, and cross-entropy. In Figure 6, train accuracy, and validation accuracy
accuracy, validation accuracy, and cross-entropy. In Figure 6, train accuracy, and validation accuracy
both increased gradually. Then train accuracy converged to about 97.0% and validation accuracy
both increased gradually. Then train accuracy converged to about 97.0% and validation accuracy
converged to about 90.0%. Cross-validation decreased gradually and converged to about 0.2. Finally,
converged to about 90.0%. Cross-validation decreased gradually and converged to about 0.2. Finally,
the test accuracy based on grayscale and color images were 91.0% and 92.6%, respectively. The small
the test accuracy based on grayscale and color images were 91.0% and 92.6%, respectively. The small
difference between the two models indicates that color had little influence on the model identification
difference between the two models indicates that color had little influence on the model identification
for geological structures, which means textures are more important in identification.
for geological structures, which means textures are more important in identification.

(a)

(b)
Figure
Figure 6.
6. Train
Train accuracy,
accuracy, validation
validation accuracy
accuracy and
and cross-entropy
cross-entropy variation
variation in
in transfer
transfer learning
learning process:
process:
(a) Grayscale dataset; (b) Color dataset.

The patches from the same image are similar using data augmentation.
augmentation. At the same time, we
want to apply the model to identify geological structure images from the geological survey. So we
images which
chose another 60 images which were
were from
from an engineering
engineering project
project to
to test
test the
the model
model accuracy.
accuracy. Top-1
Top-1
and top-3 accuracy were used in model evaluation. Top-1Top-1 accuracy means the prediction with the
highest probability matches the right label. Top-3 accuracy means any one of predictions with the
three highest probability matches the right label. In the model testing, the top-1 accuracy was 83.3%
and the top-3 accuracy was 90.0%. The test images in Figure 7 are the same as those in Figure 1. In
Figure 7, the result showed top-3 prediction probability. In the identification of faults, the top-1 and
Appl. Sci. 2018, 8, 2493 10 of 16

highest probability matches the right label. Top-3 accuracy means any one of predictions with the three
highest probability matches the right label. In the model testing, the top-1 accuracy was 83.3% and the
top-3 accuracy was 90.0%. The test images in Figure 7 are the same as those in Figure 1. In Figure 7,
Appl. Sci. 2018, 8, 2493 10 of 16
the result showed top-3 prediction probability. In the identification of faults, the top-1 and top-3 result
were wrong.
top-3 The number
result were wrong. of
Thefault images
number ofshould be increased.
fault images should In
bethe identification
increased. In theofidentification
boudin images, of
the top-1
boudin prediction
images, was wrong.
the top-1 However,
prediction we found
was wrong. that thewe
However, probability
found that of the
boudin was 15.7%,
probability which
of boudin
ranked
was third.
15.7%, As aranked
which consequence, it isa better
third. As to applyittop-1
consequence, andto
is better top-3
applyaccuracy to evaluate
top-1 and the result
top-3 accuracy to
comprehensively in predictions.
evaluate the result comprehensively in predictions.

Anticline: 72.1% Ripple marks: 95.9% Xenolith: 99.0%


Basalt columns: 18.8% Concretion: 1.9% Ptygmatic folds: 0.4%
Ripple marks: 2.2% Ptygmatic folds: 0.9% Ripple marks: 0.2%

Scratch: 44.4% Ptygmatic folds: 49.9% Dike: 68.2%


Xenolith: 29.7% Boudin: 25.9% Scratch: 12.7%
Ripple marks: 10.4% Scratch: 14.6% Boudin: 8.1%

Concretion: 99.0% Mudcracks: 99.9% Gneissose structure: 96.6%


Gneissose structure: 0.8% Ripple marks: 0.0% Xenolith: 1.7%
Scratch: 0.1% Basalt columns: 0.0% Ripple marks: 1.4%

Concretion: 30.3% Basalt columns: 85.3% Dike: 67.4%


Xenolith: 29.4% Scratch: 13.6% Mudcracks: 11.5%
Boudin: 15.7% Ripple marks: 0.7% Boudin: 9.0%
Figure
Figure 7.
7. Identification
Identification of
of geological
geological structures
structures images
images results.
results.

The training process of CNN was shown in Figure 8. Train accuracy, validation accuracy, and
cross-entropy were also used to evaluate the model. Figure 8a–c are the results of the CNN with two,
three and four convolutional layers on the color dataset; Figure 8d is the result of the CNN with three
convolutional layers on the grayscale dataset. The effects of the three-layer CNN was the best, and
the grayscale data was also trained by the CNN architecture, as shown in Figure 8d. The train
accuracy was almos
Appl. Sci. 2018, 8, 2493 11 of 16

Appl. Sci. 2018, 8, 2493 11 of 16

The training process of CNN was shown in Figure 8. Train accuracy, validation accuracy, and
cross-entropy were also used to evaluate the model. Figure 8a–c are the results of the CNN with
two, three and four convolutional layers on the color dataset; Figure 8d is the result of the CNN with
three convolutional layers on the grayscale dataset. The effects of the three-layer CNN was the best,
and the grayscale data was also trained by the CNN architecture, as shown in Figure 8d. The train
accuracy was almost 100.0%, while the validation accuracy was about 85.0%, which indicated the
t 100.0%, while the validation accuracy was about 85.0%, which indicated the model was
model was overfitting.
overfitting.

(a)

(b)

Figure 8. Cont.
Appl. Sci. 2018, 8, 2493 12 of 16

Appl. Sci. 2018, 8, 2493 12 of 16

(c)

(d)
Figure
Figure 8.
8. Train
Train accuracy, validation accuracy
accuracy, validation accuracy and
and cross-entropy variation in
cross-entropy variation in the
the convolutional
convolutional neural
neural
network (CNN) training process: (a) Two layers using color dataset; (b) Three layerscolor
network (CNN) training process: (a) Two layers using color dataset; (b) Three layers using using color
dataset;
dataset; (c) Four layers using color dataset; (d) Three layers using grayscale
(c) Four layers using color dataset; (d) Three layers using grayscale dataset. dataset.

The results of the five methods were summarized in Table 3. The accuracies of KNN, ANN, and
XGBoost models
models were
were less
lessthan
than40%,
40%,while
whilethe
theKNN
KNNandandXGBoost
XGBoostalsoalso showed
showed better
better performance
performance in
in color images with histogram features. The test accuracy of CNN model based on
color images with histogram features. The test accuracy of CNN model based on grayscale and color grayscale and
color
imagesimages was 80.1%
was 80.1% and 83.3%,
and 83.3%, but thebut the was
model model was overfitting;
overfitting; the test the test accuracy
accuracy of the learning
of the transfer transfer
learning model
model based onbased on Inception-v3
Inception-v3 model91.0%
model reached reached
and91.0%
92.6%,and 92.6%,
which waswhich wasinthe
the best allbest in all the
the methods.
methods.
The resultThe result indicated
indicated the convolutional
the convolutional layers andlayers andlayers
pooling pooling layers in Inception-v3
in Inception-v3 were able were able
to extract
to extract
features features
from fromstructures
geological geologicalimages
structures images
effectively. Aseffectively. As athe
a consequence, consequence, the transfer
transfer learning method
learning
was chosenmethod was chosen
to identify to identify
the geological the geological
structure image fromstructure image The
engineering. fromtop-1
engineering.
and top-3The top-1
accuracy
and
weretop-3
83.3%accuracy were
and 90.0%, 83.3% and 90.0%, respectively.
respectively.
Appl. Sci. 2018, 8, 2493 13 of 16
Appl. Sci. 2018, 8, 2493 13 of 16

Table
Table 3.
3. Comparison
Comparison result
result between
between the
the five
five methods.
methods.

GrayscaleImage
Grayscale Image Feature
Feature Color
Color Image Feature
Image Feature
Pixel
Pixel
Histogram
Histogram
Pixel
Pixel
Histogram
Histogram
KNN 20.4% 19.6% 20.4% 33.4%
KNN 20.4% 19.6% 20.4% 33.4%
ANN
ANN 9.1%
9.1% 19.3%
19.3% 9.4%
9.4% 31.4%
31.4%
XGBoost
XGBoost 25.2%
25.2% 20.7%
20.7% 33.4%
33.4% 34.8%
34.8%
Three-layerCNN
Three-layer CNN 80.1%
80.1% 83.3%
83.3%
Transfer Learning
Transfer Learning 91.0%
91.0% 92.6%
92.6%

4.3. Discussion
4.3. Discussion
In this
In this research,
research, we
we built
built aa geological
geological structure
structure identification model based on Inception-v3. In In aa
comparison between KNN, ANN, XGBoost, and CNN, the convolutional layers
comparison between KNN, ANN, XGBoost, and CNN, the convolutional layers and pooling layers and pooling layers
in Inception-v3
in Inception-v3 were
were effective
effective in
in extracting
extracting features
features from
from images
images of of the
the small
small dataset.
dataset. Actually,
Actually, the
the
small geological
small geological structures
structures dataset
dataset wewe used
used in
in the
the research
research has
has its own characters. For For example,
example, the
the
boudins in Figure 9a–c are very different, even though they have the same label. On
boudins in Figure 9a–c are very different, even though they have the same label. On the other hand, the other hand,
boudinand
boudin andxenolith
xenolitharearewith
with different
different labels;
labels; however,
however, theythey are similar
are similar and easy
and easy to be to be mixed
mixed in somein
some cases,
cases, as shown
as shown in Figure
in Figure 9c,d.9c,d. In Figure
In Figure 7, the
7, the identification
identification result
result of ofboudin
boudinalso
alsoproved
provedthat.
that.
Meanwhile, the
Meanwhile, the prediction
prediction shows the probability
probability of xenolith
xenolith is
is 29.4%,
29.4%, which
which is is higher
higher than
than that
that of
of
boudin. The
boudin. The result
result shows
shows that
that the
the features
features of boudin and xenolith are similar in some cases.

(a) (b)

(c) (d)
Figure
Figure 9.
9. (a–c)
(a–c) Boudin;
Boudin; (d)
(d) Xenolith.
Xenolith.

We also
We alsobuilt
builta CNN
a CNN model
modelto establish identification.
to establish Because
identification. the dataset
Because was small,
the dataset waswesmall,
designedwe
a simple net
designed with two
a simple convolutional
net with layers and
two convolutional two fully
layers and twoconnected layers, while
fully connected thewhile
layers, modelthewas still
model
overfitting.
was The single
still overfitting. Thearchitecture of CNN did
single architecture not work
of CNN in any
did not workcases. In ConvNets,
in any Palafox etPalafox
cases. In ConvNets, al. [24]
also
et al.designed
[24] alsoseveral
designedCNN models
several withmodels
CNN differentwith
architectures
different in different cases.
architectures The retrained
in different cases.model
The
based on Inception-v3 can extract image features effectively with the convolutional
retrained model based on Inception-v3 can extract image features effectively with the convolutional layers and pooling
layers.and
layers It ispooling
not necessary
layers.toItredesign model architecture
is not necessary to redesigninmodel
the transfer learning
architecture in model, and itlearning
the transfer worked
well onand
model, the small dataset
it worked wellinon
this
theresearch. It was in
small dataset hard
thistoresearch.
extract real image
It was hardfeatures based
to extract realonimage
pixel
vector and histogram in which translation invariance could not be kept. The background
features based on pixel vector and histogram in which translation invariance could not be kept. The noise also
interfered the
background features
noise extractionthe
also interfered significantly. As a result,
features extraction the inaccurate
significantly. As a input
result,led
theto a low accuracy
inaccurate input
led to a low accuracy in KNN, ANN, XGBoost. Actually, some feature pre-processing methods can
Appl. Sci. 2018, 8, 2493 14 of 16

in KNN, ANN, XGBoost. Actually, some feature pre-processing methods can be applied in model
training. The restricted Boltzmann machines (RBM) pre-processing method [29] and the mixture of
handcrafted and learned features [30] can improve the model performance. Model ensemble [38] is
also a robust method to enhance the feature extraction from images. Model ensemble and feature
engineering are going to be applied in the model establishment in the further study.

5. Conclusions
In this research, we built the geological structure identification model based on a small dataset
and the Inception-v3 model. The grayscale and color images datasets were both trained to construct
different models. The two models had an accuracy of 91.0% and 92.6%, respectively. At the same
time, we used 60 engineering images to test the model. The top-1 and top-3 accuracies were 83.3%
and 90.0%, which showed the kernels and pooling layers in the Inception-v3 model could extract
image features effectively. CNN models with different layers were built as well, while the model
was overfitting in training even just with two convolutional layers and two fully connected layers.
Three convolutional layers were adopted to establish the model in our study. The best parameters
in CNN are hard to reach because it depends on experience. We also used OpenCV to build pixel
feature based on origin pixel information and a pixel’s histogram. However, the images features
could not be extracted accurately in this way, which led to low accuracy in KNN, ANN, and XGBoost
models. More feature engineering methods should be considered in the future. The retrained models
based on Inception-v3 were trained using transfer learning method with color and grayscale datasets
and had a small difference in accuracy, which indicated that color had little influence on geological
structure identification.
There are also some weaknesses in the model trained by a small dataset. Test data is small and
overfitting still exists in the training process. Even though data augmentation was adopted, some
patterns and features were not learned by the model. In this research, we proved the feasibility of
transfer learning for geological structures classification. If the model is applied in practice in the future,
more data should be added.
Transfer learning based on the Inception-v3 model has strong adaptability for a small dataset.
In the future, we are going to extend our dataset and combine the model with a UAV, which can be
applied as a tool in geological surveys.

Author Contributions: Y.Z. wrote the code and the paper; G.W. gave professional geological guidance and the
image data; M.L. provided the idea and edited the manuscript; S.H. collected and analysed the data.
Funding: This research was funded by the Tianjin Science Foundation for Distinguished Young Scientists of
China, Grant no. 17JCJQJC44000 and the National Natural Science Foundation for Excellent Young Scientists of
China, Grant no. 51622904.
Conflicts of Interest: The authors declare no conflict of interest.

References
1. Fleming, R.W.; Johnson, A.M. Structures associated with strike-slip faults that bound landslide elements.
Eng. Geol. 1989, 27, 39–114. [CrossRef]
2. Fisher, M.A.; Normark, W.R.; Greene, H.G.; Lee, H.J.; Sliter, R.W. Geology and tsunamigenic potential of
submarine landslides in Santa Barbara Channel, Southern California. Mar. Geol. 2005, 224, 1–22. [CrossRef]
3. Vasu, N.N.; Lee, S.R. A hybrid feature selection algorithm integrating an extreme learning machine for
landslide susceptibility modeling of Mt. Woomyeon, South Korea. Geomorphology 2016, 263, 50–70. [CrossRef]
4. Dickson, M.E.; Perry, G.L.W. Identifying the controls on coastal cliff landslides using machine-learning
approaches. Environ. Model. Softw. 2016, 76, 117–127. [CrossRef]
5. Zhong, D.H.; Li, M.C.; Song, L.G.; Wang, G. Enhanced NURBS modeling and visualization for large 3D
geoengineering applications: An example from the Jinping first-level hydropower engineering project, China.
Comput. Geosci. 2006, 32, 1270–1282. [CrossRef]
Appl. Sci. 2018, 8, 2493 15 of 16

6. Li, M.; Zhang, Y.; Zhou, S.; Yan, F. Refined modeling and identification of complex rock blocks and
block-groups based on an enhanced DFN model. Tunn. Undergr. Space Technol. 2017, 62, 23–34. [CrossRef]
7. Li, M.; Han, S.; Zhou, S.; Zhang, Y. An Improved Computing Method for 3D Mechanical Connectivity Rates
Based on a Polyhedral Simulation Model of Discrete Fracture Network in Rock Masses. Rock Mech. Rock Eng.
2018, 51, 1789–1800. [CrossRef]
8. Vasuki, Y.; Holden, E.J.; Kovesi, P.; Micklethwaite, S. Semi-automatic mapping of geological Structures using
UAV-based photogrammetric data: An Image analysis approach. Comput. Geosci. 2014, 69, 22–32. [CrossRef]
9. Bemis, S.P.; Micklethwaite, S.; Turner, D.; James, M.R.; Akciz, S.; Thiele, S.T.; Bangash, H.A. Ground-based
and UAV-based photogrammetry: A multi-scale, high-resolution mapping tool for structural geology and
paleoseismology. J. Struct. Geol. 2014, 69, 163–178. [CrossRef]
10. Vollgger, S.A.; Cruden, A.R. Mapping folds and fractures in basement and cover rocks using UAV
photogrammetry, Cape Liptrap and Cape Paterson, Victoria, Australia. J. Struct. Geol. 2016, 85, 168–187.
[CrossRef]
11. Młynarczuk, M.; Górszczyk, A.; Ślipek, B. The application of pattern recognition in the automatic
classification of microscopic rock images. Comput. Geosci. 2013, 60, 126–133. [CrossRef]
12. Li, N.; Hao, H.; Gu, Q.; Wang, D.; Hu, X. A transfer learning method for automatic identification of sandstone
microscopic images. Comput. Geosci. 2017, 103, 111–121. [CrossRef]
13. Shu, L.; McIsaac, K.; Osinski, G.R.; Francis, R. Unsupervised feature learning for autonomous rock image
classification. Comput. Geosci. 2017, 106, 10–17. [CrossRef]
14. Trevisani, S.; Rocca, M. MAD: Robust image texture analysis for applications in high resolution
geomorphometry. Comput. Geosci. 2015, 81, 78–92. [CrossRef]
15. Hinton, G.E.; Salakhutdinov, R.R. Reducing the dimensionality of data with neural networks. Science 2006,
313, 504–507. [CrossRef] [PubMed]
16. LeCun, Y.; Bengio, Y.; Hinton, G. Deep learning. Nature 2015, 52, 436. [CrossRef] [PubMed]
17. He, K.; Zhang, X.; Ren, S.; Sun, J. Deep residual learning for image recognition. In Proceedings of the
IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV, USA, 26 June–1 July 2016;
pp. 770–778.
18. Hinton, G.; Deng, L.; Yu, D.; Dahl, G.E.; Mohamed, A.; Jaitly, N.; Senior, A.; Vanhoucke, V.; Nguyen, P.;
Sainath, T.N.; et al. Deep neural networks for acoustic modeling in speech recognition: The shared views of
four research groups. IEEE Signal Process. Mag. 2012, 29, 82–97. [CrossRef]
19. Kim, S.; Bae, W.C.; Masuda, K.; Chung, C.B.; Hwang, D. Fine-Grain Segmentation of the Intervertebral Discs
from MR Spine Images Using Deep Convolutional Neural Networks: BSU-Net. Appl. Sci. 2018, 8, 1656.
[CrossRef]
20. Greenspan, H.; van Ginneken, B.; Summers, R.M. Guest editorial deep learning in medical imaging:
Overview and future promise of an exciting new technique. IEEE Trans. Med. Imaging 2016, 35, 1153–1159.
[CrossRef]
21. Kim, S.; Bae, W.C.; Masuda, K.; Chung, C.B.; Hwang, D. Semi-Automatic Segmentation of Vertebral Bodies
in MR Images of Human Lumbar Spines. Appl. Sci. 2018, 8, 1586. [CrossRef]
22. Han, W.; Feng, R.; Wang, L.; Cheng, Y. A semi-supervised generative framework with deep learning features
for high-resolution remote sensing image scene classification. ISPRS-J. Photogramm. Remote Sens. 2017, 145,
23–43. [CrossRef]
23. Li, W.; Zhou, B.; Hsu, C.Y.; Li, Y.; Ren, F. Recognizing terrain features on terrestrial surface using a deep
learning model: An example with crater detection. In Proceedings of the 1st Workshop on Artificial
Intelligence and Deep Learning for Geographic Knowledge Discovery, Los Angeles, CA, USA, 7–10
November 2017; pp. 33–36.
24. Palafox, L.F.; Hamilton, C.W.; Scheidt, S.P.; Alvarez, A.M. Automated detection of geological landforms on
Mars using Convolutional Neural Networks. Comput Geosci. 2017, 101, 48–56. [CrossRef] [PubMed]
25. Nogueira, K.; Penatti, O.A.B.; dos Santos, J.A. Towards better exploiting convolutional neural networks for
remote sensing scene classification. Pattern Recognit. 2017, 61, 539–556. [CrossRef]
26. Xu, G.; Zhu, X.; Fu, D.; Dong, J.; Xiao, X. Automatic land cover classification of geo-tagged field photos by
deep learning. Environ. Model. Softw. 2017, 91, 127–134. [CrossRef]
27. Wu, Y.; Qin, Y.; Wang, Z.; Jia, L. A UAV-Based Visual Inspection Method for Rail Surface Defects. Appl. Sci.
2018, 8, 1028. [CrossRef]
Appl. Sci. 2018, 8, 2493 16 of 16

28. He, J. Learn Boudin. Available online: http://blog.sina.com.cn/s/blog_69fb738a0102vmkh.html


(accessed on 3 July 2015).
29. Mousas, C.; Anagnostopoulos, C.N. Learning Motion Features for Example-Based Finger Motion Estimation
for Virtual Characters. 3D Res. 2017, 8, 25. [CrossRef]
30. Nanni, L.; Ghidoni, S.; Brahnam, S. Handcrafted vs. non-handcrafted features for computer vision
classification. Pattern Recognit. 2017, 71, 158–172. [CrossRef]
31. Chen, T.; Guestrin, C. Xgboost: A scalable tree boosting system. In Proceedings of the 22nd ACM SIGKDD
International Conference on Knowledge Discovery and Data Mining, San Francisco, CA, USA, 13–17 August
2016; pp. 785–794.
32. Altenberger, F.; Lenz, C. A Non-Technical Survey on Deep Convolutional Neural Network Architectures.
arXiv, 2018; arXiv:1803.02129.
33. Qureshi, A.S.; Khan, A.; Zameer, A.; Usman, A. Wind power prediction using deep neural network based
meta regression and transfer learning. Appl. Soft Comput. 2017, 58, 742–755. [CrossRef]
34. Zhang, Y.; Li, M.; Han, S. Automatic identification and classification in lithology based on deep learning in
rock images. Acta Petrol. Sin. 2018, 34, 333–342.
35. Szegedy, C.; Vanhoucke, V.; Ioffe, S.; Shlens, J.; Wojna, Z. Rethinking the inception architecture for computer
vision. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Seattle, WA,
USA, 27–30 November 2017; pp. 2818–2826.
36. Bradski, G.; Kaehler, A. The OpenCV library. Dr. Dobbs J. 2000, 25, 120.
37. Pedregosa, F.; Varoquaux, G.; Gramfort, A.; Michel, V.; Thirion, B.; Grisel, O.; Blondel, M.; Prettenhofer, P.;
Weiss, R.; Dubourg, V.; et al. Scikit-learn: Machine learning in Python. J. Mach. Learn. Res. 2011, 12,
2825–2830.
38. Nanni, L.; Ghidoni, S.; Brahnam, S. Ensemble of Convolutional Neural Networks for Bioimage Classification.
Appl. Comput. Inform. 2018. [CrossRef]

© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).

You might also like