| --- |
| license: mit |
| language: |
| - uk |
| metrics: |
| - accuracy |
| base_model: |
| - google/efficientnet-b0 |
| pipeline_tag: image-classification |
| tags: |
| - computer-vision |
| - cats |
| - efficientnet |
| - student-project |
| --- |
| |
|
|
| # CatGuard EfficientNet |
|
|
| ## Overview |
|
|
| CatGuard EfficientNet is an image classification model designed to identify a specific domestic cat named **Syrnyn** from photographs. |
| The model was developed as a first-year university computer vision project and serves as the first step toward a future IoT monitoring system capable of detecting when a specific cat enters a restricted area. |
|
|
| --- |
|
|
| ## Problem |
|
|
| One of the household cats frequently enters the kitchen and attempts to eat food left unattended. |
| Monitoring this behavior manually is inconvenient and inconsistent. The goal of this project is to automatically recognize the target cat from camera images. |
|
|
| --- |
|
|
| ## Task |
|
|
| Binary image classification. |
|
|
| Input: |
|
|
| - Image containing a cat |
|
|
| Output: |
|
|
| - Naughty cat |
| - Other Cat |
|
|
| --- |
|
|
| ## Dataset |
|
|
| Custom dataset collected from personal photographs. |
|
|
| Classes: |
|
|
| - Naught Cat (black cat) |
| - Other Cat |
|
|
| Dataset split: |
|
|
| - Train: 70% |
| - Validation: 15% |
| - Test: 15% |
|
|
| --- |
|
|
| ## Model Architecture |
|
|
| The project uses a two-stage pipeline: |
|
|
| ```text |
| Image |
| β |
| DETR Object Detector |
| β |
| Cat Detection |
| β |
| EfficientNet-B0 |
| β |
| Classification Head |
| β |
| Naughty Cat / Other Cat |
| ``` |
|
|
| ### Stage 1: Object Detection |
|
|
| The system first uses **DETR (DEtection TRansformer)** (`facebook/detr-resnet-50`) to determine whether a cat is present in the image. |
|
|
| Possible outcomes: |
|
|
| - Cat detected β continue to classification |
| - No cat detected β return a warning message |
|
|
| ### Stage 2: Cat Classification |
|
|
| If a cat is detected, the image is passed to an **EfficientNet-B0** classifier trained using transfer learning. |
|
|
| The classifier predicts one of two classes: |
|
|
| - Naughty Cat |
| - Other Cat |
| --- |
|
|
| ## Results |
|
|
| Best validation accuracy: |
|
|
| **89.7%** |
|
|
| The model correctly identifies the target cat in approximately 9 out of 10 validation images. |
|
|
| --- |
|
|
| ## Future Work |
|
|
| Current version: |
|
|
| ```text |
| Image |
| β |
| Cat Classification |
| ``` |
|
|
| Planned extension: |
|
|
| ```text |
| Camera |
| β |
| Cat Detection |
| β |
| Cat Classification |
| β |
| IoT Device Response |
| ``` |
|
|
| The future system may automatically detect the target cat entering the kitchen and trigger a connected IoT device. |
|
|
| --- |
|
|
| ## Author |
|
|
| Sandra Korol |
| Computer Vision Project |