Calculate the contrast feature or metric for a gray-level co-occurrence matrix. For definition and application, see Lofstedt et al. (2019) doi:10.1371/journal.pone.0212110 .

contrast(x, ...)

# S3 method for default
contrast(x, ...)

# S3 method for matrix
contrast(x, ...)

# S3 method for FitLandDF
contrast(x, nlevels, ...)

Arguments

x

gray-level co-occurrence matrix

...

additional parameters

nlevels

desired number of discrete gray levels

Value

contrast metric of x

Examples

## calculate contrast of arbitrary GLCM
# define arbitrary GLCM
x <- matrix(1:16, nrow = 4)

# normalize
n_x <- normalize_glcm(x)

# calculate contrast
contrast(n_x)
#> [1] 2.5

## calculate contrast of arbitrary fitness landscape
# create fitness landscape using FitLandDF object
vals <- runif(64)
vals <- array(vals, dim = rep(4, 3))
my_landscape <- fitscape::FitLandDF(vals)

# calculate contrast of fitness landscape, assuming 2 discrete gray levels
contrast(my_landscape, nlevels = 2)
#> [1] 0.5083333

## confirm value of contrast for fitness landscape
# extract normalized GLCM from fitness landscape
my_glcm <- get_comatrix(my_landscape, discrete = equal_discrete(2))

# calculate contrast of extracted GLCM
contrast(my_glcm)  # should match value of above contrast function call
#> [1] 0.5083333