Computer Vision / Classification
VGG Trash Image Classifier
A deep learning classifier that sorts trash images into categories : plastic, cardboard, glass, metal, paper, and general waste : using VGG16.
Overview
A transfer learning project using VGG16 to classify waste images into recyclable categories. The model distinguishes between plastic, cardboard, glass, metal, paper, and general trash to support automated waste sorting systems.
Problem
Waste management facilities rely on manual sorting, which is slow, inconsistent, and expensive. Automated image classification can improve throughput and recycling rates.
Goal
Build a trash classifier using transfer learning that achieves reliable accuracy across common waste categories.
Architecture
- VGG16 base model with custom classification head.
- Image preprocessing pipeline for augmentation and normalization.
- Training and evaluation pipeline with accuracy and loss tracking.
- Inference script for single-image classification.
System Flow
Input
Training images are loaded, augmented, and normalized.
Process
VGG16 base extracts features from each image.
AI Layer
Custom classifier head maps features to waste categories.
Storage/API
Model outputs class probabilities for inference inputs.
Tech Stack
Key Features
- Six-class waste classification.
- Transfer learning from VGG16 ImageNet weights.
- Training visualization with accuracy and loss curves.
- Single-image inference with class probabilities.
AI / ML Component
- VGG16 convolutional base for feature extraction.
- Custom dense layers for waste category classification.
- Data augmentation for model generalization.
Data Flow
- 1Training images are loaded, augmented, and normalized.
- 2VGG16 base extracts features from each image.
- 3Custom classifier head maps features to waste categories.
- 4Model outputs class probabilities for inference inputs.
Challenges
- Limited dataset size for some waste categories.
- Visual similarity between certain material types (e.g., plastic vs. glass).
- Generalizing to real-world images with varying backgrounds and lighting.
Solution / Trade-off
- Use transfer learning instead of training from scratch to work with limited data.
- Accept higher uncertainty for similar-looking materials.
- Prioritize per-class recall over overall accuracy for safety-critical categories.
Result
Trained VGG16 classifier achieving reasonable accuracy on test data. Full training pipeline with visualization and inference scripts.
Screenshot / Demo Placeholder
/images/trash-classifier-placeholder.png
Replace this area with real screenshots, dashboard captures, architecture diagrams, or a short demo video once the asset is ready.
GitHub / Live Link Placeholder
What I Would Improve
- Collect more training data for underrepresented categories.
- Test newer architectures like EfficientNet for comparison.
- Build a real-time classification demo.