This project is a Streamlit application designed to perform image classification using two powerful machine learning models: MobileNetV2 and a custom CIFAR-10 model. The application allows users to upload images and receive predictions along with confidence scores. It features a user-friendly navigation bar for seamless switching between models and delivers real-time results. This app is ideal for educational purposes, showcasing the performance of state-of-the-art models, and practical use in various image classification scenarios.
-
π± MobileNetV2 (ImageNet):
- Recognizes 1,000 different classes from the ImageNet dataset.
- Includes everyday objects, animals, vehicles, and more.
- Lightweight and optimized for mobile and web applications.
-
πΌοΈ Custom CIFAR-10 Model:
- Specializes in classifying images into ten categories:
βοΈ Airplane, π automobile, π¦ bird, π± cat, π¦ deer, πΆ dog, πΈ frog, π΄ horse, π’ ship, and π truck.
- Designed for smaller-scale image classification tasks.
- Specializes in classifying images into ten categories:
-
π Sleek Navigation Bar:
- Effortlessly switch between MobileNetV2 and CIFAR-10 models using a sidebar menu.
-
β±οΈ Real-Time Predictions:
- Upload images in JPG or PNG format and receive instant classification results.
- Displays predictions along with confidence scores for better understanding.
-
π Educational Value:
- Learn about deep learning models, their architecture, and real-world performance.
- Experiment with two different model types for comparative analysis.
-
π‘ Practical Applications:
- Use the app for tasks requiring quick and accurate image classification.
- Python 3.7 or later.
- A modern web browser to access the application.
Follow the steps below to set up and run the application locally:
-
π₯ Clone the Repository:
git clone https://github.com/tbhvishal/Image-Classification-By-Machine-Learning-Using-Python-AICTE-Internship-Project.git cd Image-Classification-By-Machine-Learning-Using-Python-AICTE-Internship-Project -
π§ Create and Activate a Virtual Environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
π¦ Install Dependencies:
pip install -r requirements.txt
-
βΆοΈ Run the Application:streamlit run app.py
-
π Open the App:
- The app will automatically open in your default web browser.
- If it doesnβt, navigate to http://localhost:8501.
-
π Select the Model:
- Use the navigation bar to choose either the MobileNetV2 or CIFAR-10 model.
-
π€ Upload an Image:
- Click on the upload button to select a JPG or PNG image file.
-
π View Results:
- Observe the classification results and confidence scores displayed on the screen.
-
π Switch Models:
- Easily switch between models to compare their performance on the same image.
Image-Classification-By-Machine-Learning-Using-Python-AICTE-Internship-Project/
βββ app.py # Main Streamlit application file.
βββ models/ # Directory containing model files and utilities.
βββ requirements.txt # Python dependencies.
βββ README.md # Project documentation.
βββ assets/ # Additional resources (images, icons, etc.).
- Streamlit: For creating an interactive and user-friendly web application.
- TensorFlow/Keras: For implementing and loading deep learning models.
- Python: The core programming language used for development.
- β Star the Repository: If you find this project helpful, please consider starring the repository on GitHub.
- π Share the Repository: Share it with others who might find it useful, especially students working on their internship projects or learning image classification.
- π¨βπ» Follow Me on GitHub: Stay updated with my latest projects by following my GitHub profile: tbhvishal.
We welcome contributions to improve this project! Follow these steps to get involved:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature-name" - Push your branch:
git push origin feature-name
- Open a pull request on GitHub.
- Streamlit: For providing an amazing framework for building interactive applications.
- TensorFlow: For enabling efficient implementation of deep learning models.
- AICTE Internship: For inspiring this project.
This project is licensed under the MIT License.
For any queries or suggestions, feel free to reach out:
