This function is basically an exact copy of variogram.matrix
, which itself is a copy of vgram.matrix
from package fields (but allows and ignores missing values, in order to ignore zero-valued pixels and does not include Cressie's robust version of the variogram), whereby the differences are raised to a power of q instead of 2. That is, it calculates the structure function given by Eq (4) in harris et al. (2001). Namely,
S_q(l_x,l_y) = <|R(x+l_x,y+l_y) - R(x,y)|^q>
where R is the field of interest, <> denotes the average over pixels in the image (note, in Harris et al. (2001), this is only over non-zero pixels, so is only equivalent to this equation if zero.out=TRUE), l_x and l_y are lags in the x and y directions, resp. If q=2, then this is the semivariogram.
The plot
method function makes two plots. The first shows the structure by separation distance ignoring direction (circles) and all values (i.e., for each direction, dots). The second shows the structure function values for separation distance and direction (see, e.g., plot.vgram.matrix
).