Login using

You can login by using one of your existing accounts.

We will be provided with an authorization token (please note: passwords are not shared with us) and will sync your accounts for you. This means that you will not need to remember your user name and password in the future and you will be able to login with the account you choose to sync, with the click of a button.

Acoustic data is time consuming to process due to the large data size and the requirement to often undertake some data processing steps manually. Manual processing may introduce subjective, irreproducible decisions into the data processing work flow, reducing consistency in processing between surveys. We introduce the R package EchoviewR as an interface between R and Echoview, a commercially available acoustic processing software package. EchoviewR allows for automation of Echoview using scripting which can drastically reduce the manual work required when processing acoustic surveys. This package plays an important role in reducing subjectivity in acoustic data processing by allowing exactly the same process to be applied automatically to multiple surveys and documenting where subjective decisions have been made. Using data from a survey of Antarctic krill, we provide two examples of using EchoviewR: krill biomass estimation and swarm detection.

Introduction

Active acoustics is a tool widely used for seabed mapping, seabed type classification, underwater tracking and resource monitoring. A suite of active acoustic instruments are available to carry out imaging (e.g., scanning sonars) and more quantitative tasks (e.g., multibeam and scientific echosounders). Echosounders have evolved from being instruments used primarily for mapping and navigation, to precision instruments capable of resolving organisms a few millimeters in length and providing quantitative estimates of, for example, biomass.

Echosounder transducers are most commonly embedded in a ship's hull or drop keel, although other platforms such as landers (Johansen et al., 2009), gliders (Guihen et al., 2014), and autonomous underwater vehicles (Brierley et al., 2002) have been used. Regardless of platform, datasets from active acoustics are invariably extremely large and time consuming to process.

In active acoustic surveys, a conventional split-beam echosounder collecting data to a range of 500 m and pinging once per second typically collects around 8 GB of data per day (Note: this depends on settings such as range resolution and pulse repetition rate). This may be compounded by the need to use multiple echosounder frequencies, sometimes more than six, operating simultaneously, further inflating the size of the raw data sets. Moreover, the routine use of broadband systems like the Simrad EK80 on board scientific and commercial vessels is not far away. The amount of data from such systems vastly exceeds those from conventional sounders, and will again push storage and processing capacity. With advances in data storage capacity, data storage is no longer a significant constraint and enhanced computational power has enabled the development of powerful acoustic data processing software.

There are several software packages suitable for the processing of echosounder data e.g., Echoview (Myriax, Hobart; www.echoview.com), LSSS (MAREC, Christian Michelsen Research, Norway, http://www.cmr.no/index.cfm?id=421565) and Sonar5-Pro (University of Oslo, Norway, http://folk.uio.no/hbalk/sonar4_5/). However, processing acoustic data remains time consuming and frequently requires subjective, often undocumented, decisions to be made by the user, such as removal of noise or bad data and allocation of backscatter to targets. Subjective decisions can potentially bias outputs from processed active acoustic data, for example biomass estimates.

Here we present the R package EchoviewR as a tool to: (1) reduce the processing time requiring a human operator, (2) document processing steps thereby generating reproducible methodology, and (3) provide a framework within which additional functionality can be built by members of the acoustics community, so reducing the number of subjective decisions. The EchoviewR package is an interface between the widely used and freely available R program (http://www.R-project.org/) and Echoview (Myriax, Hobart; www.echoview.com). The methods used are generic and can be transferred to other acoustic processing software with scripting options, but the package as such is incompatible with other acoustic software.

EchoviewR uses Component Object Model (COM) scripting to run Echoview using R. This removes a large portion of the manual processing time and enables entire acoustic surveys to be mostly processed automatically. It also increases consistency in processing because the same methods and thresholds can be applied in exactly the same way to multiple data sets. Hence EchoviewR provides a reproducible and transparent automated method for processing acoustic data using Echoview. Some examples of its use include filtering of data, automated biomass estimation and detection of krill swarms.

Using two examples, we illustrate EchoviewR functionality. Both examples are based on data collected during surveys of Antarctic krill (Euphausia superba; herein krill) using a Simrad EK60 echosounder (Horten, Norway) with downward facing hull-mounted transducers. The first example estimates regional krill biomass, and the second example detects krill swarms.

EchoviewR is intended to speed up processing of already clean acoustic data and is not currently capable of removing false bottom effects, time varied gain or noise spikes although the package can access Echoview virtual variables to do some of these tasks, e.g., “Background noise removal algorithm” virtual variable (De Robertis and Higginbottom, 2007). The package is intended only as a method of automating processing using Echoview and is not a standalone method for processing acoustic data.

The EchoviewR package is available open source on the GitHub repository (https://github.com/lisamarieharrison/EchoviewR) and can be downloaded and installed as an R package using the “install from.zip file” option in R, or via devtools:install_github().

Expected Data Input for the Package and Worked Examples

EchoviewR can work with any data type accommodated in Echoview that is accessible via COM. The worked examples provided here have been built using data collected using a Simrad EK60 echosounder (www.simrad.com/ek60). In itself, EchoviewR does not create Echoview templates or calibration files, but can use both of these via COM.

Functions of the Package

There are 46 functions available in EchoviewR, which are described in Table 1. A working example for each of these functions is given in the package documentation in the Supplementary Material. Not all Echoview functions are currently available in the package; however any functionality in Echoview that has COM accessibility could be added by the user.

TABLE 1

Table 1. Functions available in EchoviewR.

Examples

Here we present two examples using EchoviewR: (1) krill biomass estimation, and (2) krill swarm detection and classification. The purpose of these examples is to demonstrate that these analyses can be run automatically using EchoviewR and to show how Echoview output can be seamlessly linked to analyses carried out using R. Both examples assume that the reader is familiar with Echoview and are not intended to be a tutorial on Echoview. It is also assumed that the reader is familiar with R and programming concepts such as for loops.

The data are a subset of the EK60 split-beam data collected during the Krill Acoustics and Oceanography Survey (KAOS) carried out from RV Aurora Australis. The KAOS survey was undertaken in January–March 2003 off North Eastern Antarctica. Data from 38, 120, and 200 kHz were written to RAW files. For clarity in the worked examples, we have used the 38 and 120 kHz data because these frequencies are the most useful for detecting and identifying the example species, Antarctic krill.

To demonstrate that biomass estimation and swarm detection can be automatically run on multiple transects where the data are too large to practically read in to Echoview at once, as is the case for most acoustic surveys, segments of six KAOS transects are provided and each 10–20 km transect segment is processed separately (Figure 1).

Both these examples have been tested using R Studio and 0.98.932 and Echoview 6.1.32.26088. The data to run these examples are available at the Australian Antarctic Division Data Centre [doi: 10.4225/15/54CF081FB955F]. An example of the data flow for the template used in this example is available as Figure S1 in the Supplementary Material.

Before running each example some pre-processing is demonstrated to get the data in to a convenient format for analyzing each transect in a separate .EV file. In this pre-processing phase, the six transects are imported separately into Echoview and the following tasks are performed:

1. Create a new .EV file for the transect using the Echoview template file;

2. Import the EK60 .RAW data files for that transect;

3. Add an Echoview.ecs calibration file;

4. Import .evr region definitions files to remove off effort data;

5. Import a seabed exclusion line (lineKAOS .evl);

6. Close and save the file and repeat for remaining transects.

These steps and the code to run them are demonstrated in the “Read data using the R package EchoviewR to control Echoview via COM” pdf vignette that is available with the Supplementary Material. Pre-processing must take place before examples 1 and 2 are run.

Example 1—Krill Biomass Estimation

Automated biomass estimation of krill is demonstrated by processing the six transects separately in Echoview and exporting the data into R for density and biomass calculation. For each transect, the following steps are taken in Echoview:

This produces two .csv files for each transect, one containing 38 kHz and one containing 120 kHz integrated data (i.e., a mean volume backscattering strength value for each cell. Then, the following steps are taken in R.

1. Import the 38 and 120 kHz files for the transect.

2. Remove no data values (set -999 and 999 dB as NA) and depths <0.

3. Calculate the krill difference window of 120–38 kHz for each integration cell using the following formula:

9. The full survey density is then estimated using the Jolly and Hampton (1990) method, which uses the weighted density of each transect by length to calculate total survey density. Note that the formula has been modified to remove stratum as no strata were used in the KAOS example survey design:

10. The full survey biomass estimate, b^, is then calculated by multiplying the weighted survey density by survey area:

b^=p^A

where p^ = estimated survey biomass and A = survey area in km2.

Both the Echoview and R components above are run within loops to allow each transect to be run separately. This is done to demonstrate how looping over transects or days of a large survey is possible, rather than manually loading and processing each set of files. The EchoviewR and R code for the above analysis is shown in the “Biomass estimation using the R package EchoviewR to control Echoview via COM” pdf vignette that is available with the Supplementary Material. Table 2 shows the estimated density, length and biomass for the sample transects and survey area.

Example 1 has demonstrated the use of EchoviewR to automatically process and extract data by transect from Echoview. Krill density and biomass are then calculated in R using the extracted .csv files.

Example 2—Swarm Detection and Classification

Automated swarm detection and classification of krill aggregations is demonstrated here using EchoviewR. The code for this example is available in the “Schools detection using the R package EchoviewR to control Echoview via COM” pdf vignette file available with the Supplementary Material. Each transect is processed separately to demonstrate how a full survey can be processed automatically using loops. Schools detection is run in Echoview and then detected aggregations are classified and clustered in R. The following steps are undertaken in Echoview using EchoviewR:

1. Open the transect's .EV file.

2. Run schools detection on the variable 120 7x7 convolution, assigning all detected schools to the region class “aggregations.”

3. Export 120 and 38 kHz data for regions of class “aggregations” to a .csv file using the EVIntegrationByRegionExport function. This exports a single mean Sv for each aggregation.

In this example, all detected aggregations are exported. However, it is also possible to export only aggregations classified as krill using the 120-38 aggregation dB difference filter variable included in the template. The filter sets the Krill aggregations data to NULL if the 120-38 aggregation dB difference value for that cell is outside the [1.04, 14.75] dB difference window for the KAOS survey.

The exported aggregations can now be classified and clustered in R. Each transect is run separately using a loop:

1. Import the 120 and 38 kHz export by regions files.

2. Remove null values (-999).

3. Calculate the 120–38 kHz difference window and subset data to only include difference values between [1.04, 14.75].

4. If no aggregations were classified as krill, exit here and move to next transect.

5. If krill aggregations are found, run cluster analysis using the ClusterSim library using selected metrics.

6. Print a summary table of the number of aggregations assigned to each identified cluster. Table 3 shows the number of krill swarms identified and the number of clusters detected for each transect.

TABLE 3

Table 3. Number of unique krill aggregation clusters identified for each transect.

This example has demonstrated how school detection, data export and cluster analysis can be run automatically for an entire acoustic survey.

Discussion and Future Directions

EchoviewR is a free interface between R and Echoview that provides automated acoustic data processing. It drastically decreases manual processing time and reduces subjectivity by providing an easy way to implement exactly the same method across surveys. This package enables reproducible methodology, which is a vital part of the scientific method. We have given examples of automated krill biomass estimation and school detection using EchoviewR that demonstrate the use of the package on a subset of the KAOS survey. This method can easily be extended to run a full survey by transect, day or any other subset required.

There are a number of limitations to the package. Currently it is only available for use for single and split beam echo sounder data. EchoviewR is also unable to handle removal of noise and false bottom effects, which must be completed prior to using the package. Not all functions in Echoview are currently available using EchoviewR, however any COM functionality in Echoview can be implemented in R. The COM hierarchy help page is a useful starting point for those wishing to add extra functions.

EchoviewR is accessible as free software from the EchoviewR GitHub repository (https://github.com/lisamarieharrison/EchoviewR) and is readily available for community development. An important next step is the implementation of false bottom and noise removal using EchoviewR, and it is our hope that the acoustic community will take the tools that we are providing and extend the package to include the functionality that they require. We also underline that the methods described here are generic, and hope the work can inspire the implementation of scripting interface in other acoustic processing software.

Conflict of Interest Statement

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

Acknowledgments

We would like to thank Echoview for their support of this project. This research is a contribution to Australian Antarctic Division science programme Project 4104 and project 4102. MC is funded by Australian Research Council grant FS11020005. LH is funded by a Macquarie University Research Excellence Scholarship.

Gerlotto, F., Soria, M., and Fréon, P. (1999). From two dimensions to three: the use of multibeam sonar for a new approach in fisheries acoustics. Can. J. Fish. Aqua. Sci. 56, 6–12. doi: 10.1139/cjfas-56-1-6