# CNN Based Multiclass Brain Tumor Detection Using Medical Imaging

Authors: Pallavi Tiwari; Bhaskar Pant; Mahmoud M. Elarabawy; Mohammed Abd-Elnaby; Noor Mohd; Gaurav Dhiman; Subhash Sharma
Journal: Computational Intelligence and Neuroscience
 (2022)

---

## Abstract

Brain tumors are the 10th leading reason for the death which is common among the adults and children. On the basis of texture, region, and shape there exists various types of tumor, and each one has the chances of survival very low. The wrong classification can lead to the worse consequences. As a result, these had to be properly divided into the many classes or grades, which is where multiclass classification comes into play. Magnetic resonance imaging (MRI) pictures are the most acceptable manner or method for representing the human brain for identifying the various tumors. Recent developments in image classification technology have made great strides, and the most popular and better approach that has been considered best in this area is CNN, and therefore, CNN is used for the brain tumor classification issue in this paper. The proposed model was successfully able to classify the brain image into four different classes, namely, no tumor indicating the given MRI of the brain does not have the tumor, glioma, meningioma, and pituitary tumor. This model produces an accuracy of 99%.


---

## Body

## 1. Introduction

The excessive synthesis and proliferation of cells in the skull results in the formation of a brain tumor. Tumors in the brain, which serve as the body’s command centre, can put a burden on the skull and have a negative influence on human health [1]. According to the study, it has been stated that brain tumors are accountable for approximately 85 percent to 90 percent of the entire major central nervous system “CNS;” tumors [2]. For tumor detection, radiologists have extensively exploited the medical imaging technique [3–5]. Because of its astronomical nature, MRI is the most chosen technology for brain malignancies among the current modalities. Radiologists identify brain cancers by hand in their regular work. The tumor grading procedure takes a long time depending on the radiologist’s expertise and experience. The interpretation is both costly and inaccurate. Certain characteristics, such as the considerable variety in form, dimensions, and magnitude for the similar tumor type, are blamed for the associated difficulties. [6] as well as the similar appearance for different types of diseases [7–9]. A misinterpretation of a brain tumor can cause major complications and decrease a patient’s chances of survival. To address the drawbacks of human diagnosis, the development of automatic image processing systems is gaining popularity [10–12]. Researchers have devised a number of ways to improve CAD systems that can classify certain malignancies in brain MRI images. Traditional machine learning approaches used in the classification process include preprocessing, dimensionality reduction, feature extraction, object selection, and classification. Feature extraction is a crucial element in the development of a successful CAD system [13]. Because the accuracy of the classification is predicated on the correctly extracted features, this is a tough process that requires previous understanding of the domain problem. Deep learning (DL) can help you improve your performance. The DL being the subset of machine learning does not involve the use of any manual features [14]. DL has been advocated for use in medical imaging for classification, detection, and segmentation in several disciplines [15–17].In 1980, CNN was used for the first time [11, 18, 19]. It is essentially a multilayer perceptron (MLP) network in disguise. The computing power of CNN is modelled like the human brain. Humans detect and identify objects based on their visual appearance. We (people) teach our children to recognize objects by exposing them to tens of thousands of images of the same thing. This helps a child recognize or predict things that they have not seen before in their life. A CNN operates in a similar manner and is well-known for processing images. GoogLeNet (22 layers), AlexNet (8 layers), VGG (16–19 Ali), and ResNet (152 layers) are some of the most well-known CNN designs. A CNN combines feature extraction and classification processes, requiring less preprocessing and feature extraction. A CNN can extract important and related features from photos automatically. A CNN can also produce high recognition accuracy even if just a little amount of training data are provided. Design specifics and prior understanding of qualities are no longer required. The usage of topological information existing in the input is the primary benefit of using a CNN model to obtain great recognition results. The rotation and translation of input images have little effect on the recognition outcomes of a CNN model.


## 2. Literature Survey

The authors in [20] propose a CNN model in which the key comparison is done before and after data augmentation and proved that after augmentation the model proposed by them improves the accuracy. They check the accuracy against three datasets proving the best accuracy of 98.43% for a pituitary tumor.Jude Hemanth et al. [21] in their paper propose the model for identifying the brain abnormalities using MRI and they do this by tackling the ANN drawbacks of convergence time period. They do this by implementing two model modified version of CPN (Counter propagation neural model) and KNN (Kohonen neural network) naming them MCPN and MKNN, respectively. The main purpose of their building this model.It is to make the ANN model less iteration that way it will be able to solve the convergence rate, and they were successfully able to do that and after modifying the accuracy rate comes out to be 95% and 98% for MKNN and MCPN, respectively.In the approach suggested by the authors [22], there is no segmentation or preprocessing. Multiple logistic regression is used to classify the data. A pretrained CNN model and segmented pictures are used in the suggested technique. Three data sets are used to test the model. To increase accuracy, several data augmentation approaches are applied. On both the original and expanded data sets, this method was tested experimentally. In comparison to past studies, the results offered are quite persuasive.Sachdeva et al. [23] proposed a technique for classifying tumor focusing to make the CAD system more interactive. They used different datasets to check the accuracy of their proposed model. The first dataset contains five classes and the second dataset contains three classes of tumors. The technology used is modifying the SVM and ANN model by using them with a Genetic algorithm (GA) leading to proposing two models, namely, GA-SVM and GA-ANN. The suggested model was able to effectively increase the accuracy of the model from 79.3% to 91% for SVM and from 75.6% to 94.9% for ANN.Tahir et al. [24] looked at a variety of preparation approaches in order to improve classification results. There were three types of approaches: noise reduction, edge detection, and contrast enhancement. To test the various combinations, image sets are utilized. According to the authors, combining different forms of data might lead to better outcomes. It is more beneficial to use many preprocessing techniques than just one. The suggested model of the authors achieves an accuracy of 86 percent.Paul et al. [25] propose the two model fully connected and convolution neural network and perform the classification using the dataset having three classes and those classes being split into three different planes. The authors simply test the model by selecting only the plane that is axial for the performance accuracy to avoid any confusion for the model between the three different planes. They specify that the CNN performs better with the accuracy of 91.43% and remarks that a simple model like the one proposed can outshine and can perform better than those specialized methods.Under this approach, Afshar et al. [26] propose an improved CNN architecture for brain tumor classification dubbed member network capsule (CapsNet). CapsNet is a system that takes use of the tumor’s spatial interaction with its surrounding tissues. The greatest accuracy achieved for the tumor that is segmented and that of unprocessed image of the brain was 86.56 percent and 72.13 percent, respectively.Abiwinanda et al. [27] propose on exploring the simple CNN model by not implementing any modification and just working on CNN and changing the different layers of CNN by increasing or decreasing those layers numbers. In this way, they build seven different CNN architectures each having different numbers of each layer and concluded that its second architecture that contains 2 layers of each convolution, activation and max pooling proves to be the best among all giving training accuracy of 98.51%.Ghassemi et al. [4, 28, 29] suggested a model that focuses on pretraining and then applied that model with CNN. In this way, the main focus is given on the pretraining of the model using different datasets available publicly that after the training the model is appliedThe CNN and the fully connected layer is being replaced by the softmax in the main model and then the resultant model is tested using the main dataset T1 containing three different classes of tumor and achieves the accuracy of 95.6%.Various novel designs have recently been presented with the broad objective of applying on the graph domain the technique of CNN, particularly in medical imaging classification [29].Although the proposed techniques for brain tumor categorization differ, this methodology has several drawbacks that can be stated as follows. Because of the importance of MRI categorization in the medical area, the accuracy supplied by existing systems is insufficient. Some categorization systems relied on manually locating tumor regions, preventing them from being entirely automated.


## 3. Brain Tumor MRI Dataset

For testing the accuracy and performance of the proposed model, the dataset used is Brain Tumor Classification (MRI) from the Kaggle licensed CCO: Public Domain. It contains a total of 3264 MRIs. The dataset is categorized into two different parts training and testing dataset [5]. In the training dataset, the MRIs are distributed into four classes having 826, 822, 395, and 827 brain MRIs of glioma, meningioma, no tumor, and pituitary tumors, respectively. Similarly, in the testing dataset, there are 100, 115, 105, and 74 brain MRIs of glioma, meningioma, no tumor, and pituitary tumor, respectively [8]. The sample of the datasets is shown in Figure 1 and the distribution among testing and training dataset and within four classes [9] are shown in Figures 2 and 3.Figure 1
Sample brain MRI from 4 different classes.Figure 2
Training dataset distribution among 4 classes.Figure 3
Testing dataset distribution among 4 classes.


## 4. Background on CNN

Deep learning (DL) models [18] learn high-level abstractions from input photographs using a hierarchical framework. Because large-scale labelled datasets are available, and CNN has shown to be the most successful DL technique for analyzing medical images. ImageNet, AlexNet, VGG16, GoogLeNet, and ResNet101 are examples of prominent CNN models [19] that have achieved substantial advances in image recognition. However, there is no such annotated dataset in the field of medical imaging.One of two strategies is commonly used to categorize medical images using CNN [30]. The first is learning from the ground up, and the second is transfer learning. A convolutional layer, activation layer, a batch normalization layer, a pooling layer, and a classification layer are among the network layers that make up the CNN, all of which are described as follows [31, 32].


### 4.1. Convolution Layer

The first layer is the convolutional layer [33]. This layer is responsible for extracting the characteristics of an input word. The feature map is the result of this stage, which is just convoluting the input neuron with a filter based on the input and need [34]. To introduce nonlinearity, it employs a neural activation function. CNN computing was inspired by the visual brain of animals. It interprets visual information and is sensitive to tiny subregions of the input [35]. The primary components to the convolutional layer are the receptive field, stride, dilation, and padding [36]. Considering the input image of size h×w×d containing no of filters n, spatial size of the filter F, Padding P, and Stride S, then the output size of the image will be as described as follows:(1)hout=h−F+2P/S+1,wout=w−F+2P/S+1,dout=n.


### 4.2. Batch Normalization Layer

The Batch Normalization (BN) layer allows each layer of the architectural model to undertake more autonomous learning [37]. This layer’s primary function is to normalize the output of the layer previously. It may be utilized to prevent the problem of overfitting and, as a result, can aid with regularization [38, 39]. The work of the layer is to standardize input and output of the sequential model. This layer can be introduced to the model at different periods, such as after creating the sequential model, in between layers, or after the convolution and pooling layer. When it comes to applying BN to individual layer, the working of it mathematically can be explained as first normalizing the inputs (of batch normalization) in each training iteration by removing their mean μ and dividing by their standard deviation σ, both of which are computed using the statistics of the current mini batch β. After that, a scale coefficient and a scale offset are applied. Therefore, an input to batch normalization can be expressed as follows:(2)x=α⊙x−μ+y,where α and ƴ are the learning parameters and μ and σ can be calculated as follows:(3)μ=1∑x∈βx,σ=1∑x∈βx−μ2+C,where constant ∁ > 0 is added to o the variance estimates to ensure that we never attempt division by zero.


### 4.3. Activation Layer

Finally, one of the most essential parameters of the CNN model is the activation function. They are used to learn and estimate any type of continuous and complicated network parameter connection. It defines which model information should be sent forward and which should not at the network’s end. The sigmoid function rectified linear unit (ReLu) and Softmax are two well-known activation functions that are commonly utilized in deep learning models.


### 4.4. Pooling Layer

It is the layer after the convolution. The work of this layer is to reduce the size of the feature map that means lowering the number of parameters and calculations needed to run the network. So it can be said that the output of this layer is a summary of the characteristics. Pooling may be done in a variety of ways; in this case, the pooling used is max pooling. Max pooling selects the largest number of items from the feature map that are covered by the filters.


### 4.5. Classification Layer

The classification layer is the last layer in a CNN architecture. It is a fully connected feedforward network that’s frequently utilized as a classifier. The neurons in the completely linked layers are all linked to the neurons in the previous layer. This layer predicts classes by recognizing the input image, which is done by combining the characteristics of the preceding layers. The destination dataset’s total number of classes determines the total number of output classes. The “SoftMax” activation function is used by the classification layer in this paper to separate the produced features of the input picture received from the previous layer into distinct groups based on the training data.


## 4.1. Convolution Layer

The first layer is the convolutional layer [33]. This layer is responsible for extracting the characteristics of an input word. The feature map is the result of this stage, which is just convoluting the input neuron with a filter based on the input and need [34]. To introduce nonlinearity, it employs a neural activation function. CNN computing was inspired by the visual brain of animals. It interprets visual information and is sensitive to tiny subregions of the input [35]. The primary components to the convolutional layer are the receptive field, stride, dilation, and padding [36]. Considering the input image of size h×w×d containing no of filters n, spatial size of the filter F, Padding P, and Stride S, then the output size of the image will be as described as follows:(1)hout=h−F+2P/S+1,wout=w−F+2P/S+1,dout=n.


## 4.2. Batch Normalization Layer

The Batch Normalization (BN) layer allows each layer of the architectural model to undertake more autonomous learning [37]. This layer’s primary function is to normalize the output of the layer previously. It may be utilized to prevent the problem of overfitting and, as a result, can aid with regularization [38, 39]. The work of the layer is to standardize input and output of the sequential model. This layer can be introduced to the model at different periods, such as after creating the sequential model, in between layers, or after the convolution and pooling layer. When it comes to applying BN to individual layer, the working of it mathematically can be explained as first normalizing the inputs (of batch normalization) in each training iteration by removing their mean μ and dividing by their standard deviation σ, both of which are computed using the statistics of the current mini batch β. After that, a scale coefficient and a scale offset are applied. Therefore, an input to batch normalization can be expressed as follows:(2)x=α⊙x−μ+y,where α and ƴ are the learning parameters and μ and σ can be calculated as follows:(3)μ=1∑x∈βx,σ=1∑x∈βx−μ2+C,where constant ∁ > 0 is added to o the variance estimates to ensure that we never attempt division by zero.


## 4.3. Activation Layer

Finally, one of the most essential parameters of the CNN model is the activation function. They are used to learn and estimate any type of continuous and complicated network parameter connection. It defines which model information should be sent forward and which should not at the network’s end. The sigmoid function rectified linear unit (ReLu) and Softmax are two well-known activation functions that are commonly utilized in deep learning models.


## 4.4. Pooling Layer

It is the layer after the convolution. The work of this layer is to reduce the size of the feature map that means lowering the number of parameters and calculations needed to run the network. So it can be said that the output of this layer is a summary of the characteristics. Pooling may be done in a variety of ways; in this case, the pooling used is max pooling. Max pooling selects the largest number of items from the feature map that are covered by the filters.


## 4.5. Classification Layer

The classification layer is the last layer in a CNN architecture. It is a fully connected feedforward network that’s frequently utilized as a classifier. The neurons in the completely linked layers are all linked to the neurons in the previous layer. This layer predicts classes by recognizing the input image, which is done by combining the characteristics of the preceding layers. The destination dataset’s total number of classes determines the total number of output classes. The “SoftMax” activation function is used by the classification layer in this paper to separate the produced features of the input picture received from the previous layer into distinct groups based on the training data.


## 5. Proposed CNN Model

The CNN model compromises of 6 layers with weight, four convolution layers, 1 fully connected, and one output layer or classification layer. It also has six BN, activation (ReLU), three dropouts, one flatten, and one max-pooling layers in addition to these. The model learns to obtain hierarchical features automatically using a succession of hidden layers. The proposed model includes an output layer that generates a four-dimensional vector corresponding to four different classes of brain tumor, and a softmax function is applied to the outputs of this layer to achieve the final class label. When compared to current pretrained networks, the fundamental goal of constructing such a customized network is to reduce learning pace and parameters while preserving detection accuracy.The first convolution layer accepts an image of size 224 × 224 × 3, convolves it with 64 kernels of size 3 × 3, and outputs a 224 × 224 × 64 volume; the padding is the same for all convolution layers. Batch normalization and ReLU activation are performed sequentially over the output of the first convolutional layer. The output of the preceding layer is sent into the next convolutional layer, which convolves it with 64 kernels of size 3 × 3, followed by the same activation, resulting in 222 × 222 × 64 volume, max pooling, same BN layer, and 0.35 dropout layer. A lower-dimensional output volume of size 111 × 111 × 64 is produced using a max-pooling layer with a filter size of 2 × 2 and a stride of 2. The first process is repeated, following the second process, and then again first resulting in the output volume of 54 × 54 × 64. Then, the previous layer is flattened resulting in an output shape of 186624, then dropout 0.3, then a fully connected layer with 512 units as output shape, and then finally activation and batch normalization is performed. Finally, the output of the last layer is entirely linked to four neurons, with the probability score for the final class label serving as the deciding factor. Table1 summarizes the descriptions of each layer of the proposed model, as well as the trainable parameters for each layer. Figures 4 and 5 show the training accuracy and loss graph.Table 1
The summary of model description.
Layer typeFilterKernel sizeOutput shapeParam#Input layer——224 × 224 × 30-Convolution643 × 3224 × 224 × 641792Activation——224 × 224 × 640BN——224 × 224 × 64256Convolution643 × 3222 × 222 × 6436928Activation——222 × 222 × 640Max pooling12 × 2111 × 111 × 640BN——111 × 111 × 64256Dropout——111 × 111 × 640Convolution643 × 3109 × 109 × 6436928Activation——109 × 109 × 640Max pooling12 × 254 × 54 × 640BN——54 × 54 × 64256Dropout——54 × 54 × 640Convolution643 × 354 × 54 × 6436928Activation——54 × 54 × 640BN——54 × 54 × 64256Flatten——1866240Dropout——1866240FC——51295552000Activation——5120BN——5122048Output layer——42052Total params: 95,706,884Trainable params: 95,705,220Nontrainable params: 1,664Figure 4
Training accuracy of the proposed model.Figure 5
Training loss of the proposed model.The proposed model is trained using the Adam optimizer and the batch size used is 32, number of epochs is 30, and categorial cross entropy is utilized for the losses and metric used is for accuracy. The training accuracy achieved is 0.99 and the loss is 0.0504.


## 6. Results

The proposed model successfully classifies and predicts the medical image. The output shows the image predicted name and the actual image class for the transparency of the proposed model. Following Figure6 shows the output of the proposed model. Table 2 shows the comparison of the proposed model with the existing model. Figure 7 shows the confusion matrix of the proposed model and Figure 8 shows the classification report.Figure 6
Prediction result.Table 2
Comparison with previous work.
AuthorsClassesMethodAccuracy (%)[1]3CNN, data augmentationC1-95.23C2-95.43C3-98.43[21]4Preprocessing-normalization, feature acquired-GLCM98[23]6GA-SVM, GA-ANNGA-SVM:89GA-ANN:94.1[26]3CNN, CapsNet86.56[27]3No data augmentation, CNN98.51Proposed model4CNN99Figure 7
Confusion matrix of proposed model.Figure 8
Classification report of the proposed model.


## 7. Conclusion

In this study, we suggested an automated method for detecting multiclass classification of brain tumor using MRI. The suggested deep CNN model, which supports automated feature learning from brain MRIs, is made up of six learnable layers. The major purpose of developing such a network was to get a higher classification result while learning at a quicker rate than traditional DL models. Despite the lesser quantity of training data, the experiment results suggest that this model is successful. Because it involves little preprocessing and does not employ handmade features, and the proposed method may be applied for various MRI classification. For future work, we can classify the data into more class labels with the higher accuracy.



---

*Source: 1830010-2022-06-21.xml*