0% found this document useful (0 votes)
3 views12 pages

Project Report

The project report details the development of a Convolutional Neural Network (CNN) model to classify images of cats and dogs using deep learning techniques. It outlines the methodology, dataset details, algorithms used, and the results achieved, including high accuracy rates in predictions. The project emphasizes the importance of image preprocessing and model training, and suggests future improvements for enhanced performance.

Uploaded by

sanyakhare253
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views12 pages

Project Report

The project report details the development of a Convolutional Neural Network (CNN) model to classify images of cats and dogs using deep learning techniques. It outlines the methodology, dataset details, algorithms used, and the results achieved, including high accuracy rates in predictions. The project emphasizes the importance of image preprocessing and model training, and suggests future improvements for enhanced performance.

Uploaded by

sanyakhare253
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Image Classification of Cats and Dogs


using CNN and Deep Learning

Project Report

Submitted By: Sanya khare

Submitted To: Mr. Samarth Amruthe

1
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Acknowledgement

I express my sincere gratitude to Mr. Samarth Amruthe, for his


invaluable guidance and supervision throughout our project on Image
Classification of cats and dogs.

I am thankful to Kaggle and tensor-flow, for providing the necessary


datasets and resources that enabled me to complete this project
successfully.

I acknowledge the contribution of the Image Classification of cats and


dogs, which offers advanced tools and expertise for accurate prediction
of cat and dogs. Their support ensures reliable analysis through standard
whether the image is of dog or cat.

I also thank our families and friends for their constant support and
encouragement throughout this journey.

SANYA KHARE

IBM-PBEL VIRTUAL INTERNSHIP


Place: Online
Date: July,2025

2
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

DECLARATION

I hereby declare that this Project Report titled "Introduction to Image

Classification of Cats and Dogs using CNN and Deep Learning",

submitted as part of the IBM PBEL Virtual Internship, is a bona fide work

carried out by me under the mentorship and guidance of our assigned

project guide.

This work has been undertaken solely as a learning and development

initiative during the internship and has not been submitted to any other

university, institution, or organization for the award of any degree,

diploma, or certificate, nor has it been published or presented elsewhere

prior to this submission.

I affirm that the contents of this report are the result of our own efforts

and dedication during the internship tenure

Student Name: Sanya Khare

Project Guide: Mr. Samarth Amruthe

3
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Contents Page

1. Title......................................................... 3
2. Problem Statement..........................4
3. Methadology....................................... 4
4. Dataset Details................................... 5
5. Algorithms and models used......5
6. Results ................................................. 6
7. Conclusions........................................ 6

4
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

TITLE

"Teaching Computers to Recognize Cats and Dogs: A Simple


Guide to Image Classification Using Deep Learning"

Problem Statement
In today's world, where technology is rapidly advancing,
teaching computers to "see" and understand images has
become an exciting and important challenge. One
common and fun example is helping a computer tell the
difference between a cat and a dog just by looking at a
photo.
As humans, we can easily recognize whether an image
shows a cat or a dog, even if the picture is blurry or taken
from a strange angle. But for a computer, this task is not
that simple. It requires a lot of learning and training, just
like how a child learns to recognize animals.
In this project, our goal is to build a smart system that can
automatically identify whether an image contains a cat or a
dog using Convolutional Neural Networks (CNNs) — a
type of deep learning model that works especially well with
images. This kind of system can be helpful in many real-
life applications like pet identification, animal monitoring,
and even in healthcare for animals.
We wanted to explore how deep learning can be used in
image classification and how we can train a machine to
"learn" from examples — just like we do.

5
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Methodology
To build a system that can recognize whether an image shows a cat or a dog,
we followed a step-by-step approach using Convolutional Neural Networks
(CNNs) — a powerful technique in deep learning that is specially designed to
work with images.
Here’s how we approached our project:

1. Collecting Images
We use a dataset of cat and dog images. These images help our model
learn what each animal looks like.

2. Preprocessing the Images


All the images are resized to the same size (128*128 pixels). This
helps the model understand them better. We also convert the images
into numbers (arrays) so the computer can read them.

3. Building the Model


We created a CNN (Convolutional Neural Network) model using
TensorFlow. This model learns how to tell the difference between cats
and dogs by looking at patterns in the images.

4. Training the Model


We show many images to the model and tell it the correct answer (cat
or dog). The model slowly learns by checking its own guesses and
improving step by step.

5. Saving the Model


After training, we save the model in a file. This saved model can now
be used to predict whether a new image is a cat or a dog.

6. Creating a Web App with Streamlit


We built a simple app where users can:
o Upload an image from their device,
The app then shows the prediction (Cat or Dog) with how
confident the model is.

7. Making Predictions
When a user uploads a picture:
o The image is resized and prepared
o The model checks the image and gives a result
o The app shows whether it's a cat or dog, along with the
confidence score (how sure the model is)

6
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Dataset Details

1. Dataset Name:
Cats vs Dogs Dataset (also known as the Dogs vs Cats dataset from
Kaggle)

2. Number of Classes:
o Cats
o Dogs
So, it is a binary classification problem (2 classes only).

3. Total Images:
o Around 50,000 images in total
o Roughly 25,000 images of cats
o Roughly 25,000 images of dogs

4. Image Format:
o JPEG images (.jpg, .jpeg)
o Different sizes, but we resize them to 128*128 pixels for training

5. Data Split (during training):


o Training Set: 80% of the images (to teach the model)
o Validation Set: 20% of the images (to test how well the model is
learning during training)

6. Data Source:
Downloaded from Kaggle: Dogs vs Cats Dataset

7. Preprocessing Done:
o Resize all images to 128*128
o Normalize pixel values (divide by 255) to bring them in range 0–
1
o Shuffle the data so cats and dogs are mixed randomly during
training

7
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Algorithms/Models Used

1. Convolutional Neural Network (CNN) – Main Model Used


We used a CNN, which is a special type of deep learning model made to
understand images.
What CNN does (in simple words):
 It looks at small parts of the image (like edges, shapes, and patterns)
 Then combines them to recognize if it’s a cat or a dog

2. Layers Used in the Model


Here are the main building blocks (layers) we used in our model:
 Conv2D (Convolution Layer):
Finds patterns in small sections of the image like lines, corners, etc.

 Batch Normalization:
Helps the model train faster and become more stable.

 MaxPooling2D:
Reduces the size of the image while keeping the most important parts.

 Flatten:
Converts 2D image features into a 1D list for the final prediction.

 Dense (Fully Connected Layer):


Final layers that make the prediction — whether it’s a cat or a dog.

 Activation Functions:
o ReLU (for hidden layers): Makes training fast and efficient
o Sigmoid (for final layer): Gives output between 0 and 1 (used to
classify into 2 categories)

3. Saved Model File


The model is trained and saved as:
dogs_vs_cats.keras

8
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Results with graphs/screenshots

Model Accuracy and Loss


After training the CNN model on the dataset, we got the following results:
 Training Accuracy: Around 98–99%
 Validation Accuracy: Around 90–95%
 The model was able to learn the difference between cats and dogs
very well.

Training and Validation Graph:

Model Predictions (Screenshots)


After training, we tested the model using a Streamlit app. Users can upload an
image of a cat or dog, and the app predicts the result.
Screenshot Example:
 Input Image: 🐶 (Cat image)
 Model Prediction: Cat

9
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Training and Validation Accuracy Graph :

Training And Validation Loss Graph :

10
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

Conclusion:

In this project, we successfully built a Convolutional Neural


Network (CNN) model to classify images of dogs and cats. We
used the Dogs vs Cats dataset, preprocessed the images, and
trained the model using TensorFlow Keras. The model was
able to learn important features from the images and
achieved good accuracy in predicting whether the image is of
a dog or a cat.
This project helped in understanding how CNN works for
image classification and how different layers like convolution,
pooling, and dense layers are used to build an effective
model. In the future, the model can be improved further by
increasing training epochs, adding data augmentation, and
tuning hyperparameters to achieve even better results in real-
world scenarios.

References:

Here are the main resources and tools we used during the project:

1. TensorFlow Keras Documentation:


[Link]

2. Kaggle Datasets – Cats vs Dogs


[Link]

3. Matplotlib and NumPy:


For plotting graphs and handling image data.

4. Online Tutorials and Documentation:


o TensorFlow and Streamlit official guides
o Various educational blogs and YouTube videos for
understanding CNNs and deployment

11
IBM-PBEL VIRTUAL INTERNSHIP

Image Classification of Cats and Dogs using


CNN and Deep Learning

12

You might also like