SatRbedo

Tools for retrieving snow and ice albedo from optical satellite imagery.
https://github.com/pabl1t0x/satrbedo

Category: Cryosphere
Sub Category: Snow and Permafrost

Last synced: about 3 hours ago
JSON representation

Repository metadata

Tools for retrieving snow and ice albedo from optical satellite imagery

README.Rmd

          ---
output: github_document
---



```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/",
  out.width = "80%"
)
```


# SatRbedo


[![Codecov test coverage](https://codecov.io/gh/pabl1t0x/SatRbedo/branch/master/graph/badge.svg)](https://app.codecov.io/gh/pabl1t0x/SatRbedo/tree/master)
[![status](https://joss.theoj.org/papers/c5899414306d4cf318350654b7aa38fa/status.svg)](https://joss.theoj.org/papers/c5899414306d4cf318350654b7aa38fa)
[![DOI](https://zenodo.org/badge/1000973120.svg)](https://doi.org/10.5281/zenodo.17905204)


Albedo is a key parameter that controls the energy exchange between the atmosphere and snow or ice surfaces, playing a crucial role in estimating glacier melt and mass balance. While commonly measured in the field with pyranometers, these instruments have limited spatial coverage due to their footprint. Therefore, remote sensing offers the best option for deriving snow and ice albedo data and analysing its spatial and temporal variability.
`SatRbedo` is an extensible, well-documented package for retrieving snow and ice albedo from optical satellite images, such as [Landsat](https://www.usgs.gov/landsat-missions/landsat-collection-2-surface-reflectance) and [Sentinel-2](https://dataspace.copernicus.eu/explore-data/data-collections/sentinel-data/sentinel-2). It requires the following input datasets:

- Atmospherically corrected surface reflectance (gridded).
- Satellite ($\varphi_v$, $\theta_v$) and solar ($\varphi_s$, $\theta_s$) azimuth and zenith angles (numeric or gridded).
- A digital elevation model (DEM) (gridded).
- An outline of the area of interest (shapefile).

The `SatRbedo` package has been designed for researchers, consultants, and individuals interested in exploring changes in snow and ice albedo. It includes the following functions:

- `preproc()` provides tools for image pre-processing, including cropping grids to a specified extent, projecting grids with different coordinate systems, and converting data from integer to floating point.
- `cfactor_BRDF()` converts nadir satellite observations to off-nadir values using view-angle corrections.
- `cast_shadows()`, `hill_shade()`, and `shadow_removal()` detect and mask topographic shadows.
- `topo_corr()` and `topo_splot()` provide tools to correct surface reflectance for the effects of topography and to visualise the dependency of surface reflectance on the illumination condition.
- `snow_or_ice()`, and `NDSII_hist()` are used for the automatic discrimination of snow and ice surfaces.
- `f_BRDF()` performs the anisotropic correction of reflected radiation of glacier snow and ice using empirical parameterisations of the bidirectional reflectance distribution function (BRDF).
- `albedo_sat()` calculates narrowband and broadband albedo from surface reflectance data. The albedo retrieval methods include corrections for the anisotropic behaviour of the reflected radiation field over snow and ice, as well as narrow-to-broadband albedo conversion algorithms.
- `albedo_Knap()`, `albedo_Feng()`, and `albedo_Liang()` convert narrowband to broadband albedo.

## Installation

You can install `SatRbedo` with:




``` r
install.packages('SatRbedo', repos = c('https://pabl1t0x.r-universe.dev', 'https://cloud.r-project.org'))
```

## Getting Started

Snow and ice albedo retrieval from satellite imagery is a four-step workflow that includes image pre-processing, topographic and anisotropic corrections, and a narrow-to-broadband albedo conversion (Fig. 1).

``` {r workflow, echo = FALSE, fig.cap = "Fig. 1 Flowchart of the satellite albedo retrieval workflow"}
knitr::include_graphics("man/figures/workflow.png")
```

A basic usage example of estimating satellite albedo from Sentinel-2 surface reflectance data can be found [here](https://pabl1t0x.github.io/SatRbedo/articles/SatRbedo.html).

## Contributing

All contributions are welcomed. See our [Contributing Guidelines](CONTRIBUTING.md) for more details.

## Citing

Please cite `SatRbedo` using:

```
@article{
  title = {{SatRbedo}: {An} {R} package for retrieving snow and ice albedo from optical satellite imagery}, 
  author = {Fuchs, Pablo and Dadic, Ruzica and MacDonell, Shelley and Purdie, Heather and Anderson, Brian and Katurji, Marwan},
  journal = {Journal of Open Source Software},
  year = {2026},
  volume = {11}, 
  number = {117}, 
  pages = {8973}, 
  doi = {10.21105/joss.08973}
}
```

## License

This project is licensed under the terms of the GNU General Public License v3.0. See [LICENSE](/LICENSE.md) for more details.

![](https://www.gnu.org/graphics/gplv3-127x51.png)

        

Citation (CITATION.cff)

cff-version: "1.2.0"
authors:
- family-names: Fuchs
  given-names: Pablo
  orcid: "https://orcid.org/0000-0002-6042-5620"
- family-names: Dadic
  given-names: Ruzica
  orcid: "https://orcid.org/0000-0003-1303-1896"
- family-names: MacDonell
  given-names: Shelley
  orcid: "https://orcid.org/0000-0001-9641-4547"
- family-names: Purdie
  given-names: Heather
  orcid: "https://orcid.org/0000-0002-2723-6908"
- family-names: Anderson
  given-names: Brian
- family-names: Katurji
  given-names: Marwan
  orcid: "https://orcid.org/0000-0002-3368-1469"
contact:
- family-names: Fuchs
  given-names: Pablo
  orcid: "https://orcid.org/0000-0002-6042-5620"
doi: 10.5281/zenodo.17905205
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Fuchs
    given-names: Pablo
    orcid: "https://orcid.org/0000-0002-6042-5620"
  - family-names: Dadic
    given-names: Ruzica
    orcid: "https://orcid.org/0000-0003-1303-1896"
  - family-names: MacDonell
    given-names: Shelley
    orcid: "https://orcid.org/0000-0001-9641-4547"
  - family-names: Purdie
    given-names: Heather
    orcid: "https://orcid.org/0000-0002-2723-6908"
  - family-names: Anderson
    given-names: Brian
  - family-names: Katurji
    given-names: Marwan
    orcid: "https://orcid.org/0000-0002-3368-1469"
  date-published: 2026-01-22
  doi: 10.21105/joss.08973
  issn: 2475-9066
  issue: 117
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 8973
  title: "SatRbedo: An R package for retrieving snow and ice albedo from
    optical satellite imagery"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.08973"
  volume: 11
title: "SatRbedo: An R package for retrieving snow and ice albedo from
  optical satellite imagery"

Owner metadata


GitHub Events

Total
Last Year

Issue and Pull Request metadata

Last synced: 17 days ago

Total issues: 4
Total pull requests: 1
Average time to close issues: 29 days
Average time to close pull requests: 1 day
Total issue authors: 1
Total pull request authors: 1
Average comments per issue: 4.25
Average comments per pull request: 0.0
Merged pull request: 1
Bot issues: 0
Bot pull requests: 0

Past year issues: 4
Past year pull requests: 1
Past year average time to close issues: 29 days
Past year average time to close pull requests: 1 day
Past year issue authors: 1
Past year pull request authors: 1
Past year average comments per issue: 4.25
Past year average comments per pull request: 0.0
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/pabl1t0x/satrbedo

Top Issue Authors

  • DS4Ag (4)

Top Pull Request Authors

  • ethanwhite (1)

Top Issue Labels

Top Pull Request Labels


Dependencies

.github/workflows/draft-pdf.yaml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v4 composite
  • openjournals/openjournals-draft-action master composite
.github/workflows/test-coverage.yaml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v4 composite
  • codecov/codecov-action v5 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
DESCRIPTION cran
  • R >= 3.5 depends
  • EBImage * imports
  • Rdpack * imports
  • cli * imports
  • graphics * imports
  • stats * imports
  • terra * imports
  • testthat >= 3.0.0 suggests

Score: -Infinity