This is an image classification app designed to determine the time of day using the CLIP model, specifically the ViT-B/32
variant from torchvision. Users can easily upload an image, and the app will classify it into one of the following time categories: morning, noon, afternoon, night, or sunrise or sunset. The app utilizes FastAPI for handling backend functionalities and Streamlit for a straightforward user interface. Docker and Docker Compose are employed for easy deployment and management of the application.
- Python 3.6 or higher
- FastAPI
- Streamlit
- Torch
- Pillow
- Redis OM
- Matplotlib
- Requests
-
Clone the repository:
git clone https://github.com/shakibyzn/image-time-classifier-app.git
-
Navigate to the project directory:
cd image-time-classifier-app
docker compose up --build -d
docker compose exec backend pytest
GitHub Actions is configured to automatically run unit tests on the backend service whenever changes are pushed to the repository. The GitHub Actions workflow is defined in the .github/workflows directory.
This project is licensed under the MIT License.