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

Sentinel-1 scaling to UINT16 for Orfeo contains a bug #187

Open
kvantricht opened this issue Dec 20, 2024 · 0 comments · May be fixed by #188
Open

Sentinel-1 scaling to UINT16 for Orfeo contains a bug #187

kvantricht opened this issue Dec 20, 2024 · 0 comments · May be fixed by #188
Assignees

Comments

@kvantricht
Copy link
Collaborator

As a long-standing issue, Orfeo has the problem that values below thermal noise are treated the same way as nodata and both end up being "0" (Open-EO/openeo-geopyspark-driver#293). OpenEO treats both as nodata.

The current compress_backscatter_uint16 logic tried to cope with this by including an if_ and setting nodata values to 1 (https://github.com/Open-EO/openeo-gfmap/blob/main/src/openeo_gfmap/preprocessing/sar.py#L34-L51). This is however unsafe because this way, not only off-swath nodata values get replaced, but if the compression is applied e.g. after aggregate_temporal_period, any missing timestamps also get filled with in this case the value 1.

So below thermal noise and real nodata will always have to be treated in an identical way until this is handled in a better way on Orfeo side. I suggest after considerable testing that we remove the Orfeo-specific logic and the if_ statement and keep all nodata as nodata.

@kvantricht kvantricht self-assigned this Dec 20, 2024
@kvantricht kvantricht linked a pull request Dec 20, 2024 that will close this issue
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 a pull request may close this issue.

1 participant