Skip to content

Repository files navigation

Waste Classifier (CNN)

Problem Statement

Project builds a CNN-based deep learning model to classify waste images into categories such as cardboard, paper, plastic, and trash. The goal is to provide assistance for automated waste classification and improve recycling efficiency.


Dataset

  • Dataset: Garbage Classification Dataset
  • Classes: cardboard, paper, plastic, trash
  • Total images: 3071
  • Image size used: 128×128 (resized during training)

Class-wise Distribution

  • cardboard — 660
  • paper — 1173
  • plastic — 964
  • trash — 274

Model

  • Architecture: Custom CNN
  • Framework: TensorFlow/Keras
  • Loss function: categorical_crossentropy
  • Optimizer: Adam
  • Learning rate: 0.001

CNN Architecture

  • Conv2D (32 filters) + MaxPooling
  • Conv2D (64 filters) + MaxPooling
  • Conv2D (128 filters) + MaxPooling
  • Flatten
  • Dense (128, ReLU)
  • Dropout (0.5)
  • Output Dense (Softmax, 4 classes)

Data Split

Train

  • cardboard: 211
  • paper: 471
  • plastic: 385
  • trash: 109

Validation

  • cardboard: 26
  • paper: 58
  • plastic: 48
  • trash: 13

Test

  • cardboard: 27
  • paper: 60
  • plastic: 49
  • trash: 15

Performance

  • Test Accuracy: 80.13%
    (Update validation accuracy after final training run)

▶️ How to Run

1️⃣ Install dependencies

pip install -r requirements.txt

2️⃣ Train the model

python train_model.py

3️⃣ Run Streamlit app

streamlit run app.py

Sample Output

alt text alt text

👤 Author

Jayasri Munnaluri

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages