Thanks Robert, that's exactly the hack I needed. Etienne
On Sun, Mar 13, 2011 at 7:48 PM, Robert Hijmans <r.hijm...@gmail.com> wrote: > Etienne, > > What you are doing makes sense to me. To avoid border problems, perhaps you > can first 'expand' the input raster by adding sufficient rows and columns > at > each side such that there are no relevant cells within the filter when it > reaches the border. > > By the way, here: > > > r2 <- focal(r, nb=2, fun=vf) > nb should be ngb, and typically ngb would not be an even number. > > Robert > > > I'd like to vary the size of my window on a moving window filter. The > size > > of the radius is set by a function of the center pixel (the current pixel > > processed). I picked the raster package, but as focal() is using a fix > > radius for the analysis, I thought I could use a large radius and apply a > > function according to the value of the center pixel inside the raster. > > Now, > > when reaching the borders of the raster, it's hard to tell where's the > > center pixel or what's the value of the current pixel processed. > > > > I did a little code to illustrate the problem of finding the center : > > > > library(raster) > > r <- raster(matrix(1:25, nrow=5)) > > > > vf <- function(x, ...){ > > x[length(x)/2+.5] # that' how I (wrongly) find the center pixel > > } > > > > r2 <- focal(r, nb=2, fun=vf) > > # result : > > as.matrix(r2-r) > > > > > > # [,1] [,2] [,3] [,4] [,5] > > #[1,] 1 0 0 0 -4 > > #[2,] 1 0 0 0 -4 > > #[3,] 1 0 0 0 -4 > > #[4,] 1 0 0 0 -4 > > #[5,] 0 -1 -1 -1 -5 > > > > > > Do you know any way I could implement my function or if such a > > functionality > > is already implemented in another package ? > > > > Thanks, > > Etienne > > -- > View this message in context: > http://r-sig-geo.2731867.n2.nabble.com/Variable-window-on-a-raster-tp6155312p6167442.html > Sent from the R-sig-geo mailing list archive at Nabble.com. > > _______________________________________________ > R-sig-Geo mailing list > R-sig-Geo@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-geo > [[alternative HTML version deleted]] _______________________________________________ R-sig-Geo mailing list R-sig-Geo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo