How shrirangkanade/ml-for-mars-exploration works
The product is a Streamlit application for segmenting Mars terrain images into safe and dangerous regions. Its main workflow selects or uploads an image, resizes and normalizes it, runs either the Keras or TensorFlow Lite model, converts class scores to a mask, and displays the mask overlaid on the input. The README also describes the U-Net model and segmentation objective. The notebook is present in the tree, but its contents were not sampled, so training internals are not mapped.
Main entry points: new_app.py Image selection · app.py Image upload · quantized_model.tflite Quantized model
Components 16
Streamlit interface
- Image selection
new_app.py - Image upload
app.py - Segmented result
new_app.py - Segmented result
app.py
Image inference
- Resize and normalize
new_app.py - Resize and normalize
app.py - Class mask
new_app.py - Class mask
app.py
Segmentation models
- TFLite inference
new_app.py - Keras inference
app.py - Quantized model
quantized_model.tflite - Full model
Result presentation
- Overlay rendering
new_app.py - Overlay rendering
app.py
Other components
- Explorer
- Streamlit runtime
Connections 16
- Explorer → Image selection: selects image
- Explorer → Image upload: uploads image
- Image selection → Resize and normalize: passes image
- Image upload → Resize and normalize: passes image
- Resize and normalize → TFLite inference: passes tensor
- TFLite inference → Quantized model: invokes
- TFLite inference → Class mask: returns scores
- Resize and normalize → Keras inference: passes tensor
- Keras inference → Full model: loads and predicts
- Keras inference → Class mask: returns scores
- Image selection → Overlay rendering: requests display
- Overlay rendering → Segmented result: returns image URL
- Image upload → Overlay rendering: requests display
- Overlay rendering → Segmented result: returns image URL
- Streamlit runtime → Image selection: runs
- Streamlit runtime → Image upload: runs