| interp.im | R Documentation |
Interpolates the values of a pixel image at any desired location in the frame.
interp.im(Z, x, y=NULL, bilinear=FALSE)
Z |
Pixel image (object of class |
x, y |
Vectors of Cartesian coordinates.
Alternatively |
bilinear |
Logical value specifying the choice of interpolation rule.
If |
A value at each location (x[i],y[i]) will be
interpolated using the pixel values of Z at the four
surrounding pixel centres, by simple bilinear interpolation.
At the boundary (where (x[i],y[i]) is not surrounded by
four pixel centres) the value at the nearest pixel
is taken.
The arguments x,y can be anything acceptable to
xy.coords.
Vector of interpolated values, with NA for points that lie
outside the domain of the image.
and \rolf, with a contribution from an anonymous user.
opa <- par(mfrow=c(1,2))
# coarse image
V <- as.im(function(x,y) { x^2 + y }, owin(), dimyx=10)
plot(V, main="coarse image", col=terrain.colors(256))
# lookup value at location (0.5,0.5)
V[list(x=0.5,y=0.5)]
# interpolated value at location (0.5,0.5)
interp.im(V, 0.5, 0.5)
interp.im(V, 0.5, 0.5, bilinear=TRUE)
# true value is 0.75
# how to obtain an interpolated image at a desired resolution
U <- as.im(interp.im, W=owin(), Z=V, dimyx=256)
plot(U, main="interpolated image", col=terrain.colors(256))
par(opa)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.