-
Notifications
You must be signed in to change notification settings - Fork 15
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
GEOSException when reprojecting #147
Comments
@pjhartzell that would be |
That's a common family of errors we have no good solution for currently. Essentially we need a more robust mechanism for checking overlap of two geometries defined in two different projections, keeping in mind that not all vertices of This is a common operation and needs to be efficient in the common case, yet allowing for a more costly but more robust check if we detect issues with geometries after projection while doing a cheap version of the check. |
@Kirill888 Thanks for the info. Yep, that geometry is incorrect. Should be a MultiPolygon with a Polygon on each side of the antimeridian. |
Summary
When loading and then reprojecting data in a sinusoidal (MODIS and VIIRS products) tile whose boundary spans the edge of the projection (and, hence, the antimeridian), a GEOS Exception is raised, e.g, this:
produces an error:
Workarounds (unsatisfactory to current needs)
chunks
option, reprojection is successful. However, we are using Dask and need to specify chunk size.load
call by passing thecrs
(rather than the separate.odc.reproject
), there is no error. However, we moved to a load and then reproject order of operations to work around a small data gap when loading adjacent sinusoidaltiles.
Minimal Example
A minimal STAC Item and Jupyter notebook recreating the problem is here.
Versions, hardware
Pinned to:
odc-stac==0.3.5
odc-geo==0.4.3
odc-algo==0.2.3
Tested with Python 3.9
Apple M1 (arm64)
The text was updated successfully, but these errors were encountered: