T An end-to-end image classification system using FastAPI and PyTorch. You can upload images, train a model from scratch or continue training with new data, and predict from both the browser and API.
main.py
– FastAPI server entrypointrequirements.txt
– Required Python packagesmobilenet_custom.pth
– Saved model weights (after training)class_names.txt
– Text file storing class names (one per line)README.md
– Project documentation/app/
– Core Application Code__init__.py
– Makes app
a Python packageapi.py
– Defines all FastAPI API routesconfig.py
– Central configuration (paths, hyperparameters, etc.)data_utils.py
– Functions for saving images, unpacking ZIPs, data splitsmodel_utils.py
– Model loading, training, prediction logictemplates/index.html
– Jinja2 HTML template for web image prediction/data/
– Image Dataset Directoryraw/
– Uploaded images, organized by classtrain/
– Auto-generated training imagesval/
– Auto-generated validation imagesgit clone https://github.com/yourusername/image_classifier_api.git cd image_classifier_api python -m venv venv source venv/bin/activate # or venv\Scripts\activate on Windows pip install -r requirements.txt uvicorn main:app --reload