Skip to content

A machine learning project that utilizes a Convolutional Neural Network (CNN) to classify images of cats and dogs. The web application is built using Streamlit, allowing users to upload images for real-time classification.

Notifications You must be signed in to change notification settings

saadtariq10/cat-dog-classifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cat-Dog Classifier

A machine learning project that uses Convolutional Neural Networks (CNN) to classify images as either cats or dogs. This project is implemented with TensorFlow and Keras for the model, and Streamlit for the web application interface.

Cat-Dog Classifier GIF

Table of Contents

Project Overview

The Cat-Dog Classifier is designed to classify images into two categories: cats and dogs. The model is trained on a dataset of labeled images, and users can interact with the model through a simple web interface built with Streamlit.

Technologies Used

  • Python: The programming language used for implementing the model and web app.
  • TensorFlow: For building and training the CNN model.
  • Keras: High-level neural networks API, running on top of TensorFlow.
  • Streamlit: For creating the web application interface.
  • OpenCV: For image processing.

Dataset

The dataset used in this project is the Dogs vs. Cats dataset from Kaggle, containing images of cats and dogs. The dataset is organized into training and testing folders, with separate directories for each class.

Model Architecture

The model is a Convolutional Neural Network (CNN) consisting of the following layers:

  • Convolutional Layers: Extract features from images.
  • Batch Normalization: Normalizes the output of the previous layer to speed up training.
  • Max Pooling Layers: Reduces the spatial dimensions of the output volume.
  • Flatten Layer: Converts the 2D matrix into a 1D vector.
  • Dense Layers: Fully connected layers for classification.
  • Output Layer: Uses a sigmoid activation function for binary classification.

How to Run the Application

  1. Clone the repository to your local machine:
    git clone https://github.com/saadtariq10/cat-dog-classifier.git
    cd cat-dog-classifier

About

A machine learning project that utilizes a Convolutional Neural Network (CNN) to classify images of cats and dogs. The web application is built using Streamlit, allowing users to upload images for real-time classification.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages