i.zc.1grass man page

i.zc — Zero-crossing "edge detection" raster function for image processing.

Keywords

imagery, edges

Synopsis

i.zc
i.zc --help
i.zc input=string output=string  [width=integer]   [threshold=float]   [orientations=integer]   [--overwrite]  [--help]  [--verbose]  [--quiet]  [--ui]

Flags

--overwrite

Allow output files to overwrite existing files

--help

Print usage summary

--verbose

Verbose module output

--quiet

Quiet module output

--ui

Force launching GUI dialog

Parameters

input=string [required]

Name of input raster map

output=string [required]

Zero crossing raster map

width=integer

x-y extent of the Gaussian filter
Default: 9

threshold=float

Sensitivity of Gaussian filter
Default: 10

orientations=integer

Number of azimuth directions categorized
Default: 1

Description

i.zc is an image processing program used for edge detection.  The raster map produced shows the location of "boundaries" on the input map.  Boundaries tend to be found in regions of changing cell values and tend to run perpendicular to the direction of the slope.  The algorithm used for edge detection is one of the "zero-crossing" algorithms and is discussed briefly below.

Options

Parameters

input_map=name  

Name of input raster map layer.

zc_map=name  

Name of raster map layer to be used for zero-crossing values.

width=value  

This parameter determines the x-y extent of the Gaussian filter.  The default value is 9;  higher and lower values can be tested by the user.  Increasing the width will result in finding "edges" representing more gradual changes in cell values.
Default:  9

threshold=value  

This parameter determines the "sensitivity" of the Gaussian filter.  The default value is 10;  higher and lower values can be tested by the user.  Increasing the threshold value will result in fewer edges being found.
Default:  10

orientations=value  

This value is the number of azimuth directions the cells on the output raster map layer are categorized into (similar to the aspect raster map layer produced by the r.slope.aspect program).  For example, a value of 16 would result in detected edges being categorized into one of 16 bins depending on the direction of the edge at that point.
Default:  1 The current region definition and mask settings are respected when reading the input map.

Notes

The procedure to find the "edges" in the image is as follows:

1

The Fourier transform of the image is taken,

2

The Fourier transform of the Laplacian of a two-dimensional Gaussian function is used to filter the transformed image,

3

The result is run through an inverse Fourier transform,

4

The resulting image is traversed in search of places where the image changes from positive to negative or from negative to positive,

5

Each cell in the map where the value crosses zero (with a change in value greater than the threshold value) is marked as an edge and an orientation is assigned to it. The resulting raster map layer is output.

See Also

i.fft, i.ifft, r.mapcalc, r.mfilter, r.slope.aspect

Author

David Satnik, GIS Laboratory, Central Washington University

Last changed: $Date: 2011-11-08 13:24:20 -0800 (Tue, 08 Nov 2011) $

Main index | Imagery index | Topics index | Keywords index | Full index

© 2003-2016 GRASS Development Team, GRASS GIS 7.0.4 Reference Manual

Info

GRASS 7.0.4 Grass User's Manual