Learn to build a post-disaster damage assessment API.
An interactive, code-first tutor that teaches every cell of the FastAPI app behind ATC-20 building safety placards — from GET /health to ONNX inference on 16-bit GeoTIFF satellite imagery.
- Duration
- 5 weeks
- Level
- Beginner
- Stack
- FastAPI · ONNX · Rasterio
- ↑↓Image UploadGeoTIFF or JPG/PNG
- ✓↓File ValidationMagic bytes + size
- ⧉↓PreprocessingBands, normalize, tensor
- ◆↓AI InferenceONNX Runtime forward
- %↓Damage ClassSoftmax + entropy
- ▣↓ATC-20 PlacardGREEN / YELLOW / RED
- ✎RecommendationsEngineer action
Core concepts, in plain English
A modern Python framework for building web APIs. The server FastAPI runs is what the browser talks to when you upload an image.
A URL the server knows how to answer — e.g. GET /health returns server status, POST /classify accepts an image and returns a damage class.
A class that declares the exact shape of request and response data, so invalid input is rejected with a clear error before reaching your code.
A portable file format for trained models. Loading model.onnx is faster and requires no PyTorch on the server.
An official post-earthquake/disaster tag system. Engineers post GREEN (safe), YELLOW (restricted), or RED (unsafe) on a building.
5-Week Roadmap
Setup + first endpoint
Folder structure, installs, GET /, GET /health, POST /classify stub
Image upload + preprocessing
GeoTIFF with Rasterio, bands 5/3/2, normalize, tensor
AI model inference
ModelManager, ONNX runtime, softmax, ATC-20 mapping
Visualization
Probability charts, comparison panels, heatmaps
Deployment
Batch processing, ablation comparison, HTML frontend
ATC-20 placard logic
GREEN · YELLOW · ORANGE · RED — what each one means