spatstat (version 1.52-1)

Math.im: S3 Group Generic methods for images

Description

These are group generic methods for images of class "im", which allows for usual mathematical functions and operators to be applied directly to images. See Details for a list of implemented functions.

Usage

## S3 methods for group generics have prototypes:
Math(x, \dots)
Ops(e1, e2)
Complex(z)
Summary(\dots, na.rm=FALSE, drop=TRUE)



Arguments

x, z, e1, e2

objects of class "im".

further arguments passed to methods.

na.rm,drop

Logical values specifying whether missing values should be removed. This will happen if either na.rm=TRUE or drop=TRUE. See Details.

Details

Below is a list of mathematical functions and operators which are defined for images. Not all functions will make sense for all types of images. For example, none of the functions in the "Math" group make sense for character-valued images. Note that the "Ops" group methods are implemented using eval.im, which tries to harmonise images via harmonise.im if they aren't compatible to begin with.

  1. Group "Math":

    • abs, sign, sqrt, floor, ceiling, trunc, round, signif

    • exp, log, expm1, log1p, cos, sin, tan, cospi, sinpi, tanpi, acos, asin, atan

      cosh, sinh, tanh, acosh, asinh, atanh

    • lgamma, gamma, digamma, trigamma

    • cumsum, cumprod, cummax, cummin

  2. Group "Ops":

    • "+", "-", "*", "/", "^", "%%", "%/%"

    • "&", "|", "!"

    • "==", "!=", "<", "<=", ">=", ">"

  3. Group "Summary":

    • all, any

    • sum, prod

    • min, max

    • range

  4. Group "Complex":

    • Arg, Conj, Im, Mod, Re

For the Summary group, the generic has an argument na.rm=FALSE, but for pixel images it makes sense to set na.rm=TRUE so that pixels outside the domain of the image are ignored. To enable this, we added the argument drop. Pixel values that are NA are removed if drop=TRUE or if na.rm=TRUE.

See Also

eval.im for evaluating expressions involving images.

Examples

Run this code
# NOT RUN {
  ## Convert gradient values to angle of inclination:
  V <- atan(bei.extra$grad) * 180/pi
  ## Make logical image which is TRUE when heat equals 'Moderate': 
  A <- (gorillas.extra$heat == "Moderate")
  ## Summary:
  any(A)
  ## Complex:
  Z <- exp(1 + V * 1i)
  Z
  Re(Z)
# }

Run the code above in your browser using DataCamp Workspace