GRASS logo

Note: This document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade, and read the current manual page.


r3.neighbors - Makes each voxel value a function of the values assigned to the voxels around it, and stores new voxel values in an output 3D raster map


raster3d, algebra, voxel, statistics, aggregation, neighbor, focal statistics, filter


r3.neighbors --help
r3.neighbors input=name output=name method=string [quantile=float] window=x,y,z [--overwrite] [--help] [--verbose] [--quiet] [--ui]


Allow output files to overwrite existing files
Print usage summary
Verbose module output
Quiet module output
Force launching GUI dialog


input=name [required]
Name of input 3D raster map
output=name [required]
Name for output 3D raster map
method=string [required]
Aggregate operation
Options: average, median, mode, minimum, maximum, range, stddev, sum, count, variance, diversity, interspersion, quart1, quart3, perc90, quantile
Quantile to calculate for method=quantile
Options: 0.0-1.0
window=x,y,z [required]
The size of the window in x, y and z direction, values must be odd integer numbers, eg: 3,3,3

Table of contents


r3.neighbors looks at each voxel in a 3D raster input map layer, and examines the values assigned to the voxel in a user-defined "neighborhood" around it. It outputs a new 3D raster map in which each voxel is assigned a value that is a (user-specified) function of the values in that voxel's neighborhood. For example, each voxel in the output map might be assigned a value equal to the average of the values appearing in its 3 x 3 x 3 voxel "neighborhood" in the input map layer.


The user must specify the names of the 3D raster map layers to be used for input and output, the method used to analyze neighborhood values (i.e., the neighborhood function or operation to be performed), and the moving window of the neighborhood.

Neighborhood Operation Methods: The neighborhood operators determine what new value a center voxel in a neighborhood will have after examining values inside its neighboring voxels. Each voxel in a 3D raster map layer becomes the center voxel of a neighborhood as the neighborhood window moves from voxel to voxel throughout the map layer. r3.neighbors can perform the following operations:

The average value within the neighborhood.
The value found half-way through a list of the neighborhood's values, when these are ranged in numerical order.
The most frequently occurring value in the neighborhood.
The minimum value within the neighborhood.
The maximum value within the neighborhood.
The range value within the neighborhood.
The statistical standard deviation of values within the neighborhood.
The sum of values within the neighborhood.
The statistical variance of values within the neighborhood.
The number of different values within the neighborhood.
The percentage of voxels containing values which differ from the values assigned to the center voxel in the neighborhood, plus 1.

Neighborhood Size: The neighborhood moving window specifies which voxel surrounding any given voxel fall into the neighborhood for that voxel. The window must be three comma separated odd integers. The dimension order is: x,y,z. For example: the parameter window=3,3,3 specifies a moving window (a cube) with 27 voxel.


The r3.neighbors program works in the current geographic region. It is recommended, but not required, that the 3D resolution of the geographic region be the same as that of the 3D raster map layer.

r3.neighbors doesn't propagate NULLs, but computes the aggregation over the non-NULL voxels in the neighborhood.


g.region, r.neighbors, r3.mapcalc, r3.stats,


Soeren Gebbert


Available at: r3.neighbors source code (history)

Latest change: Thursday Feb 03 11:10:06 2022 in commit: 547ff44e6aecfb4c9cbf6a4717fc14e521bec0be

Note: This document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade, and read the current manual page.

Main index | 3D raster index | Topics index | Keywords index | Graphical index | Full index

© 2003-2023 GRASS Development Team, GRASS GIS 8.2.2dev Reference Manual