A few powerful tools already exist for processing and investigating multibeam echosounder (MBES) data. They fulfill many industrial and scientific needs regarding quick visualization and bathymetric processing. However, none of these tools sufficiently target scientists that need to- develop new or custom MBES processing methods.
Projects focusing on investigating objects in the water column (e.g. gas bubble streams, suspended particulate matter, fish, …) formed the base for a new MEBS processing tool that is currently being developed within the framework of the TURBEAMS project. The aim is a tool that possesses the flexibility to execute custom processing routines, the transparency to understand the specific equations applied to the acoustic raw data, and the power to efficiently apply these customized routines to large amounts of MBES data gathered during scientific surveys.
The result of these specifications evolved into themachinethatgoesping (short: Ping), a new open-source python library (implemented in c++) for processing multi- and singlebeam echosounder data. Ping aims at simplifying the development and application of novel processing methods by providing a performant, pythonic interface to the acoustic raw data, together with commonly needed processing routines. A few examples:
- Extract configuration and navigation data.
- Extract quantitative meaningful backscatter data.
- Implement and test water column calibration routines.
- Create time series echograms or render water column images.
- Filter, georeference and grid acoustic samples in 2D and 3D space.
These functions – and the large amount of python data science libraries – form the base to implementing processing methods (or tools) that are shareable as comprehensive python scripts. Ping is still incomplete and e.g. currently limited to processing Kongsberg .all and Simrad EK80 .raw data files. But you can test it and follow the active development here: https://github.com/themachinethatgoesping