Vitiligo Detection using Convolutional Neural Networks: Automated Image Collection and Classification
Overview This project aims to develop a Convolutional Neural Network (CNN) model to accurately identify individuals with vitiligo, a skin disease characterized by the loss of skin color in patches. The model leverages deep learning techniques to analyze images and distinguish individuals with vitiligo from those without it.
Dataset Collection The training data for this model was collected through Google image search, utilizing a Python script leveraging Selenium to automate the search and collection process. The script interacts with the Google search engine, enters the search term "vitiligo skin," navigates to the image search results, and scrolls to collect a diverse range of images depicting individuals with vitiligo.
Model Development The CNN model architecture is constructed using TensorFlow and Keras libraries. The model comprises convolutional layers for feature extraction, followed by max-pooling layers for spatial downsampling. Subsequently, the extracted features are passed through fully connected layers for classification. The model is trained using the collected dataset, with a data generator utilized to preprocess the images and facilitate training.
Training Process The training process involves splitting the dataset into training and validation sets. Data augmentation techniques are applied to increase dataset diversity and prevent overfitting. The model is trained using the training set while monitoring performance on the validation set to optimize hyperparameters and prevent overfitting.
Evaluation and Visualization The trained model's performance is evaluated using metrics such as accuracy and loss on both the training and validation sets. Additionally, visualizations, including accuracy and loss plots, are generated to assess model performance and identify areas for improvement.
Future Improvements Future enhancements to the model may include:
Fine-tuning hyperparameters to further optimize performance. Exploring transfer learning techniques from pre-trained models to leverage larger datasets and improve generalization. Continuous refinement of the model architecture based on feedback and additional data. Contribution Contributions to the project are welcome! Whether it's bug fixes, feature enhancements, or dataset improvements, feel free to contribute by opening pull requests.
License This project is licensed under the MIT License.