SpaceLiDAR
A Julia toolbox for ICESat, ICESat-2 and GEDI data to quickly search, download, and load filtered point data with relevant attributes from the .h5 granules of each data product.
https://github.com/evetion/spacelidar.jl
Category: Sustainable Development
Sub Category: Environmental Satellites
Keywords
earth-observation gedi hacktoberfest icesat icesat-2 io julia laser remote-sensing
Keywords from Contributors
transforms control compose measur symbolic-computation ode optimize parallel units crops
Last synced: about 17 hours ago
JSON representation
Repository metadata
A Julia package for working with ICESat-2 & GEDI data as part of my PhD research
- Host: GitHub
- URL: https://github.com/evetion/spacelidar.jl
- Owner: evetion
- License: gpl-3.0
- Created: 2020-02-17T11:50:45.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2025-03-04T17:45:36.000Z (about 2 months ago)
- Last Synced: 2025-04-18T22:13:58.206Z (8 days ago)
- Topics: earth-observation, gedi, hacktoberfest, icesat, icesat-2, io, julia, laser, remote-sensing
- Language: Julia
- Homepage: https://www.evetion.nl/SpaceLiDAR.jl/dev/
- Size: 2.9 MB
- Stars: 25
- Watchers: 4
- Forks: 4
- Open Issues: 6
- Releases: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Citation: CITATION.cff
README.md
SpaceLiDAR
A Julia toolbox for ICESat, ICESat-2 and GEDI data. Quickly search, download, and load filtered point data with relevant attributes from the .h5
granules of each data product.
Currently supports the following data products:
mission | data product | User Guide (UG) | Algorithm Theoretical Basis Document (ATBD) |
---|---|---|---|
ICESat | GLAH06 v34 | UG | ATBD |
ICESat | GLAH14 v34 | UG | ATBD |
ICESat-2 | ATL03 v6 | UG | ATBD |
ICESat-2 | ATL06 v5 | UG | ATBD |
ICESat-2 | ATL08 v6 | UG | ATBD |
ICESat-2 | ATL12 v5 | UG | ATBD |
GEDI | L2A v2 | UG | ATBD |
For an overview with code examples, see the FOSS4G Pluto notebook here
If you use SpaceLiDAR.jl in your research, please consider citing it.
Install
]add SpaceLiDAR
Usage
Search for data
using SpaceLiDAR
using Extents
# Find all ATL08 granules ever
granules = search(:ICESat2, :ATL08)
# Find only ATL03 granules in a part of Vietnam
vietnam = Extent(X=(102.0, 107.0), Y=(8.0, 12.0))
granules = search(:ICESat2, :ATL08; extent=vietnam, version=6)
# Find GEDI granules in the same way
granules = search(:GEDI, :GEDI02_A; extent=vietnam)
# A granule is pretty simple
granule = granules[1]
granule.id # filename
granule.url # download url
granule.info # derived information from id
# Downloading granules requires a setup .netrc with an NASA EarthData account
# we provide a helper function, that creates/updates a ~/.netrc or ~/_netrc
SpaceLiDAR.netrc!(username, password) # replace with your credentials
# Afterward you can download the dataset.
# Note: download! updated granule url to local path
granule = SpaceLiDAR.download!(granule)
# You can also load a granule from disk
path2file = granule.url
granule = SpaceLiDAR.granule(path2file)
# Or from a folder
(folder, fn) = splitdir(path2file)
local_granules = SpaceLiDAR.granules(folder)
Derive points
using DataFrames
fn = "GEDI02_A_2019242104318_O04046_01_T02343_02_003_02_V002.h5"
granule = SpaceLiDAR.granule(fn)
df = DataFrame(granule)
760156×15 DataFrame
Row │ longitude latitude height height_error datetime intensity sensitivity surface quality nmodes track strong_beam classification sun_angle height_reference
│ Float64 Float64 Float32 Float32 DateTime Float32 Float32 Bool Bool UInt8 String Bool String Float32 Float32
────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
1 │ 26.6923 51.823 169.045 0.313182 2019-04-18T10:22:23.996 -857.388 1.38006 true false 1 BEAM0000 false ground 49.0315 169.752
2 │ 26.7006 51.823 165.783 0.31319 2019-04-18T10:22:24.078 853.56 0.694586 true false 1 BEAM0000 false ground 49.0312 167.354
3 │ 26.7023 51.823 162.871 0.313192 2019-04-18T10:22:24.095 110.071 -0.480232 true false 1 BEAM0000 false ground 49.0311 164.785
⋮ │ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
760155 │ 110.661 -0.194184 171.157 0.258848 2019-04-18T10:45:33.900 7702.96 0.945006 true true 2 BEAM1011 true ground -1.94442 176.333
760156 │ 110.662 -0.195451 167.176 0.258852 2019-04-18T10:45:33.925 9595.64 0.981322 true true 2 BEAM1011 true ground -1.94564 173.691
Derive linestrings
using DataFrames
fn = "GEDI02_A_2019108093620_O01965_03_T05338_02_003_01_V002.h5"
granule = SpaceLiDAR.granule(fn)
tlines = DataFrame.(SpaceLiDAR.lines(granule; step=10000))
SpaceLiDAR.GDF.write("lines.gpkg", tlines)
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it using these metadata." authors: - affiliation: "Deltares, TU Delft" family-names: Pronk given-names: Maarten orcid: "https://orcid.org/0000-0001-8758-3939" - affiliation: "NASA Jet Propulsion Laboratory" family-names: Gardner given-names: Alex orcid: "https://orcid.org/0000-0002-8394-8889" date-released: 2021-07-30 title: "SpaceLiDAR.jl" version: 0.2.2 url: "https://github.com/evetion/SpaceLiDAR.jl" doi: 10.5281/zenodo.7213658
Owner metadata
- Name: Maarten Pronk
- Login: evetion
- Email:
- Kind: user
- Description: GeoData Scientist working on elevation modelling @Deltares. External PhD candidate at @TUDelft3d
- Website: https://www.evetion.nl
- Location: Netherlands
- Twitter:
- Company: @Deltares @TUDelft3d
- Icon url: https://avatars.githubusercontent.com/u/8655030?u=589d1dc380bbe6c779a177bfbbc8e85a3fdf687a&v=4
- Repositories: 112
- Last ynced at: 2025-04-24T05:43:51.831Z
- Profile URL: https://github.com/evetion
GitHub Events
Total
- Create event: 6
- Commit comment event: 4
- Release event: 1
- Issues event: 1
- Watch event: 2
- Delete event: 1
- Issue comment event: 3
- Push event: 12
- Pull request event: 6
Last Year
- Create event: 6
- Commit comment event: 4
- Release event: 1
- Issues event: 1
- Watch event: 2
- Delete event: 1
- Issue comment event: 3
- Push event: 12
- Pull request event: 6
Committers metadata
Last synced: 6 days ago
Total Commits: 144
Total Committers: 6
Avg Commits per committer: 24.0
Development Distribution Score (DDS): 0.222
Commits in past year: 13
Committers in past year: 3
Avg Commits per committer in past year: 4.333
Development Distribution Score (DDS) in past year: 0.462
Name | Commits | |
---|---|---|
Maarten Pronk | g****t@e****l | 112 |
Alex Gardner | 3****r | 15 |
dependabot[bot] | 4****] | 9 |
github-actions[bot] | 4****] | 6 |
Ubuntu | u****u@i****l | 1 |
CompatHelper Julia | c****y@j****g | 1 |
Committer domains:
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 34
Total pull requests: 53
Average time to close issues: 4 months
Average time to close pull requests: 21 days
Total issue authors: 5
Total pull request authors: 4
Average comments per issue: 3.26
Average comments per pull request: 2.15
Merged pull request: 42
Bot issues: 0
Bot pull requests: 22
Past year issues: 2
Past year pull requests: 4
Past year average time to close issues: 2 months
Past year average time to close pull requests: 16 days
Past year issue authors: 1
Past year pull request authors: 2
Past year average comments per issue: 1.5
Past year average comments per pull request: 0.5
Past year merged pull request: 4
Past year bot issues: 0
Past year bot pull requests: 1
Top Issue Authors
- alex-s-gardner (21)
- evetion (10)
- jzphlp (1)
- hugoledoux (1)
- JuliaTagBot (1)
Top Pull Request Authors
- evetion (20)
- github-actions[bot] (13)
- alex-s-gardner (11)
- dependabot[bot] (9)
Top Issue Labels
- enhancement (1)
Top Pull Request Labels
- dependencies (9)
Package metadata
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 10
juliahub.com: SpaceLiDAR
A Julia package for working with ICESat-2 & GEDI data as part of my PhD research
- Homepage: https://www.evetion.nl/SpaceLiDAR.jl/dev/
- Documentation: https://docs.juliahub.com/General/SpaceLiDAR/stable/
- Licenses: GPL-3.0
- Latest release: 0.4.0 (published 5 months ago)
- Last Synced: 2025-03-24T12:17:52.069Z (about 1 month ago)
- Versions: 10
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 9.94%
- Stargazers count: 24.964%
- Average: 26.778%
- Forks count: 33.293%
- Dependent packages count: 38.915%
Dependencies
- actions/checkout v2 composite
- julia-actions/setup-julia latest composite
- actions/cache v1 composite
- actions/checkout v2 composite
- julia-actions/julia-buildpkg v1 composite
- julia-actions/julia-runtest v1 composite
- julia-actions/setup-julia v1 composite
- JuliaRegistries/TagBot v1 composite
- actions/checkout v3 composite
- julia-actions/setup-julia latest composite
- stefanzweifel/git-auto-commit-action v4 composite
Score: -Infinity