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

Feature/grid tiles #393

Merged
merged 83 commits into from
Oct 31, 2023
Merged

Feature/grid tiles #393

merged 83 commits into from
Oct 31, 2023

Conversation

milos-colic
Copy link
Contributor

No description provided.

milos.colic added 4 commits May 9, 2023 14:00
Add OSR SpatialRef method to IndexSystem.
Add CustomIndexSystem with CRS support.
Define RST_GridTiles.
Add support for osrTransformCRS for MosaicGeometry.
Add extent method to MosaicGeometry.
Add isEmpty to MosaicRaster.
Define MosaicRasterChip.
Add support for getRasterForCell to MosaicRaster.
Define RasterClipByVector operator.
Define RasterTessellate operator.
Define RST_GridTiles expression.
Define SpatialRefUtils.
- Add GDALBinaryFileFormat that supports manipulating rasters in memory.
- Add GDALWarp operator that parses single line gdalwarp operation.
- Introduce storage location concept for rasters, in-memory vs disk.
- Simplify tiling logic through usage of gdalwarp.
- Remove saveCheckpoint logic.
- Add writeToPath and writeToBytes logic for rasters.
- Update RST_ReTile to support both in-memory and disk.
- Define RST_GridTiles that tessellate raster into grid based rasters.
- Add VectorClipper that generates in-memory .shp clip file.
Minor changes:
- Add _tmp to gitignore.
- Add logic for easy testing of display in local Jupyter.
milos.colic added 4 commits June 4, 2023 22:16
- Update GDALBinaryFileFormat to be able to read rasters both as paths and as byte arrays.
- Update all RasterExprs to support rasters both as paths and as byte arrays.
- Update tests to test for 2 types of rasters.
Minor changes:
- Remove large tif test file.
- Remove python tif test.
- Make ZIP resolution automatic.
- Consolidate GDALFileFormat and GDALBinaryFileFormat.scala to a single API.
- Fix the way ZIPs are handled in memory.
Minor changes:
- Remove large tif test file.
- Remove python tif test.
- Make ZIP resolution automatic.
Add Mosaic UUID to raster metadata at readtime.
Unify unlink and cleanup into cleanup.
Update tests.
milos.colic added 2 commits June 11, 2023 13:52
# Conflicts:
#	docs/source/usage/kepler.ipynb
…n x/y ratio.

Add GDALBuildVRT for executing build VRT programs.
Add GDALTranslate for executing translate programs.
Add GDALWarp for executing warp programs.
Refactor GDALFileFormat to support ReadStrategies.
Handle Axis Orientation in IndexSystem.
Add MergeRasters operator.
Add PathUtils to centralise all the path handling for GDAL and FUSE locations.
Add RasterChipType.
Add RasterCleaner for handling deletion and flushing of rasters between stages.
Add RST_Tessellate expression.
Add RST_Merge and RST_MergeAgg expressions.
Add ReTileOnRead read strategy.
Add ReadAsPath read strategy.
Add ReadInMemory read strategy.
milos.colic and others added 13 commits July 24, 2023 17:50
Add demo notebooks for prototype.
Add functionality for band stacking.
Fix SR transformations in MosaicGeometry.
Add NDVI and Clip expressions.
Fix projection issues in RST_Tessellate.
* fix H3 geometry constructor

* fix function names

* add test for str function

* lint with scalafmt

* add comments

(cherry picked from commit 8a83eed)
Improve data download.
Add NDVI function.
Add SAM example.
@milos-colic milos-colic marked this pull request as ready for review October 4, 2023 16:18
@codecov
Copy link

codecov bot commented Oct 20, 2023

Codecov Report

Merging #393 (d9c3b5c) into main (c179d49) will decrease coverage by 2.89%.
The diff coverage is 81.43%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #393      +/-   ##
==========================================
- Coverage   95.02%   92.14%   -2.89%     
==========================================
  Files         198      243      +45     
  Lines        5692     6671     +979     
  Branches      175      234      +59     
==========================================
+ Hits         5409     6147     +738     
- Misses        283      524     +241     
Files Coverage Δ
...metrycollection/MosaicGeometryCollectionESRI.scala 97.70% <100.00%> (ø)
...bricks/labs/mosaic/core/index/BNGIndexSystem.scala 99.02% <100.00%> (+0.01%) ⬆️
...m/databricks/labs/mosaic/core/index/GridConf.scala 100.00% <100.00%> (ø)
...abricks/labs/mosaic/core/index/H3IndexSystem.scala 97.67% <100.00%> (+0.08%) ⬆️
...atabricks/labs/mosaic/core/index/IndexSystem.scala 95.71% <100.00%> (+0.25%) ⬆️
.../labs/mosaic/core/raster/operator/CombineAVG.scala 100.00% <100.00%> (ø)
...core/raster/operator/clip/RasterClipByVector.scala 100.00% <100.00%> (ø)
...saic/core/raster/operator/clip/VectorClipper.scala 100.00% <100.00%> (ø)
...osaic/core/raster/operator/gdal/GDALBuildVRT.scala 100.00% <100.00%> (ø)
...saic/core/raster/operator/gdal/GDALTranslate.scala 100.00% <100.00%> (ø)
... and 102 more

milos.colic and others added 17 commits October 20, 2023 12:02
Update GDALWarp to use starts with instead of split.
Update pythong mosaic_context to not depend on raster API.
Use -wo CUTLINE_ALL_TOUCHED=TRUE for clipping.
- Remove references to RasterAPI in the non-expression-based R methods
- Fix and simplify the R package build automation, including updating failing tests. The R packages will now appear with our release artefacts 👍
- Added caching and use of Posit public package manager in Github actions to avoid downloading Spark source every time and building R package dependencies from source
- Skip coverage checks if being run _outside_ of the main build workflow
Add GDALCalc support.
Change NDVI to use GDALCalc.
Add code docs.
Add support for Pixel Functions via VRTs.
Update tests.
Change all gdal rasters to be passed by name.
@milos-colic
Copy link
Contributor Author

Merging this since builds are passing and this minor dip in coverage still has us above 90%.
Will add more coverage in follow up PRs.

@milos-colic milos-colic merged commit 4e9e2b9 into main Oct 31, 2023
5 of 8 checks passed
sllynn pushed a commit that referenced this pull request Nov 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants