Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add STAC creation and Xarray loading functionality #266

Open
wants to merge 55 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 52 commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
320a9fd
first version of stac catalog
forrestfwilliams Feb 5, 2024
c004542
flesh out stac items
forrestfwilliams Feb 7, 2024
8a9d488
update to create extent using items
forrestfwilliams Feb 7, 2024
ba80649
remove shapely dependency
forrestfwilliams Feb 7, 2024
865259b
add docstrings and typing
forrestfwilliams Feb 8, 2024
4ff5c6a
update requirements
forrestfwilliams Feb 8, 2024
0abb3f7
update docstring
forrestfwilliams Feb 8, 2024
2a63c01
fix flake8
forrestfwilliams Feb 8, 2024
0425e25
update changelog
forrestfwilliams Feb 8, 2024
a56593f
fix polarizaiton bug
forrestfwilliams Feb 8, 2024
d3cfeb8
small update
forrestfwilliams Feb 8, 2024
0546a21
fix for proj conventions
forrestfwilliams Feb 8, 2024
94b4d57
add validator
forrestfwilliams Feb 9, 2024
487040e
add support for slc insar
forrestfwilliams Feb 9, 2024
ea58a53
add rtc capability
forrestfwilliams Feb 9, 2024
fa594d4
create the GeoInfo class
forrestfwilliams Feb 10, 2024
d0da5b5
refactor properties
forrestfwilliams Feb 10, 2024
c76e2ca
multi-thread https requests
forrestfwilliams Feb 10, 2024
84c3533
clean up and update collection info
forrestfwilliams Feb 12, 2024
475a998
small bugfix and start tests
forrestfwilliams Feb 19, 2024
9ff48be
using tifffile for getting tiff info, add test
forrestfwilliams Feb 20, 2024
919544a
add more tests
forrestfwilliams Feb 20, 2024
d23b7e3
add tests and docs
forrestfwilliams Feb 21, 2024
3aaacef
fix flake8
forrestfwilliams Feb 21, 2024
effc2de
add function to write item
forrestfwilliams Feb 22, 2024
b825e90
work on mintpy functionality
forrestfwilliams Feb 22, 2024
b3cebd0
working mintpy prep
forrestfwilliams Feb 22, 2024
6b4e8bd
refactor dataset creation
forrestfwilliams Feb 22, 2024
77da2aa
doi presentation
forrestfwilliams Feb 28, 2024
aa4bd47
add docstrings and typing
forrestfwilliams Feb 28, 2024
602ea00
switch to using odc-stac
forrestfwilliams Feb 29, 2024
06158d1
remove unused code
forrestfwilliams Feb 29, 2024
afbe05c
add optional dependency logic
forrestfwilliams Feb 29, 2024
369868e
update dependencies
forrestfwilliams Mar 1, 2024
eb19190
fix flake8
forrestfwilliams Mar 1, 2024
dd3c540
Merge branch 'develop' into stac
forrestfwilliams Mar 1, 2024
d97061e
fix insar item test
forrestfwilliams Mar 1, 2024
2de884c
fix flake8
forrestfwilliams Mar 1, 2024
83d09d8
simplify imports, check for expired jobs
forrestfwilliams Mar 7, 2024
d8d8fc2
fix flake8
forrestfwilliams Mar 7, 2024
ad2b848
remove expired check for now
forrestfwilliams Mar 7, 2024
09ac7c8
fix flake8
forrestfwilliams Mar 7, 2024
3eedf08
move stac functionality to submodule
forrestfwilliams Mar 8, 2024
4e6c7c3
add sub __init__
forrestfwilliams Mar 8, 2024
badbd4a
simplify import check
forrestfwilliams Mar 8, 2024
b437dc1
add future warning
forrestfwilliams Mar 8, 2024
752117a
make functions that may be migrated private functions
forrestfwilliams Mar 8, 2024
ea74055
fix flake8
forrestfwilliams Mar 8, 2024
7eb0215
add extra properties
forrestfwilliams Mar 12, 2024
a3f3460
ensure bbox is in lat lon
forrestfwilliams Mar 12, 2024
203f175
reorder load and add tests
forrestfwilliams Mar 12, 2024
4197eb6
fix flake8
forrestfwilliams Mar 12, 2024
bb688ad
Update src/hyp3_sdk/stac/stac.py
forrestfwilliams Apr 18, 2024
a950809
add insar extension
forrestfwilliams Apr 18, 2024
80f206e
enforce pixel as point
forrestfwilliams Apr 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [PEP 440](https://www.python.org/dev/peps/pep-0440/)
and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [6.2.0]

### Added
* New functionality in `stac.py` that allows users to create STAC collections from Batches of HyP3 Burst InSAR/RTC jobs
* New functionality in `load.py` that allows users to load HyP3 collection directly into Xarray objects
* Ability to reformat a HyP3 InSAR Xarray into MintPy-compatible hdf5 files

## [6.1.0]

### Added
Expand Down
9 changes: 9 additions & 0 deletions environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,12 @@ dependencies:
- requests
- tqdm
- urllib3
# For STAC creation
- pystac
- fsspec
- aiohttp
- tifffile
# For data loading
- h5py
- gdal
- odc-stac
9 changes: 8 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,14 @@ dynamic = ["version"]
develop = [
"pytest",
"pytest-cov",
"responses"
"responses",
"pystac",
"fsspec",
"aiohttp",
"tifffile",
"h5py",
"gdal",
"odc-stac",
]

[project.urls]
Expand Down
13 changes: 13 additions & 0 deletions src/hyp3_sdk/stac/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
from importlib import import_module


missing_modules = []
needed_modules = ['aiohttp', 'fsspec', 'h5py', 'pyproj', 'pystac', 'odc.stac', 'tifffile']
for module in needed_modules:
try:
import_module(module)
except ImportError:
missing_modules.append(module)

if missing_modules:
raise ImportError(f'package(s) {", ".join(missing_modules)} is/are required for this submodule.')
Loading
Loading