Skip to content

Commit

Permalink
Added LVIS Available on STAC
Browse files Browse the repository at this point in the history
  • Loading branch information
Jack-Hayes committed Dec 19, 2024
1 parent 9c5b1ea commit 3ee68c4
Show file tree
Hide file tree
Showing 4 changed files with 1,502 additions and 109 deletions.
1,552 changes: 1,443 additions & 109 deletions docs/examples/additional_lidar.ipynb

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions docs/user_guide/datasets.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ used by this library.
| NOAA Coastal LiDAR | noaa | LiDAR | 1996-10-09 | | US Territories | [NOAA](https://coast.noaa.gov/digitalcoast/data/coastallidar.html) |
| NCALM LiDAR | ncalm | LiDAR | 2003-05-15 | | US Territories | [NCALM](https://calm.geo.berkeley.edu/ncalm/dtc.html) |
| NEON LiDAR | neon | LiDAR | 2013-06-01 | | US Territories | [NEON](https://data.neonscience.org/data-products/DP3.30024.001) |
| ABoVE LVIS L2 | ablvis2_1 | LiDAR | 2017-06-29 | 2017-07-17 | AK and Canada | [ABoVE LVIS L2](https://nsidc.org/data/ablvis2/versions/1) |
| AfriSAR LVIS L2 | aflvis2_1 | LiDAR | 2016-02-20 | 2016-03-08 | Gabon | [AfriSAR LVIS L2](https://nsidc.org/data/aflvis2/versions/1) |

## Other data sources

Expand Down
2 changes: 2 additions & 0 deletions src/coincident/datasets/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@
usgs.ThreeDEP(),
nasa.ICESat2(),
nasa.GEDI(),
nasa.ABLVIS2_1(),
nasa.AFLVIS2_1(),
planetary_computer.COP30(),
planetary_computer.WorldCover(),
csda.TDX(),
Expand Down
55 changes: 55 additions & 0 deletions src/coincident/datasets/nasa.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,58 @@ class GEDI(Dataset):
alias: str = "gedi"
collections: list[str] = field(default_factory=lambda: ["GEDI02_A_002"])
provider: str = "nasa"


# LVIS

This comment has been minimized.

Copy link
@Jack-Hayes

Jack-Hayes Dec 19, 2024

Author Member

@scottyhq @dshean , see my note about LVIS STAC availability. Would we want to proceed with creating new datasets for LVIS and G-LiHT that rely on earthaccess for LP DAAC access? Would this include an 'optional reliance' on the user having a .netrc auth file in their home directory or more env variables or what?
Not sure if we want to remove/comment-out the two new datasets I added so I didn't add tests for them. I added them to the additional LiDAR example notebook as seen in the commit, though.
Thanks!

# NOTE: different LVIS catalogs are scattered and only some have STAC support...
# Accessing LVIS data through an LP DAAC via earthaccess would include the below two
# datasets, making them mostly-redundant. Can't find STAC catalogs for G-LiHT either
# but the ASF STAC endpoint is promising and will allow us to easily implement
# some Sentinel-1, ALOS, etc access
# https://cmr.earthdata.nasa.gov/stac/ASF
# =======
@dataclass
class ABLVIS2_1(Dataset):
"""
Essential metadata for ABoVE LVIS L2 Geolocated Surface Elevation Product, Version 1
Search extent limited to bbox [-158, 48, -104, 72] and 2017-06-29 to 2017-07-17
This data set contains surface elevation data over Alaska and Western Canada measured by the
NASA Land, Vegetation, and Ice Sensor (LVIS), an airborne lidar scanning laser altimeter.
The data were collected as part of NASA's Terrestrial Ecology Program campaign,
the Arctic-Boreal Vulnerability Experiment (ABoVE).
"""

has_stac_api: bool = True
search: str = "https://cmr.earthdata.nasa.gov/stac/NSIDC_ECS"
start: str = "2017-06-29"
end: str = "2017-07-17"
type: str = "lidar"
alias: str = "ablvis2_1"
collections: list[str] = field(default_factory=lambda: ["ABLVIS2_1"])
provider: str = "nasa"


@dataclass
class AFLVIS2_1(Dataset):
"""
Essential metadata for AfriSAR LVIS L2 Geolocated Surface Elevation Product, Version 1
Search extent limited to bbox [8, -2, 12, 1] and 2016-02-20 to 2016-03-08
This data set contains surface elevation data over Gabon, Africa.
The measurements were taken by the NASA Land, Vegetation, and Ice Sensor (LVIS),
an airborne lidar scanning laser altimeter.
The data were collected as part of a NASA campaign,
in collaboration with the European Space Agency (ESA) mission AfriSAR.
"""

has_stac_api: bool = True
search: str = "https://cmr.earthdata.nasa.gov/stac/NSIDC_ECS"
start: str = "2016-02-20"
end: str = "2016-03-08"
type: str = "lidar"
alias: str = "aflvis2_1"
collections: list[str] = field(default_factory=lambda: ["AFLVIS2_1"])
provider: str = "nasa"

1 comment on commit 3ee68c4

@Jack-Hayes
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NOTE: different LVIS catalogs are scattered and only some have STAC support...
Accessing LVIS data through an LP DAAC via earthaccess would include the added datasets, making them mostly-redundant. Can't find STAC catalogs for G-LiHT either but the ASF STAC endpoint is promising and will allow us to easily implement some Sentinel-1, ALOS, etc access (https://cmr.earthdata.nasa.gov/stac/ASF).
Not sure if we want to remove/comment-out the two new datasets I added so I didn't add tests for them. I added them to the additional LiDAR example notebook as seen in the commit, though.

Please sign in to comment.