read_wyvern error for Dragonette003 data
bug
<!-- Please search existing issues to avoid creating duplicates. -->
### Environment Information
- hypercoast version: 0.16
- Python version: 3.11
- Operating System: Windows 11
### Description
Opening a Wyvern tif with read_wyvern assumes 001 and 002 23 bands, but dragonette-003 data has 31 bands.
(aside: thank you for updating the code to include Wyvern data. I'll try treating this one as a custom dataset in the meantime.)
### What I Did
```
filepath to wyvern dragonette 003 data and then:
dataset = hypercoast.read_wyvern(filepath)
Traceback (most recent call last):
File "c:\Users\awebster\Documents\code\hyperspectral-processing\hypercoastplotting.py", line 5, in <module>
dataset = hypercoast.read_wyvern(filepath)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\hypercoast\wyvern.py", line 44, in read_wyvern
dataset["wavelength"] = df["wavelength"].tolist()
~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\dataset.py", line 1404, in __setitem__
self.update({key: value})
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\dataset.py", line 5631, in update
merge_result = dataset_update_method(self, other)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\structure\merge.py", line 1120, in dataset_update_method
return merge_core(
^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\structure\merge.py", line 770, in merge_core
dims = calculate_dimensions(variables)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\variable.py", line 3132, in calculate_dimensions
raise ValueError(
ValueError: conflicting sizes for dimension 'wavelength': length 31 on 'reflectance' and length 23 on {'wavelength': 'wavelength', 'x': 'x', 'y': 'y'}
PS C:\Users\awebster\Documents\code\hyperspectral-processing> & C:/Users/awebster/Documents/code/hyperspectral-processing/.venv/Scripts/python.exe c:/Users/awebster/Documents/code/hyperspectral-processing/hypercoastplotting.py
Traceback (most recent call last):
File "c:\Users\awebster\Documents\code\hyperspectral-processing\hypercoastplotting.py", line 5, in <module>
dataset = hypercoast.read_wyvern(filepath)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\hypercoast\wyvern.py", line 44, in read_wyvern
dataset["wavelength"] = df["wavelength"].tolist()
~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\dataset.py", line 1404, in __setitem__
self.update({key: value})
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\dataset.py", line 5631, in update
merge_result = dataset_update_method(self, other)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\structure\merge.py", line 1120, in dataset_update_method
return merge_core(
^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\structure\merge.py", line 770, in merge_core
dims = calculate_dimensions(variables)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\awebster\Documents\code\hyperspectral-processing\.venv\Lib\site-packages\xarray\core\variable.py", line 3132, in calculate_dimensions
raise ValueError(
ValueError: conflicting sizes for dimension 'wavelength': length 31 on 'reflectance' and length 23 on {'wavelength': 'wavelength', 'x': 'x', 'y': 'y'}
```
关闭于 2025-10-31 5 条评论