- 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
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.
- Early Diagnosis
- Vision Protection
- Lower in Price
- Monitoring
- Design and Develop Deep Learning Models: Create models to detect all types of ocular diseases.
- Evaluate and Compare Transfer Learning Models: Analyze state-of-the-art models to improve accuracy and detection speed.
- Integrate XAI Strategies: Use Explainable AI to build a precise and secure system for identifying ocular diseases from retinal images.
- Develop an Intuitive Interface: Provide doctors with immediate and meaningful information about detected ocular diseases.
- Data collected from Roboflow, Total 6009 images divided into four classes.
- url = https://universe.roboflow.com/projects-dmmza/ocular-diseases
- publisher = { Roboflow }
- year = { 2024 }
- month = { may }
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
- 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.
- Experiment with different models: VGG19, VGG16, InceptionV3, Xception.
- Build a custom Deep Convolutional Neural Network (DCNN).
- Layers Used In Above Model:
- Convolutional Layer
- MaxPooling Layer
- Flatten Layer
- Dense Layer
- Dropout Layer
- Output Layer
- Input Layer:
- Size: 224x224 RGB images.
- Convolutional Blocks (4 Blocks):
- Each Block:
- 1 Conv2D layer with 'relu' activation.
- 1 MaxPooling2D layer.
- Each Block:
- Flatten Layer
- Two Dense Layers
- Output Layer with softmax activation.
- Model Summary:
- Total Parameters: 19,427,520.
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)
- Where,
- πΌ(π,π)=π(β πβ€|πΌ)βπ(πππππ’πππ__πΌ(πΌ,π))
- 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:
- 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.
- 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
- 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.
- 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
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.
- 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.
- 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.
- 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.
- 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.
- 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
- VujoviΔ, Ε½. (2021). Classification model evaluation metrics. International Journal of Advanced Computer Science and Applications, 12(6), 599-606.