Image classification workflow with balanced visual evaluation
This project trains a CNN classifier for animal-face recognition across Cat, Dog, and Wild classes. It focuses on image preprocessing, augmentation, callback-based training, and class-level performance review.
Challenge
- Visual classes can overlap because animal faces have high intra-class variation.
- Training needs augmentation and callbacks to reduce overfitting and stabilize learning.
- Evaluation should inspect per-class behavior, not only one headline accuracy.
System architecture
Data and inputs
- Animal Faces dataset with Cat, Dog, and Wild categories.
- 128×128 RGB inputs with pixel values normalized to [0, 1].
- 11,706 training images and 2,924 test/validation images.
Technical approach
- Use stacked convolutional blocks with max pooling, batch normalization, and dropout.
- Train with Adam, early stopping, learning-rate reduction, and checkpointing.
- Review training curves, confusion matrix, and prediction examples.
Evaluation and results
11,706 training images
2,924 test/validation images
Overall accuracy 0.9593
- The CNN achieved 0.9593 overall accuracy across the three classes.
- Cat classification was strongest; Wild recall was lower due to greater visual diversity.
- Training and validation curves showed stable convergence without severe overfitting.
Implementation and code
Implementation focus
The implementation connects data preparation, modeling, evaluation, and interpretation in a structured workflow that makes the technical decisions clear.
Source code
The code is available for exploring the implementation details and extending the experiment when needed.
Scope and responsible use
The project is a focused modeling and evaluation study. Broader use should be supported by validation on additional data, robustness checks, monitoring, and domain-specific evaluation.
Future development
- Add stronger augmentation policies and transfer-learning baselines.
- Inspect failure cases by species and image quality.
- Package the classifier into a small demo interface.
Technical contribution
The project demonstrates end-to-end visual classification: preprocessing, training control, class-level metrics, and visual error inspection.