geodl: An R package for geospatial deep learning semantic segmentation using torch and terra.
Convolutional neural network (CNN)-based deep learning (DL) methods have transformed the analysis of geospatial, Earth observation, and geophysical data due to their ability to model spatial context information at multiple scales. Such methods are especially applicable to pixel-level classification...
Saved in:
| Main Authors: | , , , |
|---|---|
| Format: | Article |
| Language: | English |
| Published: |
Public Library of Science (PLoS)
2024-01-01
|
| Series: | PLoS ONE |
| Online Access: | https://doi.org/10.1371/journal.pone.0315127 |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1850245763852926976 |
|---|---|
| author | Aaron E Maxwell Sarah Farhadpour Srinjoy Das Yalin Yang |
| author_facet | Aaron E Maxwell Sarah Farhadpour Srinjoy Das Yalin Yang |
| author_sort | Aaron E Maxwell |
| collection | DOAJ |
| description | Convolutional neural network (CNN)-based deep learning (DL) methods have transformed the analysis of geospatial, Earth observation, and geophysical data due to their ability to model spatial context information at multiple scales. Such methods are especially applicable to pixel-level classification or semantic segmentation tasks. A variety of R packages have been developed for processing and analyzing geospatial data. However, there are currently no packages available for implementing geospatial DL in the R language and data science environment. This paper introduces the geodl R package, which supports pixel-level classification applied to a wide range of geospatial or Earth science data that can be represented as multidimensional arrays where each channel or band holds a predictor variable. geodl is built on the torch package, which supports the implementation of DL using the R and C++ languages without the need for installing a Python/PyTorch environment. This greatly simplifies the software environment needed to implement DL in R. Using geodl, geospatial raster-based data with varying numbers of bands, spatial resolutions, and coordinate reference systems are read and processed using the terra package, which makes use of C++ and allows for processing raster grids that are too large to fit into memory. Training loops are implemented with the luz package. The geodl package provides utility functions for creating raster masks or labels from vector-based geospatial data and image chips and associated masks from larger files and extents. It also defines a torch dataset subclass for geospatial data for use with torch dataloaders. UNet-based models are provided with a variety of optional ancillary modules or modifications. Common assessment metrics (i.e., overall accuracy, class-level recalls or producer's accuracies, class-level precisions or user's accuracies, and class-level F1-scores) are implemented along with a modified version of the unified focal loss framework, which allows for defining a variety of loss metrics using one consistent implementation and set of hyperparameters. Users can assess models using standard geospatial and remote sensing metrics and methods and use trained models to predict to large spatial extents. This paper introduces the geodl workflow, design philosophy, and goals for future development. |
| format | Article |
| id | doaj-art-caca998dc374440aa5e00b9caae6c44e |
| institution | OA Journals |
| issn | 1932-6203 |
| language | English |
| publishDate | 2024-01-01 |
| publisher | Public Library of Science (PLoS) |
| record_format | Article |
| series | PLoS ONE |
| spelling | doaj-art-caca998dc374440aa5e00b9caae6c44e2025-08-20T01:59:21ZengPublic Library of Science (PLoS)PLoS ONE1932-62032024-01-011912e031512710.1371/journal.pone.0315127geodl: An R package for geospatial deep learning semantic segmentation using torch and terra.Aaron E MaxwellSarah FarhadpourSrinjoy DasYalin YangConvolutional neural network (CNN)-based deep learning (DL) methods have transformed the analysis of geospatial, Earth observation, and geophysical data due to their ability to model spatial context information at multiple scales. Such methods are especially applicable to pixel-level classification or semantic segmentation tasks. A variety of R packages have been developed for processing and analyzing geospatial data. However, there are currently no packages available for implementing geospatial DL in the R language and data science environment. This paper introduces the geodl R package, which supports pixel-level classification applied to a wide range of geospatial or Earth science data that can be represented as multidimensional arrays where each channel or band holds a predictor variable. geodl is built on the torch package, which supports the implementation of DL using the R and C++ languages without the need for installing a Python/PyTorch environment. This greatly simplifies the software environment needed to implement DL in R. Using geodl, geospatial raster-based data with varying numbers of bands, spatial resolutions, and coordinate reference systems are read and processed using the terra package, which makes use of C++ and allows for processing raster grids that are too large to fit into memory. Training loops are implemented with the luz package. The geodl package provides utility functions for creating raster masks or labels from vector-based geospatial data and image chips and associated masks from larger files and extents. It also defines a torch dataset subclass for geospatial data for use with torch dataloaders. UNet-based models are provided with a variety of optional ancillary modules or modifications. Common assessment metrics (i.e., overall accuracy, class-level recalls or producer's accuracies, class-level precisions or user's accuracies, and class-level F1-scores) are implemented along with a modified version of the unified focal loss framework, which allows for defining a variety of loss metrics using one consistent implementation and set of hyperparameters. Users can assess models using standard geospatial and remote sensing metrics and methods and use trained models to predict to large spatial extents. This paper introduces the geodl workflow, design philosophy, and goals for future development.https://doi.org/10.1371/journal.pone.0315127 |
| spellingShingle | Aaron E Maxwell Sarah Farhadpour Srinjoy Das Yalin Yang geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. PLoS ONE |
| title | geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. |
| title_full | geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. |
| title_fullStr | geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. |
| title_full_unstemmed | geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. |
| title_short | geodl: An R package for geospatial deep learning semantic segmentation using torch and terra. |
| title_sort | geodl an r package for geospatial deep learning semantic segmentation using torch and terra |
| url | https://doi.org/10.1371/journal.pone.0315127 |
| work_keys_str_mv | AT aaronemaxwell geodlanrpackageforgeospatialdeeplearningsemanticsegmentationusingtorchandterra AT sarahfarhadpour geodlanrpackageforgeospatialdeeplearningsemanticsegmentationusingtorchandterra AT srinjoydas geodlanrpackageforgeospatialdeeplearningsemanticsegmentationusingtorchandterra AT yalinyang geodlanrpackageforgeospatialdeeplearningsemanticsegmentationusingtorchandterra |