Land Cover
Multi-class Semantic Segmentation
Gianluca Mangiapane & Johnathan Clementi
Remote Sensing - MUSA 650
Spring 2022
About the problem
Land Use/Land Cover (LULC) data are an important input for ecological, hydrological, and agricultural models [1]. The National Land Cover Database (NLCD) is developed by the USGS from Landsat imagery. [2]
However, these data have traditionally have large temporal gaps (~5 years) as they are computationally intensive to create.
More temporally granular land cover data are needed for a studying a rapidly changing environment
2
How can we access more temporally granular land cover data?
3
Example
Classified Image
Example
Raw Image
Automate land cover classification
using semantic segmentation
The U-Net Architecture
5
Image from Citation 3
Encoding
Decoding
Benefits of segmentation and
Other methods considered
While traditional CNN’s return a single output label for each image, a U-net returns a classification for each pixel. Therefore, it can be used as a multi-class classifier on a single image, with multiple classes labeled
We did explore testing traditional encoder-type CNN’s on the LULC problem, but would have needed to adjust the labeling scheme of the data to obtain single labels
6
The Data
7
Data Preparation
8
One-Hot Encoding
9
Our 1st U-Net!
Our 1st U-Net: results
Our 2nd U-Net!
Our 2nd U-Net: results
Our 3rd U-Net: testing other loss functions
Our 3rd U-Net: results
Conclusion
Next steps
Cropping
We built in functionality to adjust the cropping size for our data augmentation step. It would be interesting to see how increasing or decreasing the size of the cropped images and masks would affect a model’s ability to predict our land cover classes
Generalizability
We originally intended to test the model’s generalizability on this dataset, unfortunately we ran out of time
Loss functions
In future iterations of this project we would like to test segmentation loss functions such as IOU and Dice further
Transfer Learning
We first tested transfer learning using this package, but ran into many problems. There appear to be many U-net like architectures out there to test such as using Resnet50 as the UNet encoder
17
Citations
18