A project for Satellite Image Segmentation using Deep Learning. Satellite images are an essential tool used by meteorologists. They offer a high resolution view of the earth from the sky. This project focuses on classifying eight classes, namely Water, Grass, Roads, Building, Trees, Swimming pool, Railway, and Bare Soil.
No previous experience in Deep Learning is required. Just follow the steps and you should be able to see it in action.
- Place your satellite images in the data/sat5band/ folder.
- Run the scripts in the following order to train the model for all images:
python3 edgeGen.py
- to generate edge datapython3 water_mask_function.py
- to generate water datapython3 Grass_mask_function.py
- to generate vegetation datapython3 genpatches.py
- to generate patches for above generated datapython3 train_unet.py
- begins the training of the UNET modelpython3 train_kvnet.py
- begins the training of the KV_Netpython3 predict_kvnet.py
- Outputs will be stored in ./outputs/ of data/test/
- cv2
- tifffile
- numpy
- keras-gpu
- tensorflow-gpu
- glob
Alternatively, you can use preset weights saved here and here and run the following commands:
python3 predict.py
python3 predict2.py
python3 predict_kvnet.py
By - ChengDuZhusiyu