-
Notifications
You must be signed in to change notification settings - Fork 76
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
Error storing filter coefficients for sequenced ek80 file #1317
Comments
@leewujung This is interesting and I was able to get the same error message. What are your thoughts on this? One of the channels is missing the filter values, or they're assumed to be shared for both? |
Hmm, the filters are specific to each channel, so could not be shared. I think I've seen files before that have a subset of filter values missing, and those parsed fine before. It is possible that some later changes we introduced made those not allowable, and we did not have tests covering that. |
Thanks for the quick attention. This is from a WBT mini system saving to a usb drive rather than collected via the ek80 software. Let me know if i can help in any way. I wrote something to filter out some of the stuff and stitch a echogram but id be interested in helping to fix the underlying issue and learn how to make contributions back upstream. |
@julianblanco That would be great if you could help us out with this! Here's the doc for how to contribute: https://echopype.readthedocs.io/en/stable/contributing.html Here's the doc for how data is organized in the raw Echodata object: https://echopype.readthedocs.io/en/stable/data-format-raw.html. Scroll down to the EK80 part and take a look at In the code itself, I would first look at the call to create the
It could be the case that the filtering of the original datagrams removed a channel's |
Also, once you set up the test data suite, you can see how the |
Ha, I've got some new files that also have this problem. |
This source of the problem is that the WBT and PC filter coefficients in the file only exist for one of the channels -- that is the channel that is actually ON. But, all other parameters stored in the Code section: echopype/echopype/convert/set_groups_ek80.py Lines 1276 to 1308 in 66fda23
And the function _add_filter_params : echopype/echopype/convert/set_groups_ek80.py Line 1313 in 66fda23
|
@leewujung Push this to |
Agreed! |
@leewujung Hi! Do you think NaN padding is the best long-term solution? I’ll need to replicate the issue first before making any recommendations, but I’d love to hear if there’s a 'dream scenario' solution that could address this. |
Hey @spacetimeengineer! I think NaN padding would work fine, since it’s easy to drop them when needed. These coefficients are also small so space is not an issue (though zarr compressed very well as we’ve found for the backscatter data). |
Sounds good to me. Thanks. |
When trying to open ek80 data (2 channel system 70khz and 200khz) i get the following value error
ValueError: conflicting sizes for dimension 'channel': length 1 on 'WBT_filter_i' and length 2 on {'channel': 'frequency_nominal', 'pulse_length_bin': 'sa_correction'}
calling code
echodata = ep.convert.api.open_raw('/three_ensemble-Phase0-D20240506-T053349-0.raw', sonar_model='EK80')
version 0.8.4 mac, installed via pip in pycharm venv python ver 3.11
link to file: https://drive.google.com/file/d/1doLT8V3CFXNxkulIKtV1-BXMwvm0ln5N/view?usp=sharing
The text was updated successfully, but these errors were encountered: