Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1169

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176
8000 GitHub - PawarMukesh/Ocular-Disease-Detector: This project aims to develop a transfer learning-based AI system to detect and classify a wide range of ocular diseases from medical imaging data.
Nothing Special   »   [go: up one dir, main page]

Skip to content

This project aims to develop a transfer learning-based AI system to detect and classify a wide range of ocular diseases from medical imaging data.

Notifications You must be signed in to change notification settings

PawarMukesh/Ocular-Disease-Detector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AI POWERED OCULAR DISEASE DETECTION USING TRANSFER LEARNING APPROACHES

Introduction :

  • Eye diseases are major causes of vision loss.
  • Timely and accurate diagnosis is crucial for effective treatment
  • Delayed or improper treatment can lead to vision loss.
  • Common serious eye conditions include cataracts, diabetic retinopathy, and glaucoma
  • Vision loss can significantly impact overall well-being

Problem Statement :

This project aims to develop a transfer learning-based AI system to detect and classify a wide range of ocular diseases from medical imaging data, helping to improve diagnostic accuracy, reduce healthcare costs, and provide timely interventions.

The Need of This Topic:

  • Early Diagnosis
  • Vision Protection
  • Lower in Price
  • Monitoring

ObjectIves:

  1. Design and Develop Deep Learning Models: Create models to detect all types of ocular diseases.
  2. Evaluate and Compare Transfer Learning Models: Analyze state-of-the-art models to improve accuracy and detection speed.
  3. Integrate XAI Strategies: Use Explainable AI to build a precise and secure system for identifying ocular diseases from retinal images.
  4. Develop an Intuitive Interface: Provide doctors with immediate and meaningful information about detected ocular diseases.

Methodology:

image

Data Collection:

Data Preprocessing

1. Clahe

  • Contrast Limited Adaptive Histogram Equalization
  • Enhanced Contrast
  • Standardized Input
  • Improved Detection Accuracy 2. Data augmentatIon
  • Increases Data Diversity
  • Reduces Overfitting
  • Enhances Generalization
  • Makes Models Stronger

Data Splitting

  • Use split-folder library to divide data into three parts with ratio (80%, 10%, 10%).
  • Remove the duplicate samples from training set.
  • Diversify the dataset by adding more number of samples.

VisualIse Training Images

image

TRAINING PHASE

  • Experiment with different models: VGG19, VGG16, InceptionV3, Xception.
  • Build a custom Deep Convolutional Neural Network (DCNN).
  • Layers Used In Above Model:
    1. Convolutional Layer
    2. MaxPooling Layer
    3. Flatten Layer
    4. Dense Layer
    5. Dropout Layer
    6. Output Layer

1. Deep convolutional neural network

  • Input Layer:
    • Size: 224x224 RGB images.
  • Convolutional Blocks (4 Blocks):
    • Each Block:
      1. 1 Conv2D layer with 'relu' activation.
      2. 1 MaxPooling2D layer.
  • Flatten Layer
  • Two Dense Layers
  • Output Layer with softmax activation.
  • Model Summary:
    • Total Parameters: 19,427,520.

image

IntegratIon Of DCNN Model With XAI

1. LIME (Local Interpretable Model-agnostic Explanations)

  • Identifies strong feature matches in the image.
  • Formula For Lime:
    • (𝒙)=𝑳(𝒇,π’ˆ,πœ«π’™)+𝜴(π’ˆ)
  • The ultimate goal is to reduce the defectiveness L(f,g,∏x), and complexity Ξ©(g) to generate best interpretation and explanation.

2. Occlusion Sensitivity

  • Shows how blocking parts of the image affects the model's output
  • Formula:
    • 𝐼(𝑖,𝑗)=𝑃(β”œ 𝑐─|𝐼)βˆ’π‘ƒ(π‘œπ‘π‘π‘™π‘’π‘‘π‘’π‘‘__𝐼(𝐼,𝑗))
      • Where,
        • P(c|I): Correct class c probability
        • P(occluded__I(I,j)): specified image with occluded pixel(i,j)

image

2. Vgg19 model

  • VGG: Stands for Visual Geometry Group.
  • Total Layers: 19 (16 Conv2D, 3 Dense, MaxPooling2D).
  • Model Loading:
    • Load VGG19 pretrained model (ImageNet weights).
    • nput Size: 256x256 pixels.
    • Exclude fully connected layers.
  • Custom layers:
    • Flatten the output.
    • Use Dropout to prevent overfitting.
    • Final Dense layer with 'softmax' for multiclass classification.
  • Model Summary:
    • Total Trainable Parameters: 20,155,460. image

3. Vgg16 model

  • VGG16: Developed for large-scale image classification.
  • Total Layers: 16 (13 Conv2D, 3 Dense).
  • Model Loading & Customization:
    • Load VGG16 pretrained model with (ImageNet weights).
    • Input Size: 256x256 pixels..
    • Add a custom Flatten layer.
    • Add an output layer with softmax activation function for classification.

image

3. Inceptionv3 model

  • InceptionV3 Overview:
    • Purpose: Extracts diverse features for accurate detection of retinal conditions.
    • pplications: Macular degeneration, diabetic retinopathy.
  • Model Loading:
    • Load InceptionV3 pretrained model (ImageNet weights).
    • Input Size: 256x256 pixels.
    • Exclude fully connected layers.
  • Customization:
    • Add a GlobalAveragePooling2D layer.
    • Add a Dense layer: 1024 neurons, 'ReLU' activation.
    • Include a Dropout layer to prevent overfitting.
    • Add an Output layer: 4 neurons, 'softmax' activation for multiclass classification

4.XCEPTION

  • Xception Overview:
    • Inspired by Inception architecture.
    • Features depthwise separable convolutions and residual connections.
  • Model Loading:
    • Load pretrained Xception model (ImageNet weights).
    • Input Size: 256x256 pixels.
    • Exclude fully connected layers.
  • Customization:
    • Add a Flatten layer.
  • Add an Output layer: 4 neurons, 'softmax' activation.

Train and Test loss of different models

image

  • Lowest Training Loss: VGG19, Xception, and DCNN models.
  • Good Performance: InceptionV3 had training losses below 0.15.
  • Lowest Testing Error: Xception, DCNN, VGG19, and InceptionV3 models

Trian &Test Accuracy as well as Loss of Different Models

image

F1 Score of all models

image

PREDICTED IMAGES

image image

Conclusion:

In conclusion, both DCNN and InceptionV3 models performed excellently, with over 95% training accuracy and 90% testing accuracy. They effectively generalized across diverse eye disease images and had F1 scores above 90%, indicating minimal misclassifications. Using Explainable AI (XAI) techniques, such as LIME and Occlusion Sensitivity, we further validated the models by highlighting key image features and identifying influential areas. This project confirms that deep learning is highly effective for ocular disease detection.

Refrences

  1. Ahmed, M. R., Ahmed, S. R., Duru, A. D., UΓ§an, O. N., & Bayat, O. (2021). An expert system to predict eye disorder using deep convolutional neural network. Academic Platform-Journal of Engineering and Science, 9(1), 47-52.
  2. Leonardo, M. M., Carvalho, T. J., Rezende, E., Zucchi, R., & Faria, F. A. (2018, October). Deep feature-based classifiers for fruit fly identification (Diptera: Tephritidae). In 2018 31st SIBGRAPI conference on graphics, patterns and images (SIBGRAPI) (pp. 41-47). IEEE.
  3. Rothman Denis, "Hands-On Explainable AI (XAI) with Python: Interpret visualize explain and integrate reliable AI for fair secure and trustworthy AI apps",Β Birmingham: Packt Publishing Limited, 2020.
  4. Bitto, A. K., & Mahmud, I. (2022). Multi categorical of common eye disease detect using convolutional neural network: a transfer learning approach. Bulletin of Electrical Engineering and Informatics, 11(4), 2378-2387.
  5. Tammina, S. (2019). Transfer learning using vgg-16 with deep convolutional neural network for classifying images. International Journal of Scientific and Research Publications (IJSRP), 9(10), 143-150
  6. Vujović, Ž. (2021). Classification model evaluation metrics. International Journal of Advanced Computer Science and Applications, 12(6), 599-606.

About

This project aims to develop a transfer learning-based AI system to detect and classify a wide range of ocular diseases from medical imaging data.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0