Research Article  Open Access
Laercio B. Gonçalves, Fabiana R. Leta, "Macroscopic Rock Texture Image Classification Using a Hierarchical NeuroFuzzy Class Method", Mathematical Problems in Engineering, vol. 2010, Article ID 163635, 23 pages, 2010. https://doi.org/10.1155/2010/163635
Macroscopic Rock Texture Image Classification Using a Hierarchical NeuroFuzzy Class Method
Abstract
We used a Hierarchical NeuroFuzzy Class Method based on binary space partitioning (NFHBClass Method) for macroscopic rock texture classification. The relevance of this study is in helping Geologists in the diagnosis and planning of oil reservoir exploration. The proposed method is capable of generating its own decision structure, with automatic extraction of fuzzy rules. These rules are linguistically interpretable, thus explaining the obtained data structure. The presented image classification for macroscopic rocks is based on texture descriptors, such as spatial variation coefficient, Hurst coefficient, entropy, and cooccurrence matrix. Four rock classes have been evaluated by the NFHBClass Method: gneiss (two subclasses), basalt (four subclasses), diabase (five subclasses), and rhyolite (five subclasses). These four rock classes are of great interest in the evaluation of oil boreholes, which is considered a complex task by geologists. We present a computer method to solve this problem. In order to evaluate system performance, we used 50 RGB images for each rock classes and subclasses, thus producing a total of 800 images. For all rock classes, the NFHBClass Method achieved a percentage of correct hits over 73%. The proposed method converged for all tests presented in the case study.
1. Introduction
Oil is an essential energy resource for industrial production. It can be found in a variety of geological environments. The exploitation of oil is a largescale activity, in which the acquisition, distribution and use of expert knowledge are critical to decision making. Two sets of data are of fundamental importance in the exploitation of a new oilfield: the oil reservoir geometry and the description of the type of porous rock that holds the oil. When analyzing the oil reservoir geometry, it is possible to identify the amount of oil in the reservoir. The second set of data consists in describing the porous rock that holds the oil, that is, the reservoir rock. The quality of a reservoir is determined by the particular characteristics of its rocks, such as the minerals that form it, the volume and shape of pores (spaces that store fluids within the rock), the connections between the pores and the physicalchemical processes that may have modified these characteristics. The study of reservoir rocks is based on a systematic description of rock samples collected from oil exploration boreholes. Petrography is an activity performed in the laboratory, which incorporates the results of macroscopic and microscopic rock analyses. In macroscopic analysis, rock samples consist of cylindrical pieces cleaved by drill bit, extracting “witness” samples. Using these samples, slices are withdrawn and prepared in thin sections (0.03 mm), which are then, in turn, analyzed with the use of optical microscopes of polarized light. In macroscopic analyses, several physical characteristics, such as color, structure, texture, grain size, mineral orientation and fossil content, when available, are described. The existence of a large number of classes and subclasses makes the task of rock classification difficult, requiring extensive training, since it depends on the identification of features based on images.
This paper introduces a NeuroFuzzy Hierarchical Class model based on binary space partitioning for rock texture image automatic classification, called NFHBClass method. The system uses the following features: spatial variation coefficient, Hurst coefficient, entropy and cooccurrence matrix. Four rock types have been evaluated by the NFHBClass method, namely: gneiss (two subclasses), basalt (four subclasses), diabase (five subclasses), and rhyolite (five subclasses). These four rock types are of great interest to evaluate oil boreholes, which is considered by geologists to be a complex task. In the present study, a computer method to solve this problem is presented.
2. NFHBClass Method
The NFHBClass [1] method is an extension of the NFHB Inverted method [2, 3] used in data classification. The main difference between the NFHB Inverted method and NFHBClass method is the construction of system structure. In NFHB Inverted method, the neurofuzzy structure is created by NFHB method [4] and the pattern classification system is then formed. On the other hand, the NFHBClass Method is capable of generating its own pattern classification structure, without the use of NFHB method.
2.1. Basic NFHBClass Cell
A basic NFHBClass cell is a mini neurofuzzy system that performs a fuzzy binary partitioning in a given area, according to the relevance of functions described by (2.1) and Figure 1(a). The NFHBClass cell generates two precise outputs (crisp) after a defuzzification process. Figure 1(b) shows the basic NFHBClass cell representation and Figure 1(c) illustrates it in detail
(a)
(b)
(c)
The outputs (crisp) in an NFHBClass cell are given by (2.2) where can be defined by one of the two scenarios below.(i)The first cell input: in this case = 1. The value “1” in the first cell input represents the entire input space, that is, the entire discussion universe of the variable that is being used as an input cell.(ii)The output of a previous level: in this case = , where represents one of two outputs of a generic cell “j”, whose value is also calculated by (2.2).
In NFHBClass basic cell, the highpertinence function () is implemented by a sigmoid function and the lowpertinence function () is implemented as its complement . The complement used leads to a simplification of the defuzzification procedure performed by (2.2), because the sum given by (2.3) (below) is equal to 1 for any “” value
Therefore, the output equations, given by (2.2), are simplified to: or where 's are the firing levels of each rule (partition) and are given by and .
2.2. NFHBClass Architecture
Figure 2(a) shows an example of NFHBClass architecture, obtained in the training system and applied to a database that has three distinct classes; while its corresponding partition is illustrated in Figure 2(b). The structure has been created automatically without the need of using NFHB method in the training stage.
(a)
(b)
In NFHBClass architecture, the system has several outputs which are connected to Tconorm cells that define the classes (Figure 2(a)). The system output (class 1, class 2 or class 3) with the highest value defines the class to which the pattern belongs.
The outputs of the leafcells are listed below:
After calculating the output of each leaf cell, the connection between these cells to the Tconorm neurons is performed, and then the final output of the pattern classifier is obtained. Each Tconorm neuron is associated with a specific class, as can be seen in the example in Figure 2(a), where there are three distinct classes, and consequently, three Tconorm neurons.
The connections between the leafcells with the Tconorm neurons are made, initially, by connecting all the leafcells with all the Tconorm neurons, according to the number of classes in which the database is structured. After this connection, it is necessary to establish weights for these connections (arcs). For determining the weight allocation, we used the least squares method, applying GaussSeidel iterative method [5].
Once we defined the strategy of how the leafcells were connected to Tconorm neurons and their corresponding weight links, it was necessary to define which Tconorm operators would be used to obtain the final output of the NFHBClass. All the outputs of the leafcells were connected to all Tconorm neurons, as shown in Figure 2(a). Each of these outputs is multiplied by the weight of its corresponding connection with Tconorm neurons. The next step is then to define how all of these Tconorm neurons input data derived from the leafcells should be treated.
In the example of Figure 2(a), the outputs of three Tconorm neurons are calculated according to (2.7) where:(i)y1, y2, y3, y4, and y5 are the outputs of the leafcells;(ii), , , , , , , , , , , , , , and are the weights of the link between the leaf cell and the Tconorm neuron;(iii) is the Tconorm operator used for processing the neuron output.
In this paper, the limitedsum Tconorm operator [6] has been used. This operator is the most appropriate in this case, since it considers all inputs in the output calculation. It is worth noting that another Tconorm operator that is very popular in the literature, the max operator, only considers the maximum membership value, thus ignoring the membership values of the input data.
The final output obtained in the NFHBClass Method is determined by the highest output obtained among all the Tconorm neurons, thus indicating the class to which the input pattern belongs.
2.3. Learning Algorithm
In neurofuzzy literature, the learning process is generally divided in two spheres: () structure identification and () parameter adjustments. The NFHBClass method follows the same process. However, the NFHBClass method performs both learning tasks simultaneously. The learning algorithm of this method follows nine steps, as illustrated in Figure 3.
Learning steps.(1)An initial bipartition is created, dividing the input space into two fuzzy sets—high and low—for the input variable . In this step, the first NFHBClass cell is created, which is called a root cell.(2)The b parameter (the sigmoid inflexion point, Figure 1(a)) is initialized. The other sigmoid parameter a is heuristically initialized. Equation (2.8) illustrate the initialization process: where and are the lower and upper limits of the cell's input variable.(3)In this step, the weights of the arcs that connect the cells to Tconorm neurons are adjusted by ordinary least squares method (as described in Section 2.2). After calculating the weights, the value of each Tconorm output neuron of the NFHBClass is computed. (4)The total system error is then calculated for the entire training set, according to the following rootmeansquare (rms) error expression, (2.9): where = number of patterns in the training set; is the Tconorm neuron output, which represents the “c” class of the index “n” pattern; is the desired Tconorm neuron output which represents the “c” class of the index “n” pattern. For example, we can consider a database with 3 different classes (Class 1, Class 2 and Class 3). There are also “j” and “ ” database index belonging to Class 2 and 3, respectively. Thus, we have the following desired outputs to the pattern “j” given by: , , , for the pattern , they are given by: ; , . Thus, the system error considering these two patterns (index “j” and “ ”) is given by (2.10): In order to calculate the total system error, we generalize the error for all patterns in the database, according to (2.9). If the error is below the minimum desired, then the learning process is finished. Otherwise, the learning process continues in step 5.(5)In this step, the fuzzy weight adjustments can be computed with two different algorithms. (a)Maintaining the parameters “” and “” from the previous pertinence functions without any change. In this case, fixed partitioning is used. (b)Using a “Descending Gradient” method to adjust the parameters “” and “”, which corresponds to the pertinence functions of the antecedent. In this case, an adaptive partitioning is conducted. (6)Each bipartition is evaluated regarding its contribution to the total error, and also in terms of the acceptable minimum error. Each bipartition with an unacceptable error is separated. The evaluation of the error generated for the data set that falls on the partitioning ij, for example, is calculated by (2.11) where and are the rules' firing levels for pattern “n”.(7)In order to prevent the system's structure from growing indefinitely, a dimensionless parameter is created and named decomposition rate (). During the learning process, the decomposition rate is constantly compared with the population density of patterns that fall in a specific bipartition. When the population density of patterns (the rate between the number of patterns in a bipartition and the total number of patterns) falls below the decomposition rate, this bipartition cannot be further partitioned, thus limiting the structure. Therefore, a very low value for can result in a very big structure, thus compromising the generalization capability. On the other hand, if a large value is chosen, the structure might be too small to learn the patterns with the desired accuracy. (8)This step performs the decomposition of the separate partitions. For each bipartition a detached decomposition process is performed, consisting of the following process: it allocates a new node (new cell) in the BSP structure for the separate BSP bipartition (it is divided into two). Thus, two new pertinence functions are generated; which will constitute the two newly created partitions. Figure 4 presents a graphic representation of this process. (9)Go back to step “3” to continue the learning process.
2.4. Strategies for Attributes Selection
In the area of pattern classification, it is important to define the goals and to select, from the available database, which characteristics will be used. These features are the attributes considered relevant in the pursuit of significant goals.
In the case of rock classification, there is a large number of relevant variables available, such as the Hurst coefficient for grayscale and RGB channels, grayscale and RGB channels spatial variation coefficient, in addition to the descriptors used to define texture characteristics obtained in image cooccurrence matrices. In general, we choose the most representative collection of variables, the socalled features.
The correct attribute selection strategy is that which avoids unnecessary partitioning, resulting in more compact BSP tree structures, consequently resulting in better generalization, fewer rules and greater interpretation degrees [2]. In this study, two methods for attribute selection have been tested: the Jang algorithm [7] which showed better performance, and the entropy method [8]. In addition to those methods, there are several studies using other techniques for feature selection, such as principal components analysis [9–12], machine learning [13, 14]; hierarchical clustering [15, 16] and genetic algorithms [17–19].
Considering the Jang algorithm, two strategies for selection—fixed and adaptive—have been proposed to deal with the selection problem, that is, which input variables should be applied to partitioning inputs of each NFHBClass cell.
In the fixed selection sets strategy, where the order of the attributes is determined by Jang algorithm, during the NFHBClass Method learning process and architecture construction, each of these features is chosen and used as input for each level of the BSP tree. The same input (attribute) is used for all nodes in the same level. This strategy generates unnecessary partitioning due to the fact that all nodes at the same level are forced to use the same fixed input, which is not always the best characteristic for this node. One of the advantages of this strategy is that the computational cost is very small, since the feature selection is performed only once, before the learning process. The result obtained is very competitive. In many cases it results in an interesting alternative, considering time and performance.
In contrast to the methodology described above, the adaptive selection strategy chooses the best input feature (attribute) for each tree node, regardless of the level where the node is. For each node the best input is chosen using only the subset associated with this node. This strategy generates more compact neurofuzzy BSP structures according to the specialization of each node, resulting in better generalization performance. However, the computational cost is higher, since the selection algorithm must be run for each new node of NFHBClass Model.
2.5. Fuzzy Rules Extraction
The NFHBClass Method is capable of generating interpretable rules with the purpose of extracting information from a specific database. An example of the rules extracted in this model is: “If is high and is small and is hot, then class is ”.
Figure 6 shows an example of NFHBClass method. In this approach, each partition of the input space (leaf node) will have an associated rule. The elements of each partitioning are associated to all existing classes, with different membership levels.
As demonstrated by Gonçalves et al. [3], the rule extracting process consists of the following steps:(i)routing on the NFHBClass tree, calculating the firing level of each rule in each partitioning.(ii)evaluation of the rules with the use of fuzzy accuracy and coverage.
Fuzzy Accuracy
The accuracy of a rule is a measure of how well it applies to the data. In order to determine how suitable a particular fuzzy rule describes a specific class , the fuzzy accuracy measurement is presented in (2.12)
where is the rule accuracy for class in partition i; is the membership level of pattern j for class in partition i; is the membership level of pattern j in partition i (regardless of the class); is the total number of class patterns; is the total number of patterns in partition i.
If the database has different numbers of patterns per class, the correction factor must be applied in order to balance the nonuniform pattern distribution. Hence, the correct fuzzy accuracy is calculated by (2.13) where is is correction factor for accuracy of class in partition i; is total number of classes; is number of patterns of class j; is number of patterns of class .
The accuracy sum related to all classes in a specific partition is always equal to 1, since each node's membership function is complementary. Besides, each pattern's level of presence, in each partition, is calculated by the intersection of all firing levels in each node, using the product operator.
Fuzzy Coverage
Fuzzy coverage provides a measure of how comprehensive a rule is in relation to the total number of patterns in the base rule, that is, it measures “how many” patterns are affected by the available rule. The fuzzy coverage definition is given by (2.14)
where fuzzy coverage; P = total number of patterns in the database; is the membership level of the j pattern in the i partition; and is the number of patterns in i partition.
Due to the aforementioned features (complementary membership functions and product operator); all rule composition covers the total number of patterns. In other words, the fuzzy coverage sum of all partitions is equal to 1.
3. Texture
According to Turceyan and Jain [20], image texture is a combination of similar patterns with a regular frequency. It is an attribute that represents a spatial pixel arrangement in a region [21]. Jain [22] defines texture as a basic pattern repetition in space. Conci et al. [23] refer to the texture as a visual pattern that has some homogeneity properties that does not result simply in a color or intensity; it can be defined as the visual appearance of a surface. Although there is no precise definition for texture, it is easily perceived by human vision due to its range of visual patterns composed by subpatterns, which have underlining properties, such as uniformity, density, roughness, regularity, intensity [24].
3.1. Rock Texture—Related Works
Lepistö et al. [25] have shown a classification method based on structural and spectral characteristics of rocks. In order to extract features that could identify the texture, a spectral feature of a set of color parameters was used, and in order to define the structural aspect they used cooccurrence matrices [26]. For rock classification, the nonhomogeneous textures were divided into blocks. Lepistö et al. [27] applied Gabor filters in rock color images for classification. Autio et al. [28] used cooccurrence matrices with Hough transform for rock classification. Starkey and Samantary [29] used morphology and color parameters to distinguish rock images. Genetic programming techniques with edge detectors were also used by Ross et al. [30] and by Starkey and Samantary [29] in petrography. Genetic programming with decision trees was used for grain segmentation by Ross et al. [31]. Thompson et al. [32] used neural networks for mineral classification. Fueten and Manson [33] used neural networks for detecting edges in petrography color images in order to discriminate the grains.
In this work, the following has been used as descriptors of texture: Spatial Variation Coefficient—SVC—[23], Hurst coefficient [34], entropy [35] and cooccurrence matrices [24, 36].
4. Case Study
To evaluate the system performance we used 50 RGB images () for each rock class and subclass, thus producing a total of 800 images. The rock classes and subclasses which compose the image database are: gneiss (two subclasses), basalt (four subclasses), diabase (five subclasses) and rhyolite (five subclasses). The images which have been analysed were of natural rocks, without any kind of treatment (polishing). Figure 5 shows this classification.
From each image we extracted the following: Hurst coefficient for gray and color images (a coefficient for each RGB channel); spatial variation coefficient (gray and color); entropy and cooccurrence matrix. From the 160 cooccurrence matrices, we calculated the average matrices in the 0°, 45°, 90°, and 135° directions for each distance, resulting in 40 matrices for the 40 distances. For the analysis of these 40 matrices, we used the following descriptors: contrast, homogeneity, energy, entropy and correlation. We then generated five curves for each image, and both the highest value and the area were used as attributes to determine the texture of the images. Table 1 shows all the attributes.

The training models stage is performed in accordance with the following steps.(1)Initially, only the subclass classification of gneiss, basalt, diabase, and rhyolite rocks is made. With this, the following databases are created:(a)a database with just 2 gneiss rock subclasses: granite gneiss and leucocratic gneiss,(b)a database with just 4 basalt rock subclasses: aphanitic aphyric basalt, oxidized aphanitic aphyric basalt, porfiritic basalt and amygdaloid porfiritic basalt,(c)a database with just 5 diabase rock subclasses: altered amygdaloid diabase, equigranular diabase, porfiritic diabase, altered porfiritic diabase and amygdaloid porfiritic diabase,(d)a database with just 5 rhyolite rock subclasses: altered rhyolite, amygdaloid rhyolite, porfiritic rhyolite, amygdaloid porfiritic rhyolite and venulated amygdaloid porfiritic rhyolite. (2)Then the HNFBClass Method is tested for the rock macro classification. In this process, we create:(a)a database with just 2 rock macro classes: gneiss and basalt, without considering subclasses, (b)a database with just 2 rock macro classes: diabase and rhyolite, without considering subclasses, (c)a database with just 3 rock macro classes: basalt, diabase and rhyolite, without considering subclasses, (d)a database with just 3 rock macro classes: gneiss, basalt, diabase, and rhyolite, without considering subclasses.
In all tests, we use 50% of the database to train the HNFBClass Method and 50% to validate it. Tables 2 and 6 summarize the performance of HNFBClass Method with selection strategies: fixed (NFHBClass^{ 1}) and adaptive (NFHBClass^{2}), for subclass classification and macro classification, respectively.

For subclass classification, the databases are organized as follows:(i)index 1 (Gneiss1, Basalt1, Diabase1, Rhyolite1): a database with only gray scale coefficients,(ii)index 2 (Gneiss2, Basalt2, Diabase2, Rhyolite2): a database with only RGB channels coefficients,(iii)index 3 (Gneiss3, Basalt3, Diabase3, Rhyolite3): a database including RGB and grayscale coefficients,(iv)index 4 (Gneiss4, Basalt4, Diabase4, Rhyolite4): a database with the attributes extracted from cooccurrence matrices.
For macro classification, the databases are organized as follows:(i)gneiss and basalt1; diabase and rhyolite1; basalt, diabase and rhyolite1; gneiss, basalt, diabase, and rhyolite1: database containing only gray scale coefficients,(ii)gneiss and basalt2; diabase and rhyolite2; basalt, diabase, and rhyolite2; gneiss, basalt, diabase, and rhyolite2: database containing only RGB channels coefficients,(iii)gneiss and basalt3: diabase and rhyolite3; basalt, diabase, and rhyolite3; gneiss, basalt, diabase, and rhyolite3: database including RGB and grayscale coefficients.
When using the attributes extracted from the cooccurrence matrix, poorer results are obtained than with the use of other attributes. Therefore, they have not been used in tests of macro classification of rocks.
With the intent of comparing with NFHBClass Method, some backpropagation neural networks have been used. Tables 3 and 7 show the configurations used for subclass classification and macro classification, respectively. Tables 4 and 8 present the performance of neural networks for subclass classification and macro classification respectively.


Tables 5 and 9 summarize the performance of NFHBClass Method with selection strategies: fixed (NFHBClass^{1}) and adaptive (NFHBClass^{2}), for subclass classification and macro classification, respectively. These tables are based on the largest percentage of the overall set validation for each method.





As observed in Table 5, the best results in rock classification have been obtained with the NFHBClass Methods. It is also noted that NFHBClass^{2} obtained a lower number of rules than NFHBClass^{1} models.
As exposed in Table 9, the best results in macro rock classification have been observed in the NFHBClass Methods. The higher the number of patterns and classes, the higher the size of the NFHBClass become, that is, it is necessary that the model “learns” greater diversities of patterns.
4.1. Fuzzy Rule Extractions
In order to illustrate the tree structure obtained by the NFHBClass Method, we have selected the test performed with gneiss rock class. We used the database containing only the RGB channels' coefficients as attributes (Gneiss2), using the adaptive feature selection strategy and decomposition rate of = 0.1. In this case, the success in the training set was 96% and the validation set was 94%. Figure 6 shows the complete structure presented by the HNFBClass Method for the gneiss rock. The illustrated Class1 and Class2 represent the subclasses granite gneiss and leucocratic gneiss, respectively.
In Figure 6, the attributes are encoded by: X2—Hurst coefficient for Red channel, X3—Hurst coefficient for Green channel, X4—Hurst coefficient for Blue channel, X6—SVC for Red channel, X7—SVC for Green channel, X8—SVC for Blue channel, X10—Entropy for Red Channel, X11—Entropy for Green Channel, X12—Entropy for Blue channel.
Following the path in the tree, it is possible to extract rules that describe the database of gneiss rock. Table 10 lists the fuzzy rules extracted from the tree structure in Figure 6.

5. Conclusions
This paper presents an NFHBClass Method for the classification of rocks, constituting an approach which creates its own architecture. Two strategies for feature selection in the database have been adopted; fixed and adaptive. Using the algorithm embedded in the model of Jang, it is not necessary to use principal component analysis to determine the best combination of attributes which is more representative for the rock textures.
The results obtained with the NFHBClass Method, in terms of the classification task, achieved more than 73% accuracy in the validation set for all classes of rocks, which indicates its great potential in performing this task.
For the gneiss rock class, the best result in the four databases tested was 98% in the validation set. For the basalt rock class, the result was 87%. For the diabase rock class, the best result for all databases tested was 73.6% in the validation set. For the rhyolite rock class we obtained 78.4%.
One of the advantages of NFHBClass Method is the fact that it generates fuzzy rules that explain the extraction of knowledge, that is, it is possible to have a very satisfactory rating. Therefore, it presents a explanation for the classification, which does not happen if a neural network or a committee of neural networks are employed in a classification task.
Moreover, another advantage of NFHBClass Method is the fact that it avoids the task of testing multiple structures in the search of a good performance to the problem. In the case of neural networks, this means empirically determining the best number of hidden layers and processing elements (neurons) for each layer. In the case of fuzzy systems, it means finding the best number of partitions in the universe of discourse for each input variable. In addition, it is important to consider the minimization of problems generated by over and under dimensioning of these structures (overfitting and noconvergence).
As a disadvantage, it is important to point to the fact that the learning algorithm of the NFHBClass Method requires more complex programming than the training algorithm of the neural networks. This is due to the fact that there is no fixed structure or a constant number of adjustable parameters.
Tests with the NFHBClass Method, converged to optimum solution for the classification taking into account the fuzzy rules extraction, revealed good performance.
One of the proposals for future work is to hybridize the HNFBClass Method so that it is capable of performing the macro classification, with the subclassification done automatically. Furthermore, executing applications of this model in other areas, such as in the classification of metals, is also intended.
Acknowledgment
The authors would like to acknowledge the financial support provided by FAPERJ (E26/171.362/2001, E26/110.992/2008).
References
 L. B. Gonçalves, F. R. Leta, and S. C. de Valente, “Macroscopic rock texture image classification using an hierarchical neurofuzzy system,” in Proceedings of the 16th International Conference on Systems, Signals and Image Processing (IWSSIP '09), pp. 1–5, Chalkida, Greece, 2009. View at: Publisher Site  Google Scholar
 L. B. Gonçalves, Modelos neurofuzzy hierárquicos BSP para classificação de padrões e extração de regras fuzzy em banco de dados, M.S. thesis, Electric Engineering Department, PUCRio, Rio de Janeiro, Brazil, 2001.
 L. B. Gonçalves, M. M. B. R. Vellasco, M. A. C. Pacheco, and F. J. de Souza, “Inverted hierarchical neurofuzzy BSP system: a novel neurofuzzy model for pattern classification and rule extraction in databases,” IEEE Transactions on Systems, Man and Cybernetics Part C, vol. 36, no. 2, pp. 236–248, 2006. View at: Publisher Site  Google Scholar
 F. J. de Souza, Modelos neurofuzzy hierárquicos, M.S. thesis, Electric Engineering Department, PUCRio, Rio de Janeiro, Brazil, 1999.
 M. B. Barret, T. Chan, and J. Demmel, “Templates for the solution of linear systems: building blocks for iterative methods,” 1994, http://www.netlib.org/. View at: Google Scholar
 R. R. Yager and D. P. Filev, “Templatebased fuzzy systems modeling,” Journal of Intelligent and Fuzzy Systems, vol. 2, pp. 39–54, 1994. View at: Google Scholar
 J. S. R. Jang, “Structure determination in fuzzy modeling: a fuzzy cart approach,” in Proceedings of the IEEE International Conference on Fuzzy Systems, vol. 1, pp. 480–485, Orlando, Fla, USA, 1994. View at: Google Scholar
 A. I. Lanas, Sistemas neurofuzzy hierárquicos BSP para previsão e extração de regras fuzzy em aplicações de mineração de dados, M.S. thesis, Electric Engineering Department, PUCRio, Rio de Janeiro, Brazil, 2000.
 A. Aoyama and S. P. K. Walsh, “Nonlinear modelling of LPG %C5 content of catalytic reformer debutaniser column,” Computers & Chemical Engineering, vol. 21, supplement 1, pp. S1155–S1160, 1997. View at: Publisher Site  Google Scholar
 D. Dong and T. J. Mcavoy, “Nonlinear principal component analysis—based on principal curves and neural networks,” Computers and Chemical Engineering, vol. 20, no. 1, pp. 65–78, 1996. View at: Publisher Site  Google Scholar
 J. J. Roffel, J. F. MacGregor, and T. W. Hoffman, “The design and implementation of a multivariable internal model controller for a continuous polybutadiene polymerization train,” in Proceedings of the IFAC Symposium on Dynamics and Control of Chemical Reactors, Distillation Columns, and Batch Processes (DYCORD '89), pp. 9–15, Pergamon Press, Maastricht, The Netherlands, August 1989. View at: Google Scholar
 A. Santen, G. L. M. Koot, and L. C. Zullo, “Statistical data analysis of a chemical plant,” Computers & Chemical Engineering, vol. 21, supplement 1, pp. S1123–S1129, 1997. View at: Publisher Site  Google Scholar
 A. L. Blum and P. Langley, “Selection of relevant features and examples in machine learning,” Artificial Intelligence, vol. 97, no. 12, pp. 245–271, 1997. View at: Publisher Site  Google Scholar  Zentralblatt MATH  MathSciNet
 P. Langley, “Selection of relevant features in machine learning,” in Proceedings of the AAAI Fall Symposium on Relevance, pp. 140–144, AAAI Press, November 1994. View at: Google Scholar
 M. Dash, H. Liu, and J. Yao, “Dimensionality reduction of unsupervised data,” in Proceedings of the 9th IEEE International Conference on Tools with Artificial Intelligence (ICTAI '97), pp. 532–539, 1997. View at: Google Scholar
 L. Talavera, “Feature selection as retrospective pruning in hierarchical clustering,” in Proceedings of the 3rd International Symposium on Intelligent Data Analysis, Springer, Amsterdam, The Netherlands, 1999. View at: Google Scholar
 W. Punch, E. Goodman, M. Pei, L. ChiaShum, P. Hovland, and R. Enbody, “Further research on feature selection and classification using genetic algorithms,” in Proceedings of the International Conference on Genetic Algorithms, pp. 557–564, Springer, 1993. View at: Google Scholar
 W. Siedlecki and J. Sklansky, “A note on genetic algorithms for largescale feature selection,” Pattern Recognition Letters, vol. 10, no. 5, pp. 335–347, 1989. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 J. Yang and V. Honavar, “Feature subset selection using genetic algorithm,” IEEE Intelligent Systems and Their Applications, vol. 13, no. 2, pp. 44–48, 1998. View at: Google Scholar
 M. Turceyan and A. K. Jain, “Handbook of Pattern Recognition and Computer Vision,” in Texture Analysis, pp. 235–276, World Scientific, River Edge, NJ, USA, 1993. View at: Google Scholar
 IEEE Standard 610.4, IEEE Standard Glossary of Image Processing and Pattern Recognition Terminology, IEEE Press, New York, NY, USA, 1990.
 A. K. Jain, Fundamentals of Image Processing, Prentice Hall, New York, NY, USA, 1998.
 A. Conci, E. Azevedo, and F. R. Leta, Computação Gráfica—Teoria e Prátic, vol. 2, Elsevier, New York, NY, USA, 2008.
 R. M. Haralick, K. Shanmugam, and I. Dinstein, “Textural features for image classification,” IEEE Transactions on Systems, Man and Cybernetics, vol. 3, no. 6, pp. 610–621, 1973. View at: Publisher Site  Google Scholar
 L. Lepistö, I. Kunttu, J. Autio, and A. Visa, “Rock image classification using nonhomogenous textures and spectral imaging,” in Proceedings of the 11th International Conference in Central Europe on Computer Graphics, Visualization and Computer (WSCG '03), pp. 82–86, Plzen, Czech Republic, February 2003. View at: Google Scholar
 P. Launeau, C. A. Cruden, and J.L. Bouchez, “Mineral recognition in digital images of rocks: a new approach using multichannel classification,” Canadian Mineralogist, vol. 32, no. 4, pp. 919–933, 1994. View at: Google Scholar
 L. Lepistö, I. Kunttu, and A. Visa, “Rock image classification using color features in Gabor space,” Journal of Electronic Imaging, vol. 14, no. 4, Article ID 040503, 3 pages, 2005. View at: Publisher Site  Google Scholar
 J. Autio, S. Luukkanen, L. Rantanen, and A. Visa, “The classification and characterisation of rock using texture analysis by cooccurrence matrices and the hough transform,” in Proceedings of the International Symposium on Imaging Applications in Geology, pp. 5–8, University of Liege, Liege, Belgium, May 1999. View at: Google Scholar
 J. Starkey and A. K. Samantaray, “Edge detection in petrographic images,” Journal of Microscopy, vol. 172, no. 3, pp. 263–266, 1993. View at: Google Scholar
 B. J. Ross, F. Fueten, and D. Y. Yashkir, “Edge detection of petrographic images using genetic programming,” in Proceedings of the Genetic and Evolutionary Computation Conference (GECCO '09), 2000. View at: Google Scholar
 B. J. Ross, F. Fueten, and D. Y. Yashkir, “Automatic mineral identification using genetic programming,” Machine Vision and Applications, vol. 13, no. 2, pp. 61–69, 2001. View at: Publisher Site  Google Scholar
 S. Thompson, F. Fueten, and D. Bockus, “Mineral identification using artificial neural networks and the rotating polarizer stage,” Computers & Geosciences, vol. 27, no. 9, pp. 1081–1089, 2001. View at: Publisher Site  Google Scholar
 F. Fueten and J. Mason, “An artificial neural net assisted approach to editing edges in petrographic images collected with the rotating polarizer stage,” Computers & Geosciences, vol. 33, no. 9, pp. 1176–1188, 2007. View at: Publisher Site  Google Scholar
 J. R. Parker, Algorithms for Image Processing and Computer Vision, John Wiley & Sons, Toronto, Canada, 1997.
 L. He, Q. Pan, W. Di, and Y. Li, “Anomaly detection in hyperspectral imagery based on maximum entropy and nonparametric estimation,” Pattern Recognition Letters, vol. 29, no. 9, pp. 1392–1403, 2008. View at: Publisher Site  Google Scholar
 D. Morquin, M. B. Ghalia, and S. Bose, “An integrated neural networkbased vision system for automated separation of clods from agricultural produce,” Engineering Applications of Artificial Intelligence, vol. 16, no. 1, pp. 45–55, 2003. View at: Publisher Site  Google Scholar
Copyright
Copyright © 2010 Laercio B. Gonçalves and Fabiana R. Leta. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.