How vaishnavikanu/tilescope works
TileScope turns an uploaded satellite image into a full-resolution, seven-class land-cover segmentation, class percentages, visualizations, and downloadable outputs. The principal runtime begins in the Streamlit app, which loads the trained model and calls tiled prediction; prediction stitches overlapping tile probabilities, then derives the mask, overlay, and class breakdown for display/export. A separate training/evaluation branch prepares labeled patches, trains the U-Net, and evaluates held-out imagery. README documents these capabilities; unsampled modules are represented only where their roles are evident from the tree.
Main entry points: app.py Streamlit app · predict.py Tile prediction · train.py Model training · model.py U-Net model
Components 13
Web interface
- Streamlit app
app.py - Overlay and display
app.py - Download outputs
app.py
Segmentation runtime
- Tile prediction
training/predict.py - U-Net model
training/model.py - Class mask
training/predict.py - Class percentages
training/predict.py
Training and evaluation
- Patch dataset
training/dataset.py - Model training
training/train.py - Held-out evaluation
training/train_eval.py
Model artifacts
- Trained weights
models/tilescope_unet_evaluated.pth
Other components
- Image user
- Labeled imagery
Connections 15
- Image user → Streamlit app: uploads image
- Streamlit app → Trained weights: loads weights
- Streamlit app → Tile prediction: calls prediction
- Tile prediction → U-Net model: runs tiles
- Tile prediction → Class mask: stitches probabilities
- Tile prediction → Class percentages: counts classes
- Tile prediction → Streamlit app: returns results
- Streamlit app → Overlay and display: presents image and mask
- Streamlit app → Download outputs: offers downloads
- Labeled imagery → Patch dataset: reads image-mask pairs
- Patch dataset → Model training: supplies patches
- Model training → U-Net model: optimizes model
- Model training → Trained weights: saves weights
- Labeled imagery → Held-out evaluation: reads held-out pairs
- Held-out evaluation → U-Net model: runs evaluation