Project Progress Review Report (1) (Autorecovered)
Project Progress Review Report (1) (Autorecovered)
Aim: This project aims to detect BRAIN TUMOR using MRI image through Python.
Project Objectives
Objective#1: P r e p r o c e s s i n g o f i m a g e s .
Objective#2: Model Training and Testing.
Objective#3: Creating Web App and Android App.
PROGRESS IN WORK: During this course of time Objective# 1, Objective# 2, are completed
and Objective# 3 are under processing detailed in below:
Processing brain tumor images using a convolutional neural network (CNN) implemented in
Keras. Here is a short description. .of the code:
1. Import libraries: OpenCV (cv2), PIL (Image), NumPy, scikit-learn, Keras, etc. Import
libraries required for graphics, machine learning, and visualization, including matplotlib.
3. Morphological processing parameters: Defines the kernel size and iterations for the
morphological processing (erosion) applied to the image. This function can help improve features
in the image.
4. Loading and preprocessing the dataset: The code reads images from two grids, "no" (images
without tumors) and "yes" (images with tumors). It resizes the image to a reasonable size, uses
morphological operations, and stores the image and its associated text in separate objects.
5. Split the dataset: Use the train_test_split function in scikit-Learn to split the dataset into
training and test sets. The sample size is set to 20% of the entire dataset.
6. Data normalization and one-bit encoding: Normalize the input image using Keras'
normalization function. Use the to_categorical function to one-time encode text and convert them
to binary vectors.
7. Model Architecture: Use Keras to create sequential models. It has three layers of
convolutional layer followed by a max pooling layer. Next, a smoothing layer is added to convert
the 2D feature maps to 1D vectors. Then add a thick layer with corrected linear unit (ReLU)
activation and continuous output. Finally, the output method with softmax is added to divide the
image into two classes (tumor or no tumor).
8. Model compilation and training: Write a model using the power-down algorithm, Adam
optimizer, and truth-based index. Use the appropriate training model of the training process and
the training history is stored in the "history" variable.
9. Visualization of learning progress: Create two graphs to show training and actual use and
time wasted.
10. Prediction and evaluation: The model is used to predict the scores of the test. The predicted
results are converted into lecture notes. Build the confusion matrix using scikit-learn's
fusion_matrix function. Then use Matplotlib to plot and display the confusion matrix.
11.Use augmented data for further training: Use augmented data generated by
ImageDataGenerator to further train the model. This can help expand the model better by
exposing it to different training examples.
12. Save Model: Save the learned model to a file for future use.
Progress in work