Provided by: grass-doc_8.3.2-1ubuntu2_all bug

NAME

       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: 1.0

       orientations=integer
           Number of azimuth directions categorized
           Default: 1

DESCRIPTION

       i.zc is an image processing module 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.

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.

       The width= 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.

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

       The orientations= 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 r.slope.aspect.  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.

       The current region definition and mask settings are respected when reading the input map.

SEE ALSO

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

AUTHOR

       David Satnik, GIS Laboratory, Central Washington University

SOURCE CODE

       Available at: i.zc source code (history)

       Accessed: Monday Apr 01 03:09:22 2024

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

       © 2003-2024 GRASS Development Team, GRASS GIS 8.3.2 Reference Manual

GRASS 8.3.2                                                                                         i.zc(1grass)