Note: This package is now being developed under OSOceanAcoustics/echopype as a community-driven project.
echopype
Open source tools for unpacking and analyzing active sonar data.
What?
What do people use right now to read/process echosounder data?
So What?
Ultimate goal: combine acoustic data with environmental data to work on science questions.
- Be able to read data from the OOI arrays (AZFP and EK60)
- Plot an echogram from real data (OOI and ONC, and glider or AUV data if we can get our hands on some of them)
Misc:
- Explore ways to view and process data using Python
- example: echo metrics this needs an echogram as input, we can create a pipeline for that
- Convert manufacturer proprietary formats to netCDF files following ICES sonar-netCDF4 convention
- Here is a GitHub folder with the details in nice tables
- testing it
Now What?
- Existing code in Google folder
- Matlab package to read EK80 data
- Matlab package to read AZFP data
- PyEchoLab2
- Current echopype (which uses HDF5 and only unpacks EK60)
- can read data from EK60 and save into HDF5 file
- can clean up noise, do frequency differencing and plot echogram
- OOI CI parser that parses AZFP data in Python
- Goals
- model: unpacking data should be a stand-alone function
- read from AZFP and EK80
- view: operations on data (adapt from current echopype)
- Use cases (concrete steps that a user wants to do, help guide the tasks)
- scanning data and decide what files you want to analyze
- get rid of bottom, get rid of noise, and then db-diff
- Specific tasks
- set up continuous integration (VS)
- write tests
- figure out how to save things into ICES recommended format --> let's look at what MATECHO did (JC)
- clean up current echopype for unpacking EK60, make attribute names match ICES naming convention (WJ, EL)
- unpack EK80 --> EK80 uses XML for metadata, create class attributes that match ICES naming convention (EO, EF)
- unpack AFZP --> AFZP uses XML for metadata, create class attributes that match ICES naming convention (MP, EO, ML)
- manipulate data by combining current echopype and pyecholab
- provide bottom as a mask
- remove noise: may be different for ship-based and moored data
- freq-differencing
- broadband single target detection
- narrowband single target detection
- multi-freq indicator functions
- narrowband calibration re. Demer et al. (JC)
- broadband calibration re. Stanton/Chu+Jech/Lavery (WJ)
- echo summary view for where was the data from, are there are things in the water column, time, etc.
- how to speed up scrolling?