mask_impulse_noise

mask_impulse_noise#

echopype.clean.mask_impulse_noise(ds_Sv: Dataset, depth_bin: str = '5m', num_side_pings: int = 2, impulse_noise_threshold: str = '10.0dB', range_var: str = 'depth', use_index_binning: bool = False) DataArray#

Locate and create a mask for impulse noise using a ping-wise two-sided comparison.

Parameters
ds_Svxarray.Dataset

Calibrated Sv data with depth data variable.

depth_binstr, default “5m”

Donwsampling bin size along vertical range variable (range_var) in meters.

num_side_pingsint, default 2

Number of side pings to look at for the two-side comparison.

impulse_noise_thresholdstr, default “10.0dB”

Impulse noise threshold value (dB) for the two-side comparison.

range_varstr, default “depth”

Vertical Axis Range Variable. Can be either “depth” or “echo_range”.

use_index_binningbool, default False

Speeds up aggregations by assuming depth is uniform and binning based on range_sample indices instead of depth values.

Returns
xr.Dataset

Xarray boolean array impulse noise mask.

References

This function’s implementation is based on the following text reference:

Ryan et al. (2015) Reducing bias due to noise and attenuation in open-ocean echo integration data, ICES Journal of Marine Science, 72: 2482–2493.

Additionally, code was derived from echopy’s numpy single-channel implementation of impulse noise masking and translated into xarray code: open-ocean-sounding/echopy # noqa