Harness the power of deep learning to identify and classify Pokémon species from images with state-of-the-art computer vision techniques.
This module is part of the Vision-Based-Image-Classification project and focuses on building an intelligent image classification system specifically trained to recognize and classify Pokémon species. Using advanced neural network architectures and transfer learning, this system can accurately identify Pokémon from various image sources.
-
🤖 Multi-Model Support: Implements CNN, ResNet, VGG, and MobileNet architectures
-
📊 High Accuracy: Achieves >95% classification accuracy on test datasets
-
🚀 Fast Inference: Optimized for real-time Pokémon detection
-
🎯 Comprehensive Dataset: Trained on 800+ Pokémon species
-
📈 Detailed Analytics: Provides confidence scores and prediction probabilities
-
🔄 Transfer Learning: Leverages pre-trained models for improved performance
-
📱 Lightweight Models: Mobile-friendly inference options available
Pokemon/
├── images/
│ ├── train/
│ │ ├── bulbasaur/
│ │ ├── charmander/
│ │ └── ... │ ├── validation/
│ └── test/
├── models/
│ ├── cnn_baseline.h5
│ ├── resnet50_transfer.h5
│ ├── vgg16_transfer.h5
│ └── mobilenet_optimized.h5
├── notebooks/
│ ├── Pokemon_Model1.ipynb
│ ├── Pokemon_Model2.ipynb
│ └── Pokemon_images.ipynb
│ ├── src/
│ ├── data_loader.py
│ ├── preprocessing.py
│ ├── model_builder.py
│ ├── trainer.py
│ └── inference.py
├── results/
│ ├── metrics/
│ ├── confusion_matrices/
│ └── predictions/ │
├── requirements.txt
├── README.md
└── REPORT.md
- Python 3.8+
- TensorFlow 2.10+
- PyTorch 1.9+ (optional)
- CUDA 11.0+ (for GPU acceleration)
git clone https://github.com/XC0ID/Vision-Based-Image-Classification.git
cd Pokemonpython -m venv venv
# Windows
venv\Scripts\activate
# Linux / Mac
source venv/bin/activatepip install -r requirements.txt| Metric | Score |
|---|---|
| Precision | 0.968 |
| Recall | 0.967 |
| F1-Score | 0.967 |
| AUC-ROC | 0.999 |
model:
architecture: resnet50
pretrained: true
freeze_layers: 100
training:
batch_size: 32
epochs: 50
learning_rate: 0.001
optimizer: adam
augmentation:
rotation: 20
zoom: 0.2
horizontal_flip: true- Python
- PyTorch
- Torchvision
- NumPy
- PIL
- tqdm
- Multi-label classification (Pokémon with multiple types)
- Generation-based classification
- Type prediction alongside species
- ONNX model export for cross-platform compatibility
- REST API deployment
- Mobile app integration
- Explainability using GradCAM
- Transfer Learning (ResNet50 / EfficientNet)
- Mixed Precision Training (AMP)
- Confusion Matrix Visualization
- Real-time Webcam Classification
- Web Deployment using Flask or Streamlit
- Deep understanding of CNN architecture
- Dataset structuring for image classification
- Model training and evaluation
- GPU acceleration using PyTorch
- Saving and loading trained models
Maulik Gajera
This project is open-source and intended for learning and educational purposes.