DenkingOfficial
Fixes
57c7f8e
---
title: Cat Breed Classifier
emoji: 🐱
colorFrom: green
colorTo: red
sdk: gradio
sdk_version: 3.16.1
app_file: app.py
pinned: false
license: openrail
---
# \[EN\] Cat Breed Classifier
This is an app that can classify the breed of a cat based on a photo.
It uses a EfficientNetB0 ImageNet model finetuned on images of cats of various breeds. The model is able to recognize 18 breeds. See list [here](https://github.com/DenkingOfficial/cat_breed_classifier/tree/main/models).
## Requirements
- Python 3.8 or higher
- Gradio 3.15.0
- Tensorflow 2.10
- Numpy 1.23.3
- Requests 2.25.1
- Pillow 9.0.1
- FastApi 0.88.0
- Uvicorn 0.20.0 or higher
- Smartcrop.py
## How to use
1. Clone this repository using `git clone https://github.com/DenkingOfficial/cat_breed_classifier.git`
2. Enter the cloned directory `cd cat_breed_classifier`
3. Install requirements by running `pip install -r requirements.txt`
4. Download a model from [here](https://www.dropbox.com/s/jqzwew182acdohn/cats_18_EfficientNetB0.h5) and place it into `models` folder
5. Run app using `uvicorn app:app`
## Demonstration
![App demonstration](https://user-images.githubusercontent.com/38957619/212042151-8cded892-4153-48d2-b98b-7430e0149bba.gif)
## Authors
This app was developed by students of Ural Federal University (UrFU):
- Shershnev Andrey, RIM-120907 - Model Training, App Development
- Onuchina Margarita, RIM-120908 - UI Styling, Dataset collection
- Shalaeva Irina, RIM-120906 - UI Styling, Dataset collection
- Ilyin Semen, RIM-120907 - App Development, Dataset collection
- Ivanov Sergey, RIM-120906 - API Development, Dataset collection
---
# \[RU\] Классификатор пород кошек
Это веб-приложение, которое позволяет определять породу кошки по фотографии.
Оно использует модель EfficientNetB0 ImageNet тонко настроенную на изображениях кошек разных пород. Данная модель позволяет определять 18 пород. Посмотреть список можно [здесь](https://github.com/DenkingOfficial/cat_breed_classifier/tree/main/models).
## Зависимости
- Python 3.8 или новее
- Gradio 3.15.0
- Tensorflow 2.10
- Numpy 1.23.3
- Requests 2.25.1
- Pillow 9.0.1
- FastApi 0.88.0
- Uvicorn 0.20.0 или новее
- Smartcrop.py
## Как использовать
1. Загрузить данный репозиторий используя команду `git clone https://github.com/DenkingOfficial/cat_breed_classifier.git`
2. Перейти в директорию репозитория `cd cat_breed_classifier`
3. Установить зависимости используя команду `pip install -r requirements.txt`
4. Скачать модель [отсюда](https://www.dropbox.com/s/jqzwew182acdohn/cats_18_EfficientNetB0.h5) и скопировать ее в папку `models`
5. Запустить приложение используя команду `uvicorn app:app`
## Авторы
Это приложение было разработано студентами Уральского Федерального университета (УрФУ):
- Шершнев Андрей, РИМ-120907 - тренировка модели, разработка приложения
- Онучина Маргарита, РИМ-120908 - стилизация интерфейса, сбор датасета
- Шалаева Ирина, РИМ-120906 - стилизация интерфейса, сбор датасета
- Ильин Семен, РИМ-120907 - разработка приложения, сбор датасета
- Иванов Сергей, РИМ-120906 - разработка API, сбор датасета