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

Maxar product with QB02 satellite ID #140

Closed
jteulade opened this issue May 6, 2024 · 2 comments
Closed

Maxar product with QB02 satellite ID #140

jteulade opened this issue May 6, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@jteulade
Copy link
Contributor

jteulade commented May 6, 2024

When you open a maxar product with QB02 satellite ID, you have the following error:

Traceback (most recent call last):
  File "E:\JTeulade\repositories\stac\scripts\find_valid_product.py", line 33, in <module>
    path_products = get_path_products(PATH_TO_CRAWL)
  File "E:\JTeulade\repositories\stac\libs\sertit-utils\sertit\s3.py", line 99, in s3_env_wrapper
    return function(*_args, **_kwargs)
  File "E:\JTeulade\repositories\stac\stac\product.py", line 63, in get_path_products
    if all(d not in full_path.parts for d in BLACKLIST_DIRECTORIES) and check_product_and_fill_path(
  File "E:\JTeulade\repositories\stac\stac\product.py", line 103, in check_product_and_fill_path
    with Reader().open(path_to_check, remove_tmp=True) as prod:
  File "e:\jteulade\repositories\eoreader\eoreader\reader.py", line 537, in open
    prod = self._open_path(
  File "e:\jteulade\repositories\eoreader\eoreader\reader.py", line 699, in _open_path
    prod = create_product(
  File "e:\jteulade\repositories\eoreader\eoreader\reader.py", line 966, in create_product
    prod = class_(
  File "e:\jteulade\repositories\eoreader\eoreader\products\optical\vhr_product.py", line 91, in __init__
    super().__init__(product_path, archive_path, output_path, remove_tmp, **kwargs)
  File "e:\jteulade\repositories\eoreader\eoreader\products\optical\optical_product.py", line 116, in __init__
    super().__init__(product_path, archive_path, output_path, remove_tmp, **kwargs)
  File "e:\jteulade\repositories\eoreader\eoreader\products\product.py", line 259, in __init__
    self.constellation = self._get_constellation()
  File "e:\jteulade\repositories\eoreader\eoreader\products\optical\maxar_product.py", line 450, in _get_constellation
    return getattr(Constellation, constellation_id)
  File "C:\Users\jteulade\AppData\Local\anaconda3\envs\arcgispro-eo\lib\enum.py", line 429, in __getattr__
    raise AttributeError(name) from None
AttributeError: QB02

Why?
Here , you try to access to the satellite ID QB02 from MaxarSatId enum in Constellation enum.
But Constellation enum has only a QB attribute. That's the problem.

You can find a corresponding product: s3://sertit-projects-archives/projects/2019/EUGENIUS/Bari/Images/QB_19012007/EQ02_BGI_PSH_OR_20070119T100428_20070119T100432_DGI_29523_8F27.0000.tar

@jteulade jteulade added the bug Something isn't working label May 6, 2024
@remi-braun
Copy link
Member

remi-braun commented May 15, 2024

I'd rather set QB everywhere than QB02 which complicates things where it shouldn't. 😅
Is there a particular reason why you chose QB02 ?

@jteulade
Copy link
Contributor Author

jteulade commented May 21, 2024

I didn't see your comment, and I merged :/

From here
I get this
In this PDF, they never talk about QB, but only QB02. That's why, I used this attribute.

Moreover, I think the ID QB02 come from the metadata of the product here
So, i can't change this value.

pixalytics added a commit to pixalytics-ltd/eoreader that referenced this issue Aug 12, 2024
* Fix sertit#140: replace QB satellite ID with QB02 satellite ID

* Fix sertit#142: catch StopIteration and return InvalidProductError

* Fix sertit#142: catch StopIteration in several products

* Fix sertit#142: raise InvalidProductError instead of log

* Fix sertit#145: remove nested=-1 for SPOT constellations, use the default nested=0 instead

* Fix sertit#145: update CHANGES.md

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix sertit#142: catch StopIteration and return InvalidProductError

* Avoid KeyError if a product metadata doesn't have a namespace

* sertit#142: catch StopIteration and return InvalidProductError

* sertit#156: catch InvalidProductError when we try to get cloud_coverage property

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* sertit#156: catch all InvalidProductError due to properties not found in metadata

* sertit#161: return an error if SPECTRAL_PROCESSING not found in metadata

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/PyCQA/flake8: 7.0.0 → 7.1.0](PyCQA/flake8@7.0.0...7.1.0)

* FIX: Handle RCM and RS2 products that doesn't bundle their extent in a KML file sertit#155

* OPTIM: Search correctly nested metadata in the Reader (without accidentally using a recursive glob)

* sertit#152: add SGF in RS2 product type

* FIX: Fix error in looking for bands in Sentinel-2 L1C archived products sertit#168

* FIX: Handle wrongly recognized Planet products because of the recursive nested mtd in the Reader sertit#169

* FIX: Force the loading of `DimapV1` bands in `float32`

* FIX: Handle the case where fiona isn't installed anymore (with `geopandas 1.0`)

* FIX: Don't make `pystac` a mandatory requirement

* Use sertit.types.is_iterable

* Use sertit.types.make_iterable

* Correct typo

* FIX: Fix an unknown Planet bug that just appeared (`'...Path' has no len()`)

* CI: Remove for now end-to-end tests with Python 3.11 and 3.10.

* v0.21.2

* INSTALL: Remove `pystac[validation]` (as it is an optional dependency) from setup.py, and create a `stac` extra feature.

* Updates in CHANGES.md

* v0.21.2

* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/PyCQA/flake8: 7.1.0 → 7.1.1](PyCQA/flake8@7.1.0...7.1.1)
- [github.com/psf/black: 24.4.2 → 24.8.0](psf/black@24.4.2...24.8.0)

* FIX: Get better window name (if available) when writing bands on disk (in tmp folder) + update sertit's version to benefit to the vector's name

---------

Co-authored-by: jteulade <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Rémi Braun <[email protected]>
Co-authored-by: BRAUN REMI <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants