Title: Transfer Learning with MobileNet for Dog vs Cat Classification using TensorFlow and OpenCV"
Description: This project focuses on utilizing transfer learning with the MobileNet architecture, implemented in TensorFlow, to classify images as either cats or dogs. Leveraging a dataset sourced from Kaggle, the model undergoes fine-tuning on pre-existing weights while being integrated with OpenCV for image preprocessing and PIL for data augmentation. By incorporating these tools and techniques, the project aims to optimize model performance and efficiency in distinguishing between the two animal classes. Through a technical lens, this endeavor delves into the intricacies of deep learning, image processing, and transfer learning methodologies, contributing to advancements in computer vision applications for pet classification tasks.
Objective:
- Implement transfer learning with the MobileNet architecture in TensorFlow to classify images of cats and dogs sourced from a Kaggle dataset.
- Integrate OpenCV for image preprocessing, including resizing, normalization, and data augmentation techniques such as rotation and flipping.
- Fine-tune the pre-trained MobileNet model on the cat and dog dataset to specialize in discriminating between the two animal classes, minimizing loss and optimizing accuracy.
- Validate model performance using a separate test dataset, aiming for a classification accuracy of 90% or higher.
- Optimize computational efficiency by leveraging model pruning techniques and optimizing inference time to achieve a throughput of less than 100 milliseconds per image on standard hardware.
- Develop a robust pipeline for training, evaluation, and deployment, ensuring reproducibility and scalability of the classification model.
- Document the implementation details, including code snippets, data preprocessing steps, model architecture, and training parameters, to facilitate knowledge dissemination and replication by the broader technical community.