library(oXim)

oXim

Oxycline Index from Matrix Echograms

This package is built to take echogram data from Echopen software outputs and calculate oxycline depth limits using image-filtering algoriths.

oXim uses imagine algorithms, which includes median-filter and 2D-convolution implemented on Rcpp (C++) because the applicaion of this filters to echograms is very intensive and time expensive due to the size of echograms. oXim allows to change some parameters for filtering routines using an easily format (a table, data.frame object).

An echogram can be described as a visual representation of an acoustic variable, usually refered to the backscattering energy received after the emision of sound pulse to the water. Actualy, there are many softwares oriented to explore and analyze echogram data from echosounders as Echoview. One of them is Echopen, which was developed by IRD people under a Matlab environment and include libraries and routines for reading, integrate and cleaning databases from multibeam echosounders. oXim requires Echopen outputs as inputs for work.

Installation

For installing oXim, as follows:

install.packages("oXim")

Examples

Read data from Echopen outputs

For reading data, it is necesary to specify Echopen outputs files (.m extension).

# Set directories where the Echopen's outputs are located
fileMode <- list(fish38_file   = system.file("extdata", "fish38.mat", package = "oXim"),
                 fluid120_file = system.file("extdata", "fluid120.mat", package = "oXim"),
                 blue38_file   = system.file("extdata", "blue38.mat", package = "oXim"))

# Read echograms (echoData object)
echoData <- readEchograms(fileMode = fileMode)

Once the files have been read, output object will be of class echoData what means there are methods oriented to show main information (print), make a summary of data inside echograms (summary) and visualize the echograms as an image (plot). Then, methods for echoData objects are shown:

# Print method
print(echoData)
# Print method
summary(echoData)
# Plot method
plot(echoData)

Calculate oxycline depth limits

For oxycline depth calculation, getOxyrange function provides an easy-to-use way for applying median-filter and 2D convolution-based filters. This filters are explained below:

Both noiselessFilter and definerFilter do not use all values of neighborhood but only those located within diagonals of it. That because better results were found weighting up cells of diagonals.

For calculate oxycline depth limits from echoData objects, getOxyrange should be applied as follows:

# Calculate oxycline limits (oxyclineData object)
oxyLimits <- getOxyrange(fluidMatrix = echoData)

Likewise with readEchograms function, getOxyrange will return an object of class oxyclineData with their associated methods (print, summary and plot).

print(oxyLimits)
summary(oxyLimits)
plot(oxyLimits)


LuisLauM/oXim documentation built on May 7, 2019, 2:03 p.m.